Planetary Orbital Evolution due to Tides
Orbital evolution of two objects experiencing tides
Evolve::StopInformation Class Reference

The information about why and where the evolution should stop. More...

#include <StopInformation.h>

+ Collaboration diagram for Evolve::StopInformation:

Public Member Functions

 StopInformation (double stop_age=Core::Inf, double stop_precision=Core::NaN, StoppingConditionType stop_reason=NO_STOP, bool is_crossing=false, bool crossed_zero=false, size_t stop_condition_index=0, short deriv_sign_at_crossing=0)
 Create an object with the information about why we evolution should be stopped. More...
 
 StopInformation (const StopInformation &orig)
 Copy orig to *this. More...
 
double stop_age () const
 The target stopping age in Gyr. More...
 
double & stop_age ()
 The target stopping age in Gyr. More...
 
double stop_condition_precision () const
 The precision up to which the reason to stop is satisfied. More...
 
double & stop_condition_precision ()
 The precision up to which the reason to stop is satisfied. More...
 
StoppingConditionType stop_reason () const
 The reason for stopping. More...
 
StoppingConditionTypestop_reason ()
 The reason for stopping. More...
 
bool is_crossing () const
 Is the reason for stopping that a condition actually crossed zero? More...
 
bool & is_crossing ()
 Is the reason for stopping that a condition actually crossed zero? More...
 
size_t stop_condition_index () const
 The index of the condition which caused us to stop. More...
 
size_t & stop_condition_index ()
 The index of the condition which caused us to stop. More...
 
bool crossed_zero () const
 Did we stop after the stopping condition crossed zero (always false for extrema). More...
 
bool & crossed_zero ()
 Did we stop after the stopping condition crossed zero (always false for extrema). More...
 
StopInformationoperator= (const StopInformation &rhs)
 Copy rhs to *this. More...
 
short deriv_sign_at_crossing () const
 The sign of the derivative at zero-crossing. More...
 
short & deriv_sign_at_crossing ()
 The sign of the derivative at zero-crossing. More...
 

Private Attributes

double __stop_age
 The target stopping age in Gyr. More...
 
double __stop_condition_precision
 The precision up to which the reason to stop is satisfied. More...
 
StoppingConditionType __stop_reason
 The reason for stopping. More...
 
bool __is_crossing
 Is the reason for stopping that a condition actually crossed zero? More...
 
bool __crossed_zero
 Did the last step actually cross zero? More...
 
size_t __stop_condition_index
 The index of the condition which caused us to stop. More...
 
short __deriv_sign_at_crossing
 The sign of the derivative at zero-crossing. More...
 

Detailed Description

The information about why and where the evolution should stop.

Definition at line 19 of file StopInformation.h.

Constructor & Destructor Documentation

◆ StopInformation() [1/2]

Evolve::StopInformation::StopInformation ( double  stop_age = Core::Inf,
double  stop_precision = Core::NaN,
StoppingConditionType  stop_reason = NO_STOP,
bool  is_crossing = false,
bool  crossed_zero = false,
size_t  stop_condition_index = 0,
short  deriv_sign_at_crossing = 0 
)
inline

Create an object with the information about why we evolution should be stopped.

