In-Class Assignment 18#

In-Class Only, Not Submitted for Credit

Learning Objectives#

  • identify the various phases of mass transfer in a binary star system

  • gain a qualitative understanding of Case A evolution in the HR diagram

  • compare the analytical decay of the orbit to a MESA calculation

import numpy as np
import matplotlib.pyplot as plt
import pandas as pd

Binary Star System#

\(M_{1}=10M_{\odot}\)

\(M_{2}=8.9M_{\odot}\)

\(P_{i}=2.2\) days

example based on the $MESA_DIR/binary/test_suite/evolve_both_stars example in MESA

Download the following model files locally.

a. - Identifying Various Phases of Mass Transfer#

Individually/with the person next to you:#

Using the history data for the primary (m1_history.data) and secondary (m2_history.data),

Plot 1 - M/R diagram

    1. Plot a total mass star_mass (x-axis) - log radius (\(R_{\odot}\)) log_R diagram with both models on the same plot (\(M/M_{\odot}\) vs log \((R/R_{\odot})\))

    1. Label - Label which star if the Primary \(M_1\) and Secondary \(M_2\).

    1. Label - the phase start of ZAMS (A) to the filling of the Roche lobe of the primary (B) using plt.annotate or similar for the primary.

    • You can do this via inspection or looking at rl_relative_overflow_1 in the binary data.

Plot 2 - Mass transfer rate history diagram

    1. Plot log mass transfer rate (lg_mtransfer_rate) for the system as a function of age (yr) (age)

Set ylim to (-8,-3) and xlim to (1.6e7,2.4e7)

    1. Label - Using this plot, label the following:

    • B - The approximate location in time that the primary experiences Roche Lobe Overflow (RLOF)

    • C - The end of the rapid mass transfer phase where the stars return to thermal equilibrium

    • D - The end of the long lived phase of mass transfer

Compare with Pols Figure 8.1 (Right).

# load data and see which variables are available
#m1_history = pd.read_csv('##',sep=r'\s+',header=4)
#m2_history = pd.read_csv('##',sep=r'\s+',header=4)
#list(m1_history)
#m1_history.head(10)
#m1_history_total_mass = m1_history['##
#m1_history_log_R = m1_history['##

#m2_history_total_mass = m2_history['##
#m2_history_log_R = m2_history['##

#m1_history_age = m1_history['##
#m1_history_mdot_rate = m1_history['##
## 1 result here
#plt.title(r'Binary Star System - $M_{1}=10M_{\odot} - M_{2}=8.9M_{\odot} - P_{i}=2.2$ days')

#plt.plot(##,##,
#         color='dodgerblue', label=r'## $M_{1/2}$')

#plt.plot(##,##
#         color='goldenrod',label=r'## $M_{1/2}$')

#plt.text(X, Y, '(A)', fontsize=12)

#plt.text(X, Y, '(B)', fontsize=12)


#plt.legend()
#plt.xlabel(r'$M_{\rm{total}} \ (M_{\odot})$')
#plt.ylabel(r'$\rm{log}~R \ (R_{\odot})$')
## 1 result here
#plt.title(r'Binary Star System - $M_{1}=10M_{\odot} - M_{2}=8.9M_{\odot} - P_{i}=2.2$ days')

#plt.plot(#,#,color='dodgerblue')


#plt.text(X, Y, '(B) - RLOF', fontsize=10)
#plt.text(X, Y, '(C) - End of rapid/TE achieved', fontsize=10)
#plt.text(X, Y, '(D) - End of long lived ', fontsize=10)


#plt.ylim(X,X)
#plt.xlim(Y,Y)

#plt.xlabel(r'Age (yr)')
#plt.ylabel(r'$\rm{Mass \ Transfer \ Rate} \ (M_{\odot} \ \rm{yr}^{-1})$')

With your larger group, try to answer the following:#

  1. From point A to B which most appropriately describes the type of binary system and why?

    • Detached

    • Semi-Detached

    • Contact

Your thoughtful response here.

  1. From point B to C which most appropriately describes the type of binary system and why?

    • Detached

    • Semi-Detached

    • Contact

Your thoughtful response here.

  1. From point B to C which timescale most accurately dictates the mass transfer rate and why?

Your thoughtful response here.

  1. From point C to D which timescale most accurately dictates the mass transfer rate and why?

Your thoughtful response here.

b. - HR Diagram of Binary Star System#

Using the same data,

  1. Plot an HR diagram for the primary and secondary and label them.

  2. Label - the phase start of ZAMS (A) to the filling of the Roche lobe of the primary (B) using plt.annotate or similar for the primary.

#m1_history_log_Teff = m1_history['##
#m1_history_log_L = m1_history['##

#m2_history_log_Teff = m2_history['##
#m2_history_log_L = m2_history['##
#plt.plot(m1_history##,
#           m1_history##,
#         color='dodgerblue', label=r'Primary $M_1$')

#plt.plot(m2_history_##,
#           m2_history##,
#         color='goldenrod',label=r'Secondary $M_2$')

#plt.gca().invert_xaxis()


#plt.text(X,Y, '(A)', fontsize=12)

#plt.text(X,Y, '(B)', fontsize=12)


#plt.legend()
#plt.xlabel(r'$\rm{log}~T_{\rm{eff}} \ (K)$')
#plt.ylabel(r'$\rm{log}~L \ (L_{\odot})$')

#plt.show()

With your larger group, try to answer the following:#

  1. Can we determine, using the HR diagram alone, if this binary undergoes Case A, Case B, or Case C mass transfer or not and why?

Your thoughtful response here.

  1. In a few words, say qualitatively the primary’s response in the HR diagram once RLOF occurs.

Your thoughtful response here.

  1. In a few words, say qualitatively the secondary response in the HR diagram once RLOF occurs.

Your thoughtful response here.