A class that only defines the phase lag function for zones. More...
#include <PowerlawPhaseLagZone.h>
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... | |
A class that only defines the phase lag function for zones.
Definition at line 15 of file PowerlawPhaseLagZone.h.
|
inline |
Create the zone with the phase lag scaling.
phase_lag_one_day | The phase lag at a forcing frequency of 1 day. |
phase_lag_powerlaw_index | The powerlaw index of the phase lag period dependence. |
max_phase_lag | The maximum phase lag achieved at any frequency. |
Definition at line 27 of file PowerlawPhaseLagZone.h.
|
inlinevirtual |
Should return the corresponding component of the love coefficient (Lai 2012 Equation 24).
Definition at line 84 of file PowerlawPhaseLagZone.h.
|
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.
orbital_frequency_multiplier | The multiplier of the orbital frequency in the expression for the forcing frequency. |
spin_frequency_multiplier | The multiplier of the spin frequency in the expression for the forcing frequency. |
forcing_frequency | The current forcing frequency in rad/day. |
entry | The return value should be either the phase lag itself (NO_DERIV) or its derivative w.r.t. the specified quantity. |
above_lock_value | If 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.
|
inline |
Set the maximum phase lag achieved for any frequency.
Definition at line 49 of file PowerlawPhaseLagZone.h.
|
inline |
Set the modified phase lag at a forcing frequency of one day.
Definition at line 41 of file PowerlawPhaseLagZone.h.
|
inline |
Set the modified pase lag period dependence powerlaw index.
Definition at line 45 of file PowerlawPhaseLagZone.h.
|
private |
The maximum phase lag achieved for any frequency.
Definition at line 18 of file PowerlawPhaseLagZone.h.
|
private |
The phase lag at a forcing frequency of one day.
Definition at line 18 of file PowerlawPhaseLagZone.h.
|
private |
The powerlaw index of the phase lag period dependence.
Definition at line 18 of file PowerlawPhaseLagZone.h.