Navigation
class HarmonicModel( LinearModel ) | Source |
---|
Harmonic oscillator Model.
For order = N and period = 1
f( x:p ) = ∑j ( pk * cos( 2*πjx ) + pk+1 * sin( 2*πjx ) )
for j = 1:N; and k = 0:2N:2.
Otherwise scale with period
x = x / period
The number of parameters is 2 * order. The parameters are initialized at 1.0. It is a linear model.
Author: Do Kester
Examples
harm = HarmonicModel( 3 ) # period = 1
print( harm.npbase )
6
harm = HarmonicModel( 4, 2.7 ) # period = 2.7
Attributes
- order : int
the order of the harmonic - period : float
the length of the period of the fundamental
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
HarmonicModel( order, period=1.0, copy=None, **kwargs ) |
---|
Harmonic oscillator model.
Number of parameters is 2 * order.
Parameters
- order : int (>0)
the number of overtones - period : float
length of the period of the fundamental. default 1.0 - copy : HarmonicModel
model 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( ) |
---|
basePartial( xdata, params, parlist=None ) |
---|
Parameters
- xdata : array_like
x values at which to calculate the partials - params : array_like
parameters of the model. (ignored in LinearModels) - parlist : array_like
list of indices of active parameters
baseDerivative( xdata, params ) |
---|
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.
baseParameterName( k ) |
---|
- k : int
parameter number.
baseParameterUnit( k ) |
---|
- k : int
parameter number.
Methods inherited from LinearModel |
---|
Methods inherited from Model |
---|
- chainLength( )
- isNullModel( )
- isolateModel( k )
- addModel( model )
- subtractModel( model )
- multiplyModel( model )
- divideModel( model )
- pipeModel( model )
- appendModel( model, operation )
- correctParameters( params )
- result( xdata, param=None )
- operate( res, pars, next )
- derivative( xdata, param, useNum=False )
- partial( xdata, param, useNum=False )
- selectPipe( ndim, ninter, ndout )
- pipe_0( dGd, dHdG )
- pipe_1( dGd, dHdG )
- pipe_2( dGd, dHdG )
- pipe_3( dGd, dHdG )
- pipe_4( dGdx, dHdG )
- pipe_5( dGdx, dHdG )
- pipe_6( dGdx, dHdG )
- pipe_7( dGdx, dHdG )
- pipe_8( dGdx, dHdG )
- pipe_9( dGdx, dHdG )
- shortName( )
- getNumberOfParameters( )
- numDerivative( xdata, param )
- numPartial( xdata, param )
- isDynamic( )
- hasPriors( isBound=True )
- getPrior( kpar )
- setPrior( kpar, prior=None, **kwargs )
- getParameterName( kpar )
- getParameterUnit( kpar )
- getIntegralUnit( )
- setLimits( lowLimits=None, highLimits=None )
- getLimits( )
- hasLimits( fitindex=None )
- unit2Domain( uvalue, kpar=None )
- domain2Unit( dvalue, kpar=None )
- partialDomain2Unit( dvalue )
- nextPrior( )
- isMixed( )
- getLinearIndex( )
- testPartial( xdata, params, silent=True )
- strictNumericPartial( xdata, params, parlist=None )
- assignDF1( partial, i, dpi )
- assignDF2( partial, i, dpi )
- strictNumericDerivative( xdata, param )
Methods inherited from FixedModel |
---|
Methods inherited from BaseModel |
---|