class RadialVelocityModel( NonLinearModel ) | Source |
---|
Model for the radial velocity variations of a star caused by a orbiting planet.
par | symbol | name | description | limits | comment |
---|---|---|---|---|---|
p0 | e | eccentricity | of the elliptic orbit | 0<e<1 | 0 = circular |
p1 | a | amplitude | of the velocity variation | a>0 | |
p2 | P | period | of the velocity variation | P>0 | |
p3 | T | phase | phase since periastron | 0<T<2π | |
p4 | ω | periastron | longitude of periastron | 0<ω<2π |
This class uses Kepplers2ndLaw to find radius and true anomaly.
Note The velocity of the star system is not included in this model. See example.
The parameters are initialized at [0.0, 1.0, 1.0, 0.0, 0.0]. It is a non-linear model.
Attributes
- keppler : Kepplers2ndLaw()
to calculate the radius and true anomaly
Examples
rv = RadialVelocityModel( )
print( rv.npars )
5
rv += PolynomialModel( 0 ) # add a constant system velocity
RadialVelocityModel( copy=None, **kwargs ) |
---|
Radial velocity model.
Number of parameters is 5
Parameters
- copy : RadialVelocityModel
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( ) |
---|
getMsini( stellarmass ) |
---|
Parameters
- stellarmass : float
mass of the host star in solar masses.
baseResult( xdata, params ) |
---|
f(x:p) = p1 * ( cos( v + p4 ) + p0 * cos( p4 ) )
where v is the true anomaly
Parameters
- xdata : array_like
values at which to calculate the result - params : array_like
values for the parameters.
basePartial( xdata, params, parlist=None ) |
---|
f(x:p) = p1 * ( cos( v + p4 ) + p0 * cos( p4 ) )
df/dp0 = p1 * ( - sin( v + p4 ) dv/dp0 + cos( p4 ) )
df/dp1 = cos( v + p4 ) + p0 * cos( p4 )
df/dp2 = - p1 * sin( v + p4 ) dv/dp2
df/dp3 = - p1 * sin( v + p4 ) dv/dp3
df/dp4 = - p1 * ( sin( v + p4 ) + p0 * sin( p4 ) )
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 ) |
---|
dfdx = - p1 * sin( v + p4 ) * dvdx
Parameters
- xdata : array_like
values at which to calculate the result - params : array_like
values for the parameters.
baseName( ) |
---|
baseParameterUnit( k ) |
---|
Parameters
- k : int
the kth parameter.
Methods inherited from NonLinearModel |
---|
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 )
- 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( )
- 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 |
---|