Planetary Orbital Evolution due to Tides
Orbital evolution of two objects experiencing tides
InverseLinearLconvEvolution< LINEAR_QUANTITY_TYPE > Class Template Reference
+ Inheritance diagram for InverseLinearLconvEvolution< LINEAR_QUANTITY_TYPE >:
+ Collaboration diagram for InverseLinearLconvEvolution< LINEAR_QUANTITY_TYPE >:

Public Member Functions

 InverseLinearLconvEvolution (double disk_lifetime, double total_angmom, double orbital_angmom, double initial_conv_angmom, double evolution_rate)
 
double operator() (double age) const
 Return the expected value for the stellar convective angular momentum at the given age. More...
 
double disk_lifetime () const
 The disk lifetime specified at construction. More...
 
double range_high () const
 The lower end of the range over which the function is defined. More...
 
double range_low () const
 The upper end of the range over which the function is defined. More...
 
Core::InterpSolutionIterator crossings (double=0) const
 An iterator over the abscissas where the function takes the given y value. More...
 
const Core::FunctionDerivativesderiv (double age) const
 Returns a pointer to the derivative of the function. More...
 
- Public Member Functions inherited from Core::OneArgumentFunction< double, double >
virtual ~OneArgumentFunction ()
 Provide a virtual destructor for a virtual class. More...
 

Private Attributes

double __disk_lifetime
 The lifetime of the protoplanetary disk. More...
 
double __evolution_rate
 The rate at which the linear quantity (see for example Oblique10LinearQuantity) evolves. More...
 
LINEAR_QUANTITY_TYPE __linear_quantity
 A function of the convective zone angular momentum which evolves linearly with time. More...
 
InverseFunction __find_lconv
 Evaluates to Lconv given \( \frac{3\pi}{5} T_0 \Delta_{10}(t - tdisk)\). More...
 

Detailed Description

template<class LINEAR_QUANTITY_TYPE>
class InverseLinearLconvEvolution< LINEAR_QUANTITY_TYPE >

Definition at line 16 of file InverseLinearLconvEvolution.h.

Constructor & Destructor Documentation

◆ InverseLinearLconvEvolution()

template<class LINEAR_QUANTITY_TYPE>
InverseLinearLconvEvolution< LINEAR_QUANTITY_TYPE >::InverseLinearLconvEvolution ( double  disk_lifetime,
double  total_angmom,
double  orbital_angmom,
double  initial_conv_angmom,
double  evolution_rate 
)
inline
Parameters
disk_lifetimeSee __disk_lifetime member.
total_angmomThe total angular momentum (does not evolve).
orbital_angmomThe orbital angular momentum (does not evolve).
initial_conv_angmomThe initial convective angular momentum.
evolution_rateSee __evolution_rate member.

Definition at line 34 of file InverseLinearLconvEvolution.h.

Member Function Documentation

◆ crossings()

template<class LINEAR_QUANTITY_TYPE>
Core::InterpSolutionIterator InverseLinearLconvEvolution< LINEAR_QUANTITY_TYPE >::crossings ( double  = 0) const
inlinevirtual

An iterator over the abscissas where the function takes the given y value.

Implements Core::OneArgumentFunction< double, double >.

Definition at line 82 of file InverseLinearLconvEvolution.h.

◆ deriv()

template<class LINEAR_QUANTITY_TYPE>
const Core::FunctionDerivatives* InverseLinearLconvEvolution< LINEAR_QUANTITY_TYPE >::deriv ( double  age) const
inlinevirtual

Returns a pointer to the derivative of the function.

Result must be deleted when no longer needed.

The use of a pointer allows avoiding potentially expensive copy opertaions.

Implements Core::OneArgumentDiffFunction.

Definition at line 95 of file InverseLinearLconvEvolution.h.

◆ disk_lifetime()

template<class LINEAR_QUANTITY_TYPE>
double InverseLinearLconvEvolution< LINEAR_QUANTITY_TYPE >::disk_lifetime ( ) const
inline

The disk lifetime specified at construction.

Definition at line 72 of file InverseLinearLconvEvolution.h.

◆ operator()()

template<class LINEAR_QUANTITY_TYPE>
double InverseLinearLconvEvolution< LINEAR_QUANTITY_TYPE >::operator() ( double  age) const
inlinevirtual

Return the expected value for the stellar convective angular momentum at the given age.

Implements Core::OneArgumentFunction< double, double >.

Definition at line 64 of file InverseLinearLconvEvolution.h.

◆ range_high()

template<class LINEAR_QUANTITY_TYPE>
double InverseLinearLconvEvolution< LINEAR_QUANTITY_TYPE >::range_high ( ) const
inlinevirtual

The lower end of the range over which the function is defined.

Implements Core::OneArgumentFunction< double, double >.

Definition at line 74 of file InverseLinearLconvEvolution.h.

◆ range_low()

template<class LINEAR_QUANTITY_TYPE>
double InverseLinearLconvEvolution< LINEAR_QUANTITY_TYPE >::range_low ( ) const
inlinevirtual

The upper end of the range over which the function is defined.

Implements Core::OneArgumentFunction< double, double >.

Definition at line 77 of file InverseLinearLconvEvolution.h.

Member Data Documentation

◆ __disk_lifetime

template<class LINEAR_QUANTITY_TYPE>
double InverseLinearLconvEvolution< LINEAR_QUANTITY_TYPE >::__disk_lifetime
private

The lifetime of the protoplanetary disk.

Definition at line 20 of file InverseLinearLconvEvolution.h.

◆ __evolution_rate

template<class LINEAR_QUANTITY_TYPE>
double InverseLinearLconvEvolution< LINEAR_QUANTITY_TYPE >::__evolution_rate
private

The rate at which the linear quantity (see for example Oblique10LinearQuantity) evolves.

Definition at line 20 of file InverseLinearLconvEvolution.h.

◆ __find_lconv

template<class LINEAR_QUANTITY_TYPE>
InverseFunction InverseLinearLconvEvolution< LINEAR_QUANTITY_TYPE >::__find_lconv
private

Evaluates to Lconv given \( \frac{3\pi}{5} T_0 \Delta_{10}(t - tdisk)\).

Definition at line 31 of file InverseLinearLconvEvolution.h.

◆ __linear_quantity

template<class LINEAR_QUANTITY_TYPE>
LINEAR_QUANTITY_TYPE InverseLinearLconvEvolution< LINEAR_QUANTITY_TYPE >::__linear_quantity
private

A function of the convective zone angular momentum which evolves linearly with time.

Definition at line 28 of file InverseLinearLconvEvolution.h.


The documentation for this class was generated from the following file: