Planetary Orbital Evolution due to Tides
Orbital evolution of two objects experiencing tides
Evolve::ExpectedEvolutionMode< MODE_TYPE > Class Template Reference

Some evolution mode that changes at specified ages. More...

#include <ExpectedEvolutionMode.h>

+ Collaboration diagram for Evolve::ExpectedEvolutionMode< MODE_TYPE >:

Public Member Functions

 ExpectedEvolutionMode (double break_precision=1e-5)
 Create. More...
 
void add_break (double age, MODE_TYPE mode)
 Add an evolution mode that applies up to the given age. More...
 
bool near_break (double age) const
 Is the given age close to a break (hence ambigous mode). More...
 
MODE_TYPE operator() (double age) const
 The evolution mode that corresponds to the given age. More...
 

Private Attributes

std::list< double > __age_breaks
 The ages at which evolution mode changes occur. More...
 
std::list< MODE_TYPE > __expected_mode
 The evolution modes that apply between consecutive __age_breaks. More...
 
double __break_precision
 The precision with which breaks should be detected. More...
 

Detailed Description

template<typename MODE_TYPE>
class Evolve::ExpectedEvolutionMode< MODE_TYPE >

Some evolution mode that changes at specified ages.

Definition at line 22 of file ExpectedEvolutionMode.h.

Constructor & Destructor Documentation

◆ ExpectedEvolutionMode()

template<typename MODE_TYPE>
Evolve::ExpectedEvolutionMode< MODE_TYPE >::ExpectedEvolutionMode ( double  break_precision = 1e-5)
inline

Create.

Definition at line 34 of file ExpectedEvolutionMode.h.

Member Function Documentation

◆ add_break()

template<typename MODE_TYPE>
void Evolve::ExpectedEvolutionMode< MODE_TYPE >::add_break ( double  age,
MODE_TYPE  mode 
)
inline

Add an evolution mode that applies up to the given age.

Definition at line 39 of file ExpectedEvolutionMode.h.

◆ near_break()

template<typename MODE_TYPE>
bool Evolve::ExpectedEvolutionMode< MODE_TYPE >::near_break ( double  age) const
inline

Is the given age close to a break (hence ambigous mode).

Definition at line 43 of file ExpectedEvolutionMode.h.

◆ operator()()

template<typename MODE_TYPE>
MODE_TYPE Evolve::ExpectedEvolutionMode< MODE_TYPE >::operator() ( double  age) const
inline

The evolution mode that corresponds to the given age.

Definition at line 57 of file ExpectedEvolutionMode.h.

Member Data Documentation

◆ __age_breaks

template<typename MODE_TYPE>
std::list<double> Evolve::ExpectedEvolutionMode< MODE_TYPE >::__age_breaks
private

The ages at which evolution mode changes occur.

Definition at line 25 of file ExpectedEvolutionMode.h.

◆ __break_precision

template<typename MODE_TYPE>
double Evolve::ExpectedEvolutionMode< MODE_TYPE >::__break_precision
private

The precision with which breaks should be detected.

Definition at line 31 of file ExpectedEvolutionMode.h.

◆ __expected_mode

template<typename MODE_TYPE>
std::list<MODE_TYPE> Evolve::ExpectedEvolutionMode< MODE_TYPE >::__expected_mode
private

The evolution modes that apply between consecutive __age_breaks.

Definition at line 28 of file ExpectedEvolutionMode.h.


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