def testCtrbSISO(self, matarrayin, matarrayout): A = matarrayin([[1., 2.], [3., 4.]]) B = matarrayin([[5.], [7.]]) Wctrue = np.array([[5., 19.], [7., 43.]]) with check_deprecated_matrix(): Wc = ctrb(A, B) assert ismatarrayout(Wc) np.testing.assert_array_almost_equal(Wc, Wctrue)
def testGramWc(self, matarrayin, matarrayout): A = matarrayin([[1., -2.], [3., -4.]]) B = matarrayin([[5., 6.], [7., 8.]]) C = matarrayin([[4., 5.], [6., 7.]]) D = matarrayin([[13., 14.], [15., 16.]]) sys = ss(A, B, C, D) Wctrue = np.array([[18.5, 24.5], [24.5, 32.5]]) with check_deprecated_matrix(): Wc = gram(sys, 'c') assert ismatarrayout(Wc) np.testing.assert_array_almost_equal(Wc, Wctrue)