Parameters
stop_ageThe target stopping age in Gyr.
stop_precisionThe precision up to which the reason to stop is satisfied.
stop_reasonThe reason for stopping.
is_crossingIs the reason for stopping that a condition actually crossed zero?
crossed_zeroDid we stop after a zero-crossing.
stop_condition_indexThe index of the condition which caused us to stop.
deriv_sign_at_crossingThe sign of the derivative of the condition at zero-crossing (undefined for extrema.

Definition at line 51 of file StopInformation.h.

◆ StopInformation() [2/2]

Evolve::StopInformation::StopInformation ( const StopInformation orig)
inline

Copy orig to *this.

Definition at line 84 of file StopInformation.h.

Member Function Documentation

◆ crossed_zero() [1/2]

bool Evolve::StopInformation::crossed_zero ( ) const
inline

Did we stop after the stopping condition crossed zero (always false for extrema).

Definition at line 127 of file StopInformation.h.

◆ crossed_zero() [2/2]

bool& Evolve::StopInformation::crossed_zero ( )
inline

Did we stop after the stopping condition crossed zero (always false for extrema).

Definition at line 131 of file StopInformation.h.

◆ deriv_sign_at_crossing() [1/2]

short Evolve::StopInformation::deriv_sign_at_crossing ( ) const
inline

The sign of the derivative at zero-crossing.

Definition at line 147 of file StopInformation.h.

◆ deriv_sign_at_crossing() [2/2]

short& Evolve::StopInformation::deriv_sign_at_crossing ( )
inline

The sign of the derivative at zero-crossing.

Definition at line 155 of file StopInformation.h.

◆ is_crossing() [1/2]

bool Evolve::StopInformation::is_crossing ( ) const
inline

Is the reason for stopping that a condition actually crossed zero?

Definition at line 115 of file StopInformation.h.

◆ is_crossing() [2/2]

bool& Evolve::StopInformation::is_crossing ( )
inline

Is the reason for stopping that a condition actually crossed zero?

Definition at line 117 of file StopInformation.h.

◆ operator=()

StopInformation& Evolve::StopInformation::operator= ( const StopInformation rhs)
inline

Copy rhs to *this.

Definition at line 134 of file StopInformation.h.

◆ stop_age() [1/2]

double Evolve::StopInformation::stop_age ( ) const
inline

The target stopping age in Gyr.

Definition at line 95 of file StopInformation.h.

◆ stop_age() [2/2]

double& Evolve::StopInformation::stop_age ( )
inline

The target stopping age in Gyr.

Definition at line 98 of file StopInformation.h.

◆ stop_condition_index() [1/2]

size_t Evolve::StopInformation::stop_condition_index ( ) const
inline

The index of the condition which caused us to stop.

Definition at line 120 of file StopInformation.h.

◆ stop_condition_index() [2/2]

size_t& Evolve::StopInformation::stop_condition_index ( )
inline

The index of the condition which caused us to stop.

Definition at line 123 of file StopInformation.h.

◆ stop_condition_precision() [1/2]

double Evolve::StopInformation::stop_condition_precision ( ) const
inline

The precision up to which the reason to stop is satisfied.

Definition at line 101 of file StopInformation.h.

◆ stop_condition_precision() [2/2]

double& Evolve::StopInformation::stop_condition_precision ( )
inline

The precision up to which the reason to stop is satisfied.

Definition at line 105 of file StopInformation.h.

◆ stop_reason() [1/2]

StoppingConditionType Evolve::StopInformation::stop_reason ( ) const
inline

The reason for stopping.

Definition at line 109 of file StopInformation.h.

◆ stop_reason() [2/2]

StoppingConditionType& Evolve::StopInformation::stop_reason ( )
inline

The reason for stopping.

Definition at line 112 of file StopInformation.h.

Member Data Documentation

◆ __crossed_zero

bool Evolve::StopInformation::__crossed_zero
private

Did the last step actually cross zero?

Definition at line 38 of file StopInformation.h.

◆ __deriv_sign_at_crossing

short Evolve::StopInformation::__deriv_sign_at_crossing
private

The sign of the derivative at zero-crossing.

Definition at line 47 of file StopInformation.h.

◆ __is_crossing

bool Evolve::StopInformation::__is_crossing
private

Is the reason for stopping that a condition actually crossed zero?

Definition at line 38 of file StopInformation.h.

◆ __stop_age

double Evolve::StopInformation::__stop_age
private

The target stopping age in Gyr.

Definition at line 22 of file StopInformation.h.

◆ __stop_condition_index

size_t Evolve::StopInformation::__stop_condition_index
private

The index of the condition which caused us to stop.

Definition at line 44 of file StopInformation.h.

◆ __stop_condition_precision

double Evolve::StopInformation::__stop_condition_precision
private

The precision up to which the reason to stop is satisfied.

If we are stopping because some stopping condition is actually satisfied, this is the value of the condition. If we are stopping because of an extremum this is the difference between the estimated value of the condition at the extremum and the value at the closest step.

Definition at line 22 of file StopInformation.h.

◆ __stop_reason

StoppingConditionType Evolve::StopInformation::__stop_reason
private

The reason for stopping.

Definition at line 34 of file StopInformation.h.


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