! ==========
! binary_job
! ==========

! ::

   pgbinary_flag = .false.


! 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_name(1..5)
! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

! 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_inlist(:) = .false.
   extra_binary_job_inlist_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 set up 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 you 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 is true, 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
