def test_blossom(self): s = CubicSpline(cp, knots = knots) s.basis_function(knots, 0.2) bases = [s.basis_function(self.knots, i) for i in range(len(self.knots))] bases_in_point = [N(0.2) for N in bases] result = sum(bases_in_point) expected = s(0.2) self.assertAlmostEqual(result[0], expected[0]) self.assertAlmostEqual(result[1], expected[1])
def test_basis_sum(self): s = CubicSpline(cp, knots = knots) bases = [s.basis_function(self.knots, i) for i in range(len(self.knots))] x = linspace(0,1, 200) y = [[N(val) for val in x] for N in bases] Y = zeros(1, len(x)) for element in y: Y += element self.assertEqual([y for y in Y], 1) pass