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
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