EtalonModel = class EtalonModel(NonLinearModel) |
|
EtalonModel(copy=None, **kwargs)
Etalon Model.
f( x:p ) = p_0 / ( 1.0 + p_1 * sin^2( \pi p_2 x + p_3 ) )
where
p_0 = amplitude
p_1 = finesse,
p_2 = frequency in 1/wavenumber
p_3 = phase,
As always x = input; it is in wavenumbers
The parameters are initialized at {1.0, 1.0, 1.0, 0.0}. It is a non-linear model.
The finesse should be positive. However, solutions where -1 < p_1 < 0 are equivalent
to a solution with parameters set as:
p_0 /= ( 1 + p_1 )
p_1 /= -( 1 + p_1 )
p_3 += pi/2 # 90 degree phase shift
A finesse below -1 causes infinities.
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
--------
>>> fpm = EtalonModel( )
>>> print( fpm.npchain )
4
>>> pars = [1.0, 30.0, 1.0, 0.0]
>>> fpm.parameters = pars
>>> print( fpm( numpy.arange( 101, dtype=float ) ) ) # etalon with 10 periods |
|
- Method resolution order:
- EtalonModel
- NonLinearModel
- Model
- FixedModel
- BaseModel
- builtins.object
Constructor:
- EtalonModel( copy=None, **kwargs )
- Etalon model.
Number of parameters is 4.
Parameters
----------
copy : EtalonModel
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
Methods defined here:
- baseDerivative( xdata, params )
- 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()
- Returns a string representation of the model.
- baseParameterUnit( k )
- Return the name of a parameter.
Parameters
----------
k : int
the kth parameter.
- basePartial( xdata, params, parlist=None )
- Returns the partials at the input values.
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)
- baseResult( xdata, params )
- 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.
- copy()
- Copy method.
Methods inherited from NonLinearModel:
Methods inherited from Model:
Overloaded operators and aliases
Other methods
- addModel( model )
- appendModel( model, operation )
- assignDF1( partial, i, dpi )
- assignDF2( partial, i, dpi )
- chainLength()
- correctParameters( params )
- derivative( xdata, param, useNum=False )
- divideModel( model )
- domain2Unit( dvalue, kpar=None )
- getIntegralUnit()
- getLimits()
- getLinearIndex()
- getNumberOfParameters()
- getParameterName( k )
- getParameterUnit( k )
- getPrior( k )
- hasLimits( fitindex=None )
- hasPriors( isBound=True )
- isDynamic()
- isNullModel()
- isolateModel( k )
- multiplyModel( model )
- nextPrior()
- numDerivative( xdata, param )
- numPartial( xdata, param )
- operate( res, pars, next )
- partialDomain2Unit( dvalue )
- pipeModel( model )
- 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)
- result( xdata, param=None )
- selectPipe( ndim, ninter, ndout )
- setLimits( lowLimits=None, highLimits=None )
- setPrior( k, prior=None, **kwargs )
- shortName()
- strictNumericDerivative( xdata, param )
- strictNumericPartial( xdata, params, parlist=None )
- subtractModel( model )
- testPartial( xdata, params, silent=True )
- unit2Domain( uvalue, kpar=None )
Methods inherited from FixedModel:
Methods inherited from BaseModel:
|
|