def setUp(self): # Initial Values a_0 = 100 a_1 = 0.5 rho = 0.9 sigma_d = 0.05 beta = 0.95 c = 2 gamma = 50.0 theta = 0.002 ac = (a_0 - c) / 2.0 R = np.array([[0, ac, 0], [ac, -a_1, 0.5], [0., 0.5, 0]]) R = -R Q = gamma / 2 Q_pf = 0. A = np.array([[1., 0., 0.], [0., 1., 0.], [0., 0., rho]]) B = np.array([[0.], [1.], [0.]]) B_pf = np.zeros((3, 1)) C = np.array([[0.], [0.], [sigma_d]]) # the *_pf endings refer to an example with pure forecasting # (see p171 in Robustness) self.rblq_test = RBLQ(Q, R, A, B, C, beta, theta) self.rblq_test_pf = RBLQ(Q_pf, R, A, B_pf, C, beta, theta) self.lq_test = LQ(Q, R, A, B, C, beta) self.methods = ['doubling', 'qz']
def setUp(self): # Initial Values a_0 = 100 a_1 = 0.5 rho = 0.9 sigma_d = 0.05 beta = 0.95 c = 2 gamma = 50.0 theta = 0.002 ac = (a_0 - c) / 2.0 R = np.array([[0, ac, 0], [ac, -a_1, 0.5], [0., 0.5, 0]]) R = -R Q = gamma / 2 A = np.array([[1., 0., 0.], [0., 1., 0.], [0., 0., rho]]) B = np.array([[0.], [1.], [0.]]) C = np.array([[0.], [0.], [sigma_d]]) self.rblq_test = RBLQ(Q, R, A, B, C, beta, theta) self.lq_test = LQ(Q, R, A, B, C, beta) self.Fr, self.Kr, self.Pr = self.rblq_test.robust_rule()