BayesicFitting

Model Fitting and Evidence Calculation

View project on GitHub



class ChebyshevPolynomialModel( LinearModel )Source

Chebyshev polynomial model of arbitrary degree.

  f( x:p ) = ∑ pk * Tk( x )

where the sum is over k running from 0 to degree ( inclusive ).

The T( x ) are Chebyshev polynomials of the first kind which are defined recursively as

  T0( x ) = 1
  T1( x ) = x
  Tn( x ) = 2 x Tn-1( x ) - Tn-2( x ) for n >= 2

These polynomials are orthogonal, when integrated over x in [-1,+1].

It is a linear model.

Attributes

  • degree : int
         degree of the polynomial

Attributes from Model

npchain, parameters, stdevs, xUnit, yUnit

Attributes from FixedModel

npmax, fixed, parlist, mlist

Attributes from BaseModel

npbase, ndim, priors, posIndex, nonZero, tiny, deltaP, parNames

Examples

poly = ChebyshevPolynomialModel( 3 )         # 3rd degree polynomial
print poly.getNumberOfParameters( )
4

ChebyshevPolynomialModel( degree, copy=None, **kwargs )

Chebyshev Polynomial of a certain degree.

The number of parameters is ( degree + 1 )

Parameters

  • degree : int
         the degree of the polynomial.
  • copy : ChebyshevPolynomialModel
         to be copied
  • fixed : None or dictionary of {int:float|Model}
         int index of parameter to fix permanently.
         float|Model values for the fixed parameters.
         Attribute fixed can only be set in the constructor.
         See: FixedModel

copy( )

Copy method.

basePartial( xdata, params, parlist=None )
Returns the partials at the xdata value.

The partials are calculated using the recurrence formula

  fn( x ) = 2 * x * fn-1( x ) - fn-2( x )

Parameters

  • xdata : array_like
         value at which to calculate the partials
  • params : array_like
         parameters of the model (ignored for linear models)
  • parlist : array_like
         list of indices of active parameters

baseDerivative( xdata, params )
Returns the derivative df/dx at the xdata value.

  dfn = n * Un-1
  where
  U0 = 1
  U1 = 2x
  Un+1 = 2 * x * Un - Un-1

Parameters

  • xdata : array_like
         value at which to calculate the partials
  • params : array_like
         parameters of the model

baseName( )
Returns a string representation of the model.

baseParameterUnit( k )
Return the unit of the indicated parameter. It is always yUnit, as it cannot be otherwise. The xUnit must be dimensionless.

Parameters

  • k : int
         parameter number.
Methods inherited from LinearModel
Methods inherited from Model
Methods inherited from FixedModel
Methods inherited from BaseModel