PHOEBE 2.1 Documentation

2.1 Docs

IPython Notebook | Python Script

Apsidal Motion


As always, let’s do imports and initialize a logger and a new Bundle. See Building a System for more details.

%matplotlib inline
import phoebe
from phoebe import u # units
import numpy as np
import matplotlib.pyplot as plt

logger = phoebe.logger()

b = phoebe.default_binary()

In order for apsidal motion to be apparent, we need an eccentric system that is precessing.

b['ecc'] = 0.2

Let’s set a very noticeable rate of precession.

b['dperdt'] = 2.0 * u.deg/u.d

We’ll add lc, orb, and etv datasets to see how the apsidal motion affects each. We’ll need to sample over several orbits of the binary (which has a period of 3 days, by default).

b.add_dataset('lc', times=np.linspace(0,1,101), dataset='lc01')
b.add_dataset('lc', times=np.linspace(4,5,101), dataset='lc02')
<ParameterSet: 15 parameters | contexts: compute, dataset>
b.add_dataset('orb', times=np.linspace(0,5,401), dataset='orb01')
<ParameterSet: 3 parameters | contexts: compute, dataset>
<ParameterSet: 18 parameters | kinds: orb, lc>

Influence on Orbits (positions)

Let’s plot the orbit from above and highlight the positions of each star at each cycle (times that are multiples of the period).

afig, mplfig = b['orb01@model'].plot(y='ws', time=[0,1,2,3,4,5], show=True)

Influence on Light Curves (fluxes)

Now looking at the light curve, we can see that this is resulting in the eclipses moving in phase-space.

afig, mplfig = b['lc01@model'].plot()
afig, mplfig = b['lc02@model'].plot(time=[0,1,4,5], show=True)
afig, mplfig = b['lc01@model'].plot(x='phases')
afig, mplfig = b['lc02@model'].plot(x='phases', show=True)
Prev: Eccentricity (Volume Conservation) Next: Systemic Velocity
Last update: 10/29/2018 9:20 a.m. (CET)