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

Satisfied when a zone is rotating faster than a threshold. More...

#include <ExternalStoppingConditions.h>

+ Inheritance diagram for Evolve::RotFastCondition:
+ Collaboration diagram for Evolve::RotFastCondition:

Public Member Functions

 RotFastCondition (double spin_thres, DissipatingZone &zone)
 Create a condition tied to the given threshold in rad/day. More...
 
std::valarray< double > operator() (Core::EvolModeType evol_mode, const std::valarray< double > &orbit, const std::valarray< double > &derivatives, std::valarray< double > &stop_deriv) const
 Returns the difference between the convective zone spin and the threshold divided by the latter. More...
 
virtual std::string describe (int index=0) const
 See StoppingCondition::describe(). More...
 
- Public Member Functions inherited from Evolve::ExternalStoppingCondition
StoppingConditionType type (unsigned=0) const
 Identify this as an EXTERNAL condition. More...
 
- Public Member Functions inherited from Evolve::StoppingCondition
 StoppingCondition (short expected_crossing_deriv_sign=0)
 Create a generic stopping condition. More...
 
virtual size_t num_subconditions () const
 The number of subconditions in the current condition. More...
 
virtual void reached (short deriv_sign, unsigned index=0)
 Called when a stopping condition has been reached by the evolution. More...
 
virtual short expected_crossing_deriv_sign (unsigned index=0) const
 The expected sign of the derivative at the next zero-crossing. More...
 

Private Attributes

double __spin_thres
 The spin threshold in rad/day. More...
 
DissipatingZone__zone
 Which zone's rotation to monitor. More...
 

Detailed Description

Satisfied when a zone is rotating faster than a threshold.

Definition at line 22 of file ExternalStoppingConditions.h.

Constructor & Destructor Documentation

◆ RotFastCondition()

Evolve::RotFastCondition::RotFastCondition ( double  spin_thres,
DissipatingZone zone 
)
inline

Create a condition tied to the given threshold in rad/day.

Definition at line 31 of file ExternalStoppingConditions.h.

Member Function Documentation

◆ describe()

std::string Evolve::RotFastCondition::describe ( int  index = 0) const
virtual

◆ operator()()

std::valarray< double > Evolve::RotFastCondition::operator() ( Core::EvolModeType  evol_mode,
const std::valarray< double > &  orbit,
const std::valarray< double > &  derivatives,
std::valarray< double > &  stop_deriv 
) const
virtual

Returns the difference between the convective zone spin and the threshold divided by the latter.

Implements Evolve::StoppingCondition.

Definition at line 6 of file ExternalStoppingConditions.cpp.

Member Data Documentation

◆ __spin_thres

double Evolve::RotFastCondition::__spin_thres
private

The spin threshold in rad/day.

Definition at line 25 of file ExternalStoppingConditions.h.

◆ __zone

DissipatingZone& Evolve::RotFastCondition::__zone
private

Which zone's rotation to monitor.

Definition at line 28 of file ExternalStoppingConditions.h.


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