import posydon.utils.constants as const
[docs]
def default_gravrad(a, e, primary, secondary, verbose = False):
m1 = primary["mass"]
m2 = secondary["mass"]
v = (m1 * m2 / (m1 + m2) ** 2)
da_gr = (
(-2 * const.clight / 15) * (v / ((1 - e ** 2) ** (9 / 2)))
* (const.standard_cgrav * (m1 + m2) * const.msol
/ (a * const.rsol * const.clight ** 2)) ** 3
* ((96 + 292 * e ** 2 + 37 * e ** 4) * (1 - e ** 2)
- (1 / 28 * const.standard_cgrav * (m1 + m2) * const.msol
/ (a * const.rsol * const.clight ** 2))
* ((14008 + 4707 * v)+(80124 + 21560 * v) * e ** 2
+ (17325 + 10458) * e ** 4 - 0.5 * (5501 - 1036 * v) * e ** 6))
) * const.secyer / const.rsol
# eq. (35) of Junker et al. 1992, 254, 146
de_gr = (
(-1 / 15) * ((v * const.clight ** 3) / (
const.standard_cgrav * (m1 + m2) * const.msol))
* (const.standard_cgrav * (m1 + m2) * const.msol / (
a * const.rsol * const.clight ** 2)) ** 4
* (e / (1 - e ** 2) ** (7 / 2))
* ((304 + 121 * e ** 2) * (1 - e ** 2)
- (1 / 56 * const.standard_cgrav * (m1 + m2) * const.msol
/ (a * const.rsol * const.clight ** 2))
* (8 * (16705 + 4676 * v) + 12 * (9082 + 2807 * v) * e ** 2
- (25211 - 3388 * v) * e ** 4))
) * const.secyer
# eq. (36) of Junker et al. 1992, 254, 146
if verbose:
print("da,de_gr = ", da_gr, de_gr)
da = da_gr
de = de_gr
return da, de