Planetary Orbital Evolution due to Tides
Orbital evolution of two objects experiencing tides
PowerlawPhaseLagZone Class Reference

A class that only defines the phase lag function for zones. More...

#include <PowerlawPhaseLagZone.h>

+ Inheritance diagram for PowerlawPhaseLagZone:
+ Collaboration diagram for PowerlawPhaseLagZone:

Public Member Functions

 PowerlawPhaseLagZone (double phase_lag_one_day=0, double phase_lag_powerlaw_index=0, double max_phase_lag=0)
 Create the zone with the phase lag scaling. More...
 
void set_phase_lag_one_day (double lag_1day)
 Set the modified phase lag at a forcing frequency of one day. More...
 
void set_phase_lag_powerlaw_index (double powerlaw_index)
 Set the modified pase lag period dependence powerlaw index. More...
 
void set_max_phase_lag (double max_lag)
 Set the maximum phase lag achieved for any frequency. More...
 
virtual double modified_phase_lag (int orbital_frequency_multiplier, int spin_frequency_multiplier, double forcing_frequency, Dissipation::QuantityEntry entry, double &above_lock_value) const
 Should return the tidal phase lag time the love number for the given tidal term (or one of its derivatives). More...
 
virtual double love_coefficient (int, int, Dissipation::QuantityEntry) const
 Should return the corresponding component of the love coefficient (Lai 2012 Equation 24). More...
 

Private Attributes

double __phase_lag_one_day
 The phase lag at a forcing frequency of one day. More...
 
double __phase_lag_powerlaw_index
 The powerlaw index of the phase lag period dependence. More...
 
double __max_phase_lag
 The maximum phase lag achieved for any frequency. More...
 

Detailed Description

A class that only defines the phase lag function for zones.

Definition at line 15 of file PowerlawPhaseLagZone.h.

Constructor & Destructor Documentation

◆ PowerlawPhaseLagZone()

PowerlawPhaseLagZone::PowerlawPhaseLagZone ( double  phase_lag_one_day = 0,
double  phase_lag_powerlaw_index = 0,
double  max_phase_lag = 0 
)
inline

Create the zone with the phase lag scaling.

Parameters
phase_lag_one_dayThe phase lag at a forcing frequency of 1 day.
phase_lag_powerlaw_indexThe powerlaw index of the phase lag period dependence.
max_phase_lagThe maximum phase lag achieved at any frequency.

Definition at line 27 of file PowerlawPhaseLagZone.h.

Member Function Documentation

◆ love_coefficient()

virtual double PowerlawPhaseLagZone::love_coefficient ( int  ,
int  ,
Dissipation::QuantityEntry   
) const
inlinevirtual

Should return the corresponding component of the love coefficient (Lai 2012 Equation 24).

Definition at line 84 of file PowerlawPhaseLagZone.h.

◆ modified_phase_lag()

double PowerlawPhaseLagZone::modified_phase_lag ( int  orbital_frequency_multiplier,
int  spin_frequency_multiplier,
double  forcing_frequency,
Dissipation::QuantityEntry  entry,
double &  above_lock_value 
) const
virtual

Should return the tidal phase lag time the love number for the given tidal term (or one of its derivatives).

In case the forcing frequency is exactly zero, it should return the phase lag for the case of the spin frequency approaching the term from below. The lag for spin frequency approaching from above should be written to above_lock_value. If the forcing frequency is non-zero, leave above_lock_value untouched.

Parameters
orbital_frequency_multiplierThe multiplier of the orbital frequency in the expression for the forcing frequency.
spin_frequency_multiplierThe multiplier of the spin frequency in the expression for the forcing frequency.
forcing_frequencyThe current forcing frequency in rad/day.
entryThe return value should be either the phase lag itself (NO_DERIV) or its derivative w.r.t. the specified quantity.
above_lock_valueIf the lag of a locked term is calculated this should be set to the lag assuming the spin frequency is just above the lock. Otherwise, leave untouched.

Definition at line 3 of file PowerlawPhaseLagZone.cpp.

◆ set_max_phase_lag()

void PowerlawPhaseLagZone::set_max_phase_lag ( double  max_lag)
inline

Set the maximum phase lag achieved for any frequency.

Definition at line 49 of file PowerlawPhaseLagZone.h.

◆ set_phase_lag_one_day()

void PowerlawPhaseLagZone::set_phase_lag_one_day ( double  lag_1day)
inline

Set the modified phase lag at a forcing frequency of one day.

Definition at line 41 of file PowerlawPhaseLagZone.h.

◆ set_phase_lag_powerlaw_index()

void PowerlawPhaseLagZone::set_phase_lag_powerlaw_index ( double  powerlaw_index)
inline

Set the modified pase lag period dependence powerlaw index.

Definition at line 45 of file PowerlawPhaseLagZone.h.

Member Data Documentation

◆ __max_phase_lag

double PowerlawPhaseLagZone::__max_phase_lag
private

The maximum phase lag achieved for any frequency.

Definition at line 18 of file PowerlawPhaseLagZone.h.

◆ __phase_lag_one_day

double PowerlawPhaseLagZone::__phase_lag_one_day
private

The phase lag at a forcing frequency of one day.

Definition at line 18 of file PowerlawPhaseLagZone.h.

◆ __phase_lag_powerlaw_index

double PowerlawPhaseLagZone::__phase_lag_powerlaw_index
private

The powerlaw index of the phase lag period dependence.

Definition at line 18 of file PowerlawPhaseLagZone.h.


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