Navigation
class UserModel( Model ) | Source |
---|
Wrapper for a Models where the User provides the method the evaluate f( x: p ) as userResult( x, param )
and optionally the partial derivatives to p and x and a name
df/dp as userPartial( x, param ) df/dx as userDeriv( x. param ) name as string
Examples
import numpy as np
def ur( x, p )
return p[0] * np.sin( p[1] * x + p[2] * np.log( x + p[3] ) )
mdl = UserModel( 4, ur, userName="slowchirp" )
print( mdl )
UserModel( slowchirp )
print( mdl.npars )
4
Attributes
- userResult : callable
method to evaluate the result of the F(x:p)
defined as method( x, p ) - userPartial : callable
method to evaluate the partial derivatives df/dp
defined as method( x, p ). Default: numeric derivative - userDerivative : callable
method to evaluate the derivative df/dx
defined as method( x, p ). Default: numeric derivative - userName : str
name of the class
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
UserModel( npars, userResult, ndim=1, userPartial=None, userDeriv=None, userName="unknown", copy=None, **kwargs ) |
---|
User provided model.
Parameters
- npars : int
number of parameters of this model - userResult : callable
method of the form userResult( x, p )
where x is the independent variable; array_like
p is the parameter vector; array_like - ndim : int
number of input streams. - userPartial : callable
method of the form userPartial( x, p )
where x is the independent variable; array_like
p is the parameter vector; array_like - userDeriv : callable
method of the form userDeriv( x, p )
where x is the independent variable; array_like
p is the parameter vector; array_like - userName : str
Name for this model - copy : UserModel
to be copied
copy( ) |
---|
setMethod( name, userMethod, numeric=None ) |
---|
baseResult( xdata, params ) |
---|
Parameters
- xdata : array_like
values at which to calculate the result - params : array_like
values for the parameters.
basePartial( xdata, params, parlist=None ) |
---|
Parameters
- xdata : array_like
values at which to calculate the partials - params : array_like
values for the parameters. - parlist : array_like
list of indices active parameters (or None for all)
baseDerivative( xdata, params ) |
---|
Parameters
- xdata : array_like
values at which to calculate the result - params : array_like
values for the parameters.
baseName( ) |
---|
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 |
---|