Skip to content

Latest commit

 

History

History
294 lines (225 loc) · 14.5 KB

File metadata and controls

294 lines (225 loc) · 14.5 KB




class SineModel( NonLinearModel )[source]

Sinusoidal Model.

Two variants are implemented.

  1. By default it is the weighted sum of sine and cosine of the same frequency

     f( x:p ) = p1 * cos( 2 * π * p0 * x ) + p2 * sin( 2 * π * p0 * x )

where
     p0 = frequency
     p1 = amplitude cosine and
     p2 = amplitude sine. As always x = input.

The parameters are initialized at [1.0, 1.0, 1.0]. It is a non-linear model.

  1. If phase == True, the sinusoidal model has an explicit phase

     f( x:p ) = p0 * sin( 2 * π * p1 * x + p2 )

where
     p0 = amplitude
     p1 = frequency
     p2 = phase.

The parameters are initialized as [1.0, 1.0, 0.0].

Examples

sine = SineModel( )
print( sine.npchain )

3 pars = [0.1, 0.0, 1.0] sine.parameters = pars print( sine( numpy.arange( 11, dtype=float ) ) ) # One sine period pars = [0.1, 1.0, 0.0] sine.parameters = pars print( sine( numpy.arange( 11, dtype=float ) ) ) # One cosine period

Attributes

  • phase : bool (False)
         False : original 2 amplitudes model
         True : phase model

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

SineModel( copy=None, phase=False, **kwargs ) [source]

Sinusiodal model.

Number of parameters is 3.

Parameters

  • phase : bool
         if True, construct phase variant.
  • copy : SineModel
         model to copy
  • fixed : dictionary of {int:float}
         int list if parameters to fix permanently. Default None.
         float list of values for the fixed parameters.
         Attribute fixed can only be set in the constructor.

copy( ) [source]

Copy method.

baseResult( xdata, params ) [source]
Returns the result of the model function.

Parameters

  • xdata : array_like
         values at which to calculate the result
  • params : array_like
         values for the parameters.

basePartial( xdata, params, parlist=None ) [source]
Returns the partials at the input value.

Parameters

  • xdata : array_like
         values at which to calculate the result
  • params : array_like
         values for the parameters.
  • parlist : array_like
         list of indices active parameters (or None for all)

baseDerivative( xdata, params ) [source]
Returns the derivative of f to x (df/dx) at the input values.

Parameters

  • xdata : array_like
         values at which to calculate the result
  • params : array_like
         values for the parameters.

baseName( ) [source]
Returns a string representation of the model.

baseParameterUnit( k ) [source]
Return the unit of a parameter.

Parameters

  • k : int
         the kth parameter.

phaseResult( xdata, params ) [source]
Returns the result of the model function.

Parameters

  • xdata : array_like
         values at which to calculate the result
  • params : array_like
         values for the parameters.

phasePartial( xdata, params, parlist=None ) [source]
Returns the partials at the input value.

Parameters

  • xdata : array_like
         values at which to calculate the result
  • params : array_like
         values for the parameters.
  • parlist : array_like
         list of indices active parameters (or None for all)

phaseDerivative( xdata, params ) [source]
Returns the derivative of f to x (df/dx) at the input values.

Parameters

  • xdata : array_like
         values at which to calculate the result
  • params : array_like
         values for the parameters.

phaseName( ) [source]
Returns a string representation of the model.

phaseParameterUnit( k ) [source]
Return the unit of a parameter.

Parameters

  • k : int
         the kth parameter.
Methods inherited from NonLinearModel
Methods inherited from Model
Methods inherited from FixedModel
Methods inherited from BaseModel