Exemplo n.º 1
0
    def test_solve_lineq(self):
        lineq_ans = np.load('test/test_files/lineq_ans.npy')
        lineq_ans = [arr for arr in lineq_ans]

        np.testing.assert_array_almost_equal(
            builder.solve_lineq(builder.calc_big_H(taus),
                                builder.calc_big_A(knots, taus),
                                builder.calc_B(prices, taus)), lineq_ans)

        lineq_ans_no_split = np.load('test/test_files/lineq_ans_no_split.npy')
        np.testing.assert_array_almost_equal(
            builder.solve_lineq(builder.calc_big_H(taus),
                                builder.calc_big_A(knots, taus),
                                builder.calc_B(prices, taus),
                                split=False), lineq_ans_no_split)
Exemplo n.º 2
0
    def test_curve_values(self):
        curve_values = np.load('test/test_files/curve_values.npy')
        curve_values_flat = np.load('test/test_files/curve_values_flat.npy')
        H = builder.calc_big_H(taus)
        A = builder.calc_big_A(knots, taus)
        B = builder.calc_B(prices, taus)
        X = builder.solve_lineq(H, A, B)

        np.testing.assert_array_almost_equal(
            builder.curve_values(taus, X, builder.smfc), curve_values)

        np.testing.assert_array_almost_equal(
            builder.curve_values(taus, X, builder.smfc, flatten=True),
            curve_values_flat)
Exemplo n.º 3
0
 def test_calc_big_H(self):
     big_H = np.load('test/test_files/big_H.npy')
     np.testing.assert_array_equal(builder.calc_big_H(taus), big_H)