binary_job

output/input files

show_binary_log_description_at_start

set this false if you want to skip the initial terminal output

show_binary_log_description_at_start = .true.

binary_history_columns_file

if null string, use default (binary_history_columns.list)

binary_history_columns_file = ''

warn_binary_extra

Due to changing the run_star_extras functions to hooks,we break existing run_binary_extras files. This flag sets a warning message and stops the MESA run until it is set to .false.. This way people will hopefully not be confused as to why their run_binary_extras functions are not being called.

warn_binary_extra = .true.

inlist_names(:)

Inlist files for both stars. If modeling a star as a point mass, the corresponding file is ignored.

inlist_names(1) = 'inlist1'
inlist_names(2) = 'inlist2'

read_extra_binary_job_inlist{1..5}

extra_binary_job_inlist{1..5}_name

You can split your binary_job inlist into pieces using the following controls. BTW: it works recursively, so the extras can read extras too. if read_extra_star_job_inlist{1..5} is true, then read &star_job from this namelist file

read_extra_binary_job_inlist1 = .false.
extra_binary_job_inlist1_name = 'undefined'
read_extra_binary_job_inlist2 = .false.
extra_binary_job_inlist2_name = 'undefined'
read_extra_binary_job_inlist3 = .false.
extra_binary_job_inlist3_name = 'undefined'
read_extra_binary_job_inlist4 = .false.
extra_binary_job_inlist4_name = 'undefined'
read_extra_binary_job_inlist5 = .false.
extra_binary_job_inlist5_name = 'undefined'

starting model

evolve_both_stars

Set this to .true. to model the evolution of both stars. If .false. then only inlist_names(1) will be used, and the other star will be modeled as a point mass. This option is ignored for loaded models, to setup a component as a point mass in that case use ‘change_point_mass_i’

evolve_both_stars = .false.

relax_primary_to_th_eq

log_Lnuc_div_L_for_relax_primary_to_th_eq

min_age_for_relax_primary_to_th_eq

max_steps_for_relax_primary_to_th_eq

no_history_during_relax_primary_to_th_eq

reset_age_for_relax_primary_to_th_eq

tsync_for_relax_primary_to_th_eq

NOT IMPLEMENTED YET!!! Set relax_primary_to_th_eq to .true. to ignore mass loss, rlof and changes in orbital period or separation (depending on which was chosen as the initial condition) until the primary (given by inlist_names(1)) reaches thermal equilibrium. This is meant to ignore the fast evolution that a ZAMS star can experience as it evolves to CN equilibrium at its core.

Thermal equilibrium in this case is defined as

log(s% L_nuc_burn_total*Lsun/s% L(1)) < log_Lnuc_div_L_for_relax_primary_to_th_eq,

and the relaxation process is followed for at least min_age_for_relax_primary_to_th_eq years, even if the condition is met at the first step. If the process takes more than max_steps_for_relax_primary_to_th_eq steps, then the simulation is terminated.

If want output to be written to history during the relaxation process, then no_history_during_relax_primary_to_th_eq = .false.. After relaxation, if reset_age_relax_primary_to_th_eq = .true., then both model numbers and ages of the components and the binary will be reset to their values before relaxation.

when modeling a system with rotation and tides, the synchronization timescale can be fixed for both stars using tsync_for_relax_primary_to_th_eq (in years).

relax_primary_to_th_eq = .false.
log_Lnuc_div_L_for_relax_primary_to_th_eq = 0.005d0
min_age_for_relax_primary_to_th_eq = 1d2
max_steps_for_relax_primary_to_th_eq = 1000
no_history_during_relax_primary_to_th_eq = .true.
reset_age_for_relax_primary_to_th_eq = .true.
tsync_for_relax_primary_to_th_eq = 1

modifications to model

change_ignore_rlof_flag

change_initial_ignore_rlof_flag

new_ignore_rlof_flag

If ignore_rlof_flag is true, then ignore mass transfer due to RLOF by default ignore_rlof_flag=.false.

change_ignore_rlof_flag = .false.
change_initial_ignore_rlof_flag = .false.
new_ignore_rlof_flag = .false.

change_model_twins_flag

change_initial_model_twins_flag

new_model_twins_flag

If model_twins_flag is true, then the system is modeled as if both stars were identical twins. Meant to save computation time in this particular scenario where computing the evolution of one of the components is redundant. by default model_twins_flag=.true.

change_model_twins_flag = .false.
change_initial_model_twins_flag = .false.
new_model_twins_flag = .false.

change_point_mass_i

change_initial_point_mass_i

new_point_mass_i

point_mass_i stores the index of the star that is treated as a point mass equal to zero if both stars are modeled by default point_mass_i is set by evolve_both_stars (0 if evolve_both_stars istrue, 2 if false)

change_point_mass_i = .false.
change_initial_point_mass_i = .false.
new_point_mass_i = 0

change_m1

change_initial_m1

new_m1

change the mass of star1. Ignored if point_mass_i/=1, in that case the mass is always taken to be that in the stellar model. After change, period and angular momentum are recomputed assuming the same separation and eccentricity (you likely want something different) Value is in Msun

change_m1 = .false.
change_initial_m1 = .false.
new_m1 = 0d0

change_m2

change_initial_m2

new_m2

change the mass of star2. Ignored if point_mass_i/=2 in that case the mass is always taken to be that in the stellar model After change, period and angular momentum are recomputed assuming the same separation and eccentricity (you likely want something different) Value is in Msun

change_m2 = .false.
change_initial_m2 = .false.
new_m2 = 0d0

change_separation_eccentricity

change_initial_separation_eccentricity

change_period_eccentricity

change_initial_period_eccentricity

new_separation

new_period

new_eccentricity

Simultaneously change the semi-major axis (in Rsun) and eccentricity, or the period (in days) and eccentricity.

change_separation_eccentricity = .false.
change_initial_separation_eccentricity = .false.
change_period_eccentricity = .false.
change_initial_period_eccentricity = .false.
new_separation = 0d0
new_period = 0d0
new_eccentricity = 0d0