Example #1
0
B_1 = np.array([[1.]])
c_1 = np.array([[0.]])
sys_1 = ds.DTAffineSystem.from_continuous(A_1, B_1, c_1, t_s)

A_2 = np.array([[-1.]])
B_2 = np.array([[1.]])
c_2 = np.array([[2.]])
sys_2 = ds.DTAffineSystem.from_continuous(A_2, B_2, c_2, t_s)

sys = [sys_0, sys_1, sys_2]

# domains

x_min_0 = np.array([[-3.]])
x_max_0 = np.array([[-1.]])
X_0 = Polytope.from_bounds(x_min_0, x_max_0)
X_0.assemble()

x_min_1 = x_max_0
x_max_1 = -x_max_0
X_1 = Polytope.from_bounds(x_min_1, x_max_1)
X_1.assemble()

x_min_2 = x_max_1
x_max_2 = -x_min_0
X_2 = Polytope.from_bounds(x_min_2, x_max_2)
X_2.assemble()

u_max = np.array([[10.]])
u_min = -u_max
Example #2
0
B_2 = np.array([[1.]])
c_2 = np.array([[0.]])
sys_2 = ds.DTAffineSystem.from_continuous(A_2, B_2, c_2, t_s)

A_3 = np.array([[-1.]])
B_3 = np.array([[1.]])
c_3 = np.array([[2.]])
sys_3 = ds.DTAffineSystem.from_continuous(A_3, B_3, c_3, t_s)

sys = [sys_1, sys_2, sys_3]

# state domains

x_min_1 = np.array([[-3.]])
x_max_1 = np.array([[-1.]])
X_1 = Polytope.from_bounds(x_min_1, x_max_1)
X_1.assemble()

x_min_2 = x_max_1
x_max_2 =  - x_max_1
X_2 = Polytope.from_bounds(x_min_2, x_max_2)
X_2.assemble()

x_min_3 = x_max_2
x_max_3 = - x_min_1
X_3 = Polytope.from_bounds(x_min_3, x_max_3)
X_3.assemble()

X = [X_1, X_2, X_3]

# inoput domains