Newton polynomial
The NewtonPolyNomial
class defines a polynomial described with respect to the Newton basis. We let it inherit some common methods from the polynomial base class, for example, polynomial.plot
, polynomial.zeros
, and even parts of the __init__
method, by using the super
command (refer to section Subclassing and Inheritance in Chapter 8, Classes):
class NewtonPolynomial(PolyNomial): base = 'Newton' def __init__(self,**args): if 'coeff' in args: try: self.xi = array(args['xi']) except KeyError: raise ValueError('Coefficients need to be given' 'together with abscissae values xi') super(NewtonPolynomial, self).__init__(**args)
Once the interpolation points are given, the computation of the coefficients is performed by:
def point_2_coeff(self): return array(list(self.divdiff()))
Here we used divided differences for computing the...