8 #define BUILDING_LIBRARY 10 #include "../Evolve/CInterface.h" 14 return reinterpret_cast<CPlanet*
>(
25 unsigned num_tidal_frequency_breaks,
26 unsigned num_spin_frequency_breaks,
27 double *tidal_frequency_breaks,
28 double *spin_frequency_breaks,
29 double *tidal_frequency_powers,
30 double *spin_frequency_powers,
31 double reference_phase_lag,
32 double inertial_mode_enhancement,
33 double inertial_mode_sharpness)
40 reinterpret_cast<BrokenPowerlawPhaseLagZone*>(zone),
41 num_tidal_frequency_breaks,
42 num_spin_frequency_breaks,
43 tidal_frequency_breaks,
44 spin_frequency_breaks,
45 tidal_frequency_powers,
46 spin_frequency_powers,
48 inertial_mode_enhancement,
49 inertial_mode_sharpness
void destroy_planet(CPlanet *planet)
Destroy a planet previously allocated using create_planet.
Declare C-style functions for accessing the functionality of the Evolve library.
Single zone non-evolving planets with huge dissipation, so they always remain locked to the disk...
CPlanet * create_planet(double mass, double radius)
Create a planet to use in a evolution calculation.
A DissipatingZone where the phase lag is described by a broken powerlaw.
LIB_PUBLIC void set_planet_dissipation(CPlanet *planet, unsigned num_tidal_frequency_breaks, unsigned num_spin_frequency_breaks, double *tidal_frequency_breaks, double *spin_frequency_breaks, double *tidal_frequency_powers, double *spin_frequency_powers, double reference_phase_lag, double inertial_mode_enhancement, double inertial_mode_sharpness)
Set the dissipative properties of the planet.
void set_zone_dissipation(BrokenPowerlawPhaseLagZone *zone, unsigned num_tidal_frequency_breaks, unsigned num_spin_frequency_breaks, double *tidal_frequency_breaks, double *spin_frequency_breaks, double *tidal_frequency_powers, double *spin_frequency_powers, double reference_phase_lag, double inertial_mode_enhancement, double inertial_mode_sharpness)