Line data Source code
1 : ! ***********************************************************************
2 : !
3 : ! Copyright (C) 2010 The MESA Team
4 : !
5 : ! This program is free software: you can redistribute it and/or modify
6 : ! it under the terms of the GNU Lesser General Public License
7 : ! as published by the Free Software Foundation,
8 : ! either version 3 of the License, or (at your option) any later version.
9 : !
10 : ! This program is distributed in the hope that it will be useful,
11 : ! but WITHOUT ANY WARRANTY; without even the implied warranty of
12 : ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 : ! See the GNU Lesser General Public License for more details.
14 : !
15 : ! You should have received a copy of the GNU Lesser General Public License
16 : ! along with this program. If not, see <https://www.gnu.org/licenses/>.
17 : !
18 : ! ***********************************************************************
19 :
20 : module ctrls_io
21 :
22 : use const_def, only: dp
23 : use star_private_def
24 :
25 : implicit none
26 :
27 : include 'star_controls.inc'
28 : include 'star_controls_dev.inc'
29 :
30 : logical, dimension(max_extra_inlists) :: read_extra_controls_inlist
31 : character (len=strlen), dimension(max_extra_inlists) :: extra_controls_inlist_name
32 : logical :: save_controls_namelist
33 : character (len=strlen) :: controls_namelist_name
34 :
35 : namelist /controls/ &
36 :
37 : ! where to start
38 : initial_mass, initial_z, initial_y, initial_he3, &
39 :
40 : ! definition of core boundaries
41 : he_core_boundary_h1_fraction, co_core_boundary_he4_fraction, one_core_boundary_he4_c12_fraction, &
42 : fe_core_boundary_si28_fraction, neutron_rich_core_boundary_Ye_max, min_boundary_fraction, &
43 :
44 : ! when to stop
45 : max_model_number, relax_max_number_retries, max_number_retries, max_age, max_age_in_seconds, max_age_in_days, &
46 : num_adjusted_dt_steps_before_max_age, dt_years_for_steps_before_max_age, max_abs_rel_run_E_err, &
47 : reduction_factor_for_max_timestep, when_to_stop_rtol, when_to_stop_atol, &
48 : gamma_center_limit, eta_center_limit, log_center_temp_upper_limit, log_max_temp_upper_limit, &
49 : log_max_temp_lower_limit , log_center_temp_lower_limit, log_center_density_upper_limit, &
50 : log_center_density_lower_limit, center_entropy_upper_limit, center_entropy_lower_limit, &
51 : max_entropy_upper_limit, max_entropy_lower_limit, min_timestep_limit, non_fe_core_rebound_limit, &
52 : fe_core_infall_limit, center_Ye_lower_limit, center_R_lower_limit, non_fe_core_infall_limit, &
53 : fe_core_infall_mass, non_fe_core_infall_mass, &
54 : v_div_csound_surf_limit, v_div_csound_max_limit, Lnuc_div_L_upper_limit, Lnuc_div_L_lower_limit,&
55 : v_surf_div_v_kh_upper_limit, v_surf_div_v_kh_lower_limit, v_surf_div_v_esc_limit, v_surf_kms_limit, &
56 : stop_near_zams, Lnuc_div_L_zams_limit, Pgas_div_P_limit, Pgas_div_P_limit_max_q, gamma1_limit, gamma1_limit_max_q, &
57 : stop_at_phase_PreMS, stop_at_phase_ZAMS, stop_at_phase_IAMS, stop_at_phase_TAMS, gamma1_limit_max_v_div_vesc, &
58 : stop_at_phase_He_Burn, stop_at_phase_ZACHeB, stop_at_phase_TACHeB, &
59 : stop_at_phase_TP_AGB, stop_at_phase_C_Burn, stop_at_phase_Ne_Burn, &
60 : stop_at_phase_O_Burn, stop_at_phase_Si_Burn, stop_at_phase_WDCS, &
61 : peak_burn_vconv_div_cs_limit, omega_div_omega_crit_limit, delta_nu_lower_limit, &
62 : delta_nu_upper_limit, delta_Pg_lower_limit, delta_Pg_upper_limit, shock_mass_upper_limit, &
63 : mach1_mass_upper_limit, stop_when_reach_this_cumulative_extra_heating, &
64 : xa_central_lower_limit_species, xa_central_lower_limit, xa_central_upper_limit_species, xa_central_upper_limit, &
65 : xa_surface_lower_limit_species, xa_surface_lower_limit, xa_surface_upper_limit_species, xa_surface_upper_limit, &
66 : xa_average_lower_limit_species, xa_average_lower_limit, xa_average_upper_limit_species, xa_average_upper_limit, &
67 : star_species_mass_min_limit, star_species_mass_min_limit_iso, star_species_mass_max_limit, star_species_mass_max_limit_iso, &
68 : xmstar_min_limit, xmstar_max_limit, envelope_mass_limit, envelope_fraction_left_limit, &
69 : he_core_mass_limit, co_core_mass_limit, one_core_mass_limit, &
70 : fe_core_mass_limit, neutron_rich_core_mass_limit, HB_limit, star_mass_min_limit, star_mass_max_limit, &
71 : he_layer_mass_lower_limit, abs_diff_lg_LH_lg_Ls_limit, Teff_upper_limit, Teff_lower_limit, &
72 : photosphere_m_upper_limit, photosphere_m_lower_limit, photosphere_m_sub_M_center_limit, &
73 : photosphere_r_upper_limit, photosphere_r_lower_limit, log_Teff_upper_limit, log_Teff_lower_limit, &
74 : log_Tsurf_upper_limit, log_Tsurf_lower_limit, log_Rsurf_upper_limit, log_Rsurf_lower_limit, &
75 : log_Psurf_upper_limit, log_Psurf_lower_limit, remnant_mass_min_limit, ejecta_mass_max_limit, &
76 : log_Dsurf_upper_limit, log_Dsurf_lower_limit, log_L_upper_limit, log_L_lower_limit, &
77 : log_g_upper_limit, log_g_lower_limit, power_nuc_burn_upper_limit, power_h_burn_upper_limit, &
78 : power_he_burn_upper_limit, power_z_burn_upper_limit, power_nuc_burn_lower_limit, &
79 : power_h_burn_lower_limit, power_he_burn_lower_limit, power_z_burn_lower_limit, &
80 :
81 : ! max timesteps
82 : max_timestep, max_years_for_timestep, &
83 : hi_T_max_years_for_timestep, max_timestep_hi_T_limit, &
84 :
85 : ! output of "snapshots" for restarts
86 : photo_interval, photo_digits, photo_directory, &
87 :
88 : ! output of logs and profiles
89 : do_history_file, history_interval, write_header_frequency, terminal_interval, &
90 : terminal_show_age_units, terminal_show_timestep_units, terminal_show_log_dt, terminal_show_log_age, &
91 : num_trace_history_values, trace_history_value_name, write_profiles_flag, profile_interval, &
92 : priority_profile_interval, log_directory, star_history_name, star_history_header_name, &
93 : star_history_dbl_format, star_history_int_format, star_history_txt_format, extra_terminal_output_file, &
94 : profiles_index_name, profile_data_prefix, profile_data_suffix, profile_data_header_suffix, &
95 : profile_int_format, profile_txt_format, profile_dbl_format, profile_header_include_sys_details, &
96 : profile_model, max_num_profile_models, max_num_profile_zones, &
97 : write_controls_info_with_profile, controls_data_prefix, controls_data_suffix, &
98 : write_pulse_data_with_profile, pulse_data_format, add_atmosphere_to_pulse_data, &
99 : add_center_point_to_pulse_data, keep_surface_point_for_pulse_data, add_double_points_to_pulse_data, &
100 : interpolate_rho_for_pulse_data, threshold_grad_mu_for_double_point, max_number_of_double_points,&
101 : gyre_data_schema, fgong_header, fgong_ivers, &
102 : max_num_gyre_points, format_for_OSC_data, &
103 : fgong_zero_A_inside_r, use_other_export_pulse_data, use_other_get_pulse_data, use_other_edit_pulse_data, &
104 : write_model_with_profile, model_data_prefix, model_data_suffix, &
105 : mixing_D_limit_for_log, trace_mass_location, min_tau_for_max_abs_v_location, &
106 : min_q_for_inner_mach1_location, max_q_for_outer_mach1_location, &
107 : conv_core_gap_dq_limit, &
108 : TDC_alpha_D, TDC_alpha_R, TDC_alpha_Pt, TDC_alpha_M, &
109 : TDC_alpha_C, TDC_alpha_S, &
110 : TDC_alpha_M_use_explicit_mlt_vc_in_momentum_equation, &
111 : TDC_use_density_form_for_eddy_viscosity, TDC_adjust_mass_fallback_to_mlt, &
112 : TDC_num_innermost_cells_forced_nonturbulent, TDC_num_outermost_cells_forced_nonturbulent, &
113 : include_mlt_Pturb_in_thermodynamic_gradients, &
114 : include_mlt_corr_to_TDC, use_TDC_enthalpy_flux_limiter, TDC_include_eturb_in_energy_equation, &
115 : use_rsp_form_of_scale_height, include_mlt_in_velocity_time_centering, &
116 : TDC_hydro_use_mass_interp_face_values, TDC_hydro_nz, TDC_hydro_nz_outer, TDC_hydro_T_anchor, TDC_hydro_dq_1_factor, &
117 :
118 : ! burn zone eps definitions for use in logs and profiles
119 : burn_min1, burn_min2, &
120 : max_conv_vel_div_csound_maxq, width_for_limit_conv_vel, max_q_for_limit_conv_vel, &
121 : max_mass_in_gm_for_limit_conv_vel, max_r_in_cm_for_limit_conv_vel, &
122 :
123 : ! for reported surface/center abundances
124 : surface_avg_abundance_dq, center_avg_value_dq, &
125 :
126 : ! mixing parameters
127 : min_convective_gap, min_thermohaline_gap, min_semiconvection_gap, min_thermohaline_dropout, &
128 : max_dropout_gradL_sub_grada, remove_embedded_semiconvection, recalc_mix_info_after_evolve, remove_mixing_glitches, &
129 : okay_to_remove_mixing_singleton, prune_bad_cz_min_Hp_height, prune_bad_cz_min_log_eps_nuc, &
130 : redo_conv_for_dr_lt_mixing_length, alpha_semiconvection, okay_to_reduce_gradT_excess, &
131 : semiconvection_option, use_Ledoux_criterion, D_mix_zero_region_bottom_q, &
132 : num_cells_for_smooth_gradL_composition_term, threshold_for_smooth_gradL_composition_term, clip_D_limit, &
133 : gradT_excess_f1, gradT_excess_f2, gradT_excess_age_fraction, gradT_excess_max_change, gradT_excess_lambda1, &
134 : gradT_excess_beta1, gradT_excess_lambda2, gradT_excess_beta2, &
135 : gradT_excess_dlambda, gradT_excess_dbeta, gradT_excess_max_center_h1, &
136 : gradT_excess_min_center_he4, gradT_excess_max_logT, gradT_excess_min_log_tau_full_on, gradT_excess_max_log_tau_full_off, &
137 : use_superad_reduction, superad_reduction_gamma_limit, superad_reduction_gamma_limit_scale, D_mix_zero_region_top_q, &
138 : superad_reduction_gamma_inv_scale, superad_reduction_diff_grads_limit, superad_reduction_limit, &
139 : make_gradr_sticky_in_solver_iters, min_logT_for_make_gradr_sticky_in_solver_iters, &
140 : max_logT_for_mlt, thermohaline_coeff, thermohaline_option, mixing_length_alpha, remove_small_D_limit, &
141 : alt_scale_height_flag, Henyey_MLT_y_param, Henyey_MLT_nu_param, no_MLT_below_shock, mlt_make_surface_no_mixing, &
142 : MLT_option, mlt_use_rotation_correction, mlt_Pturb_factor, do_normalize_dqs_as_part_of_set_qs, &
143 : max_Y_for_burn_z_mix_region, max_X_for_burn_he_mix_region, &
144 : limit_overshoot_Hp_using_size_of_convection_zone, RSP_min_tau_for_turbulent_flux, &
145 : predictive_mix, predictive_superad_thresh, predictive_avoid_reversal, predictive_limit_ingestion,&
146 : predictive_ingestion_factor, predictive_zone_type, predictive_zone_loc, predictive_bdy_loc, &
147 : predictive_bdy_q_min, predictive_bdy_q_max, T_mix_limit, RSP_report_undercorrections, &
148 : do_conv_premix, conv_premix_avoid_increase, conv_premix_time_factor, &
149 : conv_premix_fix_pgas, conv_premix_dump_snapshots, do_premix_heating, &
150 : overshoot_f, overshoot_f2, overshoot_f0, overshoot_D0, RSP_Qvisc_linear, dq_D_mix_zero_at_H_He_crossover, &
151 : overshoot_Delta0, overshoot_mass_full_on, overshoot_mass_full_off, dq_D_mix_zero_at_H_C_crossover, &
152 : overshoot_scheme, overshoot_zone_type, overshoot_zone_loc, RSP_Qvisc_quadratic, &
153 : overshoot_bdy_loc, overshoot_D_min, overshoot_brunt_B_max, mlt_gradT_fraction, max_conv_vel_div_csound, &
154 : max_v_for_convection, max_q_for_convection_with_hydro_on, alpha_RTI_src_max_q, &
155 : max_v_div_cs_for_convection, max_abs_du_div_cs_for_convection, RSP_max_dt, RSP_relax_dm_tolerance, &
156 : calculate_Brunt_B, calculate_Brunt_N2, brunt_N2_coefficient, num_cells_for_smooth_brunt_B, &
157 : threshold_for_smooth_brunt_B, min_magnitude_brunt_B, RSP_max_dt_times_min_rad_diff_time, &
158 : min_overshoot_q, overshoot_alpha, RSP_target_steps_per_cycle, &
159 : RSP_max_num_periods, RSP_min_max_R_for_periods, RSP_min_deltaR_for_periods, &
160 : RSP_min_PERIOD_div_PERIODLIN, RSP_report_limit_dt, RSP_mode_for_setting_PERIODLIN, RSP_initial_dt_factor, &
161 : RSP_v_div_cs_threshold_for_dt_limit, RSP_max_dt_times_min_dr_div_cs, RSP_thetae, &
162 : RSP_alfa, RSP_thetaq, RSP_default_PERIODLIN, &
163 : RSP_theta, RSP_thetat, RSP_thetau, RSP_wtr, RSP_wtc, RSP_wtt, RSP_gam, RSP_max_retries_per_step, RSP_Qvisc_linear_static, &
164 : RSP_alfa, RSP_alfap, RSP_alfam, RSP_alfat, RSP_alfas, RSP_alfac, RSP_alfad, RSP_gammar, RSP_nz_div_IBOTOM, &
165 : RSP_efl0, RSP_cq, RSP_zsh, RSP_tol_max_corr, RSP_tol_max_resid, RSP_max_iters_per_try, &
166 : RTI_smooth_mass, RTI_smooth_iterations, RTI_smooth_fraction, RSP_dq_1_factor, &
167 : alpha_RTI_diffusion_factor, dudt_RTI_diffusion_factor, dedt_RTI_diffusion_factor, alpha_RTI_src_min_v_div_cs, &
168 : dlnddt_RTI_diffusion_factor, composition_RTI_diffusion_factor, max_M_RTI_factors_full_on, min_M_RTI_factors_full_off, &
169 : alpha_RTI_src_min_v_div_cs, alpha_RTI_src_max_q, alpha_RTI_src_min_q, RSP_kick_vsurf_km_per_sec, &
170 : RSP_nz_outer, RSP_nz, RSP_T_anchor, RSP_T_inner, RSP_Teff, RSP_mass, RSP_L, RSP_X, RSP_Z, RSP_T_inner_tolerance, &
171 : RSP_relax_max_tries, RSP_hydro_only, &
172 : RSP_tau_surf_for_atm_grey_with_kap, RSP_fixed_Psurf, RSP_Avel, RSP_Arnd, RSP_relax_adjust_inner_mass_distribution, &
173 : use_other_RSP_linear_analysis, RSP_use_atm_grey_with_kap_for_Psurf, &
174 : RSP_fraction_1st_overtone,RSP_fraction_2nd_overtone, RSP_testing, RSP_use_Prad_for_Psurf, RSP_map_zone_interval, &
175 : RSP_write_map, RSP_map_filename, RSP_map_history_filename, RSP_map_first_period, RSP_map_last_period, &
176 : use_other_RSP_build_model, RSP_Psurf, RSP_work_period, RSP_work_filename, RSP_nmodes, RSP_surface_tau, &
177 : set_RSP_Psurf_to_multiple_of_initial_P1, use_RSP_new_start_scheme, RSP_do_check_omega, RSP_report_check_omega_changes, &
178 : RSP_relax_initial_model, RSP_trace_RSP_build_model, &
179 : RSP_GREKM_avg_abs_limit, RSP_GREKM_avg_abs_frac_new, RSP_kap_density_factor, RSP_map_columns_filename, &
180 : RSP_relax_alfap_before_alfat, RSP_max_outer_dm_tries, RSP_max_inner_scale_tries, RSP_T_anchor_tolerance, &
181 : ! mass gain or loss
182 : mass_change, mass_change_full_on_dt, mass_change_full_off_dt, trace_dt_control_mass_change, &
183 : min_wind, max_wind, use_accreted_material_j, accreted_material_j, D_omega_mixing_rate, &
184 : D_omega_mixing_across_convection_boundary, max_q_for_D_omega_zero_in_convection_region, nu_omega_mixing_rate, &
185 : nu_omega_mixing_across_convection_boundary, max_q_for_nu_omega_zero_in_convection_region, &
186 : mdot_omega_power, max_rotational_mdot_boost, max_mdot_jump_for_rotation, &
187 : lim_trace_rotational_mdot_boost, rotational_mdot_boost_fac, rotational_mdot_kh_fac, surf_avg_tau, surf_avg_tau_min, &
188 : max_tries_for_implicit_wind, iwind_tolerance, iwind_lambda, super_eddington_scaling_factor, &
189 : super_eddington_wind_Ledd_factor, wind_boost_full_off_L_div_Ledd, wind_boost_full_on_L_div_Ledd, &
190 : super_eddington_wind_max_boost, trace_super_eddington_wind_boost, &
191 : rlo_scaling_factor, rlo_wind_min_L, rlo_wind_max_Teff, rlo_wind_roche_lobe_radius, &
192 : roche_lobe_xfer_full_on, roche_lobe_xfer_full_off, rlo_wind_base_mdot, rlo_wind_scale_height, &
193 : hot_wind_scheme, cool_wind_RGB_scheme, cool_wind_AGB_scheme, RGB_to_AGB_wind_switch, &
194 : Reimers_scaling_factor, Blocker_scaling_factor, de_Jager_scaling_factor, van_Loon_scaling_factor, &
195 : Nieuwenhuijzen_scaling_factor, Vink_scaling_factor, &
196 : Dutch_scaling_factor, Bjorklund_scaling_factor, Dutch_wind_lowT_scheme, wind_He_layer_limit, &
197 : wind_H_envelope_limit, wind_H_He_envelope_limit, hot_wind_full_on_T, cool_wind_full_on_T, &
198 :
199 : ! composition of added mass
200 : accrete_same_as_surface, &
201 : accrete_given_mass_fractions, num_accretion_species, accretion_species_id, accretion_species_xa, &
202 : accretion_h1, accretion_h2, accretion_he3, accretion_he4, accretion_zfracs, accretion_dump_missing_metals_into_heaviest, &
203 :
204 : ! special list of z fractions
205 : z_fraction_li, z_fraction_be, z_fraction_b, z_fraction_c, z_fraction_n,&
206 : z_fraction_o, z_fraction_f, z_fraction_ne, z_fraction_na, z_fraction_mg, z_fraction_al, &
207 : z_fraction_si, z_fraction_p, z_fraction_s, z_fraction_cl, z_fraction_ar, z_fraction_k, &
208 : z_fraction_ca, z_fraction_sc, z_fraction_ti, z_fraction_v, z_fraction_cr, z_fraction_mn, &
209 : z_fraction_fe, z_fraction_co, z_fraction_ni, z_fraction_cu, z_fraction_zn, &
210 : lgT_lo_for_set_new_abundances, lgT_hi_for_set_new_abundances, &
211 :
212 : ! automatic stops for mass loss/gain
213 : max_star_mass_for_gain, min_star_mass_for_loss, max_T_center_for_any_mass_loss, max_T_center_for_full_mass_loss, &
214 :
215 : ! extra power source
216 : extra_power_source, &
217 :
218 : ! relaxation parameters
219 : relax_dlnZ, relax_dY, &
220 :
221 : ! mesh adjustment
222 : show_mesh_changes, okay_to_remesh, restore_mesh_on_retry, num_steps_to_hold_mesh_after_retry, &
223 : max_rel_delta_IE_for_mesh_total_energy_balance, &
224 : trace_mesh_adjust_error_in_conservation, max_allowed_nz, mesh_max_allowed_ratio, &
225 : remesh_max_allowed_logT, max_delta_x_for_merge, &
226 : mesh_ok_to_merge, mesh_max_k_old_for_split, mesh_min_k_old_for_split, &
227 : mesh_adjust_get_T_from_E, &
228 : max_dq, min_dq, min_dq_for_split, min_dq_for_xa, min_dq_for_xa_convective, &
229 : mesh_min_dlnR, merge_if_dlnR_too_small, min_dq_for_logT, &
230 : mesh_min_dr_div_dRstar, merge_if_dr_div_dRstar_too_small, &
231 : mesh_min_dr_div_cs, merge_if_dr_div_cs_too_small, &
232 : max_center_cell_dq, max_surface_cell_dq, min_surface_cell_dq, max_num_subcells, max_num_merge_cells, &
233 : max_num_merge_surface_cells ,mesh_delta_coeff, mesh_delta_coeff_for_highT, &
234 : logT_max_for_standard_mesh_delta_coeff, logT_min_for_highT_mesh_delta_coeff, remesh_dt_limit, &
235 : mesh_Pgas_div_P_exponent, &
236 : E_function_weight, E_function_param, P_function_weight, &
237 : mesh_logX_species, &
238 : mesh_logX_min_for_extra, mesh_dlogX_dlogP_extra, mesh_dlogX_dlogP_full_on, mesh_dlogX_dlogP_full_off, &
239 : convective_bdy_min_dt_yrs, convective_bdy_dq_limit, convective_bdy_weight, &
240 :
241 : mesh_dlog_eps_min_for_extra, mesh_dlog_eps_dlogP_full_on, mesh_dlog_eps_dlogP_full_off, &
242 : mesh_dlog_pp_dlogP_extra, mesh_dlog_cno_dlogP_extra, mesh_dlog_3alf_dlogP_extra, &
243 : mesh_dlog_burn_c_dlogP_extra, mesh_dlog_burn_n_dlogP_extra, mesh_dlog_burn_o_dlogP_extra, &
244 : mesh_dlog_burn_ne_dlogP_extra, mesh_dlog_burn_na_dlogP_extra, mesh_dlog_burn_mg_dlogP_extra, &
245 : mesh_dlog_burn_si_dlogP_extra, mesh_dlog_burn_s_dlogP_extra, mesh_dlog_burn_ar_dlogP_extra, &
246 : mesh_dlog_burn_ca_dlogP_extra, mesh_dlog_burn_ti_dlogP_extra, mesh_dlog_burn_cr_dlogP_extra, &
247 : mesh_dlog_burn_fe_dlogP_extra, mesh_dlog_cc_dlogP_extra, mesh_dlog_co_dlogP_extra, mesh_dlog_oo_dlogP_extra, &
248 : mesh_dlog_pnhe4_dlogP_extra, mesh_dlog_photo_dlogP_extra, mesh_dlog_other_dlogP_extra, &
249 : T_function1_weight, T_function2_weight, T_function2_param, mesh_delta_coeff_factor_smooth_iters, &
250 : R_function_weight, R_function_param, &
251 : R_function2_weight, R_function2_param1, R_function2_param2, &
252 : R_function3_weight, M_function_weight, M_function_param, &
253 : gradT_function_weight, log_tau_function_weight, log_kap_function_weight, omega_function_weight, &
254 : gam_function_weight, gam_function_param1, gam_function_param2, &
255 : xa_function_species, xa_function_weight, xa_function_param, xa_mesh_delta_coeff, split_merge_amr_mesh_delta_coeff, &
256 : use_split_merge_amr, split_merge_amr_nz_baseline, split_merge_amr_log_zoning, split_merge_amr_hybrid_zoning, &
257 : split_merge_amr_flipped_hybrid_zoning, split_merge_amr_logtau_zoning, &
258 : split_merge_amr_okay_to_split_nz, split_merge_amr_nz_r_core, &
259 : split_merge_amr_okay_to_split_1, merge_amr_inhibit_at_jumps, split_merge_amr_MaxLong, split_merge_amr_nz_r_core_fraction, &
260 : split_merge_amr_MaxShort, merge_amr_max_abs_du_div_cs, &
261 : merge_amr_ignore_surface_cells, merge_amr_k_for_ignore_surface_cells, &
262 : merge_amr_ignore_core_cells, merge_amr_logT_for_ignore_core_cells, &
263 : split_amr_ignore_core_cells, split_amr_logT_for_ignore_core_cells, &
264 : merge_amr_du_div_cs_limit_only_for_compression, split_merge_amr_avoid_repeated_remesh, split_merge_amr_r_core_cm, &
265 : split_merge_amr_dq_min, split_merge_amr_dq_max, split_merge_amr_max_iters, &
266 : trace_split_merge_amr, equal_split_density_amr, use_hydro_merge_limits_in_mesh_plan, &
267 :
268 : ! nuclear reaction parameters
269 : screening_mode, default_net_name, net_logTcut_lo, net_logTcut_lim, &
270 : eps_nuc_factor, op_split_burn_eps_nuc_infall_limit, eps_WD_sedimentation_factor, &
271 : max_abs_eps_nuc, dxdt_nuc_factor, max_abar_for_burning, mix_factor, &
272 : fe56ec_fake_factor, min_T_for_fe56ec_fake_factor, weak_rate_factor, &
273 : sig_term_limit, sig_min_factor_for_high_Tcenter, Tcenter_min_for_sig_min_factor_full_on,&
274 : Tcenter_max_for_sig_min_factor_full_off, max_delta_m_to_bdy_for_sig_min_factor, &
275 : delta_m_lower_for_sig_min_factor, delta_m_upper_for_sig_min_factor, &
276 : am_sig_term_limit, am_D_mix_factor, am_gradmu_factor, am_nu_factor, &
277 : D_visc_factor, D_DSI_factor, D_SH_factor, D_SSI_factor, D_ES_factor, D_GSF_factor, D_ST_factor, &
278 : am_nu_non_rotation_factor, skip_rotation_in_convection_zones, am_nu_DSI_factor, am_nu_SH_factor,&
279 : am_nu_SSI_factor, am_nu_ES_factor, am_nu_GSF_factor, am_nu_ST_factor, am_nu_visc_factor, smooth_am_nu_rot, &
280 : ST_angsml, ST_angsmt, am_nu_omega_rot_factor, am_nu_omega_non_rot_factor, am_nu_j_rot_factor, am_nu_j_non_rot_factor, &
281 : smooth_nu_ST, smooth_D_ST, smooth_D_SH, smooth_D_DSI, smooth_D_ES, smooth_D_SSI, smooth_D_GSF, smooth_D_omega, &
282 : do_adjust_J_lost, premix_omega, angular_momentum_error_warn, angular_momentum_error_retry, &
283 : simple_i_rot_flag, recalc_mixing_info_each_substep, adjust_J_fraction, &
284 : min_q_for_adjust_J_lost, min_J_div_delta_J, max_mdot_redo_cnt, mdot_revise_factor, &
285 : implicit_mdot_boost, min_years_dt_for_redo_mdot, surf_omega_div_omega_crit_limit, surf_omega_div_omega_crit_tol, &
286 : w_div_wcrit_max, w_div_wcrit_max2, &
287 : D_mix_rotation_max_logT_full_on, D_mix_rotation_min_logT_full_off, &
288 : D_mix_rotation_min_tau_full_off, D_mix_rotation_min_tau_full_on, &
289 : set_uniform_am_nu_non_rot, uniform_am_nu_non_rot, &
290 : set_min_am_nu_non_rot, min_am_nu_non_rot, min_center_Ye_for_min_am_nu_non_rot, &
291 : set_min_D_mix_below_Tmax, min_D_mix_below_Tmax, set_min_D_mix_in_H_He, min_D_mix_in_H_He, &
292 : set_min_D_mix, mass_lower_limit_for_min_D_mix, mass_upper_limit_for_min_D_mix, &
293 : min_D_mix, min_center_Ye_for_min_D_mix, &
294 : smooth_outer_xa_big, smooth_outer_xa_small, nonlocal_NiCo_kap_gamma, nonlocal_NiCo_decay_heat, &
295 : dtau_gamma_NiCo_decay_heat, max_logT_for_net, reaction_neuQs_factor, &
296 :
297 : ! element diffusion parameters
298 : diffusion_use_iben_macdonald, diffusion_use_paquette, diffusion_use_caplan, diffusion_use_cgs_solver, &
299 : diffusion_use_full_net, do_WD_sedimentation_heating, min_xa_for_WD_sedimentation_heating, &
300 : do_diffusion_heating, do_element_diffusion, &
301 : cgs_thermal_diffusion_eta_full_on, cgs_thermal_diffusion_eta_full_off, diffusion_min_dq_at_surface, &
302 : diffusion_min_T_at_surface, diffusion_min_dq_ratio_at_surface, diffusion_dt_limit, &
303 : diffusion_min_X_hard_limit, diffusion_X_total_atol, diffusion_X_total_rtol, &
304 : diffusion_upwind_abs_v_limit, diffusion_dt_div_timescale, diffusion_min_num_substeps, &
305 : diffusion_max_iters_per_substep, diffusion_max_retries_per_substep, diffusion_v_max, &
306 : diffusion_gamma_full_off, diffusion_gamma_full_on, diffusion_T_full_on, diffusion_T_full_off, &
307 : D_mix_ignore_diffusion, diffusion_calculates_ionization, diffusion_nsmooth_typical_charge, &
308 : diffusion_tol_correction_max, diffusion_tol_correction_norm, &
309 : diffusion_AD_dm_full_on, diffusion_AD_dm_full_off, diffusion_AD_boost_factor, &
310 : diffusion_SIG_factor, diffusion_GT_factor, &
311 : diffusion_Vlimit_dm_full_on, diffusion_Vlimit_dm_full_off, diffusion_Vlimit, &
312 : diffusion_max_T_for_radaccel, diffusion_min_T_for_radaccel, diffusion_max_Z_for_radaccel, &
313 : diffusion_min_Z_for_radaccel, diffusion_screening_for_radaccel, &
314 : op_mono_data_path, op_mono_data_cache_filename, &
315 : emesh_data_for_op_mono_path, op_mono_method, &
316 : show_diffusion_info, show_diffusion_substep_info, show_diffusion_timing, &
317 : diffusion_num_classes, diffusion_class_representative, diffusion_class_A_max, &
318 : diffusion_class_typical_charge, diffusion_class_factor, &
319 : diffusion_use_isolve, diffusion_rtol_for_isolve, diffusion_atol_for_isolve, &
320 : diffusion_maxsteps_for_isolve, diffusion_isolve_solver, &
321 :
322 : ! WD phase separation
323 : do_phase_separation, &
324 : phase_separation_option, &
325 : do_phase_separation_heating, &
326 : phase_separation_mixing_use_brunt, &
327 : phase_separation_no_diffusion, &
328 :
329 : ! eos controls
330 : fix_d_eos_dxa_partials, &
331 :
332 : ! opacity controls
333 : use_simple_es_for_kap, use_starting_composition_for_kap, &
334 : min_kap_for_dPrad_dm_eqn, low_logT_op_mono_full_off, low_logT_op_mono_full_on, high_logT_op_mono_full_off, &
335 : high_logT_op_mono_full_on, op_mono_min_X_to_include, use_op_mono_alt_get_kap, &
336 :
337 :
338 : include_L_in_correction_limits, include_v_in_correction_limits, &
339 : include_u_in_correction_limits, include_w_in_correction_limits, &
340 :
341 : ! asteroseismology controls
342 : get_delta_nu_from_scaled_solar, nu_max_sun, delta_nu_sun, astero_Teff_sun, &
343 : delta_Pg_mode_freq, delta_Pg_traditional, &
344 :
345 : ! hydro parameters
346 : energy_eqn_option, &
347 : opacity_factor, opacity_min, opacity_max, min_logT_for_opacity_factor_off, min_logT_for_opacity_factor_on, &
348 : max_logT_for_opacity_factor_on, max_logT_for_opacity_factor_off, &
349 : non_nuc_neu_factor, &
350 : use_time_centered_eps_grav, &
351 : use_mass_corrections, use_gravity_rotation_correction, eps_grav_factor, eps_mdot_factor, &
352 : include_composition_in_eps_grav, no_dedt_form_during_relax, &
353 : max_abs_rel_change_surf_lnS, &
354 : max_num_surf_revisions, Gamma_lnS_eps_grav_full_off, Gamma_lnS_eps_grav_full_on, &
355 : use_dPrad_dm_form_of_T_gradient_eqn, use_flux_limiting_with_dPrad_dm_form, &
356 : use_gradT_actual_vs_gradT_MLT_for_T_gradient_eqn, dedt_eqn_r_scale, &
357 : RTI_A, RTI_B, RTI_C, RTI_D, RTI_max_alpha, RTI_C_X_factor, RTI_C_X0_frac, steps_before_use_velocity_time_centering, &
358 : RTI_dm_for_center_eta_nondecreasing, RTI_min_dm_behind_shock_for_full_on, RTI_energy_floor, &
359 : RTI_D_mix_floor, RTI_min_m_for_D_mix_floor, RTI_log_max_boost, RTI_m_full_boost, RTI_m_no_boost, &
360 : include_P_in_velocity_time_centering, include_L_in_velocity_time_centering, &
361 : P_theta_for_velocity_time_centering, L_theta_for_velocity_time_centering, &
362 : max_logT_for_include_P_and_L_in_velocity_time_centering, &
363 : steps_before_use_TDC, use_P_d_1_div_rho_form_of_work_when_time_centering_velocity, compare_TDC_to_MLT, &
364 : use_TDC_Y_face_seeded_newton, &
365 : hydro_matrix_solver, &
366 : remesh_for_TDC_pulsations_log_core_zoning, velocity_logT_lower_bound, &
367 : max_dt_yrs_for_velocity_logT_lower_bound, velocity_tau_lower_bound, velocity_q_upper_bound, &
368 : use_drag_energy, drag_coefficient, min_q_for_drag, &
369 : v_drag_factor, v_drag, q_for_v_drag_full_off, q_for_v_drag_full_on, &
370 : report_max_infall_inside_fe_core, retry_for_v_above_clight, &
371 :
372 : ! hydro solver
373 : use_gold2_tolerances, gold2_solver_iters_timestep_limit, steps_before_use_gold2_tolerances, &
374 : gold2_iter_for_resid_tol2, gold2_iter_for_resid_tol3, gold2_tol_residual_norm1, gold2_tol_max_residual1, &
375 : gold2_tol_residual_norm2, gold2_tol_max_residual2, gold2_tol_residual_norm3, gold2_tol_max_residual3, &
376 : tol_correction_norm, tol_max_correction, correction_xa_limit, &
377 : tol_correction_high_T_limit, tol_correction_norm_high_T, tol_max_correction_high_T, &
378 : tol_correction_extreme_T_limit, tol_correction_norm_extreme_T, tol_max_correction_extreme_T, &
379 : tol_bad_max_correction, bad_max_correction_series_limit, &
380 : tol_max_residual1, tol_residual_norm1, tol_max_residual2, &
381 : tol_residual_norm2, tol_max_residual3, tol_residual_norm3, &
382 : warning_limit_for_max_residual, trace_solver_damping, &
383 : relax_use_gold_tolerances, relax_tol_correction_norm, relax_tol_max_correction, &
384 : relax_solver_iters_timestep_limit, &
385 : relax_iter_for_resid_tol2, relax_tol_residual_norm1, relax_tol_max_residual1, &
386 : relax_iter_for_resid_tol3, relax_tol_residual_norm2, relax_tol_max_residual2, &
387 : relax_tol_residual_norm3, relax_tol_max_residual3, relax_maxT_for_gold_tolerances, &
388 : use_gold_tolerances, gold_solver_iters_timestep_limit, maxT_for_gold_tolerances, &
389 : gold_tol_residual_norm1, gold_tol_max_residual1, gold_iter_for_resid_tol2, &
390 : gold_tol_residual_norm2, gold_tol_max_residual2, gold_iter_for_resid_tol3, &
391 : gold_tol_residual_norm3, gold_tol_max_residual3 , steps_before_use_gold_tolerances, &
392 : include_rotation_in_total_energy, convergence_ignore_equL_residuals, convergence_ignore_alpha_RTI_residuals, &
393 : iter_for_resid_tol2, iter_for_resid_tol3, &
394 : solver_itermin, solver_itermin_until_reduce_min_corr_coeff, &
395 : solver_reduced_min_corr_coeff, do_solver_damping_for_neg_xa, &
396 : scale_max_correction_for_negative_surf_lum, max_frac_for_negative_surf_lum, &
397 : hydro_mtx_max_allowed_abs_dlogT, hydro_mtx_max_allowed_abs_dlogRho, &
398 : min_logT_for_hydro_mtx_max_allowed, hydro_mtx_max_allowed_logT, &
399 : hydro_mtx_max_allowed_logRho, report_min_rcond_from_DGESXV, &
400 : hydro_mtx_min_allowed_logT, hydro_mtx_min_allowed_logRho, use_DGESVX_in_bcyclic, use_equilibration_in_DGESVX, &
401 : op_split_burn, op_split_burn_min_T, op_split_burn_eps, op_split_burn_odescal, &
402 : op_split_burn_min_T_for_variable_T_solver, solver_test_partials_show_dx_var_name, &
403 : tiny_corr_coeff_limit, scale_correction_norm, corr_param_factor, num_times_solver_reuse_mtx, &
404 : scale_max_correction, ignore_min_corr_coeff_for_scale_max_correction, &
405 : ignore_too_large_correction, ignore_species_in_max_correction, &
406 : corr_norm_jump_limit, max_corr_jump_limit, resid_norm_jump_limit, max_resid_jump_limit, RSP2_use_mass_interp_face_values, &
407 : corr_coeff_limit, tiny_corr_factor, solver_test_partials_call_number, solver_test_partials_iter_number, &
408 : max_tries1, solver_max_tries_before_reject, max_tries_for_retry, max_tries_after_5_retries, solver_test_partials_sink_name, &
409 : max_tries_after_10_retries, max_tries_after_20_retries, retry_limit, redo_limit, use_Pvsc_art_visc, Pvsc_cq, Pvsc_zsh, &
410 : min_xa_hard_limit, min_xa_hard_limit_for_highT, logT_max_for_min_xa_hard_limit, logT_min_for_min_xa_hard_limit_for_highT, &
411 : sum_xa_hard_limit, sum_xa_hard_limit_for_highT, logT_max_for_sum_xa_hard_limit, logT_min_for_sum_xa_hard_limit_for_highT, &
412 : xa_clip_limit, report_solver_progress, solver_test_partials_k_high, RSP2_use_L_eqn_at_surface, RSP2_use_RSP_eqn_for_Y_face, &
413 : solver_epsder_chem, solver_epsder_struct, solver_numerical_jacobian, energy_conservation_dump_model_number, &
414 : solver_jacobian_nzlo, solver_jacobian_nzhi, solver_check_everything, solver_inspect_soln_flag, RSP2_assume_HSE, &
415 : solver_test_partials_dx_0, solver_test_partials_k, solver_show_correction_info, eps_mdot_leak_frac_factor, &
416 : solver_test_partials_write_eos_call_info, solver_save_photo_call_number, RSP2_min_Lc_div_L_for_convective_mixing_type, &
417 : solver_test_partials_var_name, solver_test_partials_equ_name, RSP2_min_Lt_div_L_for_overshooting_mixing_type, &
418 : solver_test_eos_partials, solver_test_kap_partials, solver_test_net_partials, solver_test_atm_partials, &
419 : fill_arrays_with_NaNs, zero_when_allocate, warn_when_large_rel_run_E_err, &
420 : absolute_cumulative_energy_err, solver_test_partials_k_low, &
421 : warn_when_large_virial_thm_rel_err, warn_when_get_a_bad_eos_result, warn_rates_for_high_temp, max_safe_logT_for_rates, &
422 : RSP2_alfap, RSP2_alfat, RSP2_alfam, RSP2_alfar, RSP2_Lsurf_factor, RSP2_use_Stellingwerf_Lr, RSP2_remesh_when_load, &
423 : RSP2_alfad, RSP2_num_outermost_cells_forced_nonturbulent, RSP2_num_innermost_cells_forced_nonturbulent, &
424 : RSP2_target_steps_per_cycle, RSP2_max_num_periods, RSP2_work_period, RSP2_map_first_period, RSP2_map_last_period, &
425 : RSP2_min_max_R_for_periods, RSP2_GREKM_avg_abs_frac_new, RSP2_GREKM_avg_abs_limit, RSP2_map_zone_interval, &
426 : RSP2_work_filename, RSP2_map_columns_filename, RSP2_map_filename, RSP2_map_history_filename, RSP2_write_map, &
427 : RSP2_T_anchor, RSP2_dq_1_factor, RSP2_nz, RSP2_nz_outer, RSP2_nz_div_IBOTOM, RSP2_report_adjust_w, &
428 : RSP2_w_min_for_damping, RSP2_source_seed, RSP2_w_fix_if_neg, max_X_for_conv_timescale, min_X_for_conv_timescale, &
429 : max_q_for_conv_timescale, min_q_for_conv_timescale, max_q_for_QHSE_timescale, min_q_for_QHSE_timescale, &
430 :
431 :
432 : ! timestep
433 : time_delta_coeff, min_timestep_factor, max_timestep_factor, &
434 : max_timestep_factor_at_high_T, min_logT_for_max_timestep_factor_at_high_T, &
435 : timestep_factor_for_retries, retry_hold, &
436 : neg_mass_fraction_hold, timestep_dt_factor, use_dt_low_pass_controller, &
437 : force_timestep_min, force_timestep_min_years, force_timestep_min_factor, force_timestep, force_timestep_years, &
438 : varcontrol_target, min_allowed_varcontrol_target, varcontrol_dt_limit_ratio_hard_max, xa_scale, &
439 : solver_iters_timestep_limit, burn_steps_limit, burn_steps_hard_limit, &
440 : diffusion_steps_limit, diffusion_steps_hard_limit, diffusion_iters_limit, diffusion_iters_hard_limit, &
441 : dt_div_dt_cell_collapse_limit, dt_div_dt_cell_collapse_hard_limit, &
442 : dt_div_min_dr_div_cs_limit, dt_div_min_dr_div_cs_hard_limit, min_abs_u_div_cs_for_dt_div_min_dr_div_cs_limit, &
443 : min_abs_du_div_cs_for_dt_div_min_dr_div_cs_limit, min_k_for_dt_div_min_dr_div_cs_limit, &
444 : min_q_for_dt_div_min_dr_div_cs_limit, max_q_for_dt_div_min_dr_div_cs_limit, check_remnant_only_for_dt_div_min_dr_div_cs_limit, &
445 : dX_mix_dist_limit, dX_div_X_at_high_T_limit_lgT_min, dX_limit_species, &
446 : dX_limit_min_X, dX_limit, dX_hard_limit, dX_div_X_limit_min_X, dX_div_X_at_high_T_hard_limit, &
447 : dX_div_X_limit, dX_div_X_hard_limit, dX_decreases_only, dX_div_X_at_high_T_limit, &
448 : dX_nuc_drop_min_X_limit, dX_nuc_drop_max_A_limit, dX_nuc_drop_limit, &
449 : dX_nuc_drop_limit_at_high_T, dX_nuc_drop_hard_limit, dX_nuc_drop_min_yrs_for_dt, &
450 : dL_div_L_limit_min_L, dL_div_L_limit, dL_div_L_hard_limit, &
451 : delta_lgP_limit, delta_lgP_hard_limit, delta_lgP_limit_min_lgP, &
452 : delta_lgRho_limit, delta_lgRho_hard_limit, delta_lgRho_limit_min_lgRho, &
453 : delta_lgT_limit, delta_lgT_hard_limit, delta_lgT_limit_min_lgT, &
454 : delta_lgE_limit, delta_lgE_hard_limit, delta_lgE_limit_min_lgE, &
455 : delta_lgR_limit, delta_lgR_hard_limit, delta_lgR_limit_min_lgR, &
456 : delta_Ye_highT_limit, delta_Ye_highT_hard_limit, minT_for_highT_Ye_limit, &
457 : delta_lgL_nuc_cat_limit, delta_lgL_nuc_cat_hard_limit, lgL_nuc_cat_burn_min, lgL_nuc_mix_dist_limit, &
458 : delta_lgT_max_limit_only_after_near_zams, &
459 : delta_lgL_H_limit, delta_lgL_H_hard_limit, lgL_H_burn_min, lgL_H_drop_factor, lgL_H_burn_relative_limit, &
460 : delta_lgL_He_limit, delta_lgL_He_hard_limit, lgL_He_burn_min, lgL_He_drop_factor, lgL_He_burn_relative_limit, &
461 : delta_lgL_z_limit, delta_lgL_z_hard_limit, lgL_z_burn_min, lgL_z_drop_factor, lgL_z_burn_relative_limit, &
462 : delta_lgL_power_photo_limit, delta_lgL_power_photo_hard_limit, lgL_power_photo_burn_min, lgL_power_photo_drop_factor, &
463 : delta_lgL_nuc_limit, delta_lgL_nuc_hard_limit, lgL_nuc_burn_min, lgL_nuc_drop_factor, min_lgT_for_lgL_power_photo_limit, &
464 : delta_lgL_nuc_at_high_T_limit, delta_lgL_nuc_at_high_T_hard_limit, delta_lgL_nuc_at_high_T_limit_lgT_min, &
465 : delta_lgRho_cntr_limit, delta_lgRho_cntr_hard_limit, delta_lgP_cntr_limit, delta_lgP_cntr_hard_limit, &
466 : delta_lgT_cntr_limit, delta_lgT_cntr_hard_limit, delta_lgT_cntr_limit_only_after_near_zams, &
467 : delta_lgT_max_limit, delta_lgT_max_hard_limit, max_lgT_for_lgL_nuc_limit, &
468 : delta_log_eps_nuc_limit, delta_log_eps_nuc_hard_limit, delta_lgT_max_limit_lgT_min, &
469 : delta_lgT_max_at_high_T_limit, delta_lgT_max_at_high_T_hard_limit, delta_lgT_max_at_high_T_limit_lgT_min, &
470 : delta_dX_div_X_cntr_min, delta_dX_div_X_cntr_max, delta_dX_div_X_cntr_limit, delta_dX_div_X_cntr_hard_limit, &
471 : delta_dX_div_X_drop_only, delta_lg_XH_drop_only, &
472 : delta_lg_XHe_drop_only, delta_lg_XC_drop_only, delta_lg_XNe_drop_only, delta_lg_XO_drop_only, delta_lg_XSi_drop_only, &
473 : delta_XH_drop_only, delta_XHe_drop_only, delta_XC_drop_only, delta_XNe_drop_only, delta_XO_drop_only, delta_XSi_drop_only, &
474 : delta_lg_XH_cntr_min, delta_lg_XH_cntr_max, delta_lg_XH_cntr_limit, delta_lg_XH_cntr_hard_limit, &
475 : delta_lg_XHe_cntr_min, delta_lg_XHe_cntr_max, delta_lg_XHe_cntr_limit, delta_lg_XHe_cntr_hard_limit, &
476 : delta_lg_XC_cntr_min, delta_lg_XC_cntr_max, delta_lg_XC_cntr_limit, delta_lg_XC_cntr_hard_limit, &
477 : delta_lg_XNe_cntr_limit, delta_lg_XNe_cntr_hard_limit, delta_lg_XNe_cntr_min, delta_lg_XNe_cntr_max, &
478 : delta_lg_XO_cntr_limit, delta_lg_XO_cntr_hard_limit, delta_lg_XO_cntr_min, delta_lg_XO_cntr_max, &
479 : delta_lg_XSi_cntr_limit, delta_lg_XSi_cntr_hard_limit, delta_lg_XSi_cntr_min, delta_lg_XSi_cntr_max, &
480 : delta_XH_cntr_limit, delta_XH_cntr_hard_limit, delta_XHe_cntr_limit, delta_XHe_cntr_hard_limit, &
481 : delta_XC_cntr_limit, delta_XC_cntr_hard_limit, delta_XNe_cntr_limit, delta_XNe_cntr_hard_limit, &
482 : delta_XO_cntr_limit, delta_XO_cntr_hard_limit, delta_XSi_cntr_limit, delta_XSi_cntr_hard_limit, &
483 : delta_lgTeff_limit, delta_lgTeff_hard_limit, delta_lgL_limit, delta_lgL_limit_L_min, delta_lgL_hard_limit, &
484 : delta_HR_ds_L, delta_HR_ds_Teff, delta_HR_limit, delta_HR_hard_limit, &
485 : delta_lg_star_mass_limit, delta_lg_star_mass_hard_limit, &
486 : delta_mdot_atol, delta_mdot_rtol, delta_mdot_limit, delta_mdot_hard_limit, &
487 : adjust_J_q_limit, adjust_J_q_hard_limit, &
488 : never_skip_hard_limits, relax_hard_limits_after_retry, &
489 : report_dt_hard_limit_retries, report_min_dr_div_cs, report_solver_dt_info, &
490 : limit_for_rel_error_in_energy_conservation, hard_limit_for_rel_error_in_energy_conservation, &
491 :
492 : ! atmosphere -- surface boundary conditions
493 :
494 : atm_option, atm_off_table_option, Pextra_factor, &
495 : atm_fixed_Teff, atm_fixed_Psurf, atm_fixed_Tsurf, &
496 :
497 : atm_T_tau_relation, atm_T_tau_opacity, atm_T_tau_errtol, atm_T_tau_max_iters, &
498 : atm_T_tau_max_steps, &
499 :
500 : atm_table, &
501 :
502 : atm_irradiated_opacity, atm_irradiated_errtol, atm_irradiated_T_eq, &
503 : atm_irradiated_kap_v, atm_irradiated_kap_v_div_kap_th, atm_irradiated_P_surf, &
504 : atm_irradiated_max_iters, &
505 :
506 : use_compression_outer_BC, use_momentum_outer_BC, use_zero_Pgas_outer_BC, &
507 : fixed_Psurf, use_fixed_Psurf_outer_BC, fixed_vsurf, use_fixed_vsurf_outer_BC, use_RSP_L_eqn_outer_BC, &
508 :
509 : atm_build_tau_outer, atm_build_dlogtau, atm_build_errtol, &
510 :
511 : use_T_tau_gradr_factor, &
512 :
513 : ! starspots
514 : do_starspots, fspot, xspot, &
515 :
516 : ! extra heat near surface to model irradiation
517 : irradiation_flux, column_depth_for_irradiation, &
518 :
519 : ! uniform extra heat
520 : inject_uniform_extra_heat, min_q_for_uniform_extra_heat, max_q_for_uniform_extra_heat, &
521 : inject_extra_ergs_sec, base_of_inject_extra_ergs_sec, total_mass_for_inject_extra_ergs_sec, &
522 : start_time_for_inject_extra_ergs_sec, duration_for_inject_extra_ergs_sec, &
523 : inject_until_reach_model_with_total_energy, &
524 :
525 : ! mass gain or loss
526 : no_wind_if_no_rotation, max_logT_for_k_below_const_q, &
527 : max_q_for_k_below_const_q, min_q_for_k_below_const_q, max_logT_for_k_const_mass, &
528 : min_q_for_k_const_mass, max_q_for_k_const_mass, &
529 :
530 : ! info for debugging
531 : stop_for_bad_nums, report_ierr, report_bad_negative_xa, diffusion_dump_call_number, &
532 :
533 : ! controls for the evolve routine
534 : trace_evolve, &
535 :
536 : ! misc
537 : min_chem_eqn_scale, zams_filename, set_rho_to_dm_div_dV, use_other_momentum_implicit, &
538 : use_other_surface_PT, use_other_mlt_results, use_other_kap, use_other_diffusion, use_other_diffusion_factor, &
539 : use_other_adjust_mdot, use_other_j_for_adjust_J_lost, use_other_alpha_mlt, use_other_remove_surface, &
540 : use_other_am_mixing, use_other_brunt, use_other_brunt_smoothing, use_other_solver_monitor, &
541 : use_other_build_initial_model, use_other_cgrav, use_other_energy_implicit, use_other_momentum, &
542 : use_other_energy, use_other_mesh_functions, use_other_eps_grav, use_other_gradr_factor, &
543 : use_other_D_mix, use_other_neu, use_other_net_get, use_other_opacity_factor, use_other_pressure, &
544 : use_other_diffusion_coefficients, use_other_pgstar_plots, use_other_eval_fp_ft, use_other_eval_i_rot, use_other_torque, &
545 : use_other_torque_implicit, use_other_wind, use_other_accreting_state, &
546 : use_other_after_struct_burn_mix, use_other_mesh_delta_coeff_factor, &
547 : use_other_before_struct_burn_mix, use_other_astero_freq_corr, use_other_timestep_limit, use_other_set_pgstar_controls, &
548 : use_other_screening, use_other_rate_get, use_other_net_derivs, use_other_split_burn, use_other_close_gaps, &
549 : x_ctrl, x_integer_ctrl, x_logical_ctrl, x_character_ctrl, &
550 :
551 : ! extra files
552 : read_extra_controls_inlist, extra_controls_inlist_name, &
553 : save_controls_namelist, controls_namelist_name
554 :
555 :
556 : contains
557 :
558 :
559 0 : subroutine write_controls(s, fname, ierr)
560 : type (star_info), pointer :: s
561 : character (len=*), intent(in) :: fname
562 : integer, intent(out) :: ierr
563 : integer :: iounit
564 : character (len=256) :: filename
565 :
566 0 : ierr = 0
567 0 : filename = fname
568 :
569 0 : if (len_trim(filename) == 0) filename = 'dump_controls.txt'
570 :
571 : open(newunit=iounit, file=trim(filename), &
572 0 : action='write', status='replace', iostat=ierr)
573 0 : if (ierr /= 0) then
574 0 : write(*,*) 'failed to open ' // trim(filename)
575 0 : return
576 : end if
577 :
578 0 : call set_controls_for_writing(s, ierr)
579 0 : if (ierr /= 0) then
580 0 : close(iounit)
581 0 : return
582 : end if
583 :
584 0 : write(iounit, nml=controls, iostat=ierr)
585 :
586 0 : write(*,*) 'write controls namelist values to "' // trim(filename)//'"'
587 :
588 0 : close(iounit)
589 :
590 0 : end subroutine write_controls
591 :
592 :
593 2 : subroutine do_one_setup(id, inlist, ierr)
594 : use utils_lib
595 : character (len=*), intent(in) :: inlist
596 : integer, intent(in) :: id
597 : integer, intent(out) :: ierr
598 : type (star_info), pointer :: s
599 : include 'formats'
600 1 : call get_star_ptr(id, s, ierr)
601 1 : if (ierr /= 0) return
602 1 : call set_default_controls
603 1 : call read_controls(id, inlist, ierr)
604 1 : if (ierr /= 0) return
605 :
606 1 : if (save_controls_namelist) then
607 0 : call write_controls(s, controls_namelist_name, ierr)
608 0 : if (ierr /= 0) then
609 : write(*,*) 'ierr from write_controls ' // &
610 0 : trim(controls_namelist_name)
611 0 : return
612 : end if
613 : end if
614 :
615 : end subroutine do_one_setup
616 :
617 :
618 2 : subroutine read_controls(id, filename, ierr)
619 : use star_private_def
620 : use utils_lib
621 : character(*), intent(in) :: filename
622 : integer, intent(in) :: id
623 : integer, intent(out) :: ierr
624 :
625 : type (star_info), pointer :: s
626 : ierr = 0
627 1 : call get_star_ptr(id, s, ierr)
628 1 : if (ierr /= 0) return
629 :
630 1 : call read_controls_file(s, filename, 1, ierr)
631 1 : call check_controls(s, ierr)
632 :
633 : end subroutine read_controls
634 :
635 :
636 1 : subroutine check_controls(s, ierr)
637 : type (star_info), pointer :: s
638 : integer, intent(out) :: ierr
639 :
640 1 : ierr = 0
641 :
642 1 : if (.not. (trim(s% energy_eqn_option) == 'dedt' .or. trim(s% energy_eqn_option) == 'eps_grav')) then
643 0 : write(*,'(A)')
644 0 : write(*,*) "Invalid choice for energy_eqn_option"
645 0 : write(*,*) "Available options are 'dedt' or 'eps_grav'"
646 0 : write(*,'(A)')
647 0 : ierr = -1
648 0 : return
649 : end if
650 :
651 : end subroutine check_controls
652 :
653 :
654 2 : recursive subroutine read_controls_file(s, filename, level, ierr)
655 : use star_private_def
656 : use utils_lib
657 : character(*), intent(in) :: filename
658 : type (star_info), pointer :: s
659 : integer, intent(in) :: level
660 : integer, intent(out) :: ierr
661 : logical, dimension(max_extra_inlists) :: read_extra
662 : character (len=strlen), dimension(max_extra_inlists) :: extra
663 : integer :: unit, i
664 :
665 1 : ierr = 0
666 :
667 1 : if (level >= 10) then
668 0 : write(*,*) 'ERROR: too many levels of nested extra controls inlist files'
669 0 : ierr = -1
670 0 : return
671 : end if
672 :
673 1 : if (len_trim(filename) > 0) then
674 1 : open(newunit=unit, file=trim(filename), action='read', delim='quote', status='old', iostat=ierr)
675 1 : if (ierr /= 0) then
676 0 : write(*, *) 'Failed to open control namelist file ', trim(filename)
677 0 : return
678 : end if
679 1 : read(unit, nml=controls, iostat=ierr)
680 1 : close(unit)
681 1 : if (ierr /= 0) then
682 0 : write(*, *)
683 0 : write(*, *)
684 0 : write(*, *)
685 0 : write(*, *)
686 0 : write(*, '(a)') 'Failed while trying to read control namelist file: ' // trim(filename)
687 0 : write(*, '(a)') 'Perhaps the following runtime error message will help you find the problem.'
688 0 : write(*, *)
689 0 : open(newunit=unit, file=trim(filename), action='read', delim='quote', status='old', iostat=ierr)
690 0 : read(unit, nml=controls)
691 0 : close(unit)
692 0 : return
693 : end if
694 : end if
695 :
696 1 : call store_controls(s, ierr)
697 :
698 : ! recursive calls to read other inlists
699 6 : do i=1, max_extra_inlists
700 5 : read_extra(i) = read_extra_controls_inlist(i)
701 5 : read_extra_controls_inlist(i) = .false.
702 5 : extra(i) = extra_controls_inlist_name(i)
703 5 : extra_controls_inlist_name(i) = 'undefined'
704 :
705 6 : if (read_extra(i)) then
706 0 : write(*,*) 'read ' // trim(extra(i))
707 0 : call read_controls_file(s, extra(i), level+1, ierr)
708 0 : if (ierr /= 0) return
709 : end if
710 : end do
711 :
712 :
713 : end subroutine read_controls_file
714 :
715 :
716 1 : subroutine set_default_controls
717 :
718 10 : xa_central_lower_limit_species(:) = ''
719 1 : xa_central_lower_limit(:) = 0
720 10 : xa_central_upper_limit_species(:) = ''
721 1 : xa_central_upper_limit(:) = 0
722 10 : xa_surface_lower_limit_species(:) = ''
723 1 : xa_surface_lower_limit(:) = 0
724 10 : xa_surface_upper_limit_species(:) = ''
725 1 : xa_surface_upper_limit(:) = 0
726 10 : xa_average_lower_limit_species(:) = ''
727 1 : xa_average_lower_limit(:) = 0
728 10 : xa_average_upper_limit_species(:) = ''
729 1 : xa_average_upper_limit(:) = 0
730 :
731 51 : trace_history_value_name(:) = ''
732 251 : accretion_species_id(:) = ''
733 1 : accretion_species_xa(:) = 0
734 10 : mesh_logX_species(:) = ''
735 1 : mesh_logX_min_for_extra(:) = 0
736 1 : mesh_dlogX_dlogP_extra(:) = 0
737 1 : mesh_dlogX_dlogP_full_on(:) = 0
738 1 : mesh_dlogX_dlogP_full_off(:) = 0
739 :
740 10 : xa_function_species(:) = ''
741 1 : xa_function_weight(:) = 0
742 1 : xa_function_param(:) = 0
743 1 : xa_mesh_delta_coeff(:) = 0
744 :
745 101 : diffusion_class_representative(:) = ''
746 1 : diffusion_class_A_max(:) = 0
747 1 : diffusion_class_typical_charge(:) = 0
748 1 : diffusion_class_factor(:) = 0
749 :
750 101 : x_character_ctrl(:) = ''
751 :
752 1 : predictive_mix(:) = .FALSE.
753 17 : predictive_zone_type(:) = ''
754 17 : predictive_zone_loc(:) = ''
755 17 : predictive_bdy_loc(:) = ''
756 1 : predictive_bdy_q_min(:) = 0d0
757 17 : predictive_bdy_q_max(:) = 1d0
758 1 : predictive_superad_thresh(:) = 0d0
759 17 : predictive_avoid_reversal(:) = ''
760 17 : predictive_limit_ingestion(:) = ''
761 1 : predictive_ingestion_factor(:) = 0d0
762 :
763 : include 'controls.defaults'
764 : include 'controls_dev.defaults'
765 :
766 1 : end subroutine set_default_controls
767 :
768 :
769 1 : subroutine store_controls(s, ierr)
770 : use star_private_def
771 : use chem_def ! categories
772 : use utils_lib, only: mkdir
773 : type (star_info), pointer :: s
774 : integer, intent(out) :: ierr
775 :
776 1 : ierr = 0
777 :
778 : ! where to start
779 1 : s% initial_mass = initial_mass
780 1 : s% initial_z = initial_z
781 1 : s% initial_y = initial_y
782 1 : s% initial_he3 = initial_he3
783 :
784 : ! definition of core boundaries
785 1 : s% he_core_boundary_h1_fraction = he_core_boundary_h1_fraction
786 1 : s% co_core_boundary_he4_fraction = co_core_boundary_he4_fraction
787 1 : s% one_core_boundary_he4_c12_fraction = one_core_boundary_he4_c12_fraction
788 1 : s% fe_core_boundary_si28_fraction = fe_core_boundary_si28_fraction
789 1 : s% neutron_rich_core_boundary_Ye_max = neutron_rich_core_boundary_Ye_max
790 1 : s% min_boundary_fraction = min_boundary_fraction
791 :
792 : ! when to stop
793 1 : s% max_model_number = max_model_number
794 1 : s% max_number_retries = max_number_retries
795 1 : s% max_abs_rel_run_E_err = max_abs_rel_run_E_err
796 1 : s% relax_max_number_retries = relax_max_number_retries
797 1 : s% max_age = max_age
798 1 : s% max_age_in_days = max_age_in_days
799 1 : s% max_age_in_seconds = max_age_in_seconds
800 1 : s% num_adjusted_dt_steps_before_max_age = num_adjusted_dt_steps_before_max_age
801 1 : s% dt_years_for_steps_before_max_age = dt_years_for_steps_before_max_age
802 1 : s% reduction_factor_for_max_timestep = reduction_factor_for_max_timestep
803 1 : s% when_to_stop_rtol = when_to_stop_rtol
804 1 : s% when_to_stop_atol = when_to_stop_atol
805 1 : s% gamma_center_limit = gamma_center_limit
806 1 : s% eta_center_limit = eta_center_limit
807 1 : s% log_center_temp_upper_limit = log_center_temp_upper_limit
808 1 : s% log_max_temp_upper_limit = log_max_temp_upper_limit
809 1 : s% log_max_temp_lower_limit = log_max_temp_lower_limit
810 1 : s% log_center_temp_lower_limit = log_center_temp_lower_limit
811 1 : s% log_center_density_upper_limit = log_center_density_upper_limit
812 1 : s% log_center_density_lower_limit = log_center_density_lower_limit
813 1 : s% min_timestep_limit = min_timestep_limit
814 :
815 1 : s% center_entropy_upper_limit = center_entropy_upper_limit
816 1 : s% center_entropy_lower_limit = center_entropy_lower_limit
817 1 : s% max_entropy_upper_limit = max_entropy_upper_limit
818 1 : s% max_entropy_lower_limit = max_entropy_lower_limit
819 :
820 1 : s% fe_core_infall_limit = fe_core_infall_limit
821 1 : s% fe_core_infall_mass = fe_core_infall_mass
822 1 : s% center_Ye_lower_limit = center_Ye_lower_limit
823 1 : s% center_R_lower_limit = center_R_lower_limit
824 1 : s% non_fe_core_infall_limit = non_fe_core_infall_limit
825 1 : s% non_fe_core_infall_mass = non_fe_core_infall_mass
826 1 : s% non_fe_core_rebound_limit = non_fe_core_rebound_limit
827 1 : s% v_div_csound_surf_limit = v_div_csound_surf_limit
828 1 : s% v_div_csound_max_limit = v_div_csound_max_limit
829 1 : s% Lnuc_div_L_upper_limit = Lnuc_div_L_upper_limit
830 1 : s% Lnuc_div_L_lower_limit = Lnuc_div_L_lower_limit
831 1 : s% v_surf_div_v_kh_upper_limit = v_surf_div_v_kh_upper_limit
832 1 : s% v_surf_div_v_kh_lower_limit = v_surf_div_v_kh_lower_limit
833 1 : s% v_surf_div_v_esc_limit = v_surf_div_v_esc_limit
834 1 : s% v_surf_kms_limit = v_surf_kms_limit
835 :
836 1 : s% stop_near_zams = stop_near_zams
837 1 : s% stop_at_phase_PreMS = stop_at_phase_PreMS
838 1 : s% stop_at_phase_ZAMS = stop_at_phase_ZAMS
839 1 : s% stop_at_phase_IAMS = stop_at_phase_IAMS
840 1 : s% stop_at_phase_TAMS = stop_at_phase_TAMS
841 1 : s% stop_at_phase_He_Burn = stop_at_phase_He_Burn
842 1 : s% stop_at_phase_ZACHeB = stop_at_phase_ZACHeB
843 1 : s% stop_at_phase_TACHeB = stop_at_phase_TACHeB
844 1 : s% stop_at_phase_TP_AGB = stop_at_phase_TP_AGB
845 1 : s% stop_at_phase_C_Burn = stop_at_phase_C_Burn
846 1 : s% stop_at_phase_Ne_Burn = stop_at_phase_Ne_Burn
847 1 : s% stop_at_phase_O_Burn = stop_at_phase_O_Burn
848 1 : s% stop_at_phase_Si_Burn = stop_at_phase_Si_Burn
849 1 : s% stop_at_phase_WDCS = stop_at_phase_WDCS
850 1 : s% Lnuc_div_L_zams_limit = Lnuc_div_L_zams_limit
851 1 : s% gamma1_limit = gamma1_limit
852 1 : s% gamma1_limit_max_q = gamma1_limit_max_q
853 1 : s% gamma1_limit_max_v_div_vesc = gamma1_limit_max_v_div_vesc
854 1 : s% Pgas_div_P_limit = Pgas_div_P_limit
855 1 : s% Pgas_div_P_limit_max_q = Pgas_div_P_limit_max_q
856 1 : s% peak_burn_vconv_div_cs_limit = peak_burn_vconv_div_cs_limit
857 1 : s% omega_div_omega_crit_limit = omega_div_omega_crit_limit
858 1 : s% delta_nu_lower_limit = delta_nu_lower_limit
859 1 : s% delta_nu_upper_limit = delta_nu_upper_limit
860 1 : s% delta_Pg_lower_limit = delta_Pg_lower_limit
861 1 : s% delta_Pg_upper_limit = delta_Pg_upper_limit
862 1 : s% shock_mass_upper_limit = shock_mass_upper_limit
863 1 : s% mach1_mass_upper_limit = mach1_mass_upper_limit
864 1 : s% stop_when_reach_this_cumulative_extra_heating = stop_when_reach_this_cumulative_extra_heating
865 :
866 10 : s% xa_central_lower_limit_species = xa_central_lower_limit_species
867 10 : s% xa_central_lower_limit = xa_central_lower_limit
868 :
869 10 : s% xa_central_upper_limit_species = xa_central_upper_limit_species
870 10 : s% xa_central_upper_limit = xa_central_upper_limit
871 :
872 10 : s% xa_surface_lower_limit_species = xa_surface_lower_limit_species
873 10 : s% xa_surface_lower_limit = xa_surface_lower_limit
874 :
875 10 : s% xa_surface_upper_limit_species = xa_surface_upper_limit_species
876 10 : s% xa_surface_upper_limit = xa_surface_upper_limit
877 :
878 10 : s% xa_average_lower_limit_species = xa_average_lower_limit_species
879 10 : s% xa_average_lower_limit = xa_average_lower_limit
880 :
881 10 : s% xa_average_upper_limit_species = xa_average_upper_limit_species
882 10 : s% xa_average_upper_limit = xa_average_upper_limit
883 :
884 1 : s% HB_limit = HB_limit
885 :
886 1 : s% star_mass_max_limit = star_mass_max_limit
887 1 : s% star_mass_min_limit = star_mass_min_limit
888 1 : s% ejecta_mass_max_limit = ejecta_mass_max_limit
889 1 : s% remnant_mass_min_limit = remnant_mass_min_limit
890 :
891 1 : s% star_species_mass_min_limit = star_species_mass_min_limit
892 1 : s% star_species_mass_min_limit_iso = star_species_mass_min_limit_iso
893 1 : s% star_species_mass_max_limit = star_species_mass_max_limit
894 1 : s% star_species_mass_max_limit_iso = star_species_mass_max_limit_iso
895 :
896 1 : s% xmstar_min_limit = xmstar_min_limit
897 1 : s% xmstar_max_limit = xmstar_max_limit
898 1 : s% envelope_mass_limit = envelope_mass_limit
899 1 : s% envelope_fraction_left_limit = envelope_fraction_left_limit
900 :
901 1 : s% he_core_mass_limit = he_core_mass_limit
902 1 : s% co_core_mass_limit = co_core_mass_limit
903 1 : s% one_core_mass_limit = one_core_mass_limit
904 1 : s% fe_core_mass_limit = fe_core_mass_limit
905 1 : s% neutron_rich_core_mass_limit = neutron_rich_core_mass_limit
906 :
907 1 : s% he_layer_mass_lower_limit = he_layer_mass_lower_limit
908 1 : s% abs_diff_lg_LH_lg_Ls_limit = abs_diff_lg_LH_lg_Ls_limit
909 1 : s% Teff_upper_limit = Teff_upper_limit
910 1 : s% Teff_lower_limit = Teff_lower_limit
911 1 : s% photosphere_m_upper_limit = photosphere_m_upper_limit
912 1 : s% photosphere_m_lower_limit = photosphere_m_lower_limit
913 1 : s% photosphere_m_sub_M_center_limit = photosphere_m_sub_M_center_limit
914 1 : s% photosphere_r_upper_limit = photosphere_r_upper_limit
915 1 : s% photosphere_r_lower_limit = photosphere_r_lower_limit
916 1 : s% log_Teff_upper_limit = log_Teff_upper_limit
917 1 : s% log_Teff_lower_limit = log_Teff_lower_limit
918 1 : s% log_Tsurf_upper_limit = log_Tsurf_upper_limit
919 1 : s% log_Tsurf_lower_limit = log_Tsurf_lower_limit
920 1 : s% log_Rsurf_upper_limit = log_Rsurf_upper_limit
921 1 : s% log_Rsurf_lower_limit = log_Rsurf_lower_limit
922 1 : s% log_Psurf_upper_limit = log_Psurf_upper_limit
923 1 : s% log_Psurf_lower_limit = log_Psurf_lower_limit
924 1 : s% log_Dsurf_upper_limit = log_Dsurf_upper_limit
925 1 : s% log_Dsurf_lower_limit = log_Dsurf_lower_limit
926 1 : s% log_L_upper_limit = log_L_upper_limit
927 1 : s% log_L_lower_limit = log_L_lower_limit
928 1 : s% log_g_upper_limit = log_g_upper_limit
929 1 : s% log_g_lower_limit = log_g_lower_limit
930 :
931 1 : s% power_nuc_burn_upper_limit = power_nuc_burn_upper_limit
932 1 : s% power_h_burn_upper_limit = power_h_burn_upper_limit
933 1 : s% power_he_burn_upper_limit = power_he_burn_upper_limit
934 1 : s% power_z_burn_upper_limit = power_z_burn_upper_limit
935 1 : s% power_nuc_burn_lower_limit = power_nuc_burn_lower_limit
936 1 : s% power_h_burn_lower_limit = power_h_burn_lower_limit
937 1 : s% power_he_burn_lower_limit = power_he_burn_lower_limit
938 1 : s% power_z_burn_lower_limit = power_z_burn_lower_limit
939 :
940 : ! output of "snapshots" for restarts
941 1 : s% photo_interval = photo_interval
942 1 : s% photo_digits = photo_digits
943 1 : s% photo_directory = photo_directory
944 : ! output of history and profiles.
945 1 : s% do_history_file = do_history_file
946 1 : s% history_interval = history_interval
947 :
948 1 : s% write_header_frequency = write_header_frequency
949 1 : s% terminal_interval = terminal_interval
950 1 : s% terminal_show_age_units = terminal_show_age_units
951 1 : s% terminal_show_timestep_units = terminal_show_timestep_units
952 1 : s% terminal_show_log_dt = terminal_show_log_dt
953 1 : s% terminal_show_log_age = terminal_show_log_age
954 1 : s% extra_terminal_output_file = extra_terminal_output_file
955 1 : s% num_trace_history_values = num_trace_history_values
956 51 : s% trace_history_value_name = trace_history_value_name
957 :
958 1 : s% log_directory = log_directory
959 1 : s% star_history_name = star_history_name
960 1 : s% star_history_header_name = star_history_header_name
961 1 : s% star_history_dbl_format = star_history_dbl_format
962 1 : s% star_history_int_format = star_history_int_format
963 1 : s% star_history_txt_format = star_history_txt_format
964 :
965 1 : s% profiles_index_name = profiles_index_name
966 1 : s% profile_data_prefix = profile_data_prefix
967 1 : s% profile_data_suffix = profile_data_suffix
968 1 : s% profile_data_header_suffix = profile_data_header_suffix
969 1 : s% profile_int_format = profile_int_format
970 1 : s% profile_txt_format = profile_txt_format
971 1 : s% profile_dbl_format = profile_dbl_format
972 1 : s% profile_header_include_sys_details = profile_header_include_sys_details
973 1 : s% write_profiles_flag = write_profiles_flag
974 1 : s% profile_interval = profile_interval
975 1 : s% priority_profile_interval = priority_profile_interval
976 1 : s% profile_model = profile_model
977 1 : s% max_num_profile_models = max_num_profile_models
978 1 : s% max_num_profile_zones = max_num_profile_zones
979 :
980 1 : s% write_controls_info_with_profile = write_controls_info_with_profile
981 1 : s% controls_data_prefix = controls_data_prefix
982 1 : s% controls_data_suffix = controls_data_suffix
983 :
984 1 : s% write_pulse_data_with_profile = write_pulse_data_with_profile
985 1 : s% pulse_data_format = pulse_data_format
986 1 : s% add_atmosphere_to_pulse_data = add_atmosphere_to_pulse_data
987 1 : s% add_center_point_to_pulse_data = add_center_point_to_pulse_data
988 1 : s% keep_surface_point_for_pulse_data = keep_surface_point_for_pulse_data
989 1 : s% add_double_points_to_pulse_data = add_double_points_to_pulse_data
990 1 : s% interpolate_rho_for_pulse_data = interpolate_rho_for_pulse_data
991 1 : s% threshold_grad_mu_for_double_point = threshold_grad_mu_for_double_point
992 1 : s% max_number_of_double_points = max_number_of_double_points
993 :
994 1 : s% gyre_data_schema = gyre_data_schema
995 :
996 5 : s% fgong_header = fgong_header
997 1 : s% fgong_ivers = fgong_ivers
998 :
999 1 : s% max_num_gyre_points = max_num_gyre_points
1000 1 : s% format_for_OSC_data = format_for_OSC_data
1001 1 : s% fgong_zero_A_inside_r = fgong_zero_A_inside_r
1002 1 : s% use_other_export_pulse_data = use_other_export_pulse_data
1003 1 : s% use_other_get_pulse_data = use_other_get_pulse_data
1004 1 : s% use_other_edit_pulse_data = use_other_edit_pulse_data
1005 :
1006 1 : s% write_model_with_profile = write_model_with_profile
1007 1 : s% model_data_prefix = model_data_prefix
1008 1 : s% model_data_suffix = model_data_suffix
1009 :
1010 1 : s% mixing_D_limit_for_log = mixing_D_limit_for_log
1011 1 : s% trace_mass_location = trace_mass_location
1012 1 : s% min_tau_for_max_abs_v_location = min_tau_for_max_abs_v_location
1013 1 : s% min_q_for_inner_mach1_location = min_q_for_inner_mach1_location
1014 1 : s% max_q_for_outer_mach1_location = max_q_for_outer_mach1_location
1015 :
1016 1 : s% conv_core_gap_dq_limit = conv_core_gap_dq_limit
1017 :
1018 : ! burn zone eps definitions for use in logs and profiles
1019 1 : s% burn_min1 = burn_min1
1020 1 : s% burn_min2 = burn_min2
1021 :
1022 1 : s% max_conv_vel_div_csound_maxq = max_conv_vel_div_csound_maxq
1023 1 : s% width_for_limit_conv_vel = width_for_limit_conv_vel
1024 1 : s% max_q_for_limit_conv_vel = max_q_for_limit_conv_vel
1025 1 : s% max_mass_in_gm_for_limit_conv_vel = max_mass_in_gm_for_limit_conv_vel
1026 1 : s% max_r_in_cm_for_limit_conv_vel = max_r_in_cm_for_limit_conv_vel
1027 :
1028 : ! for reported average values
1029 1 : s% surface_avg_abundance_dq = surface_avg_abundance_dq
1030 1 : s% center_avg_value_dq = center_avg_value_dq
1031 :
1032 : ! mixing parameters
1033 1 : s% min_convective_gap = min_convective_gap
1034 1 : s% min_thermohaline_gap = min_thermohaline_gap
1035 1 : s% min_semiconvection_gap = min_semiconvection_gap
1036 1 : s% min_thermohaline_dropout = min_thermohaline_dropout
1037 1 : s% max_dropout_gradL_sub_grada = max_dropout_gradL_sub_grada
1038 1 : s% remove_embedded_semiconvection = remove_embedded_semiconvection
1039 1 : s% recalc_mix_info_after_evolve = recalc_mix_info_after_evolve
1040 1 : s% remove_mixing_glitches = remove_mixing_glitches
1041 1 : s% okay_to_remove_mixing_singleton = okay_to_remove_mixing_singleton
1042 1 : s% prune_bad_cz_min_Hp_height = prune_bad_cz_min_Hp_height
1043 1 : s% prune_bad_cz_min_log_eps_nuc = prune_bad_cz_min_log_eps_nuc
1044 1 : s% redo_conv_for_dr_lt_mixing_length = redo_conv_for_dr_lt_mixing_length
1045 :
1046 1 : s% alpha_semiconvection = alpha_semiconvection
1047 1 : s% semiconvection_option = semiconvection_option
1048 1 : s% use_Ledoux_criterion = use_Ledoux_criterion
1049 1 : s% num_cells_for_smooth_gradL_composition_term = num_cells_for_smooth_gradL_composition_term
1050 1 : s% threshold_for_smooth_gradL_composition_term = threshold_for_smooth_gradL_composition_term
1051 1 : s% clip_D_limit = clip_D_limit
1052 :
1053 1 : s% okay_to_reduce_gradT_excess = okay_to_reduce_gradT_excess
1054 1 : s% gradT_excess_f1 = gradT_excess_f1
1055 1 : s% gradT_excess_f2 = gradT_excess_f2
1056 1 : s% gradT_excess_age_fraction = gradT_excess_age_fraction
1057 1 : s% gradT_excess_max_change = gradT_excess_max_change
1058 1 : s% gradT_excess_lambda1 = gradT_excess_lambda1
1059 1 : s% gradT_excess_beta1 = gradT_excess_beta1
1060 1 : s% gradT_excess_lambda2 = gradT_excess_lambda2
1061 1 : s% gradT_excess_beta2 = gradT_excess_beta2
1062 1 : s% gradT_excess_dlambda = gradT_excess_dlambda
1063 1 : s% gradT_excess_dbeta = gradT_excess_dbeta
1064 1 : s% gradT_excess_max_center_h1 = gradT_excess_max_center_h1
1065 1 : s% gradT_excess_min_center_he4 = gradT_excess_min_center_he4
1066 1 : s% gradT_excess_max_logT = gradT_excess_max_logT
1067 1 : s% gradT_excess_min_log_tau_full_on = gradT_excess_min_log_tau_full_on
1068 1 : s% gradT_excess_max_log_tau_full_off = gradT_excess_max_log_tau_full_off
1069 :
1070 1 : s% D_mix_zero_region_bottom_q = D_mix_zero_region_bottom_q
1071 1 : s% D_mix_zero_region_top_q = D_mix_zero_region_top_q
1072 1 : s% dq_D_mix_zero_at_H_He_crossover = dq_D_mix_zero_at_H_He_crossover
1073 1 : s% dq_D_mix_zero_at_H_C_crossover = dq_D_mix_zero_at_H_C_crossover
1074 :
1075 1 : s% use_superad_reduction = use_superad_reduction
1076 1 : s% superad_reduction_gamma_limit = superad_reduction_gamma_limit
1077 1 : s% superad_reduction_gamma_limit_scale = superad_reduction_gamma_limit_scale
1078 1 : s% superad_reduction_gamma_inv_scale = superad_reduction_gamma_inv_scale
1079 1 : s% superad_reduction_diff_grads_limit = superad_reduction_diff_grads_limit
1080 1 : s% superad_reduction_limit = superad_reduction_limit
1081 :
1082 1 : s% max_logT_for_mlt = max_logT_for_mlt
1083 1 : s% mlt_make_surface_no_mixing = mlt_make_surface_no_mixing
1084 1 : s% do_normalize_dqs_as_part_of_set_qs = do_normalize_dqs_as_part_of_set_qs
1085 :
1086 1 : s% thermohaline_coeff = thermohaline_coeff
1087 1 : s% thermohaline_option = thermohaline_option
1088 1 : s% mixing_length_alpha = mixing_length_alpha
1089 1 : s% remove_small_D_limit = remove_small_D_limit
1090 1 : s% alt_scale_height_flag = alt_scale_height_flag
1091 1 : s% Henyey_MLT_y_param = Henyey_MLT_y_param
1092 1 : s% Henyey_MLT_nu_param = Henyey_MLT_nu_param
1093 1 : s% make_gradr_sticky_in_solver_iters = make_gradr_sticky_in_solver_iters
1094 1 : s% min_logT_for_make_gradr_sticky_in_solver_iters = min_logT_for_make_gradr_sticky_in_solver_iters
1095 1 : s% no_MLT_below_shock = no_MLT_below_shock
1096 1 : s% MLT_option = MLT_option
1097 1 : s% steps_before_use_TDC = steps_before_use_TDC
1098 1 : s% mlt_use_rotation_correction = mlt_use_rotation_correction
1099 1 : s% mlt_Pturb_factor = mlt_Pturb_factor
1100 :
1101 1 : s% burn_z_mix_region_logT = burn_z_mix_region_logT
1102 1 : s% burn_he_mix_region_logT = burn_he_mix_region_logT
1103 1 : s% burn_h_mix_region_logT = burn_h_mix_region_logT
1104 1 : s% max_Y_for_burn_z_mix_region = max_Y_for_burn_z_mix_region
1105 1 : s% max_X_for_burn_he_mix_region = max_X_for_burn_he_mix_region
1106 :
1107 1 : s% limit_overshoot_Hp_using_size_of_convection_zone = limit_overshoot_Hp_using_size_of_convection_zone
1108 :
1109 17 : s% predictive_mix = predictive_mix
1110 17 : s% predictive_superad_thresh = predictive_superad_thresh
1111 17 : s% predictive_avoid_reversal = predictive_avoid_reversal
1112 17 : s% predictive_limit_ingestion = predictive_limit_ingestion
1113 17 : s% predictive_ingestion_factor = predictive_ingestion_factor
1114 17 : s% predictive_zone_type = predictive_zone_type
1115 17 : s% predictive_zone_loc = predictive_zone_loc
1116 17 : s% predictive_bdy_loc = predictive_bdy_loc
1117 17 : s% predictive_bdy_q_min = predictive_bdy_q_min
1118 17 : s% predictive_bdy_q_max = predictive_bdy_q_max
1119 :
1120 1 : s% do_conv_premix = do_conv_premix
1121 1 : s% conv_premix_avoid_increase = conv_premix_avoid_increase
1122 1 : s% conv_premix_time_factor = conv_premix_time_factor
1123 1 : s% conv_premix_fix_pgas = conv_premix_fix_pgas
1124 1 : s% conv_premix_dump_snapshots = conv_premix_dump_snapshots
1125 1 : s% do_premix_heating = do_premix_heating
1126 :
1127 17 : s% overshoot_f = overshoot_f
1128 17 : s% overshoot_f2 = overshoot_f2
1129 17 : s% overshoot_f0 = overshoot_f0
1130 17 : s% overshoot_D0 = overshoot_D0
1131 17 : s% overshoot_Delta0 = overshoot_Delta0
1132 17 : s% overshoot_mass_full_on = overshoot_mass_full_on
1133 17 : s% overshoot_mass_full_off = overshoot_mass_full_off
1134 17 : s% overshoot_scheme = overshoot_scheme
1135 17 : s% overshoot_zone_type = overshoot_zone_type
1136 17 : s% overshoot_zone_loc = overshoot_zone_loc
1137 17 : s% overshoot_bdy_loc = overshoot_bdy_loc
1138 1 : s% overshoot_D_min = overshoot_D_min
1139 1 : s% overshoot_brunt_B_max = overshoot_brunt_B_max
1140 :
1141 1 : s% max_conv_vel_div_csound = max_conv_vel_div_csound
1142 1 : s% max_v_for_convection = max_v_for_convection
1143 1 : s% max_q_for_convection_with_hydro_on = max_q_for_convection_with_hydro_on
1144 1 : s% max_v_div_cs_for_convection = max_v_div_cs_for_convection
1145 1 : s% max_abs_du_div_cs_for_convection = max_abs_du_div_cs_for_convection
1146 :
1147 1 : s% calculate_Brunt_B = calculate_Brunt_B
1148 1 : s% calculate_Brunt_N2 = calculate_Brunt_N2
1149 1 : s% brunt_N2_coefficient = brunt_N2_coefficient
1150 1 : s% num_cells_for_smooth_brunt_B = num_cells_for_smooth_brunt_B
1151 1 : s% threshold_for_smooth_brunt_B = threshold_for_smooth_brunt_B
1152 1 : s% min_magnitude_brunt_B = min_magnitude_brunt_B
1153 :
1154 1 : s% min_overshoot_q = min_overshoot_q
1155 1 : s% overshoot_alpha = overshoot_alpha
1156 :
1157 1 : s% RSP_max_num_periods = RSP_max_num_periods
1158 1 : s% RSP_target_steps_per_cycle = RSP_target_steps_per_cycle
1159 1 : s% RSP_min_max_R_for_periods = RSP_min_max_R_for_periods
1160 1 : s% RSP_min_deltaR_for_periods = RSP_min_deltaR_for_periods
1161 1 : s% RSP_default_PERIODLIN = RSP_default_PERIODLIN
1162 1 : s% RSP_min_PERIOD_div_PERIODLIN = RSP_min_PERIOD_div_PERIODLIN
1163 1 : s% RSP_GREKM_avg_abs_frac_new = RSP_GREKM_avg_abs_frac_new
1164 1 : s% RSP_GREKM_avg_abs_limit = RSP_GREKM_avg_abs_limit
1165 1 : s% RSP_theta = RSP_theta
1166 1 : s% RSP_thetat = RSP_thetat
1167 1 : s% RSP_thetau = RSP_thetau
1168 1 : s% RSP_thetae = RSP_thetae
1169 1 : s% RSP_thetaq = RSP_thetaq
1170 1 : s% RSP_wtr = RSP_wtr
1171 1 : s% RSP_wtc = RSP_wtc
1172 1 : s% RSP_wtt = RSP_wtt
1173 1 : s% RSP_gam = RSP_gam
1174 1 : s% RSP_alfa = RSP_alfa
1175 1 : s% RSP_alfap = RSP_alfap
1176 1 : s% RSP_alfam = RSP_alfam
1177 1 : s% RSP_alfat = RSP_alfat
1178 1 : s% RSP_alfas = RSP_alfas
1179 1 : s% RSP_alfac = RSP_alfac
1180 1 : s% RSP_alfad = RSP_alfad
1181 1 : s% RSP_gammar = RSP_gammar
1182 1 : s% RSP_efl0 = RSP_efl0
1183 1 : s% RSP_min_tau_for_turbulent_flux = RSP_min_tau_for_turbulent_flux
1184 1 : s% RSP_cq = RSP_cq
1185 1 : s% RSP_zsh = RSP_zsh
1186 1 : s% RSP_Qvisc_quadratic = RSP_Qvisc_quadratic
1187 1 : s% RSP_Qvisc_linear = RSP_Qvisc_linear
1188 1 : s% RSP_Qvisc_linear_static = RSP_Qvisc_linear_static
1189 1 : s% RSP_tol_max_corr = RSP_tol_max_corr
1190 1 : s% RSP_tol_max_resid = RSP_tol_max_resid
1191 1 : s% RSP_max_iters_per_try = RSP_max_iters_per_try
1192 1 : s% RSP_max_retries_per_step = RSP_max_retries_per_step
1193 1 : s% RSP_nz_div_IBOTOM = RSP_nz_div_IBOTOM
1194 1 : s% RSP_kick_vsurf_km_per_sec = RSP_kick_vsurf_km_per_sec
1195 1 : s% RSP_fraction_1st_overtone = RSP_fraction_1st_overtone
1196 1 : s% RSP_fraction_2nd_overtone = RSP_fraction_2nd_overtone
1197 1 : s% RSP_Avel = RSP_Avel
1198 1 : s% RSP_Arnd = RSP_Arnd
1199 1 : s% RSP_mode_for_setting_PERIODLIN = RSP_mode_for_setting_PERIODLIN
1200 1 : s% RSP_initial_dt_factor = RSP_initial_dt_factor
1201 1 : s% RSP_v_div_cs_threshold_for_dt_limit = RSP_v_div_cs_threshold_for_dt_limit
1202 1 : s% RSP_max_dt_times_min_dr_div_cs = RSP_max_dt_times_min_dr_div_cs
1203 1 : s% RSP_max_dt_times_min_rad_diff_time = RSP_max_dt_times_min_rad_diff_time
1204 1 : s% RSP_max_dt = RSP_max_dt
1205 1 : s% RSP_testing = RSP_testing
1206 1 : s% RSP_report_limit_dt = RSP_report_limit_dt
1207 1 : s% RSP_use_Prad_for_Psurf = RSP_use_Prad_for_Psurf
1208 1 : s% RSP_report_undercorrections = RSP_report_undercorrections
1209 1 : s% RSP_use_atm_grey_with_kap_for_Psurf = RSP_use_atm_grey_with_kap_for_Psurf
1210 1 : s% use_other_RSP_linear_analysis = use_other_RSP_linear_analysis
1211 1 : s% use_other_RSP_build_model = use_other_RSP_build_model
1212 1 : s% RSP_kap_density_factor = RSP_kap_density_factor
1213 1 : s% RSP_fixed_Psurf = RSP_fixed_Psurf
1214 1 : s% RSP_hydro_only = RSP_hydro_only
1215 1 : s% RSP_tau_surf_for_atm_grey_with_kap = RSP_tau_surf_for_atm_grey_with_kap
1216 1 : s% RSP_Psurf = RSP_Psurf
1217 1 : s% set_RSP_Psurf_to_multiple_of_initial_P1 = set_RSP_Psurf_to_multiple_of_initial_P1
1218 1 : s% RSP_surface_tau = RSP_surface_tau
1219 1 : s% RSP_write_map = RSP_write_map
1220 1 : s% RSP_trace_RSP_build_model = RSP_trace_RSP_build_model
1221 1 : s% RSP_map_filename = RSP_map_filename
1222 1 : s% RSP_map_columns_filename = RSP_map_columns_filename
1223 1 : s% RSP_map_history_filename = RSP_map_history_filename
1224 1 : s% RSP_map_first_period = RSP_map_first_period
1225 1 : s% RSP_map_last_period = RSP_map_last_period
1226 1 : s% RSP_map_zone_interval = RSP_map_zone_interval
1227 1 : s% RSP_nmodes = RSP_nmodes
1228 1 : s% RSP_work_period = RSP_work_period
1229 1 : s% RSP_work_filename = RSP_work_filename
1230 1 : s% RSP_nz_outer = RSP_nz_outer
1231 1 : s% RSP_max_outer_dm_tries = RSP_max_outer_dm_tries
1232 1 : s% RSP_max_inner_scale_tries = RSP_max_inner_scale_tries
1233 1 : s% RSP_relax_max_tries = RSP_relax_max_tries
1234 1 : s% RSP_T_anchor_tolerance = RSP_T_anchor_tolerance
1235 1 : s% RSP_T_inner_tolerance = RSP_T_inner_tolerance
1236 1 : s% RSP_relax_dm_tolerance = RSP_relax_dm_tolerance
1237 1 : s% RSP_dq_1_factor = RSP_dq_1_factor
1238 1 : s% use_RSP_new_start_scheme = use_RSP_new_start_scheme
1239 1 : s% RSP_do_check_omega = RSP_do_check_omega
1240 1 : s% RSP_report_check_omega_changes = RSP_report_check_omega_changes
1241 1 : s% RSP_nz = RSP_nz
1242 1 : s% RSP_T_anchor = RSP_T_anchor
1243 1 : s% RSP_T_inner = RSP_T_inner
1244 1 : s% RSP_relax_initial_model = RSP_relax_initial_model
1245 1 : s% RSP_relax_alfap_before_alfat = RSP_relax_alfap_before_alfat
1246 1 : s% RSP_relax_adjust_inner_mass_distribution = RSP_relax_adjust_inner_mass_distribution
1247 1 : s% RSP_Teff = RSP_Teff
1248 1 : s% RSP_mass = RSP_mass
1249 1 : s% RSP_L = RSP_L
1250 1 : s% RSP_X = RSP_X
1251 1 : s% RSP_Z = RSP_Z
1252 :
1253 1 : s% RTI_smooth_mass = RTI_smooth_mass
1254 1 : s% RTI_smooth_iterations = RTI_smooth_iterations
1255 1 : s% RTI_smooth_fraction = RTI_smooth_fraction
1256 :
1257 1 : s% alpha_RTI_diffusion_factor = alpha_RTI_diffusion_factor
1258 1 : s% dudt_RTI_diffusion_factor = dudt_RTI_diffusion_factor
1259 1 : s% dedt_RTI_diffusion_factor = dedt_RTI_diffusion_factor
1260 1 : s% dlnddt_RTI_diffusion_factor = dlnddt_RTI_diffusion_factor
1261 1 : s% composition_RTI_diffusion_factor = composition_RTI_diffusion_factor
1262 1 : s% max_M_RTI_factors_full_on = max_M_RTI_factors_full_on
1263 1 : s% min_M_RTI_factors_full_off = min_M_RTI_factors_full_off
1264 :
1265 1 : s% alpha_RTI_src_min_v_div_cs = alpha_RTI_src_min_v_div_cs
1266 1 : s% alpha_RTI_src_max_q = alpha_RTI_src_max_q
1267 1 : s% alpha_RTI_src_min_q = alpha_RTI_src_min_q
1268 :
1269 1 : s% T_mix_limit = T_mix_limit
1270 1 : s% mlt_gradT_fraction = mlt_gradT_fraction
1271 :
1272 : ! atmosphere -- surface boundary conditions
1273 1 : s% atm_option = atm_option
1274 1 : s% atm_off_table_option = atm_off_table_option
1275 1 : s% Pextra_factor = Pextra_factor
1276 1 : s% atm_fixed_Teff = atm_fixed_Teff
1277 1 : s% atm_fixed_Psurf = atm_fixed_Psurf
1278 1 : s% atm_fixed_Tsurf = atm_fixed_Tsurf
1279 :
1280 1 : s% atm_T_tau_relation = atm_T_tau_relation
1281 1 : s% atm_T_tau_opacity = atm_T_tau_opacity
1282 1 : s% atm_T_tau_errtol = atm_T_tau_errtol
1283 1 : s% atm_T_tau_max_iters = atm_T_tau_max_iters
1284 1 : s% atm_T_tau_max_steps = atm_T_tau_max_steps
1285 :
1286 1 : s% atm_table = atm_table
1287 :
1288 1 : s% atm_irradiated_opacity = atm_irradiated_opacity
1289 1 : s% atm_irradiated_errtol = atm_irradiated_errtol
1290 1 : s% atm_irradiated_T_eq = atm_irradiated_T_eq
1291 1 : s% atm_irradiated_kap_v = atm_irradiated_kap_v
1292 1 : s% atm_irradiated_kap_v_div_kap_th = atm_irradiated_kap_v_div_kap_th
1293 1 : s% atm_irradiated_P_surf = atm_irradiated_P_surf
1294 1 : s% atm_irradiated_max_iters = atm_irradiated_max_iters
1295 :
1296 1 : s% use_compression_outer_BC = use_compression_outer_BC
1297 1 : s% use_momentum_outer_BC = use_momentum_outer_BC
1298 1 : s% use_zero_Pgas_outer_BC = use_zero_Pgas_outer_BC
1299 1 : s% fixed_vsurf = fixed_vsurf
1300 1 : s% use_fixed_vsurf_outer_BC = use_fixed_vsurf_outer_BC
1301 1 : s% use_RSP_L_eqn_outer_BC = use_RSP_L_eqn_outer_BC
1302 1 : s% fixed_Psurf = fixed_Psurf
1303 1 : s% use_fixed_Psurf_outer_BC = use_fixed_Psurf_outer_BC
1304 :
1305 1 : s% atm_build_tau_outer = atm_build_tau_outer
1306 1 : s% atm_build_dlogtau = atm_build_dlogtau
1307 1 : s% atm_build_errtol = atm_build_errtol
1308 :
1309 1 : s% use_T_tau_gradr_factor = use_T_tau_gradr_factor
1310 :
1311 : ! starspots
1312 1 : s% do_starspots = do_starspots
1313 1 : s% fspot = fspot
1314 1 : s% xspot = xspot
1315 :
1316 : ! extra heat near surface to model irradiation
1317 1 : s% irradiation_flux = irradiation_flux
1318 1 : s% column_depth_for_irradiation = column_depth_for_irradiation
1319 :
1320 : ! extra heat
1321 1 : s% inject_uniform_extra_heat = inject_uniform_extra_heat
1322 1 : s% min_q_for_uniform_extra_heat = min_q_for_uniform_extra_heat
1323 1 : s% max_q_for_uniform_extra_heat = max_q_for_uniform_extra_heat
1324 1 : s% inject_extra_ergs_sec = inject_extra_ergs_sec
1325 1 : s% base_of_inject_extra_ergs_sec = base_of_inject_extra_ergs_sec
1326 1 : s% total_mass_for_inject_extra_ergs_sec = total_mass_for_inject_extra_ergs_sec
1327 1 : s% start_time_for_inject_extra_ergs_sec = start_time_for_inject_extra_ergs_sec
1328 1 : s% duration_for_inject_extra_ergs_sec = duration_for_inject_extra_ergs_sec
1329 1 : s% inject_until_reach_model_with_total_energy = inject_until_reach_model_with_total_energy
1330 :
1331 : ! mass gain or loss
1332 1 : s% mass_change = mass_change
1333 1 : s% mass_change_full_off_dt = mass_change_full_off_dt
1334 1 : s% mass_change_full_on_dt = mass_change_full_on_dt
1335 1 : s% trace_dt_control_mass_change = trace_dt_control_mass_change
1336 1 : s% no_wind_if_no_rotation = no_wind_if_no_rotation
1337 :
1338 1 : s% min_wind = min_wind
1339 1 : s% max_wind = max_wind
1340 1 : s% use_accreted_material_j = use_accreted_material_j
1341 1 : s% accreted_material_j = accreted_material_j
1342 1 : s% D_omega_mixing_rate = D_omega_mixing_rate
1343 1 : s% D_omega_mixing_across_convection_boundary = D_omega_mixing_across_convection_boundary
1344 1 : s% max_q_for_D_omega_zero_in_convection_region = max_q_for_D_omega_zero_in_convection_region
1345 1 : s% nu_omega_mixing_rate = nu_omega_mixing_rate
1346 1 : s% nu_omega_mixing_across_convection_boundary = nu_omega_mixing_across_convection_boundary
1347 1 : s% max_q_for_nu_omega_zero_in_convection_region = max_q_for_nu_omega_zero_in_convection_region
1348 :
1349 1 : s% mdot_omega_power = mdot_omega_power
1350 1 : s% max_rotational_mdot_boost = max_rotational_mdot_boost
1351 1 : s% max_mdot_jump_for_rotation = max_mdot_jump_for_rotation
1352 1 : s% lim_trace_rotational_mdot_boost = lim_trace_rotational_mdot_boost
1353 1 : s% rotational_mdot_boost_fac = rotational_mdot_boost_fac
1354 1 : s% rotational_mdot_kh_fac = rotational_mdot_kh_fac
1355 1 : s% surf_avg_tau = surf_avg_tau
1356 1 : s% surf_avg_tau_min = surf_avg_tau_min
1357 :
1358 1 : s% super_eddington_scaling_factor = super_eddington_scaling_factor
1359 1 : s% super_eddington_wind_Ledd_factor = super_eddington_wind_Ledd_factor
1360 1 : s% wind_boost_full_off_L_div_Ledd = wind_boost_full_off_L_div_Ledd
1361 1 : s% wind_boost_full_on_L_div_Ledd = wind_boost_full_on_L_div_Ledd
1362 1 : s% super_eddington_wind_max_boost = super_eddington_wind_max_boost
1363 1 : s% trace_super_eddington_wind_boost = trace_super_eddington_wind_boost
1364 :
1365 1 : s% max_tries_for_implicit_wind = max_tries_for_implicit_wind
1366 1 : s% iwind_tolerance = iwind_tolerance
1367 1 : s% iwind_lambda = iwind_lambda
1368 :
1369 1 : s% cool_wind_full_on_T = cool_wind_full_on_T
1370 1 : s% hot_wind_full_on_T = hot_wind_full_on_T
1371 :
1372 1 : s% rlo_scaling_factor = rlo_scaling_factor
1373 1 : s% rlo_wind_min_L = rlo_wind_min_L
1374 1 : s% rlo_wind_max_Teff = rlo_wind_max_Teff
1375 1 : s% rlo_wind_roche_lobe_radius = rlo_wind_roche_lobe_radius
1376 1 : s% roche_lobe_xfer_full_on = roche_lobe_xfer_full_on
1377 1 : s% roche_lobe_xfer_full_off = roche_lobe_xfer_full_off
1378 1 : s% rlo_wind_base_mdot = rlo_wind_base_mdot
1379 1 : s% rlo_wind_scale_height = rlo_wind_scale_height
1380 :
1381 1 : s% hot_wind_scheme = hot_wind_scheme
1382 1 : s% cool_wind_RGB_scheme = cool_wind_RGB_scheme
1383 1 : s% cool_wind_AGB_scheme = cool_wind_AGB_scheme
1384 1 : s% RGB_to_AGB_wind_switch = RGB_to_AGB_wind_switch
1385 1 : s% Reimers_scaling_factor = Reimers_scaling_factor
1386 1 : s% Blocker_scaling_factor = Blocker_scaling_factor
1387 1 : s% de_Jager_scaling_factor = de_Jager_scaling_factor
1388 1 : s% van_Loon_scaling_factor = van_Loon_scaling_factor
1389 1 : s% Nieuwenhuijzen_scaling_factor = Nieuwenhuijzen_scaling_factor
1390 1 : s% Vink_scaling_factor = Vink_scaling_factor
1391 1 : s% Dutch_scaling_factor = Dutch_scaling_factor
1392 1 : s% Bjorklund_scaling_factor = Bjorklund_scaling_factor
1393 1 : s% Dutch_wind_lowT_scheme = Dutch_wind_lowT_scheme
1394 :
1395 1 : s% wind_H_envelope_limit = wind_H_envelope_limit
1396 1 : s% wind_H_He_envelope_limit = wind_H_He_envelope_limit
1397 1 : s% wind_He_layer_limit = wind_He_layer_limit
1398 :
1399 1 : s% max_logT_for_k_below_const_q = max_logT_for_k_below_const_q
1400 1 : s% max_q_for_k_below_const_q = max_q_for_k_below_const_q
1401 1 : s% min_q_for_k_below_const_q = min_q_for_k_below_const_q
1402 1 : s% max_logT_for_k_const_mass = max_logT_for_k_const_mass
1403 1 : s% min_q_for_k_const_mass = min_q_for_k_const_mass
1404 1 : s% max_q_for_k_const_mass = max_q_for_k_const_mass
1405 :
1406 : ! composition of added mass
1407 1 : s% accrete_same_as_surface = accrete_same_as_surface
1408 :
1409 1 : s% accrete_given_mass_fractions = accrete_given_mass_fractions
1410 1 : s% num_accretion_species = num_accretion_species
1411 251 : s% accretion_species_id = accretion_species_id
1412 251 : s% accretion_species_xa = accretion_species_xa
1413 :
1414 1 : s% accretion_h1 = accretion_h1
1415 1 : s% accretion_h2 = accretion_h2
1416 1 : s% accretion_he3 = accretion_he3
1417 1 : s% accretion_he4 = accretion_he4
1418 1 : s% accretion_zfracs = accretion_zfracs
1419 1 : s% accretion_dump_missing_metals_into_heaviest = accretion_dump_missing_metals_into_heaviest
1420 :
1421 : ! special list of z fractions
1422 1 : s% z_fraction_li = z_fraction_li
1423 1 : s% z_fraction_be = z_fraction_be
1424 1 : s% z_fraction_b = z_fraction_b
1425 1 : s% z_fraction_c = z_fraction_c
1426 1 : s% z_fraction_n = z_fraction_n
1427 1 : s% z_fraction_o = z_fraction_o
1428 1 : s% z_fraction_f = z_fraction_f
1429 1 : s% z_fraction_ne = z_fraction_ne
1430 1 : s% z_fraction_na = z_fraction_na
1431 1 : s% z_fraction_mg = z_fraction_mg
1432 1 : s% z_fraction_al = z_fraction_al
1433 1 : s% z_fraction_si = z_fraction_si
1434 1 : s% z_fraction_p = z_fraction_p
1435 1 : s% z_fraction_s = z_fraction_s
1436 1 : s% z_fraction_cl = z_fraction_cl
1437 1 : s% z_fraction_ar = z_fraction_ar
1438 1 : s% z_fraction_k = z_fraction_k
1439 1 : s% z_fraction_ca = z_fraction_ca
1440 1 : s% z_fraction_sc = z_fraction_sc
1441 1 : s% z_fraction_ti = z_fraction_ti
1442 1 : s% z_fraction_v = z_fraction_v
1443 1 : s% z_fraction_cr = z_fraction_cr
1444 1 : s% z_fraction_mn = z_fraction_mn
1445 1 : s% z_fraction_fe = z_fraction_fe
1446 1 : s% z_fraction_co = z_fraction_co
1447 1 : s% z_fraction_ni = z_fraction_ni
1448 1 : s% z_fraction_cu = z_fraction_cu
1449 1 : s% z_fraction_zn = z_fraction_zn
1450 :
1451 1 : s% lgT_lo_for_set_new_abundances = lgT_lo_for_set_new_abundances
1452 1 : s% lgT_hi_for_set_new_abundances = lgT_hi_for_set_new_abundances
1453 :
1454 : ! automatic stops for mass loss/gain
1455 1 : s% max_star_mass_for_gain = max_star_mass_for_gain
1456 1 : s% min_star_mass_for_loss = min_star_mass_for_loss
1457 1 : s% max_T_center_for_any_mass_loss = max_T_center_for_any_mass_loss
1458 1 : s% max_T_center_for_full_mass_loss = max_T_center_for_full_mass_loss
1459 :
1460 : ! extra power source
1461 1 : s% extra_power_source = extra_power_source
1462 :
1463 : ! relaxation parameters
1464 1 : s% relax_dlnZ = relax_dlnZ
1465 1 : s% relax_dY = relax_dY
1466 :
1467 : ! mesh adjustment
1468 1 : s% show_mesh_changes = show_mesh_changes
1469 1 : s% okay_to_remesh = okay_to_remesh
1470 1 : s% restore_mesh_on_retry = restore_mesh_on_retry
1471 1 : s% num_steps_to_hold_mesh_after_retry = num_steps_to_hold_mesh_after_retry
1472 1 : s% trace_mesh_adjust_error_in_conservation = trace_mesh_adjust_error_in_conservation
1473 1 : s% max_rel_delta_IE_for_mesh_total_energy_balance = max_rel_delta_IE_for_mesh_total_energy_balance
1474 1 : s% max_allowed_nz = max_allowed_nz
1475 1 : s% mesh_max_allowed_ratio = mesh_max_allowed_ratio
1476 1 : s% remesh_max_allowed_logT = remesh_max_allowed_logT
1477 1 : s% max_delta_x_for_merge = max_delta_x_for_merge
1478 :
1479 1 : s% mesh_ok_to_merge = mesh_ok_to_merge
1480 1 : s% mesh_max_k_old_for_split = mesh_max_k_old_for_split
1481 1 : s% mesh_min_k_old_for_split = mesh_min_k_old_for_split
1482 1 : s% mesh_adjust_get_T_from_E = mesh_adjust_get_T_from_E
1483 :
1484 1 : s% max_dq = max_dq
1485 1 : s% min_dq = min_dq
1486 1 : s% min_dq_for_split = min_dq_for_split
1487 1 : s% min_dq_for_xa = min_dq_for_xa
1488 1 : s% min_dq_for_xa_convective = min_dq_for_xa_convective
1489 1 : s% min_dq_for_logT = min_dq_for_logT
1490 :
1491 1 : s% mesh_min_dlnR = mesh_min_dlnR
1492 1 : s% merge_if_dlnR_too_small = merge_if_dlnR_too_small
1493 :
1494 1 : s% mesh_min_dr_div_dRstar = mesh_min_dr_div_dRstar
1495 1 : s% merge_if_dr_div_dRstar_too_small = merge_if_dr_div_dRstar_too_small
1496 :
1497 1 : s% mesh_min_dr_div_cs = mesh_min_dr_div_cs
1498 1 : s% merge_if_dr_div_cs_too_small = merge_if_dr_div_cs_too_small
1499 :
1500 1 : s% max_center_cell_dq = max_center_cell_dq
1501 1 : s% max_surface_cell_dq = max_surface_cell_dq
1502 1 : s% min_surface_cell_dq = min_surface_cell_dq
1503 1 : s% max_num_subcells = max_num_subcells
1504 1 : s% max_num_merge_cells = max_num_merge_cells
1505 1 : s% max_num_merge_surface_cells = max_num_merge_surface_cells
1506 :
1507 1 : s% mesh_delta_coeff = mesh_delta_coeff
1508 1 : s% mesh_delta_coeff_for_highT = mesh_delta_coeff_for_highT
1509 1 : s% logT_max_for_standard_mesh_delta_coeff = logT_max_for_standard_mesh_delta_coeff
1510 1 : s% logT_min_for_highT_mesh_delta_coeff = logT_min_for_highT_mesh_delta_coeff
1511 1 : s% mesh_Pgas_div_P_exponent = mesh_Pgas_div_P_exponent
1512 :
1513 1 : s% remesh_dt_limit = remesh_dt_limit
1514 :
1515 1 : s% E_function_weight = E_function_weight
1516 1 : s% E_function_param = E_function_param
1517 1 : s% P_function_weight = P_function_weight
1518 :
1519 10 : s% mesh_logX_species = mesh_logX_species
1520 10 : s% mesh_logX_min_for_extra = mesh_logX_min_for_extra
1521 10 : s% mesh_dlogX_dlogP_extra = mesh_dlogX_dlogP_extra
1522 10 : s% mesh_dlogX_dlogP_full_on = mesh_dlogX_dlogP_full_on
1523 10 : s% mesh_dlogX_dlogP_full_off = mesh_dlogX_dlogP_full_off
1524 :
1525 1 : s% convective_bdy_min_dt_yrs = convective_bdy_min_dt_yrs
1526 1 : s% convective_bdy_weight = convective_bdy_weight
1527 1 : s% convective_bdy_dq_limit = convective_bdy_dq_limit
1528 :
1529 1 : s% mesh_dlog_eps_min_for_extra = mesh_dlog_eps_min_for_extra
1530 1 : s% mesh_dlog_eps_dlogP_full_on = mesh_dlog_eps_dlogP_full_on
1531 1 : s% mesh_dlog_eps_dlogP_full_off = mesh_dlog_eps_dlogP_full_off
1532 :
1533 1 : s% mesh_dlog_pp_dlogP_extra = mesh_dlog_pp_dlogP_extra
1534 1 : s% mesh_dlog_cno_dlogP_extra = mesh_dlog_cno_dlogP_extra
1535 1 : s% mesh_dlog_3alf_dlogP_extra = mesh_dlog_3alf_dlogP_extra
1536 :
1537 1 : s% mesh_dlog_burn_c_dlogP_extra = mesh_dlog_burn_c_dlogP_extra
1538 1 : s% mesh_dlog_burn_n_dlogP_extra = mesh_dlog_burn_n_dlogP_extra
1539 1 : s% mesh_dlog_burn_o_dlogP_extra = mesh_dlog_burn_o_dlogP_extra
1540 1 : s% mesh_dlog_burn_ne_dlogP_extra = mesh_dlog_burn_ne_dlogP_extra
1541 1 : s% mesh_dlog_burn_na_dlogP_extra = mesh_dlog_burn_na_dlogP_extra
1542 1 : s% mesh_dlog_burn_mg_dlogP_extra = mesh_dlog_burn_mg_dlogP_extra
1543 1 : s% mesh_dlog_burn_si_dlogP_extra = mesh_dlog_burn_si_dlogP_extra
1544 1 : s% mesh_dlog_burn_s_dlogP_extra = mesh_dlog_burn_s_dlogP_extra
1545 1 : s% mesh_dlog_burn_ar_dlogP_extra = mesh_dlog_burn_ar_dlogP_extra
1546 1 : s% mesh_dlog_burn_ca_dlogP_extra = mesh_dlog_burn_ca_dlogP_extra
1547 1 : s% mesh_dlog_burn_ti_dlogP_extra = mesh_dlog_burn_ti_dlogP_extra
1548 1 : s% mesh_dlog_burn_cr_dlogP_extra = mesh_dlog_burn_cr_dlogP_extra
1549 1 : s% mesh_dlog_burn_fe_dlogP_extra = mesh_dlog_burn_fe_dlogP_extra
1550 :
1551 1 : s% mesh_dlog_cc_dlogP_extra = mesh_dlog_cc_dlogP_extra
1552 1 : s% mesh_dlog_co_dlogP_extra = mesh_dlog_co_dlogP_extra
1553 1 : s% mesh_dlog_oo_dlogP_extra = mesh_dlog_oo_dlogP_extra
1554 :
1555 1 : s% mesh_dlog_pnhe4_dlogP_extra = mesh_dlog_pnhe4_dlogP_extra
1556 1 : s% mesh_dlog_photo_dlogP_extra = mesh_dlog_photo_dlogP_extra
1557 1 : s% mesh_dlog_other_dlogP_extra = mesh_dlog_other_dlogP_extra
1558 :
1559 1 : s% mesh_delta_coeff_factor_smooth_iters = mesh_delta_coeff_factor_smooth_iters
1560 :
1561 1 : s% T_function1_weight = T_function1_weight
1562 1 : s% T_function2_weight = T_function2_weight
1563 1 : s% T_function2_param = T_function2_param
1564 :
1565 1 : s% R_function_weight = R_function_weight
1566 1 : s% R_function_param = R_function_param
1567 :
1568 1 : s% R_function2_weight = R_function2_weight
1569 1 : s% R_function2_param1 = R_function2_param1
1570 1 : s% R_function2_param2 = R_function2_param2
1571 :
1572 1 : s% R_function3_weight = R_function3_weight
1573 :
1574 1 : s% M_function_weight = M_function_weight
1575 1 : s% M_function_param = M_function_param
1576 :
1577 1 : s% gradT_function_weight = gradT_function_weight
1578 1 : s% log_tau_function_weight = log_tau_function_weight
1579 1 : s% log_kap_function_weight = log_kap_function_weight
1580 1 : s% omega_function_weight = omega_function_weight
1581 :
1582 1 : s% gam_function_weight = gam_function_weight
1583 1 : s% gam_function_param1 = gam_function_param1
1584 1 : s% gam_function_param2 = gam_function_param2
1585 :
1586 10 : s% xa_function_species = xa_function_species
1587 10 : s% xa_function_weight = xa_function_weight
1588 10 : s% xa_function_param = xa_function_param
1589 10 : s% xa_mesh_delta_coeff = xa_mesh_delta_coeff
1590 :
1591 1 : s% use_split_merge_amr = use_split_merge_amr
1592 1 : s% split_merge_amr_nz_baseline = split_merge_amr_nz_baseline
1593 1 : s% split_merge_amr_nz_r_core = split_merge_amr_nz_r_core
1594 1 : s% split_merge_amr_nz_r_core_fraction = split_merge_amr_nz_r_core_fraction
1595 1 : s% split_merge_amr_mesh_delta_coeff = split_merge_amr_mesh_delta_coeff
1596 1 : s% split_merge_amr_log_zoning = split_merge_amr_log_zoning
1597 1 : s% split_merge_amr_hybrid_zoning = split_merge_amr_hybrid_zoning
1598 1 : s% split_merge_amr_flipped_hybrid_zoning = split_merge_amr_flipped_hybrid_zoning
1599 1 : s% split_merge_amr_logtau_zoning = split_merge_amr_logtau_zoning
1600 1 : s% split_merge_amr_okay_to_split_nz = split_merge_amr_okay_to_split_nz
1601 1 : s% split_merge_amr_okay_to_split_1 = split_merge_amr_okay_to_split_1
1602 1 : s% merge_amr_inhibit_at_jumps = merge_amr_inhibit_at_jumps
1603 1 : s% split_merge_amr_MaxLong = split_merge_amr_MaxLong
1604 1 : s% split_merge_amr_MaxShort = split_merge_amr_MaxShort
1605 1 : s% merge_amr_max_abs_du_div_cs = merge_amr_max_abs_du_div_cs
1606 1 : s% merge_amr_ignore_surface_cells = merge_amr_ignore_surface_cells
1607 1 : s% merge_amr_ignore_core_cells = merge_amr_ignore_core_cells
1608 1 : s% split_amr_ignore_core_cells = split_amr_ignore_core_cells
1609 1 : s% merge_amr_du_div_cs_limit_only_for_compression = merge_amr_du_div_cs_limit_only_for_compression
1610 1 : s% split_merge_amr_avoid_repeated_remesh = split_merge_amr_avoid_repeated_remesh
1611 1 : s% merge_amr_k_for_ignore_surface_cells = merge_amr_k_for_ignore_surface_cells
1612 1 : s% merge_amr_logT_for_ignore_core_cells = merge_amr_logT_for_ignore_core_cells
1613 1 : s% split_amr_logT_for_ignore_core_cells = split_amr_logT_for_ignore_core_cells
1614 1 : s% split_merge_amr_dq_min = split_merge_amr_dq_min
1615 1 : s% split_merge_amr_dq_max = split_merge_amr_dq_max
1616 1 : s% split_merge_amr_r_core_cm = split_merge_amr_r_core_cm
1617 1 : s% split_merge_amr_max_iters = split_merge_amr_max_iters
1618 1 : s% trace_split_merge_amr = trace_split_merge_amr
1619 1 : s% equal_split_density_amr = equal_split_density_amr
1620 1 : s% use_hydro_merge_limits_in_mesh_plan = use_hydro_merge_limits_in_mesh_plan
1621 :
1622 : ! nuclear reaction parameters
1623 1 : s% screening_mode = screening_mode
1624 1 : s% default_net_name = default_net_name
1625 :
1626 1 : s% net_logTcut_lo = net_logTcut_lo
1627 1 : s% net_logTcut_lim = net_logTcut_lim
1628 :
1629 1 : s% eps_nuc_factor = eps_nuc_factor
1630 1 : s% op_split_burn_eps_nuc_infall_limit = op_split_burn_eps_nuc_infall_limit
1631 1 : s% eps_WD_sedimentation_factor = eps_WD_sedimentation_factor
1632 1 : s% max_abs_eps_nuc = max_abs_eps_nuc
1633 1 : s% dxdt_nuc_factor = dxdt_nuc_factor
1634 1 : s% max_abar_for_burning = max_abar_for_burning
1635 1 : s% fe56ec_fake_factor = fe56ec_fake_factor
1636 1 : s% min_T_for_fe56ec_fake_factor = min_T_for_fe56ec_fake_factor
1637 1 : s% weak_rate_factor = weak_rate_factor
1638 :
1639 : ! mixing
1640 1 : s% mix_factor = mix_factor
1641 :
1642 1 : s% sig_term_limit = sig_term_limit
1643 :
1644 1 : s% sig_min_factor_for_high_Tcenter = sig_min_factor_for_high_Tcenter
1645 1 : s% Tcenter_min_for_sig_min_factor_full_on = Tcenter_min_for_sig_min_factor_full_on
1646 1 : s% Tcenter_max_for_sig_min_factor_full_off = Tcenter_max_for_sig_min_factor_full_off
1647 1 : s% max_delta_m_to_bdy_for_sig_min_factor = max_delta_m_to_bdy_for_sig_min_factor
1648 1 : s% delta_m_lower_for_sig_min_factor = delta_m_lower_for_sig_min_factor
1649 1 : s% delta_m_upper_for_sig_min_factor = delta_m_upper_for_sig_min_factor
1650 :
1651 1 : s% am_sig_term_limit = am_sig_term_limit
1652 1 : s% am_D_mix_factor = am_D_mix_factor
1653 1 : s% am_gradmu_factor = am_gradmu_factor
1654 1 : s% am_nu_factor = am_nu_factor
1655 :
1656 1 : s% D_visc_factor = D_visc_factor
1657 1 : s% D_DSI_factor = D_DSI_factor
1658 1 : s% D_SH_factor = D_SH_factor
1659 1 : s% D_SSI_factor = D_SSI_factor
1660 1 : s% D_ES_factor = D_ES_factor
1661 1 : s% D_GSF_factor = D_GSF_factor
1662 1 : s% D_ST_factor = D_ST_factor
1663 :
1664 1 : s% am_nu_non_rotation_factor = am_nu_non_rotation_factor
1665 1 : s% skip_rotation_in_convection_zones = skip_rotation_in_convection_zones
1666 1 : s% am_nu_DSI_factor = am_nu_DSI_factor
1667 1 : s% am_nu_SH_factor = am_nu_SH_factor
1668 1 : s% am_nu_SSI_factor = am_nu_SSI_factor
1669 1 : s% am_nu_ES_factor = am_nu_ES_factor
1670 1 : s% am_nu_GSF_factor = am_nu_GSF_factor
1671 1 : s% am_nu_ST_factor = am_nu_ST_factor
1672 1 : s% am_nu_visc_factor = am_nu_visc_factor
1673 :
1674 1 : s% am_nu_omega_rot_factor = am_nu_omega_rot_factor
1675 1 : s% am_nu_omega_non_rot_factor = am_nu_omega_non_rot_factor
1676 1 : s% am_nu_j_rot_factor = am_nu_j_rot_factor
1677 1 : s% am_nu_j_non_rot_factor = am_nu_j_non_rot_factor
1678 :
1679 1 : s% smooth_nu_ST = smooth_nu_ST
1680 1 : s% smooth_D_ST = smooth_D_ST
1681 1 : s% smooth_D_DSI = smooth_D_DSI
1682 1 : s% smooth_D_SSI = smooth_D_SSI
1683 1 : s% smooth_D_SH = smooth_D_SH
1684 1 : s% smooth_D_GSF = smooth_D_GSF
1685 1 : s% smooth_D_ES = smooth_D_ES
1686 1 : s% smooth_D_omega = smooth_D_omega
1687 1 : s% smooth_am_nu_rot = smooth_am_nu_rot
1688 1 : s% ST_angsmt = ST_angsmt
1689 1 : s% ST_angsml = ST_angsml
1690 :
1691 1 : s% simple_i_rot_flag = simple_i_rot_flag
1692 1 : s% do_adjust_J_lost = do_adjust_J_lost
1693 1 : s% premix_omega = premix_omega
1694 1 : s% angular_momentum_error_warn = angular_momentum_error_warn
1695 1 : s% angular_momentum_error_retry = angular_momentum_error_retry
1696 1 : s% recalc_mixing_info_each_substep = recalc_mixing_info_each_substep
1697 1 : s% adjust_J_fraction = adjust_J_fraction
1698 1 : s% min_q_for_adjust_J_lost = min_q_for_adjust_J_lost
1699 1 : s% min_J_div_delta_J = min_J_div_delta_J
1700 1 : s% max_mdot_redo_cnt = max_mdot_redo_cnt
1701 1 : s% mdot_revise_factor = mdot_revise_factor
1702 1 : s% implicit_mdot_boost = implicit_mdot_boost
1703 1 : s% min_years_dt_for_redo_mdot = min_years_dt_for_redo_mdot
1704 1 : s% surf_omega_div_omega_crit_limit = surf_omega_div_omega_crit_limit
1705 1 : s% surf_omega_div_omega_crit_tol = surf_omega_div_omega_crit_tol
1706 1 : s% w_div_wcrit_max = w_div_wcrit_max
1707 1 : s% w_div_wcrit_max2 = w_div_wcrit_max2
1708 :
1709 1 : s% D_mix_rotation_max_logT_full_on = D_mix_rotation_max_logT_full_on
1710 1 : s% D_mix_rotation_min_logT_full_off = D_mix_rotation_min_logT_full_off
1711 1 : s% D_mix_rotation_min_tau_full_off = D_mix_rotation_min_tau_full_off
1712 1 : s% D_mix_rotation_min_tau_full_on = D_mix_rotation_min_tau_full_on
1713 :
1714 1 : s% set_uniform_am_nu_non_rot = set_uniform_am_nu_non_rot
1715 1 : s% uniform_am_nu_non_rot = uniform_am_nu_non_rot
1716 :
1717 1 : s% set_min_am_nu_non_rot = set_min_am_nu_non_rot
1718 1 : s% min_am_nu_non_rot = min_am_nu_non_rot
1719 1 : s% min_center_Ye_for_min_am_nu_non_rot = min_center_Ye_for_min_am_nu_non_rot
1720 :
1721 1 : s% set_min_D_mix = set_min_D_mix
1722 1 : s% mass_lower_limit_for_min_D_mix = mass_lower_limit_for_min_D_mix
1723 1 : s% mass_upper_limit_for_min_D_mix = mass_upper_limit_for_min_D_mix
1724 1 : s% min_D_mix = min_D_mix
1725 1 : s% set_min_D_mix_below_Tmax = set_min_D_mix_below_Tmax
1726 1 : s% min_D_mix_below_Tmax = min_D_mix_below_Tmax
1727 1 : s% set_min_D_mix_in_H_He = set_min_D_mix_in_H_He
1728 1 : s% min_D_mix_in_H_He = min_D_mix_in_H_He
1729 1 : s% min_center_Ye_for_min_D_mix = min_center_Ye_for_min_D_mix
1730 1 : s% reaction_neuQs_factor = reaction_neuQs_factor
1731 1 : s% nonlocal_NiCo_kap_gamma = nonlocal_NiCo_kap_gamma
1732 1 : s% nonlocal_NiCo_decay_heat = nonlocal_NiCo_decay_heat
1733 1 : s% dtau_gamma_NiCo_decay_heat = dtau_gamma_NiCo_decay_heat
1734 1 : s% max_logT_for_net = max_logT_for_net
1735 1 : s% smooth_outer_xa_big = smooth_outer_xa_big
1736 1 : s% smooth_outer_xa_small = smooth_outer_xa_small
1737 :
1738 : ! element diffusion parameters
1739 1 : s% diffusion_use_iben_macdonald = diffusion_use_iben_macdonald
1740 1 : s% diffusion_use_paquette = diffusion_use_paquette
1741 1 : s% diffusion_use_caplan = diffusion_use_caplan
1742 1 : s% diffusion_use_cgs_solver = diffusion_use_cgs_solver
1743 1 : s% diffusion_use_full_net = diffusion_use_full_net
1744 1 : s% do_WD_sedimentation_heating = do_WD_sedimentation_heating
1745 1 : s% min_xa_for_WD_sedimentation_heating = min_xa_for_WD_sedimentation_heating
1746 1 : s% do_diffusion_heating = do_diffusion_heating
1747 1 : s% do_element_diffusion = do_element_diffusion
1748 1 : s% cgs_thermal_diffusion_eta_full_on = cgs_thermal_diffusion_eta_full_on
1749 1 : s% cgs_thermal_diffusion_eta_full_off = cgs_thermal_diffusion_eta_full_off
1750 1 : s% diffusion_min_dq_at_surface = diffusion_min_dq_at_surface
1751 1 : s% diffusion_min_T_at_surface = diffusion_min_T_at_surface
1752 1 : s% diffusion_min_dq_ratio_at_surface = diffusion_min_dq_ratio_at_surface
1753 1 : s% diffusion_dt_limit = diffusion_dt_limit
1754 :
1755 1 : s% diffusion_min_X_hard_limit = diffusion_min_X_hard_limit
1756 1 : s% diffusion_X_total_atol = diffusion_X_total_atol
1757 1 : s% diffusion_X_total_rtol = diffusion_X_total_rtol
1758 1 : s% diffusion_upwind_abs_v_limit = diffusion_upwind_abs_v_limit
1759 1 : s% diffusion_dt_div_timescale = diffusion_dt_div_timescale
1760 1 : s% diffusion_min_num_substeps = diffusion_min_num_substeps
1761 1 : s% diffusion_max_iters_per_substep = diffusion_max_iters_per_substep
1762 1 : s% diffusion_max_retries_per_substep = diffusion_max_retries_per_substep
1763 1 : s% diffusion_v_max = diffusion_v_max
1764 1 : s% diffusion_gamma_full_off = diffusion_gamma_full_off
1765 1 : s% diffusion_gamma_full_on = diffusion_gamma_full_on
1766 1 : s% diffusion_T_full_off = diffusion_T_full_off
1767 1 : s% D_mix_ignore_diffusion = D_mix_ignore_diffusion
1768 1 : s% diffusion_T_full_on = diffusion_T_full_on
1769 1 : s% diffusion_calculates_ionization = diffusion_calculates_ionization
1770 1 : s% diffusion_nsmooth_typical_charge = diffusion_nsmooth_typical_charge
1771 1 : s% diffusion_tol_correction_max = diffusion_tol_correction_max
1772 1 : s% diffusion_tol_correction_norm = diffusion_tol_correction_norm
1773 :
1774 1 : s% diffusion_AD_dm_full_on = diffusion_AD_dm_full_on
1775 1 : s% diffusion_AD_dm_full_off = diffusion_AD_dm_full_off
1776 1 : s% diffusion_AD_boost_factor = diffusion_AD_boost_factor
1777 :
1778 1 : s% diffusion_SIG_factor = diffusion_SIG_factor
1779 1 : s% diffusion_GT_factor = diffusion_GT_factor
1780 :
1781 1 : s% diffusion_Vlimit_dm_full_on = diffusion_Vlimit_dm_full_on
1782 1 : s% diffusion_Vlimit_dm_full_off = diffusion_Vlimit_dm_full_off
1783 1 : s% diffusion_Vlimit = diffusion_Vlimit
1784 :
1785 1 : s% diffusion_max_T_for_radaccel = diffusion_max_T_for_radaccel
1786 1 : s% diffusion_min_T_for_radaccel = diffusion_min_T_for_radaccel
1787 1 : s% diffusion_max_Z_for_radaccel = diffusion_max_Z_for_radaccel
1788 1 : s% diffusion_min_Z_for_radaccel = diffusion_min_Z_for_radaccel
1789 1 : s% diffusion_screening_for_radaccel = diffusion_screening_for_radaccel
1790 1 : s% op_mono_data_path = op_mono_data_path
1791 1 : s% op_mono_data_cache_filename = op_mono_data_cache_filename
1792 1 : s% emesh_data_for_op_mono_path = emesh_data_for_op_mono_path
1793 1 : s% op_mono_method = op_mono_method
1794 :
1795 1 : s% show_diffusion_info = show_diffusion_info
1796 1 : s% show_diffusion_substep_info = show_diffusion_substep_info
1797 1 : s% show_diffusion_timing = show_diffusion_timing
1798 :
1799 1 : s% diffusion_num_classes = diffusion_num_classes
1800 101 : s% diffusion_class_representative = diffusion_class_representative
1801 101 : s% diffusion_class_A_max = diffusion_class_A_max
1802 101 : s% diffusion_class_typical_charge = diffusion_class_typical_charge
1803 101 : s% diffusion_class_factor = diffusion_class_factor
1804 :
1805 1 : s% diffusion_use_isolve = diffusion_use_isolve
1806 1 : s% diffusion_rtol_for_isolve = diffusion_rtol_for_isolve
1807 1 : s% diffusion_atol_for_isolve = diffusion_atol_for_isolve
1808 1 : s% diffusion_maxsteps_for_isolve = diffusion_maxsteps_for_isolve
1809 1 : s% diffusion_isolve_solver = diffusion_isolve_solver
1810 :
1811 : ! WD phase separation
1812 1 : s% do_phase_separation = do_phase_separation
1813 1 : s% phase_separation_option = phase_separation_option
1814 1 : s% do_phase_separation_heating = do_phase_separation_heating
1815 1 : s% phase_separation_mixing_use_brunt = phase_separation_mixing_use_brunt
1816 1 : s% phase_separation_no_diffusion = phase_separation_no_diffusion
1817 :
1818 : ! eos controls
1819 1 : s% fix_d_eos_dxa_partials = fix_d_eos_dxa_partials
1820 :
1821 : ! opacity controls
1822 1 : s% use_simple_es_for_kap = use_simple_es_for_kap
1823 1 : s% use_starting_composition_for_kap = use_starting_composition_for_kap
1824 :
1825 1 : s% min_kap_for_dPrad_dm_eqn = min_kap_for_dPrad_dm_eqn
1826 1 : s% low_logT_op_mono_full_off = low_logT_op_mono_full_off
1827 1 : s% low_logT_op_mono_full_on = low_logT_op_mono_full_on
1828 1 : s% high_logT_op_mono_full_off = high_logT_op_mono_full_off
1829 1 : s% high_logT_op_mono_full_on = high_logT_op_mono_full_on
1830 1 : s% op_mono_min_X_to_include = op_mono_min_X_to_include
1831 1 : s% use_op_mono_alt_get_kap = use_op_mono_alt_get_kap
1832 :
1833 1 : s% include_L_in_correction_limits = include_L_in_correction_limits
1834 1 : s% include_v_in_correction_limits = include_v_in_correction_limits
1835 1 : s% include_u_in_correction_limits = include_u_in_correction_limits
1836 1 : s% include_w_in_correction_limits = include_w_in_correction_limits
1837 :
1838 : ! asteroseismology controls
1839 :
1840 1 : s% get_delta_nu_from_scaled_solar = get_delta_nu_from_scaled_solar
1841 1 : s% nu_max_sun = nu_max_sun
1842 1 : s% delta_nu_sun = delta_nu_sun
1843 1 : s% astero_Teff_sun = astero_Teff_sun
1844 1 : s% delta_Pg_mode_freq = delta_Pg_mode_freq
1845 1 : s% delta_Pg_traditional = delta_Pg_traditional
1846 :
1847 : ! hydro parameters
1848 1 : s% energy_eqn_option = energy_eqn_option
1849 1 : s% opacity_factor = opacity_factor
1850 1 : s% opacity_min = opacity_min
1851 1 : s% opacity_max = opacity_max
1852 1 : s% min_logT_for_opacity_factor_off = min_logT_for_opacity_factor_off
1853 1 : s% min_logT_for_opacity_factor_on = min_logT_for_opacity_factor_on
1854 1 : s% max_logT_for_opacity_factor_on = max_logT_for_opacity_factor_on
1855 1 : s% max_logT_for_opacity_factor_off = max_logT_for_opacity_factor_off
1856 :
1857 1 : s% dxdt_nuc_factor = dxdt_nuc_factor
1858 1 : s% non_nuc_neu_factor = non_nuc_neu_factor
1859 1 : s% use_time_centered_eps_grav = use_time_centered_eps_grav
1860 1 : s% no_dedt_form_during_relax = no_dedt_form_during_relax
1861 1 : s% dedt_eqn_r_scale = dedt_eqn_r_scale
1862 1 : s% use_mass_corrections = use_mass_corrections
1863 1 : s% use_gravity_rotation_correction = use_gravity_rotation_correction
1864 1 : s% eps_grav_factor = eps_grav_factor
1865 1 : s% eps_mdot_factor = eps_mdot_factor
1866 1 : s% include_composition_in_eps_grav = include_composition_in_eps_grav
1867 1 : s% max_abs_rel_change_surf_lnS = max_abs_rel_change_surf_lnS
1868 1 : s% max_num_surf_revisions = max_num_surf_revisions
1869 1 : s% Gamma_lnS_eps_grav_full_off = Gamma_lnS_eps_grav_full_off
1870 1 : s% Gamma_lnS_eps_grav_full_on = Gamma_lnS_eps_grav_full_on
1871 :
1872 1 : s% use_dPrad_dm_form_of_T_gradient_eqn = use_dPrad_dm_form_of_T_gradient_eqn
1873 1 : s% use_flux_limiting_with_dPrad_dm_form = use_flux_limiting_with_dPrad_dm_form
1874 1 : s% use_gradT_actual_vs_gradT_MLT_for_T_gradient_eqn = use_gradT_actual_vs_gradT_MLT_for_T_gradient_eqn
1875 1 : s% include_P_in_velocity_time_centering = include_P_in_velocity_time_centering
1876 1 : s% include_L_in_velocity_time_centering = include_L_in_velocity_time_centering
1877 1 : s% use_P_d_1_div_rho_form_of_work_when_time_centering_velocity = use_P_d_1_div_rho_form_of_work_when_time_centering_velocity
1878 1 : s% steps_before_use_velocity_time_centering = steps_before_use_velocity_time_centering
1879 1 : s% P_theta_for_velocity_time_centering = P_theta_for_velocity_time_centering
1880 1 : s% L_theta_for_velocity_time_centering = L_theta_for_velocity_time_centering
1881 1 : s% max_logT_for_include_P_and_L_in_velocity_time_centering = max_logT_for_include_P_and_L_in_velocity_time_centering
1882 :
1883 1 : s% RTI_A = RTI_A
1884 1 : s% RTI_B = RTI_B
1885 1 : s% RTI_C = RTI_C
1886 1 : s% RTI_D = RTI_D
1887 1 : s% RTI_max_alpha = RTI_max_alpha
1888 1 : s% RTI_C_X_factor = RTI_C_X_factor
1889 1 : s% RTI_C_X0_frac = RTI_C_X0_frac
1890 1 : s% RTI_dm_for_center_eta_nondecreasing = RTI_dm_for_center_eta_nondecreasing
1891 1 : s% RTI_min_dm_behind_shock_for_full_on = RTI_min_dm_behind_shock_for_full_on
1892 1 : s% RTI_energy_floor = RTI_energy_floor
1893 1 : s% RTI_D_mix_floor = RTI_D_mix_floor
1894 1 : s% RTI_min_m_for_D_mix_floor = RTI_min_m_for_D_mix_floor
1895 1 : s% RTI_log_max_boost = RTI_log_max_boost
1896 1 : s% RTI_m_full_boost = RTI_m_full_boost
1897 1 : s% RTI_m_no_boost = RTI_m_no_boost
1898 :
1899 1 : s% use_drag_energy = use_drag_energy
1900 1 : s% drag_coefficient = drag_coefficient
1901 1 : s% min_q_for_drag = min_q_for_drag
1902 1 : s% v_drag_factor = v_drag_factor
1903 1 : s% v_drag = v_drag
1904 1 : s% q_for_v_drag_full_off = q_for_v_drag_full_off
1905 1 : s% q_for_v_drag_full_on = q_for_v_drag_full_on
1906 :
1907 :
1908 1 : s% velocity_logT_lower_bound = velocity_logT_lower_bound
1909 1 : s% max_dt_yrs_for_velocity_logT_lower_bound = max_dt_yrs_for_velocity_logT_lower_bound
1910 1 : s% velocity_tau_lower_bound = velocity_tau_lower_bound
1911 1 : s% velocity_q_upper_bound = velocity_q_upper_bound
1912 1 : s% report_max_infall_inside_fe_core = report_max_infall_inside_fe_core
1913 1 : s% retry_for_v_above_clight = retry_for_v_above_clight
1914 :
1915 : ! solvers
1916 :
1917 1 : s% tol_correction_norm = tol_correction_norm
1918 1 : s% tol_max_correction = tol_max_correction
1919 1 : s% correction_xa_limit = correction_xa_limit
1920 :
1921 1 : s% tol_correction_high_T_limit = tol_correction_high_T_limit
1922 1 : s% tol_correction_norm_high_T = tol_correction_norm_high_T
1923 1 : s% tol_max_correction_high_T = tol_max_correction_high_T
1924 :
1925 1 : s% tol_correction_extreme_T_limit = tol_correction_extreme_T_limit
1926 1 : s% tol_correction_norm_extreme_T = tol_correction_norm_extreme_T
1927 1 : s% tol_max_correction_extreme_T = tol_max_correction_extreme_T
1928 :
1929 1 : s% tol_bad_max_correction = tol_bad_max_correction
1930 1 : s% bad_max_correction_series_limit = bad_max_correction_series_limit
1931 :
1932 1 : s% tol_residual_norm1 = tol_residual_norm1
1933 1 : s% tol_max_residual1 = tol_max_residual1
1934 1 : s% tol_residual_norm2 = tol_residual_norm2
1935 1 : s% tol_max_residual2 = tol_max_residual2
1936 1 : s% tol_residual_norm3 = tol_residual_norm3
1937 1 : s% tol_max_residual3 = tol_max_residual3
1938 1 : s% warning_limit_for_max_residual = warning_limit_for_max_residual
1939 1 : s% trace_solver_damping = trace_solver_damping
1940 :
1941 1 : s% relax_use_gold_tolerances = relax_use_gold_tolerances
1942 1 : s% relax_tol_correction_norm = relax_tol_correction_norm
1943 1 : s% relax_tol_max_correction = relax_tol_max_correction
1944 1 : s% relax_solver_iters_timestep_limit = relax_solver_iters_timestep_limit
1945 1 : s% relax_iter_for_resid_tol2 = relax_iter_for_resid_tol2
1946 1 : s% relax_tol_residual_norm1 = relax_tol_residual_norm1
1947 1 : s% relax_tol_max_residual1 = relax_tol_max_residual1
1948 1 : s% relax_iter_for_resid_tol3 = relax_iter_for_resid_tol3
1949 1 : s% relax_tol_residual_norm2 = relax_tol_residual_norm2
1950 1 : s% relax_tol_max_residual2 = relax_tol_max_residual2
1951 1 : s% relax_tol_residual_norm3 = relax_tol_residual_norm3
1952 1 : s% relax_tol_max_residual3 = relax_tol_max_residual3
1953 1 : s% relax_maxT_for_gold_tolerances = relax_maxT_for_gold_tolerances
1954 :
1955 1 : s% use_gold_tolerances = use_gold_tolerances
1956 1 : s% gold_solver_iters_timestep_limit = gold_solver_iters_timestep_limit
1957 1 : s% maxT_for_gold_tolerances = maxT_for_gold_tolerances
1958 1 : s% gold_tol_residual_norm1 = gold_tol_residual_norm1
1959 1 : s% gold_tol_max_residual1 = gold_tol_max_residual1
1960 1 : s% gold_iter_for_resid_tol2 = gold_iter_for_resid_tol2
1961 1 : s% gold_tol_residual_norm2 = gold_tol_residual_norm2
1962 1 : s% gold_tol_max_residual2 = gold_tol_max_residual2
1963 1 : s% gold_iter_for_resid_tol3 = gold_iter_for_resid_tol3
1964 1 : s% gold_tol_residual_norm3 = gold_tol_residual_norm3
1965 1 : s% gold_tol_max_residual3 = gold_tol_max_residual3
1966 1 : s% steps_before_use_gold_tolerances = steps_before_use_gold_tolerances
1967 :
1968 1 : s% use_gold2_tolerances = use_gold2_tolerances
1969 1 : s% gold2_solver_iters_timestep_limit = gold2_solver_iters_timestep_limit
1970 1 : s% gold2_tol_residual_norm1 = gold2_tol_residual_norm1
1971 1 : s% gold2_tol_max_residual1 = gold2_tol_max_residual1
1972 1 : s% gold2_iter_for_resid_tol2 = gold2_iter_for_resid_tol2
1973 1 : s% gold2_tol_residual_norm2 = gold2_tol_residual_norm2
1974 1 : s% gold2_tol_max_residual2 = gold2_tol_max_residual2
1975 1 : s% gold2_iter_for_resid_tol3 = gold2_iter_for_resid_tol3
1976 1 : s% gold2_tol_residual_norm3 = gold2_tol_residual_norm3
1977 1 : s% gold2_tol_max_residual3 = gold2_tol_max_residual3
1978 1 : s% steps_before_use_gold2_tolerances = steps_before_use_gold2_tolerances
1979 :
1980 1 : s% include_rotation_in_total_energy = include_rotation_in_total_energy
1981 :
1982 1 : s% convergence_ignore_equL_residuals = convergence_ignore_equL_residuals
1983 1 : s% convergence_ignore_alpha_RTI_residuals = convergence_ignore_alpha_RTI_residuals
1984 :
1985 1 : s% iter_for_resid_tol2 = iter_for_resid_tol2
1986 1 : s% iter_for_resid_tol3 = iter_for_resid_tol3
1987 :
1988 1 : s% solver_itermin = solver_itermin
1989 1 : s% solver_itermin_until_reduce_min_corr_coeff = solver_itermin_until_reduce_min_corr_coeff
1990 1 : s% solver_reduced_min_corr_coeff = solver_reduced_min_corr_coeff
1991 1 : s% do_solver_damping_for_neg_xa = do_solver_damping_for_neg_xa
1992 1 : s% scale_max_correction_for_negative_surf_lum = scale_max_correction_for_negative_surf_lum
1993 1 : s% max_frac_for_negative_surf_lum = max_frac_for_negative_surf_lum
1994 1 : s% hydro_mtx_max_allowed_abs_dlogT = hydro_mtx_max_allowed_abs_dlogT
1995 1 : s% hydro_mtx_max_allowed_abs_dlogRho = hydro_mtx_max_allowed_abs_dlogRho
1996 1 : s% min_logT_for_hydro_mtx_max_allowed = min_logT_for_hydro_mtx_max_allowed
1997 1 : s% hydro_mtx_max_allowed_logT = hydro_mtx_max_allowed_logT
1998 1 : s% hydro_mtx_max_allowed_logRho = hydro_mtx_max_allowed_logRho
1999 1 : s% hydro_mtx_min_allowed_logT = hydro_mtx_min_allowed_logT
2000 1 : s% hydro_mtx_min_allowed_logRho = hydro_mtx_min_allowed_logRho
2001 :
2002 1 : s% use_DGESVX_in_bcyclic = use_DGESVX_in_bcyclic
2003 1 : s% use_equilibration_in_DGESVX = use_equilibration_in_DGESVX
2004 1 : s% report_min_rcond_from_DGESXV = report_min_rcond_from_DGESXV
2005 :
2006 1 : s% op_split_burn = op_split_burn
2007 1 : s% op_split_burn_min_T = op_split_burn_min_T
2008 1 : s% op_split_burn_eps = op_split_burn_eps
2009 1 : s% op_split_burn_odescal = op_split_burn_odescal
2010 1 : s% op_split_burn_min_T_for_variable_T_solver = op_split_burn_min_T_for_variable_T_solver
2011 :
2012 1 : s% tiny_corr_coeff_limit = tiny_corr_coeff_limit
2013 1 : s% scale_correction_norm = scale_correction_norm
2014 1 : s% num_times_solver_reuse_mtx = num_times_solver_reuse_mtx
2015 1 : s% corr_param_factor = corr_param_factor
2016 1 : s% scale_max_correction = scale_max_correction
2017 1 : s% ignore_min_corr_coeff_for_scale_max_correction = ignore_min_corr_coeff_for_scale_max_correction
2018 1 : s% ignore_too_large_correction = ignore_too_large_correction
2019 1 : s% ignore_species_in_max_correction = ignore_species_in_max_correction
2020 :
2021 1 : s% corr_norm_jump_limit = corr_norm_jump_limit
2022 1 : s% max_corr_jump_limit = max_corr_jump_limit
2023 1 : s% resid_norm_jump_limit = resid_norm_jump_limit
2024 1 : s% max_resid_jump_limit = max_resid_jump_limit
2025 :
2026 1 : s% corr_coeff_limit = corr_coeff_limit
2027 1 : s% tiny_corr_factor = tiny_corr_factor
2028 :
2029 1 : s% solver_max_tries_before_reject = solver_max_tries_before_reject
2030 1 : s% max_tries1 = max_tries1
2031 1 : s% max_tries_for_retry = max_tries_for_retry
2032 1 : s% max_tries_after_5_retries = max_tries_after_5_retries
2033 1 : s% max_tries_after_10_retries = max_tries_after_10_retries
2034 1 : s% max_tries_after_20_retries = max_tries_after_20_retries
2035 1 : s% retry_limit = retry_limit
2036 1 : s% redo_limit = redo_limit
2037 :
2038 1 : s% use_Pvsc_art_visc = use_Pvsc_art_visc
2039 1 : s% Pvsc_cq = Pvsc_cq
2040 1 : s% Pvsc_zsh = Pvsc_zsh
2041 :
2042 1 : s% min_xa_hard_limit = min_xa_hard_limit
2043 1 : s% min_xa_hard_limit_for_highT = min_xa_hard_limit_for_highT
2044 1 : s% logT_max_for_min_xa_hard_limit = logT_max_for_min_xa_hard_limit
2045 1 : s% logT_min_for_min_xa_hard_limit_for_highT = logT_min_for_min_xa_hard_limit_for_highT
2046 :
2047 1 : s% sum_xa_hard_limit = sum_xa_hard_limit
2048 1 : s% sum_xa_hard_limit_for_highT = sum_xa_hard_limit_for_highT
2049 1 : s% logT_max_for_sum_xa_hard_limit = logT_max_for_sum_xa_hard_limit
2050 1 : s% logT_min_for_sum_xa_hard_limit_for_highT = logT_min_for_sum_xa_hard_limit_for_highT
2051 :
2052 1 : s% xa_clip_limit = xa_clip_limit
2053 1 : s% report_solver_progress = report_solver_progress
2054 1 : s% solver_test_partials_call_number = solver_test_partials_call_number
2055 1 : s% solver_test_partials_iter_number = solver_test_partials_iter_number
2056 1 : s% solver_epsder_chem = solver_epsder_chem
2057 1 : s% solver_epsder_struct = solver_epsder_struct
2058 1 : s% solver_numerical_jacobian = solver_numerical_jacobian
2059 1 : s% solver_jacobian_nzlo = solver_jacobian_nzlo
2060 1 : s% solver_jacobian_nzhi = solver_jacobian_nzhi
2061 1 : s% solver_check_everything = solver_check_everything
2062 1 : s% energy_conservation_dump_model_number = energy_conservation_dump_model_number
2063 1 : s% solver_inspect_soln_flag = solver_inspect_soln_flag
2064 1 : s% solver_test_partials_dx_0 = solver_test_partials_dx_0
2065 1 : s% solver_test_partials_k = solver_test_partials_k
2066 1 : s% solver_test_partials_k_low = solver_test_partials_k_low
2067 1 : s% solver_test_partials_k_high = solver_test_partials_k_high
2068 1 : s% solver_show_correction_info = solver_show_correction_info
2069 1 : s% solver_test_partials_write_eos_call_info = solver_test_partials_write_eos_call_info
2070 1 : s% solver_test_eos_partials = solver_test_eos_partials
2071 1 : s% solver_test_kap_partials = solver_test_kap_partials
2072 1 : s% solver_test_net_partials = solver_test_net_partials
2073 1 : s% solver_test_atm_partials = solver_test_atm_partials
2074 1 : s% solver_test_partials_var_name = solver_test_partials_var_name
2075 1 : s% solver_test_partials_sink_name = solver_test_partials_sink_name
2076 1 : s% solver_test_partials_equ_name = solver_test_partials_equ_name
2077 1 : s% solver_test_partials_show_dx_var_name = solver_test_partials_show_dx_var_name
2078 1 : s% solver_save_photo_call_number = solver_save_photo_call_number
2079 1 : s% fill_arrays_with_NaNs = fill_arrays_with_NaNs
2080 1 : s% zero_when_allocate = zero_when_allocate
2081 1 : s% warn_when_large_rel_run_E_err = warn_when_large_rel_run_E_err
2082 1 : s% absolute_cumulative_energy_err = absolute_cumulative_energy_err
2083 1 : s% warn_when_large_virial_thm_rel_err = warn_when_large_virial_thm_rel_err
2084 1 : s% warn_when_get_a_bad_eos_result = warn_when_get_a_bad_eos_result
2085 1 : s% warn_rates_for_high_temp = warn_rates_for_high_temp
2086 1 : s% max_safe_logT_for_rates = max_safe_logT_for_rates
2087 1 : s% eps_mdot_leak_frac_factor = eps_mdot_leak_frac_factor
2088 :
2089 1 : s% TDC_alpha_D = TDC_alpha_D
2090 1 : s% TDC_alpha_R = TDC_alpha_R
2091 1 : s% TDC_alpha_Pt = TDC_alpha_Pt
2092 1 : s% TDC_alpha_M = TDC_alpha_M
2093 1 : s% TDC_alpha_C = TDC_alpha_C
2094 1 : s% TDC_alpha_S = TDC_alpha_S
2095 1 : s% TDC_alpha_M_use_explicit_mlt_vc_in_momentum_equation = TDC_alpha_M_use_explicit_mlt_vc_in_momentum_equation
2096 1 : s% TDC_use_density_form_for_eddy_viscosity = TDC_use_density_form_for_eddy_viscosity
2097 1 : s% TDC_adjust_mass_fallback_to_mlt = TDC_adjust_mass_fallback_to_mlt
2098 1 : s% TDC_num_innermost_cells_forced_nonturbulent = TDC_num_innermost_cells_forced_nonturbulent
2099 1 : s% TDC_num_outermost_cells_forced_nonturbulent = TDC_num_outermost_cells_forced_nonturbulent
2100 1 : s% include_mlt_Pturb_in_thermodynamic_gradients = include_mlt_Pturb_in_thermodynamic_gradients
2101 1 : s% include_mlt_corr_to_TDC = include_mlt_corr_to_TDC
2102 1 : s% use_TDC_enthalpy_flux_limiter = use_TDC_enthalpy_flux_limiter
2103 1 : s% TDC_include_eturb_in_energy_equation = TDC_include_eturb_in_energy_equation
2104 1 : s% use_rsp_form_of_scale_height = use_rsp_form_of_scale_height
2105 1 : s% include_mlt_in_velocity_time_centering = include_mlt_in_velocity_time_centering
2106 1 : s% compare_TDC_to_MLT = compare_TDC_to_MLT
2107 1 : s% use_TDC_Y_face_seeded_newton = use_TDC_Y_face_seeded_newton
2108 1 : s% hydro_matrix_solver = hydro_matrix_solver
2109 1 : s% TDC_hydro_use_mass_interp_face_values = TDC_hydro_use_mass_interp_face_values
2110 1 : s% TDC_hydro_nz = TDC_hydro_nz
2111 1 : s% TDC_hydro_nz_outer = TDC_hydro_nz_outer
2112 1 : s% TDC_hydro_T_anchor = TDC_hydro_T_anchor
2113 1 : s% TDC_hydro_dq_1_factor = TDC_hydro_dq_1_factor
2114 :
2115 1 : s% remesh_for_TDC_pulsations_log_core_zoning = remesh_for_TDC_pulsations_log_core_zoning
2116 :
2117 1 : s% RSP2_alfap = RSP2_alfap
2118 1 : s% RSP2_alfad = RSP2_alfad
2119 1 : s% RSP2_alfat = RSP2_alfat
2120 1 : s% RSP2_alfam = RSP2_alfam
2121 1 : s% RSP2_alfar = RSP2_alfar
2122 1 : s% RSP2_min_Lt_div_L_for_overshooting_mixing_type = RSP2_min_Lt_div_L_for_overshooting_mixing_type
2123 1 : s% RSP2_min_Lc_div_L_for_convective_mixing_type = RSP2_min_Lc_div_L_for_convective_mixing_type
2124 1 : s% RSP2_Lsurf_factor = RSP2_Lsurf_factor
2125 1 : s% RSP2_use_Stellingwerf_Lr = RSP2_use_Stellingwerf_Lr
2126 1 : s% RSP2_remesh_when_load = RSP2_remesh_when_load
2127 1 : s% RSP2_use_L_eqn_at_surface = RSP2_use_L_eqn_at_surface
2128 1 : s% RSP2_report_adjust_w = RSP2_report_adjust_w
2129 1 : s% RSP2_assume_HSE = RSP2_assume_HSE
2130 1 : s% RSP2_use_RSP_eqn_for_Y_face = RSP2_use_RSP_eqn_for_Y_face
2131 1 : s% RSP2_use_mass_interp_face_values = RSP2_use_mass_interp_face_values
2132 1 : s% RSP2_num_outermost_cells_forced_nonturbulent = RSP2_num_outermost_cells_forced_nonturbulent
2133 1 : s% RSP2_num_innermost_cells_forced_nonturbulent = RSP2_num_innermost_cells_forced_nonturbulent
2134 1 : s% RSP2_T_anchor = RSP2_T_anchor
2135 1 : s% RSP2_dq_1_factor = RSP2_dq_1_factor
2136 1 : s% RSP2_nz = RSP2_nz
2137 1 : s% RSP2_nz_outer = RSP2_nz_outer
2138 1 : s% RSP2_nz_div_IBOTOM = RSP2_nz_div_IBOTOM
2139 1 : s% RSP2_target_steps_per_cycle = RSP2_target_steps_per_cycle
2140 1 : s% RSP2_max_num_periods = RSP2_max_num_periods
2141 1 : s% RSP2_work_period = RSP2_work_period
2142 1 : s% RSP2_map_first_period = RSP2_map_first_period
2143 1 : s% RSP2_map_last_period = RSP2_map_last_period
2144 1 : s% RSP2_min_max_R_for_periods = RSP2_min_max_R_for_periods
2145 1 : s% RSP2_GREKM_avg_abs_frac_new = RSP2_GREKM_avg_abs_frac_new
2146 1 : s% RSP2_GREKM_avg_abs_limit = RSP2_GREKM_avg_abs_limit
2147 1 : s% RSP2_map_zone_interval = RSP2_map_zone_interval
2148 1 : s% RSP2_work_filename = RSP2_work_filename
2149 1 : s% RSP2_map_columns_filename = RSP2_map_columns_filename
2150 1 : s% RSP2_map_filename = RSP2_map_filename
2151 1 : s% RSP2_map_history_filename = RSP2_map_history_filename
2152 1 : s% RSP2_write_map = RSP2_write_map
2153 1 : s% RSP2_w_min_for_damping = RSP2_w_min_for_damping
2154 1 : s% RSP2_source_seed = RSP2_source_seed
2155 1 : s% RSP2_w_fix_if_neg = RSP2_w_fix_if_neg
2156 :
2157 1 : s% max_X_for_conv_timescale = max_X_for_conv_timescale
2158 1 : s% min_X_for_conv_timescale = min_X_for_conv_timescale
2159 1 : s% max_q_for_conv_timescale = max_q_for_conv_timescale
2160 1 : s% min_q_for_conv_timescale = min_q_for_conv_timescale
2161 1 : s% max_q_for_QHSE_timescale = max_q_for_QHSE_timescale
2162 1 : s% min_q_for_QHSE_timescale = min_q_for_QHSE_timescale
2163 :
2164 : ! timestep
2165 1 : s% max_timestep = max_timestep
2166 1 : s% max_years_for_timestep = max_years_for_timestep
2167 :
2168 1 : s% hi_T_max_years_for_timestep = hi_T_max_years_for_timestep
2169 1 : s% max_timestep_hi_T_limit = max_timestep_hi_T_limit
2170 :
2171 1 : s% min_timestep_factor = min_timestep_factor
2172 1 : s% max_timestep_factor = max_timestep_factor
2173 1 : s% max_timestep_factor_at_high_T = max_timestep_factor_at_high_T
2174 1 : s% min_logT_for_max_timestep_factor_at_high_T = min_logT_for_max_timestep_factor_at_high_T
2175 1 : s% time_delta_coeff = time_delta_coeff
2176 1 : s% timestep_factor_for_retries = timestep_factor_for_retries
2177 1 : s% retry_hold = retry_hold
2178 1 : s% neg_mass_fraction_hold = neg_mass_fraction_hold
2179 1 : s% timestep_dt_factor = timestep_dt_factor
2180 1 : s% use_dt_low_pass_controller = use_dt_low_pass_controller
2181 :
2182 1 : s% force_timestep_min = force_timestep_min
2183 1 : s% force_timestep_min_years = force_timestep_min_years
2184 1 : s% force_timestep_min_factor = force_timestep_min_factor
2185 1 : s% force_timestep = force_timestep
2186 1 : s% force_timestep_years = force_timestep_years
2187 :
2188 1 : s% varcontrol_target = varcontrol_target
2189 1 : s% min_allowed_varcontrol_target = min_allowed_varcontrol_target
2190 1 : s% varcontrol_dt_limit_ratio_hard_max = varcontrol_dt_limit_ratio_hard_max
2191 1 : s% xa_scale = xa_scale
2192 :
2193 1 : s% solver_iters_timestep_limit = solver_iters_timestep_limit
2194 :
2195 1 : s% burn_steps_limit = burn_steps_limit
2196 1 : s% burn_steps_hard_limit = burn_steps_hard_limit
2197 :
2198 1 : s% diffusion_steps_limit = diffusion_steps_limit
2199 1 : s% diffusion_steps_hard_limit = diffusion_steps_hard_limit
2200 1 : s% diffusion_iters_limit = diffusion_iters_limit
2201 1 : s% diffusion_iters_hard_limit = diffusion_iters_hard_limit
2202 :
2203 1 : s% dt_div_dt_cell_collapse_limit = dt_div_dt_cell_collapse_limit
2204 1 : s% dt_div_dt_cell_collapse_hard_limit = dt_div_dt_cell_collapse_hard_limit
2205 1 : s% dt_div_min_dr_div_cs_limit = dt_div_min_dr_div_cs_limit
2206 1 : s% dt_div_min_dr_div_cs_hard_limit = dt_div_min_dr_div_cs_hard_limit
2207 :
2208 1 : s% min_abs_du_div_cs_for_dt_div_min_dr_div_cs_limit = min_abs_du_div_cs_for_dt_div_min_dr_div_cs_limit
2209 1 : s% min_abs_u_div_cs_for_dt_div_min_dr_div_cs_limit = min_abs_u_div_cs_for_dt_div_min_dr_div_cs_limit
2210 1 : s% min_k_for_dt_div_min_dr_div_cs_limit = min_k_for_dt_div_min_dr_div_cs_limit
2211 1 : s% min_q_for_dt_div_min_dr_div_cs_limit = min_q_for_dt_div_min_dr_div_cs_limit
2212 1 : s% max_q_for_dt_div_min_dr_div_cs_limit = max_q_for_dt_div_min_dr_div_cs_limit
2213 1 : s% check_remnant_only_for_dt_div_min_dr_div_cs_limit = check_remnant_only_for_dt_div_min_dr_div_cs_limit
2214 :
2215 1 : s% dX_mix_dist_limit = dX_mix_dist_limit
2216 :
2217 101 : s% dX_limit_species = dX_limit_species
2218 101 : s% dX_limit_min_X = dX_limit_min_X
2219 101 : s% dX_limit = dX_limit
2220 101 : s% dX_hard_limit = dX_hard_limit
2221 101 : s% dX_div_X_limit_min_X = dX_div_X_limit_min_X
2222 101 : s% dX_div_X_limit = dX_div_X_limit
2223 101 : s% dX_div_X_hard_limit = dX_div_X_hard_limit
2224 101 : s% dX_div_X_at_high_T_limit = dX_div_X_at_high_T_limit
2225 101 : s% dX_div_X_at_high_T_hard_limit = dX_div_X_at_high_T_hard_limit
2226 101 : s% dX_div_X_at_high_T_limit_lgT_min = dX_div_X_at_high_T_limit_lgT_min
2227 :
2228 101 : s% dX_decreases_only = dX_decreases_only
2229 :
2230 1 : s% dX_nuc_drop_min_X_limit = dX_nuc_drop_min_X_limit
2231 1 : s% dX_nuc_drop_max_A_limit = dX_nuc_drop_max_A_limit
2232 1 : s% dX_nuc_drop_limit = dX_nuc_drop_limit
2233 1 : s% dX_nuc_drop_limit_at_high_T = dX_nuc_drop_limit_at_high_T
2234 1 : s% dX_nuc_drop_hard_limit = dX_nuc_drop_hard_limit
2235 1 : s% dX_nuc_drop_min_yrs_for_dt = dX_nuc_drop_min_yrs_for_dt
2236 :
2237 1 : s% dL_div_L_limit_min_L = dL_div_L_limit_min_L
2238 1 : s% dL_div_L_limit = dL_div_L_limit
2239 1 : s% dL_div_L_hard_limit = dL_div_L_hard_limit
2240 :
2241 1 : s% delta_lgP_limit = delta_lgP_limit
2242 1 : s% delta_lgP_hard_limit = delta_lgP_hard_limit
2243 1 : s% delta_lgP_limit_min_lgP = delta_lgP_limit_min_lgP
2244 :
2245 1 : s% delta_lgRho_limit = delta_lgRho_limit
2246 1 : s% delta_lgRho_hard_limit = delta_lgRho_hard_limit
2247 1 : s% delta_lgRho_limit_min_lgRho = delta_lgRho_limit_min_lgRho
2248 :
2249 1 : s% delta_lgT_limit = delta_lgT_limit
2250 1 : s% delta_lgT_hard_limit = delta_lgT_hard_limit
2251 1 : s% delta_lgT_limit_min_lgT = delta_lgT_limit_min_lgT
2252 :
2253 1 : s% delta_lgE_limit = delta_lgE_limit
2254 1 : s% delta_lgE_hard_limit = delta_lgE_hard_limit
2255 1 : s% delta_lgE_limit_min_lgE = delta_lgE_limit_min_lgE
2256 :
2257 1 : s% delta_lgR_limit = delta_lgR_limit
2258 1 : s% delta_lgR_hard_limit = delta_lgR_hard_limit
2259 1 : s% delta_lgR_limit_min_lgR = delta_lgR_limit_min_lgR
2260 :
2261 1 : s% delta_Ye_highT_limit = delta_Ye_highT_limit
2262 1 : s% delta_Ye_highT_hard_limit = delta_Ye_highT_hard_limit
2263 1 : s% minT_for_highT_Ye_limit = minT_for_highT_Ye_limit
2264 :
2265 1 : s% delta_lgL_nuc_cat_limit = delta_lgL_nuc_cat_limit
2266 1 : s% delta_lgL_nuc_cat_hard_limit = delta_lgL_nuc_cat_hard_limit
2267 1 : s% lgL_nuc_cat_burn_min = lgL_nuc_cat_burn_min
2268 1 : s% lgL_nuc_mix_dist_limit = lgL_nuc_mix_dist_limit
2269 :
2270 1 : s% delta_lgL_H_limit = delta_lgL_H_limit
2271 1 : s% delta_lgL_H_hard_limit = delta_lgL_H_hard_limit
2272 1 : s% lgL_H_burn_min = lgL_H_burn_min
2273 1 : s% lgL_H_drop_factor = lgL_H_drop_factor
2274 1 : s% lgL_H_burn_relative_limit = lgL_H_burn_relative_limit
2275 :
2276 1 : s% delta_lgL_He_limit = delta_lgL_He_limit
2277 1 : s% delta_lgL_He_hard_limit = delta_lgL_He_hard_limit
2278 1 : s% lgL_He_burn_min = lgL_He_burn_min
2279 1 : s% lgL_He_drop_factor = lgL_He_drop_factor
2280 1 : s% lgL_He_burn_relative_limit = lgL_He_burn_relative_limit
2281 :
2282 1 : s% delta_lgL_z_limit = delta_lgL_z_limit
2283 1 : s% delta_lgL_z_hard_limit = delta_lgL_z_hard_limit
2284 1 : s% lgL_z_burn_min = lgL_z_burn_min
2285 1 : s% lgL_z_drop_factor = lgL_z_drop_factor
2286 1 : s% lgL_z_burn_relative_limit = lgL_z_burn_relative_limit
2287 :
2288 1 : s% delta_lgL_power_photo_limit = delta_lgL_power_photo_limit
2289 1 : s% delta_lgL_power_photo_hard_limit = delta_lgL_power_photo_hard_limit
2290 1 : s% lgL_power_photo_burn_min = lgL_power_photo_burn_min
2291 1 : s% lgL_power_photo_drop_factor = lgL_power_photo_drop_factor
2292 1 : s% min_lgT_for_lgL_power_photo_limit = min_lgT_for_lgL_power_photo_limit
2293 :
2294 1 : s% delta_lgL_nuc_limit = delta_lgL_nuc_limit
2295 1 : s% delta_lgL_nuc_hard_limit = delta_lgL_nuc_hard_limit
2296 1 : s% delta_lgL_nuc_at_high_T_limit = delta_lgL_nuc_at_high_T_limit
2297 1 : s% delta_lgL_nuc_at_high_T_hard_limit = delta_lgL_nuc_at_high_T_hard_limit
2298 1 : s% delta_lgL_nuc_at_high_T_limit_lgT_min = delta_lgL_nuc_at_high_T_limit_lgT_min
2299 :
2300 1 : s% max_lgT_for_lgL_nuc_limit = max_lgT_for_lgL_nuc_limit
2301 1 : s% lgL_nuc_burn_min = lgL_nuc_burn_min
2302 1 : s% lgL_nuc_drop_factor = lgL_nuc_drop_factor
2303 :
2304 1 : s% delta_lgRho_cntr_limit = delta_lgRho_cntr_limit
2305 1 : s% delta_lgRho_cntr_hard_limit = delta_lgRho_cntr_hard_limit
2306 :
2307 1 : s% delta_lgP_cntr_limit = delta_lgP_cntr_limit
2308 1 : s% delta_lgP_cntr_hard_limit = delta_lgP_cntr_hard_limit
2309 :
2310 1 : s% delta_lgT_cntr_limit = delta_lgT_cntr_limit
2311 1 : s% delta_lgT_cntr_hard_limit = delta_lgT_cntr_hard_limit
2312 1 : s% delta_lgT_cntr_limit_only_after_near_zams = delta_lgT_cntr_limit_only_after_near_zams
2313 :
2314 1 : s% delta_lgT_max_limit = delta_lgT_max_limit
2315 1 : s% delta_lgT_max_hard_limit = delta_lgT_max_hard_limit
2316 1 : s% delta_lgT_max_limit_lgT_min = delta_lgT_max_limit_lgT_min
2317 1 : s% delta_lgT_max_limit_only_after_near_zams = delta_lgT_max_limit_only_after_near_zams
2318 :
2319 1 : s% delta_lgT_max_at_high_T_limit = delta_lgT_max_at_high_T_limit
2320 1 : s% delta_lgT_max_at_high_T_hard_limit = delta_lgT_max_at_high_T_hard_limit
2321 1 : s% delta_lgT_max_at_high_T_limit_lgT_min = delta_lgT_max_at_high_T_limit_lgT_min
2322 :
2323 1 : s% delta_log_eps_nuc_limit = delta_log_eps_nuc_limit
2324 1 : s% delta_log_eps_nuc_hard_limit = delta_log_eps_nuc_hard_limit
2325 :
2326 1 : s% delta_dX_div_X_cntr_min = delta_dX_div_X_cntr_min
2327 1 : s% delta_dX_div_X_cntr_max = delta_dX_div_X_cntr_max
2328 1 : s% delta_dX_div_X_cntr_limit = delta_dX_div_X_cntr_limit
2329 1 : s% delta_dX_div_X_cntr_hard_limit = delta_dX_div_X_cntr_hard_limit
2330 :
2331 1 : s% delta_dX_div_X_drop_only = delta_dX_div_X_drop_only
2332 1 : s% delta_lg_XH_drop_only = delta_lg_XH_drop_only
2333 1 : s% delta_lg_XHe_drop_only = delta_lg_XHe_drop_only
2334 1 : s% delta_lg_XC_drop_only = delta_lg_XC_drop_only
2335 1 : s% delta_lg_XNe_drop_only = delta_lg_XNe_drop_only
2336 1 : s% delta_lg_XO_drop_only = delta_lg_XO_drop_only
2337 1 : s% delta_lg_XSi_drop_only = delta_lg_XSi_drop_only
2338 1 : s% delta_XH_drop_only = delta_XH_drop_only
2339 1 : s% delta_XHe_drop_only = delta_XHe_drop_only
2340 1 : s% delta_XC_drop_only = delta_XC_drop_only
2341 1 : s% delta_XNe_drop_only = delta_XNe_drop_only
2342 1 : s% delta_XO_drop_only = delta_XO_drop_only
2343 1 : s% delta_XSi_drop_only = delta_XSi_drop_only
2344 :
2345 1 : s% delta_lg_XH_cntr_min = delta_lg_XH_cntr_min
2346 1 : s% delta_lg_XH_cntr_max = delta_lg_XH_cntr_max
2347 1 : s% delta_lg_XH_cntr_limit = delta_lg_XH_cntr_limit
2348 1 : s% delta_lg_XH_cntr_hard_limit = delta_lg_XH_cntr_hard_limit
2349 :
2350 1 : s% delta_lg_XHe_cntr_min = delta_lg_XHe_cntr_min
2351 1 : s% delta_lg_XHe_cntr_max = delta_lg_XHe_cntr_max
2352 1 : s% delta_lg_XHe_cntr_limit = delta_lg_XHe_cntr_limit
2353 1 : s% delta_lg_XHe_cntr_hard_limit = delta_lg_XHe_cntr_hard_limit
2354 :
2355 1 : s% delta_lg_XC_cntr_min = delta_lg_XC_cntr_min
2356 1 : s% delta_lg_XC_cntr_max = delta_lg_XC_cntr_max
2357 1 : s% delta_lg_XC_cntr_limit = delta_lg_XC_cntr_limit
2358 1 : s% delta_lg_XC_cntr_hard_limit = delta_lg_XC_cntr_hard_limit
2359 :
2360 1 : s% delta_lg_XNe_cntr_limit = delta_lg_XNe_cntr_limit
2361 1 : s% delta_lg_XNe_cntr_hard_limit = delta_lg_XNe_cntr_hard_limit
2362 1 : s% delta_lg_XNe_cntr_min = delta_lg_XNe_cntr_min
2363 1 : s% delta_lg_XNe_cntr_max = delta_lg_XNe_cntr_max
2364 :
2365 1 : s% delta_lg_XO_cntr_limit = delta_lg_XO_cntr_limit
2366 1 : s% delta_lg_XO_cntr_hard_limit = delta_lg_XO_cntr_hard_limit
2367 1 : s% delta_lg_XO_cntr_min = delta_lg_XO_cntr_min
2368 1 : s% delta_lg_XO_cntr_max = delta_lg_XO_cntr_max
2369 :
2370 1 : s% delta_lg_XSi_cntr_limit = delta_lg_XSi_cntr_limit
2371 1 : s% delta_lg_XSi_cntr_hard_limit = delta_lg_XSi_cntr_hard_limit
2372 1 : s% delta_lg_XSi_cntr_min = delta_lg_XSi_cntr_min
2373 1 : s% delta_lg_XSi_cntr_max = delta_lg_XSi_cntr_max
2374 :
2375 1 : s% delta_XH_cntr_limit = delta_XH_cntr_limit
2376 1 : s% delta_XH_cntr_hard_limit = delta_XH_cntr_hard_limit
2377 1 : s% delta_XHe_cntr_limit = delta_XHe_cntr_limit
2378 1 : s% delta_XHe_cntr_hard_limit = delta_XHe_cntr_hard_limit
2379 1 : s% delta_XC_cntr_limit = delta_XC_cntr_limit
2380 1 : s% delta_XC_cntr_hard_limit = delta_XC_cntr_hard_limit
2381 1 : s% delta_XNe_cntr_limit = delta_XNe_cntr_limit
2382 1 : s% delta_XNe_cntr_hard_limit = delta_XNe_cntr_hard_limit
2383 1 : s% delta_XO_cntr_limit = delta_XO_cntr_limit
2384 1 : s% delta_XO_cntr_hard_limit = delta_XO_cntr_hard_limit
2385 1 : s% delta_XSi_cntr_limit = delta_XSi_cntr_limit
2386 1 : s% delta_XSi_cntr_hard_limit = delta_XSi_cntr_hard_limit
2387 :
2388 1 : s% delta_lgTeff_limit = delta_lgTeff_limit
2389 1 : s% delta_lgTeff_hard_limit = delta_lgTeff_hard_limit
2390 :
2391 1 : s% delta_lgL_limit = delta_lgL_limit
2392 1 : s% delta_lgL_limit_L_min = delta_lgL_limit_L_min
2393 1 : s% delta_lgL_hard_limit = delta_lgL_hard_limit
2394 :
2395 1 : s% delta_HR_ds_L = delta_HR_ds_L
2396 1 : s% delta_HR_ds_Teff = delta_HR_ds_Teff
2397 1 : s% delta_HR_limit = delta_HR_limit
2398 1 : s% delta_HR_hard_limit = delta_HR_hard_limit
2399 :
2400 1 : s% delta_lg_star_mass_limit = delta_lg_star_mass_limit
2401 1 : s% delta_lg_star_mass_hard_limit = delta_lg_star_mass_hard_limit
2402 :
2403 1 : s% delta_mdot_atol = delta_mdot_atol
2404 1 : s% delta_mdot_rtol = delta_mdot_rtol
2405 1 : s% delta_mdot_limit = delta_mdot_limit
2406 1 : s% delta_mdot_hard_limit = delta_mdot_hard_limit
2407 :
2408 1 : s% adjust_J_q_limit = adjust_J_q_limit
2409 1 : s% adjust_J_q_hard_limit = adjust_J_q_hard_limit
2410 1 : s% never_skip_hard_limits = never_skip_hard_limits
2411 1 : s% relax_hard_limits_after_retry = relax_hard_limits_after_retry
2412 1 : s% report_dt_hard_limit_retries = report_dt_hard_limit_retries
2413 1 : s% report_min_dr_div_cs = report_min_dr_div_cs
2414 1 : s% report_solver_dt_info = report_solver_dt_info
2415 :
2416 1 : s% limit_for_rel_error_in_energy_conservation = limit_for_rel_error_in_energy_conservation
2417 1 : s% hard_limit_for_rel_error_in_energy_conservation = hard_limit_for_rel_error_in_energy_conservation
2418 :
2419 1 : s% min_chem_eqn_scale = min_chem_eqn_scale
2420 :
2421 1 : s% trace_evolve = trace_evolve
2422 :
2423 :
2424 : ! misc
2425 1 : s% zams_filename = zams_filename
2426 1 : s% set_rho_to_dm_div_dV = set_rho_to_dm_div_dV
2427 :
2428 1 : s% use_other_mlt_results = use_other_mlt_results
2429 1 : s% use_other_surface_PT = use_other_surface_PT
2430 1 : s% use_other_kap = use_other_kap
2431 1 : s% use_other_diffusion = use_other_diffusion
2432 1 : s% use_other_diffusion_factor = use_other_diffusion_factor
2433 1 : s% use_other_adjust_mdot = use_other_adjust_mdot
2434 1 : s% use_other_j_for_adjust_J_lost = use_other_j_for_adjust_J_lost
2435 1 : s% use_other_alpha_mlt = use_other_alpha_mlt
2436 1 : s% use_other_am_mixing = use_other_am_mixing
2437 1 : s% use_other_brunt = use_other_brunt
2438 1 : s% use_other_brunt_smoothing = use_other_brunt_smoothing
2439 1 : s% use_other_solver_monitor = use_other_solver_monitor
2440 1 : s% use_other_build_initial_model = use_other_build_initial_model
2441 1 : s% use_other_cgrav = use_other_cgrav
2442 1 : s% use_other_mesh_delta_coeff_factor = use_other_mesh_delta_coeff_factor
2443 1 : s% use_other_energy_implicit = use_other_energy_implicit
2444 1 : s% use_other_remove_surface = use_other_remove_surface
2445 1 : s% use_other_momentum = use_other_momentum
2446 1 : s% use_other_momentum_implicit = use_other_momentum_implicit
2447 1 : s% use_other_pressure = use_other_pressure
2448 1 : s% use_other_energy = use_other_energy
2449 1 : s% use_other_mesh_functions = use_other_mesh_functions
2450 1 : s% use_other_eps_grav = use_other_eps_grav
2451 1 : s% use_other_gradr_factor = use_other_gradr_factor
2452 1 : s% use_other_D_mix = use_other_D_mix
2453 1 : s% use_other_neu = use_other_neu
2454 1 : s% use_other_net_get = use_other_net_get
2455 1 : s% use_other_opacity_factor = use_other_opacity_factor
2456 1 : s% use_other_diffusion_coefficients = use_other_diffusion_coefficients
2457 1 : s% use_other_pgstar_plots = use_other_pgstar_plots
2458 1 : s% use_other_eval_fp_ft = use_other_eval_fp_ft
2459 1 : s% use_other_eval_i_rot = use_other_eval_i_rot
2460 1 : s% use_other_torque = use_other_torque
2461 1 : s% use_other_torque_implicit = use_other_torque_implicit
2462 1 : s% use_other_wind = use_other_wind
2463 1 : s% use_other_accreting_state = use_other_accreting_state
2464 1 : s% use_other_after_struct_burn_mix = use_other_after_struct_burn_mix
2465 1 : s% use_other_before_struct_burn_mix = use_other_before_struct_burn_mix
2466 1 : s% use_other_astero_freq_corr = use_other_astero_freq_corr
2467 1 : s% use_other_timestep_limit = use_other_timestep_limit
2468 1 : s% use_other_set_pgstar_controls = use_other_set_pgstar_controls
2469 1 : s% use_other_screening = use_other_screening
2470 1 : s% use_other_rate_get = use_other_rate_get
2471 1 : s% use_other_net_derivs = use_other_net_derivs
2472 1 : s% use_other_split_burn = use_other_split_burn
2473 1 : s% use_other_close_gaps = use_other_close_gaps
2474 :
2475 101 : s% x_ctrl = x_ctrl
2476 101 : s% x_integer_ctrl = x_integer_ctrl
2477 101 : s% x_logical_ctrl = x_logical_ctrl
2478 101 : s% x_character_ctrl = x_character_ctrl
2479 :
2480 : ! info for debugging
2481 1 : s% stop_for_bad_nums = stop_for_bad_nums
2482 1 : s% report_ierr = report_ierr
2483 1 : s% report_bad_negative_xa = report_bad_negative_xa
2484 :
2485 1 : s% diffusion_dump_call_number = diffusion_dump_call_number
2486 :
2487 1 : s% surface_accel_div_grav_limit = surface_accel_div_grav_limit
2488 1 : s% steps_before_start_stress_test = steps_before_start_stress_test
2489 1 : s% stress_test_relax = stress_test_relax
2490 :
2491 1 : end subroutine store_controls
2492 :
2493 :
2494 0 : subroutine set_controls_for_writing(s, ierr)
2495 : use star_private_def
2496 : use chem_def ! categories
2497 : type (star_info), pointer :: s
2498 : integer, intent(out) :: ierr
2499 :
2500 0 : ierr = 0
2501 :
2502 : ! where to start
2503 0 : initial_mass = s% initial_mass
2504 0 : initial_z = s% initial_z
2505 0 : initial_y = s% initial_y
2506 0 : initial_he3 = s% initial_he3
2507 :
2508 : ! definition of core boundaries
2509 0 : he_core_boundary_h1_fraction = s% he_core_boundary_h1_fraction
2510 0 : co_core_boundary_he4_fraction = s% co_core_boundary_he4_fraction
2511 0 : one_core_boundary_he4_c12_fraction = s% one_core_boundary_he4_c12_fraction
2512 0 : fe_core_boundary_si28_fraction = s% fe_core_boundary_si28_fraction
2513 0 : neutron_rich_core_boundary_Ye_max = s% neutron_rich_core_boundary_Ye_max
2514 0 : min_boundary_fraction = s% min_boundary_fraction
2515 :
2516 : ! when to stop
2517 0 : max_model_number = s% max_model_number
2518 0 : max_abs_rel_run_E_err = s% max_abs_rel_run_E_err
2519 0 : max_number_retries = s% max_number_retries
2520 0 : relax_max_number_retries = s% relax_max_number_retries
2521 0 : max_age = s% max_age
2522 0 : max_age_in_days = s% max_age_in_days
2523 0 : max_age_in_seconds = s% max_age_in_seconds
2524 0 : num_adjusted_dt_steps_before_max_age = s% num_adjusted_dt_steps_before_max_age
2525 0 : dt_years_for_steps_before_max_age = s% dt_years_for_steps_before_max_age
2526 0 : reduction_factor_for_max_timestep = s% reduction_factor_for_max_timestep
2527 0 : when_to_stop_rtol = s% when_to_stop_rtol
2528 0 : when_to_stop_atol = s% when_to_stop_atol
2529 0 : gamma_center_limit = s% gamma_center_limit
2530 0 : eta_center_limit = s% eta_center_limit
2531 0 : log_center_temp_upper_limit = s% log_center_temp_upper_limit
2532 0 : log_max_temp_upper_limit = s% log_max_temp_upper_limit
2533 0 : log_max_temp_lower_limit = s% log_max_temp_lower_limit
2534 0 : log_center_temp_lower_limit = s% log_center_temp_lower_limit
2535 0 : log_center_density_upper_limit = s% log_center_density_upper_limit
2536 0 : log_center_density_lower_limit = s% log_center_density_lower_limit
2537 0 : min_timestep_limit = s% min_timestep_limit
2538 :
2539 0 : center_entropy_upper_limit = s% center_entropy_upper_limit
2540 0 : center_entropy_lower_limit = s% center_entropy_lower_limit
2541 0 : max_entropy_upper_limit = s% max_entropy_upper_limit
2542 0 : max_entropy_lower_limit = s% max_entropy_lower_limit
2543 :
2544 0 : fe_core_infall_limit = s% fe_core_infall_limit
2545 0 : fe_core_infall_mass = s% fe_core_infall_mass
2546 0 : center_Ye_lower_limit = s% center_Ye_lower_limit
2547 0 : center_R_lower_limit = s% center_R_lower_limit
2548 0 : non_fe_core_infall_limit = s% non_fe_core_infall_limit
2549 0 : non_fe_core_infall_mass = s% non_fe_core_infall_mass
2550 0 : non_fe_core_rebound_limit = s% non_fe_core_rebound_limit
2551 0 : v_div_csound_surf_limit = s% v_div_csound_surf_limit
2552 0 : v_div_csound_max_limit = s% v_div_csound_max_limit
2553 0 : Lnuc_div_L_upper_limit = s% Lnuc_div_L_upper_limit
2554 0 : Lnuc_div_L_lower_limit = s% Lnuc_div_L_lower_limit
2555 0 : v_surf_div_v_kh_upper_limit = s% v_surf_div_v_kh_upper_limit
2556 0 : v_surf_div_v_kh_lower_limit = s% v_surf_div_v_kh_lower_limit
2557 0 : v_surf_div_v_esc_limit = s% v_surf_div_v_esc_limit
2558 0 : v_surf_kms_limit = s% v_surf_kms_limit
2559 :
2560 0 : stop_near_zams = s% stop_near_zams
2561 0 : stop_at_phase_PreMS = s% stop_at_phase_PreMS
2562 0 : stop_at_phase_ZAMS = s% stop_at_phase_ZAMS
2563 0 : stop_at_phase_IAMS = s% stop_at_phase_IAMS
2564 0 : stop_at_phase_TAMS = s% stop_at_phase_TAMS
2565 0 : stop_at_phase_He_Burn = s% stop_at_phase_He_Burn
2566 0 : stop_at_phase_ZACHeB = s% stop_at_phase_ZACHeB
2567 0 : stop_at_phase_TACHeB = s% stop_at_phase_TACHeB
2568 0 : stop_at_phase_TP_AGB = s% stop_at_phase_TP_AGB
2569 0 : stop_at_phase_C_Burn = s% stop_at_phase_C_Burn
2570 0 : stop_at_phase_Ne_Burn = s% stop_at_phase_Ne_Burn
2571 0 : stop_at_phase_O_Burn = s% stop_at_phase_O_Burn
2572 0 : stop_at_phase_Si_Burn = s% stop_at_phase_Si_Burn
2573 0 : stop_at_phase_WDCS = s% stop_at_phase_WDCS
2574 0 : Lnuc_div_L_zams_limit = s% Lnuc_div_L_zams_limit
2575 0 : Pgas_div_P_limit = s% Pgas_div_P_limit
2576 0 : Pgas_div_P_limit_max_q = s% Pgas_div_P_limit_max_q
2577 0 : gamma1_limit = s% gamma1_limit
2578 0 : gamma1_limit_max_q = s% gamma1_limit_max_q
2579 0 : gamma1_limit_max_v_div_vesc = s% gamma1_limit_max_v_div_vesc
2580 0 : peak_burn_vconv_div_cs_limit = s% peak_burn_vconv_div_cs_limit
2581 0 : omega_div_omega_crit_limit = s% omega_div_omega_crit_limit
2582 0 : delta_nu_lower_limit = s% delta_nu_lower_limit
2583 0 : delta_nu_upper_limit = s% delta_nu_upper_limit
2584 0 : delta_Pg_lower_limit = s% delta_Pg_lower_limit
2585 0 : delta_Pg_upper_limit = s% delta_Pg_upper_limit
2586 0 : shock_mass_upper_limit = s% shock_mass_upper_limit
2587 0 : mach1_mass_upper_limit = s% mach1_mass_upper_limit
2588 0 : stop_when_reach_this_cumulative_extra_heating = s% stop_when_reach_this_cumulative_extra_heating
2589 :
2590 0 : xa_central_lower_limit_species = s% xa_central_lower_limit_species
2591 0 : xa_central_lower_limit = s% xa_central_lower_limit
2592 :
2593 0 : xa_central_upper_limit_species = s% xa_central_upper_limit_species
2594 0 : xa_central_upper_limit = s% xa_central_upper_limit
2595 :
2596 0 : xa_surface_lower_limit_species = s% xa_surface_lower_limit_species
2597 0 : xa_surface_lower_limit = s% xa_surface_lower_limit
2598 :
2599 0 : xa_surface_upper_limit_species = s% xa_surface_upper_limit_species
2600 0 : xa_surface_upper_limit = s% xa_surface_upper_limit
2601 :
2602 0 : xa_average_lower_limit_species = s% xa_average_lower_limit_species
2603 0 : xa_average_lower_limit = s% xa_average_lower_limit
2604 :
2605 0 : xa_average_upper_limit_species = s% xa_average_upper_limit_species
2606 0 : xa_average_upper_limit = s% xa_average_upper_limit
2607 :
2608 0 : HB_limit = s% HB_limit
2609 :
2610 0 : star_mass_max_limit = s% star_mass_max_limit
2611 0 : star_mass_min_limit = s% star_mass_min_limit
2612 0 : ejecta_mass_max_limit = s% ejecta_mass_max_limit
2613 0 : remnant_mass_min_limit = s% remnant_mass_min_limit
2614 :
2615 0 : star_species_mass_min_limit = s% star_species_mass_min_limit
2616 0 : star_species_mass_min_limit_iso = s% star_species_mass_min_limit_iso
2617 0 : star_species_mass_max_limit = s% star_species_mass_max_limit
2618 0 : star_species_mass_max_limit_iso = s% star_species_mass_max_limit_iso
2619 :
2620 0 : xmstar_min_limit = s% xmstar_min_limit
2621 0 : xmstar_max_limit = s% xmstar_max_limit
2622 0 : envelope_mass_limit = s% envelope_mass_limit
2623 0 : envelope_fraction_left_limit = s% envelope_fraction_left_limit
2624 :
2625 0 : he_core_mass_limit = s% he_core_mass_limit
2626 0 : co_core_mass_limit = s% co_core_mass_limit
2627 0 : one_core_mass_limit = s% one_core_mass_limit
2628 0 : fe_core_mass_limit = s% fe_core_mass_limit
2629 0 : neutron_rich_core_mass_limit = s% neutron_rich_core_mass_limit
2630 :
2631 0 : he_layer_mass_lower_limit = s% he_layer_mass_lower_limit
2632 0 : abs_diff_lg_LH_lg_Ls_limit = s% abs_diff_lg_LH_lg_Ls_limit
2633 0 : Teff_upper_limit = s% Teff_upper_limit
2634 0 : Teff_lower_limit = s% Teff_lower_limit
2635 0 : photosphere_m_upper_limit = s% photosphere_m_upper_limit
2636 0 : photosphere_m_lower_limit = s% photosphere_m_lower_limit
2637 0 : photosphere_m_sub_M_center_limit = s% photosphere_m_sub_M_center_limit
2638 0 : photosphere_r_upper_limit = s% photosphere_r_upper_limit
2639 0 : photosphere_r_lower_limit = s% photosphere_r_lower_limit
2640 0 : log_Teff_upper_limit = s% log_Teff_upper_limit
2641 0 : log_Teff_lower_limit = s% log_Teff_lower_limit
2642 0 : log_Tsurf_upper_limit = s% log_Tsurf_upper_limit
2643 0 : log_Tsurf_lower_limit = s% log_Tsurf_lower_limit
2644 0 : log_Rsurf_upper_limit = s% log_Rsurf_upper_limit
2645 0 : log_Rsurf_lower_limit = s% log_Rsurf_lower_limit
2646 0 : log_Psurf_upper_limit = s% log_Psurf_upper_limit
2647 0 : log_Psurf_lower_limit = s% log_Psurf_lower_limit
2648 0 : log_Dsurf_upper_limit = s% log_Dsurf_upper_limit
2649 0 : log_Dsurf_lower_limit = s% log_Dsurf_lower_limit
2650 0 : log_L_upper_limit = s% log_L_upper_limit
2651 0 : log_L_lower_limit = s% log_L_lower_limit
2652 0 : log_g_upper_limit = s% log_g_upper_limit
2653 0 : log_g_lower_limit = s% log_g_lower_limit
2654 :
2655 0 : power_nuc_burn_upper_limit = s% power_nuc_burn_upper_limit
2656 0 : power_h_burn_upper_limit = s% power_h_burn_upper_limit
2657 0 : power_he_burn_upper_limit = s% power_he_burn_upper_limit
2658 0 : power_z_burn_upper_limit = s% power_z_burn_upper_limit
2659 0 : power_nuc_burn_lower_limit = s% power_nuc_burn_lower_limit
2660 0 : power_h_burn_lower_limit = s% power_h_burn_lower_limit
2661 0 : power_he_burn_lower_limit = s% power_he_burn_lower_limit
2662 0 : power_z_burn_lower_limit = s% power_z_burn_lower_limit
2663 :
2664 :
2665 : ! output of "snapshots" for restarts
2666 0 : photo_interval = s% photo_interval
2667 0 : photo_digits = s% photo_digits
2668 0 : photo_directory = s% photo_directory
2669 : ! output of history and profiles.
2670 0 : do_history_file = s% do_history_file
2671 0 : history_interval = s% history_interval
2672 :
2673 0 : write_header_frequency = s% write_header_frequency
2674 0 : terminal_interval = s% terminal_interval
2675 0 : terminal_show_age_units = s% terminal_show_age_units
2676 0 : terminal_show_timestep_units = s% terminal_show_timestep_units
2677 0 : terminal_show_log_dt = s% terminal_show_log_dt
2678 0 : terminal_show_log_age = s% terminal_show_log_age
2679 0 : extra_terminal_output_file = s% extra_terminal_output_file
2680 0 : num_trace_history_values = s% num_trace_history_values
2681 0 : trace_history_value_name = s% trace_history_value_name
2682 :
2683 0 : log_directory = s% log_directory
2684 :
2685 0 : star_history_name = s% star_history_name
2686 0 : star_history_header_name = s% star_history_header_name
2687 0 : star_history_dbl_format = s% star_history_dbl_format
2688 0 : star_history_int_format = s% star_history_int_format
2689 0 : star_history_txt_format = s% star_history_txt_format
2690 :
2691 0 : profiles_index_name = s% profiles_index_name
2692 0 : profile_data_prefix = s% profile_data_prefix
2693 0 : profile_data_suffix = s% profile_data_suffix
2694 0 : profile_data_header_suffix = s% profile_data_header_suffix
2695 0 : profile_int_format = s% profile_int_format
2696 0 : profile_txt_format = s% profile_txt_format
2697 0 : profile_dbl_format = s% profile_dbl_format
2698 0 : profile_header_include_sys_details = s% profile_header_include_sys_details
2699 0 : write_profiles_flag = s% write_profiles_flag
2700 0 : profile_interval = s% profile_interval
2701 0 : priority_profile_interval = s% priority_profile_interval
2702 0 : profile_model = s% profile_model
2703 0 : max_num_profile_models = s% max_num_profile_models
2704 0 : max_num_profile_zones = s% max_num_profile_zones
2705 :
2706 0 : write_controls_info_with_profile = s% write_controls_info_with_profile
2707 0 : controls_data_prefix = s% controls_data_prefix
2708 0 : controls_data_suffix = s% controls_data_suffix
2709 :
2710 0 : write_pulse_data_with_profile = s% write_pulse_data_with_profile
2711 0 : pulse_data_format = s% pulse_data_format
2712 0 : add_atmosphere_to_pulse_data = s% add_atmosphere_to_pulse_data
2713 0 : add_center_point_to_pulse_data = s% add_center_point_to_pulse_data
2714 0 : keep_surface_point_for_pulse_data = s% keep_surface_point_for_pulse_data
2715 0 : add_double_points_to_pulse_data = s% add_double_points_to_pulse_data
2716 0 : interpolate_rho_for_pulse_data = s% interpolate_rho_for_pulse_data
2717 0 : threshold_grad_mu_for_double_point = s% threshold_grad_mu_for_double_point
2718 0 : max_number_of_double_points = s% max_number_of_double_points
2719 :
2720 0 : gyre_data_schema = s% gyre_data_schema
2721 :
2722 0 : fgong_header = s% fgong_header
2723 0 : fgong_ivers = s% fgong_ivers
2724 :
2725 0 : max_num_gyre_points = s% max_num_gyre_points
2726 0 : format_for_OSC_data = s% format_for_OSC_data
2727 0 : fgong_zero_A_inside_r = s% fgong_zero_A_inside_r
2728 0 : use_other_export_pulse_data = s% use_other_export_pulse_data
2729 0 : use_other_get_pulse_data = s% use_other_get_pulse_data
2730 0 : use_other_edit_pulse_data = s% use_other_edit_pulse_data
2731 :
2732 0 : write_model_with_profile = s% write_model_with_profile
2733 0 : model_data_prefix = s% model_data_prefix
2734 0 : model_data_suffix = s% model_data_suffix
2735 :
2736 0 : mixing_D_limit_for_log = s% mixing_D_limit_for_log
2737 0 : trace_mass_location = s% trace_mass_location
2738 0 : min_tau_for_max_abs_v_location = s% min_tau_for_max_abs_v_location
2739 0 : min_q_for_inner_mach1_location = s% min_q_for_inner_mach1_location
2740 0 : max_q_for_outer_mach1_location = s% max_q_for_outer_mach1_location
2741 :
2742 0 : conv_core_gap_dq_limit = s% conv_core_gap_dq_limit
2743 :
2744 : ! burn zone eps definitions for use in logs and profiles
2745 0 : burn_min1 = s% burn_min1
2746 0 : burn_min2 = s% burn_min2
2747 :
2748 0 : max_conv_vel_div_csound_maxq = s% max_conv_vel_div_csound_maxq
2749 0 : width_for_limit_conv_vel = s% width_for_limit_conv_vel
2750 0 : max_q_for_limit_conv_vel = s% max_q_for_limit_conv_vel
2751 0 : max_mass_in_gm_for_limit_conv_vel = s% max_mass_in_gm_for_limit_conv_vel
2752 0 : max_r_in_cm_for_limit_conv_vel = s% max_r_in_cm_for_limit_conv_vel
2753 :
2754 : ! for reported average values
2755 0 : surface_avg_abundance_dq = s% surface_avg_abundance_dq
2756 0 : center_avg_value_dq = s% center_avg_value_dq
2757 :
2758 : ! mixing parameters
2759 0 : min_convective_gap = s% min_convective_gap
2760 0 : min_thermohaline_gap = s% min_thermohaline_gap
2761 0 : min_semiconvection_gap = s% min_semiconvection_gap
2762 0 : min_thermohaline_dropout = s% min_thermohaline_dropout
2763 0 : max_dropout_gradL_sub_grada = s% max_dropout_gradL_sub_grada
2764 0 : remove_embedded_semiconvection = s% remove_embedded_semiconvection
2765 0 : recalc_mix_info_after_evolve = s% recalc_mix_info_after_evolve
2766 0 : remove_mixing_glitches = s% remove_mixing_glitches
2767 0 : okay_to_remove_mixing_singleton = s% okay_to_remove_mixing_singleton
2768 0 : prune_bad_cz_min_Hp_height = s% prune_bad_cz_min_Hp_height
2769 0 : prune_bad_cz_min_log_eps_nuc = s% prune_bad_cz_min_log_eps_nuc
2770 0 : redo_conv_for_dr_lt_mixing_length = s% redo_conv_for_dr_lt_mixing_length
2771 :
2772 0 : alpha_semiconvection = s% alpha_semiconvection
2773 0 : semiconvection_option = s% semiconvection_option
2774 0 : use_Ledoux_criterion = s% use_Ledoux_criterion
2775 0 : num_cells_for_smooth_gradL_composition_term = s% num_cells_for_smooth_gradL_composition_term
2776 0 : threshold_for_smooth_gradL_composition_term = s% threshold_for_smooth_gradL_composition_term
2777 0 : clip_D_limit = s% clip_D_limit
2778 :
2779 0 : okay_to_reduce_gradT_excess = s% okay_to_reduce_gradT_excess
2780 0 : gradT_excess_f1 = s% gradT_excess_f1
2781 0 : gradT_excess_f2 = s% gradT_excess_f2
2782 0 : gradT_excess_max_center_h1 = s% gradT_excess_max_center_h1
2783 0 : gradT_excess_min_center_he4 = s% gradT_excess_min_center_he4
2784 0 : gradT_excess_max_logT = s% gradT_excess_max_logT
2785 0 : gradT_excess_min_log_tau_full_on = s% gradT_excess_min_log_tau_full_on
2786 0 : gradT_excess_max_log_tau_full_off = s% gradT_excess_max_log_tau_full_off
2787 0 : gradT_excess_lambda1 = s% gradT_excess_lambda1
2788 0 : gradT_excess_beta1 = s% gradT_excess_beta1
2789 0 : gradT_excess_lambda2 = s% gradT_excess_lambda2
2790 0 : gradT_excess_beta2 = s% gradT_excess_beta2
2791 0 : gradT_excess_dlambda = s% gradT_excess_dlambda
2792 0 : gradT_excess_dbeta = s% gradT_excess_dbeta
2793 :
2794 0 : D_mix_zero_region_bottom_q = s% D_mix_zero_region_bottom_q
2795 0 : D_mix_zero_region_top_q = s% D_mix_zero_region_top_q
2796 0 : dq_D_mix_zero_at_H_He_crossover = s% dq_D_mix_zero_at_H_He_crossover
2797 0 : dq_D_mix_zero_at_H_C_crossover = s% dq_D_mix_zero_at_H_C_crossover
2798 :
2799 0 : use_superad_reduction = s% use_superad_reduction
2800 0 : superad_reduction_gamma_limit = s% superad_reduction_gamma_limit
2801 0 : superad_reduction_gamma_limit_scale = s% superad_reduction_gamma_limit_scale
2802 0 : superad_reduction_gamma_inv_scale = s% superad_reduction_gamma_inv_scale
2803 0 : superad_reduction_diff_grads_limit = s% superad_reduction_diff_grads_limit
2804 0 : superad_reduction_limit = s% superad_reduction_limit
2805 :
2806 0 : max_logT_for_mlt = s% max_logT_for_mlt
2807 0 : mlt_make_surface_no_mixing = s% mlt_make_surface_no_mixing
2808 0 : do_normalize_dqs_as_part_of_set_qs = s% do_normalize_dqs_as_part_of_set_qs
2809 :
2810 0 : thermohaline_coeff = s% thermohaline_coeff
2811 0 : thermohaline_option = s% thermohaline_option
2812 0 : mixing_length_alpha = s% mixing_length_alpha
2813 0 : remove_small_D_limit = s% remove_small_D_limit
2814 0 : alt_scale_height_flag = s% alt_scale_height_flag
2815 0 : Henyey_MLT_y_param = s% Henyey_MLT_y_param
2816 0 : Henyey_MLT_nu_param = s% Henyey_MLT_nu_param
2817 0 : make_gradr_sticky_in_solver_iters = s% make_gradr_sticky_in_solver_iters
2818 0 : min_logT_for_make_gradr_sticky_in_solver_iters = s% min_logT_for_make_gradr_sticky_in_solver_iters
2819 0 : no_MLT_below_shock = s% no_MLT_below_shock
2820 0 : MLT_option = s% MLT_option
2821 0 : steps_before_use_TDC = s% steps_before_use_TDC
2822 0 : mlt_use_rotation_correction = s% mlt_use_rotation_correction
2823 0 : mlt_Pturb_factor = s% mlt_Pturb_factor
2824 :
2825 0 : burn_z_mix_region_logT = s% burn_z_mix_region_logT
2826 0 : burn_he_mix_region_logT = s% burn_he_mix_region_logT
2827 0 : burn_h_mix_region_logT = s% burn_h_mix_region_logT
2828 0 : max_Y_for_burn_z_mix_region = s% max_Y_for_burn_z_mix_region
2829 0 : max_X_for_burn_he_mix_region = s% max_X_for_burn_he_mix_region
2830 :
2831 0 : limit_overshoot_Hp_using_size_of_convection_zone = s% limit_overshoot_Hp_using_size_of_convection_zone
2832 :
2833 0 : predictive_mix = s% predictive_mix
2834 0 : predictive_superad_thresh = s% predictive_superad_thresh
2835 0 : predictive_avoid_reversal = s% predictive_avoid_reversal
2836 0 : predictive_limit_ingestion = s% predictive_limit_ingestion
2837 0 : predictive_ingestion_factor = s% predictive_ingestion_factor
2838 0 : predictive_zone_type = s% predictive_zone_type
2839 0 : predictive_zone_loc = s% predictive_zone_loc
2840 0 : predictive_bdy_loc = s% predictive_bdy_loc
2841 0 : predictive_bdy_q_min = s% predictive_bdy_q_min
2842 0 : predictive_bdy_q_max = s% predictive_bdy_q_max
2843 :
2844 0 : do_conv_premix = s% do_conv_premix
2845 0 : conv_premix_avoid_increase = s% conv_premix_avoid_increase
2846 0 : conv_premix_time_factor = s% conv_premix_time_factor
2847 0 : conv_premix_fix_pgas = s% conv_premix_fix_pgas
2848 0 : conv_premix_dump_snapshots = s% conv_premix_dump_snapshots
2849 0 : do_premix_heating = s% do_premix_heating
2850 :
2851 0 : overshoot_f = s% overshoot_f
2852 0 : overshoot_f2 = s% overshoot_f2
2853 0 : overshoot_f0 = s% overshoot_f0
2854 0 : overshoot_D0 = s% overshoot_D0
2855 0 : overshoot_Delta0 = s% overshoot_Delta0
2856 0 : overshoot_mass_full_on = s% overshoot_mass_full_on
2857 0 : overshoot_mass_full_off = s% overshoot_mass_full_off
2858 0 : overshoot_scheme = s% overshoot_scheme
2859 0 : overshoot_zone_type = s% overshoot_zone_type
2860 0 : overshoot_zone_loc = s% overshoot_zone_loc
2861 0 : overshoot_bdy_loc = s% overshoot_bdy_loc
2862 0 : overshoot_D_min = s% overshoot_D_min
2863 0 : overshoot_brunt_B_max = s% overshoot_brunt_B_max
2864 :
2865 0 : max_conv_vel_div_csound = s% max_conv_vel_div_csound
2866 0 : max_v_for_convection = s% max_v_for_convection
2867 0 : max_q_for_convection_with_hydro_on = s% max_q_for_convection_with_hydro_on
2868 0 : max_v_div_cs_for_convection = s% max_v_div_cs_for_convection
2869 0 : max_abs_du_div_cs_for_convection = s% max_abs_du_div_cs_for_convection
2870 :
2871 0 : calculate_Brunt_B = s% calculate_Brunt_B
2872 0 : calculate_Brunt_N2 = s% calculate_Brunt_N2
2873 0 : brunt_N2_coefficient = s% brunt_N2_coefficient
2874 0 : threshold_for_smooth_brunt_B = s% threshold_for_smooth_brunt_B
2875 0 : min_magnitude_brunt_B = s% min_magnitude_brunt_B
2876 :
2877 0 : min_overshoot_q = s% min_overshoot_q
2878 0 : overshoot_alpha = s% overshoot_alpha
2879 :
2880 0 : RSP_max_num_periods = s% RSP_max_num_periods
2881 0 : RSP_target_steps_per_cycle = s% RSP_target_steps_per_cycle
2882 0 : RSP_min_max_R_for_periods = s% RSP_min_max_R_for_periods
2883 0 : RSP_min_deltaR_for_periods = s% RSP_min_deltaR_for_periods
2884 0 : RSP_default_PERIODLIN = s% RSP_default_PERIODLIN
2885 0 : RSP_min_PERIOD_div_PERIODLIN = s% RSP_min_PERIOD_div_PERIODLIN
2886 0 : RSP_GREKM_avg_abs_frac_new = s% RSP_GREKM_avg_abs_frac_new
2887 0 : RSP_GREKM_avg_abs_limit = s% RSP_GREKM_avg_abs_limit
2888 0 : RSP_theta = s% RSP_theta
2889 0 : RSP_thetat = s% RSP_thetat
2890 0 : RSP_thetau = s% RSP_thetau
2891 0 : RSP_thetae = s% RSP_thetae
2892 0 : RSP_thetaq = s% RSP_thetaq
2893 0 : RSP_wtr = s% RSP_wtr
2894 0 : RSP_wtc = s% RSP_wtc
2895 0 : RSP_wtt = s% RSP_wtt
2896 0 : RSP_gam = s% RSP_gam
2897 0 : RSP_alfa = s% RSP_alfa
2898 0 : RSP_alfap = s% RSP_alfap
2899 0 : RSP_alfam = s% RSP_alfam
2900 0 : RSP_alfat = s% RSP_alfat
2901 0 : RSP_alfas = s% RSP_alfas
2902 0 : RSP_alfac = s% RSP_alfac
2903 0 : RSP_alfad = s% RSP_alfad
2904 0 : RSP_gammar = s% RSP_gammar
2905 0 : RSP_efl0 = s% RSP_efl0
2906 0 : RSP_min_tau_for_turbulent_flux = s% RSP_min_tau_for_turbulent_flux
2907 0 : RSP_cq = s% RSP_cq
2908 0 : RSP_zsh = s% RSP_zsh
2909 0 : RSP_Qvisc_quadratic = s% RSP_Qvisc_quadratic
2910 0 : RSP_Qvisc_linear = s% RSP_Qvisc_linear
2911 0 : RSP_Qvisc_linear_static = s% RSP_Qvisc_linear_static
2912 0 : RSP_tol_max_corr = s% RSP_tol_max_corr
2913 0 : RSP_tol_max_resid = s% RSP_tol_max_resid
2914 0 : RSP_max_iters_per_try = s% RSP_max_iters_per_try
2915 0 : RSP_max_retries_per_step = s% RSP_max_retries_per_step
2916 0 : RSP_nz_div_IBOTOM = s% RSP_nz_div_IBOTOM
2917 0 : RSP_kick_vsurf_km_per_sec = s% RSP_kick_vsurf_km_per_sec
2918 0 : RSP_fraction_1st_overtone = s% RSP_fraction_1st_overtone
2919 0 : RSP_fraction_2nd_overtone = s% RSP_fraction_2nd_overtone
2920 0 : RSP_Avel = s% RSP_Avel
2921 0 : RSP_Arnd = s% RSP_Arnd
2922 0 : RSP_mode_for_setting_PERIODLIN = s% RSP_mode_for_setting_PERIODLIN
2923 0 : RSP_initial_dt_factor = s% RSP_initial_dt_factor
2924 0 : RSP_v_div_cs_threshold_for_dt_limit = s% RSP_v_div_cs_threshold_for_dt_limit
2925 0 : RSP_max_dt_times_min_dr_div_cs = s% RSP_max_dt_times_min_dr_div_cs
2926 0 : RSP_max_dt_times_min_rad_diff_time = s% RSP_max_dt_times_min_rad_diff_time
2927 0 : RSP_max_dt = s% RSP_max_dt
2928 0 : RSP_testing = s% RSP_testing
2929 0 : RSP_report_limit_dt = s% RSP_report_limit_dt
2930 0 : RSP_use_Prad_for_Psurf = s% RSP_use_Prad_for_Psurf
2931 0 : RSP_report_undercorrections = s% RSP_report_undercorrections
2932 0 : RSP_use_atm_grey_with_kap_for_Psurf = s% RSP_use_atm_grey_with_kap_for_Psurf
2933 0 : use_other_RSP_linear_analysis = s% use_other_RSP_linear_analysis
2934 0 : use_other_RSP_build_model = s% use_other_RSP_build_model
2935 0 : RSP_kap_density_factor = s% RSP_kap_density_factor
2936 0 : RSP_fixed_Psurf = s% RSP_fixed_Psurf
2937 0 : RSP_hydro_only = s% RSP_hydro_only
2938 0 : RSP_tau_surf_for_atm_grey_with_kap = s% RSP_tau_surf_for_atm_grey_with_kap
2939 0 : RSP_Psurf = s% RSP_Psurf
2940 0 : set_RSP_Psurf_to_multiple_of_initial_P1 = s% set_RSP_Psurf_to_multiple_of_initial_P1
2941 0 : RSP_surface_tau = s% RSP_surface_tau
2942 0 : RSP_write_map = s% RSP_write_map
2943 0 : RSP_trace_RSP_build_model = s% RSP_trace_RSP_build_model
2944 0 : RSP_map_filename = s% RSP_map_filename
2945 0 : RSP_map_columns_filename = s% RSP_map_columns_filename
2946 0 : RSP_map_history_filename = s% RSP_map_history_filename
2947 0 : RSP_map_first_period = s% RSP_map_first_period
2948 0 : RSP_map_last_period = s% RSP_map_last_period
2949 0 : RSP_map_zone_interval = s% RSP_map_zone_interval
2950 0 : RSP_nmodes = s% RSP_nmodes
2951 0 : RSP_work_period = s% RSP_work_period
2952 0 : RSP_work_filename = s% RSP_work_filename
2953 0 : RSP_nz_outer = s% RSP_nz_outer
2954 0 : RSP_max_outer_dm_tries = s% RSP_max_outer_dm_tries
2955 0 : RSP_max_inner_scale_tries = s% RSP_max_inner_scale_tries
2956 0 : RSP_relax_max_tries = s% RSP_relax_max_tries
2957 0 : RSP_T_anchor_tolerance = s% RSP_T_anchor_tolerance
2958 0 : RSP_T_inner_tolerance = s% RSP_T_inner_tolerance
2959 0 : RSP_relax_dm_tolerance = s% RSP_relax_dm_tolerance
2960 0 : RSP_dq_1_factor = s% RSP_dq_1_factor
2961 0 : use_RSP_new_start_scheme = s% use_RSP_new_start_scheme
2962 0 : RSP_do_check_omega = s% RSP_do_check_omega
2963 0 : RSP_report_check_omega_changes = s% RSP_report_check_omega_changes
2964 0 : RSP_nz = s% RSP_nz
2965 0 : RSP_T_anchor = s% RSP_T_anchor
2966 0 : RSP_T_inner = s% RSP_T_inner
2967 0 : RSP_relax_initial_model = s% RSP_relax_initial_model
2968 0 : RSP_relax_alfap_before_alfat = s% RSP_relax_alfap_before_alfat
2969 0 : RSP_relax_adjust_inner_mass_distribution = s% RSP_relax_adjust_inner_mass_distribution
2970 0 : RSP_Teff = s% RSP_Teff
2971 0 : RSP_mass = s% RSP_mass
2972 0 : RSP_L = s% RSP_L
2973 0 : RSP_X = s% RSP_X
2974 0 : RSP_Z = s% RSP_Z
2975 :
2976 0 : RTI_smooth_mass = s% RTI_smooth_mass
2977 0 : RTI_smooth_iterations = s% RTI_smooth_iterations
2978 0 : RTI_smooth_fraction = s% RTI_smooth_fraction
2979 :
2980 0 : alpha_RTI_diffusion_factor = s% alpha_RTI_diffusion_factor
2981 0 : dudt_RTI_diffusion_factor = s% dudt_RTI_diffusion_factor
2982 0 : dedt_RTI_diffusion_factor = s% dedt_RTI_diffusion_factor
2983 0 : dlnddt_RTI_diffusion_factor = s% dlnddt_RTI_diffusion_factor
2984 0 : composition_RTI_diffusion_factor = s% composition_RTI_diffusion_factor
2985 0 : max_M_RTI_factors_full_on = s% max_M_RTI_factors_full_on
2986 0 : min_M_RTI_factors_full_off = s% min_M_RTI_factors_full_off
2987 :
2988 0 : alpha_RTI_src_min_v_div_cs = s% alpha_RTI_src_min_v_div_cs
2989 0 : alpha_RTI_src_max_q = s% alpha_RTI_src_max_q
2990 0 : alpha_RTI_src_min_q = s% alpha_RTI_src_min_q
2991 :
2992 0 : T_mix_limit = s% T_mix_limit
2993 0 : mlt_gradT_fraction = s% mlt_gradT_fraction
2994 :
2995 : ! atmosphere -- surface boundary conditions
2996 0 : atm_option = s% atm_option
2997 0 : atm_off_table_option = s% atm_off_table_option
2998 0 : Pextra_factor = s% Pextra_factor
2999 0 : atm_fixed_Teff = s% atm_fixed_Teff
3000 0 : atm_fixed_Psurf = s% atm_fixed_Psurf
3001 0 : atm_fixed_Tsurf = s% atm_fixed_Tsurf
3002 :
3003 0 : atm_T_tau_relation = s% atm_T_tau_relation
3004 0 : atm_T_tau_opacity = s% atm_T_tau_opacity
3005 0 : atm_T_tau_errtol = s% atm_T_tau_errtol
3006 0 : atm_T_tau_max_iters = s% atm_T_tau_max_iters
3007 0 : atm_T_tau_max_steps = s% atm_T_tau_max_steps
3008 :
3009 0 : atm_table = s% atm_table
3010 :
3011 0 : atm_irradiated_opacity = s% atm_irradiated_opacity
3012 0 : atm_irradiated_errtol = s% atm_irradiated_errtol
3013 0 : atm_irradiated_T_eq = s% atm_irradiated_T_eq
3014 0 : atm_irradiated_kap_v = s% atm_irradiated_kap_v
3015 0 : atm_irradiated_kap_v_div_kap_th = s% atm_irradiated_kap_v_div_kap_th
3016 0 : atm_irradiated_P_surf = s% atm_irradiated_P_surf
3017 0 : atm_irradiated_max_iters = s% atm_irradiated_max_iters
3018 :
3019 0 : use_compression_outer_BC = s% use_compression_outer_BC
3020 0 : use_momentum_outer_BC = s% use_momentum_outer_BC
3021 0 : use_zero_Pgas_outer_BC = s% use_zero_Pgas_outer_BC
3022 0 : fixed_vsurf = s% fixed_vsurf
3023 0 : use_fixed_vsurf_outer_BC = s% use_fixed_vsurf_outer_BC
3024 0 : use_RSP_L_eqn_outer_BC = s% use_RSP_L_eqn_outer_BC
3025 0 : fixed_Psurf = s% fixed_Psurf
3026 0 : use_fixed_Psurf_outer_BC = s% use_fixed_Psurf_outer_BC
3027 :
3028 0 : atm_build_tau_outer = s% atm_build_tau_outer
3029 0 : atm_build_dlogtau = s% atm_build_dlogtau
3030 0 : atm_build_errtol = s% atm_build_errtol
3031 :
3032 0 : use_T_tau_gradr_factor = s% use_T_tau_gradr_factor
3033 :
3034 : ! starspots
3035 0 : do_starspots = s% do_starspots
3036 0 : fspot = s% fspot
3037 0 : xspot = s% xspot
3038 :
3039 : ! extra heat near surface to model irradiation
3040 0 : irradiation_flux = s% irradiation_flux
3041 0 : column_depth_for_irradiation = s% column_depth_for_irradiation
3042 :
3043 : ! extra heat
3044 0 : inject_uniform_extra_heat = s% inject_uniform_extra_heat
3045 0 : min_q_for_uniform_extra_heat = s% min_q_for_uniform_extra_heat
3046 0 : max_q_for_uniform_extra_heat = s% max_q_for_uniform_extra_heat
3047 0 : inject_extra_ergs_sec = s% inject_extra_ergs_sec
3048 0 : base_of_inject_extra_ergs_sec = s% base_of_inject_extra_ergs_sec
3049 0 : total_mass_for_inject_extra_ergs_sec = s% total_mass_for_inject_extra_ergs_sec
3050 0 : start_time_for_inject_extra_ergs_sec = s% start_time_for_inject_extra_ergs_sec
3051 0 : duration_for_inject_extra_ergs_sec = s% duration_for_inject_extra_ergs_sec
3052 0 : inject_until_reach_model_with_total_energy = s% inject_until_reach_model_with_total_energy
3053 :
3054 : ! mass gain or loss
3055 0 : mass_change = s% mass_change
3056 0 : mass_change_full_off_dt = s% mass_change_full_off_dt
3057 0 : mass_change_full_on_dt = s% mass_change_full_on_dt
3058 0 : trace_dt_control_mass_change = s% trace_dt_control_mass_change
3059 0 : no_wind_if_no_rotation = s% no_wind_if_no_rotation
3060 :
3061 0 : min_wind = s% min_wind
3062 0 : max_wind = s% max_wind
3063 0 : use_accreted_material_j = s% use_accreted_material_j
3064 0 : accreted_material_j = s% accreted_material_j
3065 0 : D_omega_mixing_rate = s% D_omega_mixing_rate
3066 0 : D_omega_mixing_across_convection_boundary = s% D_omega_mixing_across_convection_boundary
3067 0 : max_q_for_D_omega_zero_in_convection_region = s% max_q_for_D_omega_zero_in_convection_region
3068 0 : nu_omega_mixing_rate = s% nu_omega_mixing_rate
3069 0 : nu_omega_mixing_across_convection_boundary = s% nu_omega_mixing_across_convection_boundary
3070 0 : max_q_for_nu_omega_zero_in_convection_region = s% max_q_for_nu_omega_zero_in_convection_region
3071 :
3072 0 : mdot_omega_power = s% mdot_omega_power
3073 0 : max_rotational_mdot_boost = s% max_rotational_mdot_boost
3074 0 : max_mdot_jump_for_rotation = s% max_mdot_jump_for_rotation
3075 0 : lim_trace_rotational_mdot_boost = s% lim_trace_rotational_mdot_boost
3076 0 : rotational_mdot_boost_fac = s% rotational_mdot_boost_fac
3077 0 : rotational_mdot_kh_fac = s% rotational_mdot_kh_fac
3078 0 : surf_avg_tau = s% surf_avg_tau
3079 0 : surf_avg_tau_min = s% surf_avg_tau_min
3080 :
3081 0 : super_eddington_scaling_factor = s% super_eddington_scaling_factor
3082 0 : super_eddington_wind_Ledd_factor = s% super_eddington_wind_Ledd_factor
3083 0 : wind_boost_full_off_L_div_Ledd = s% wind_boost_full_off_L_div_Ledd
3084 0 : wind_boost_full_on_L_div_Ledd = s% wind_boost_full_on_L_div_Ledd
3085 0 : super_eddington_wind_max_boost = s% super_eddington_wind_max_boost
3086 0 : trace_super_eddington_wind_boost = s% trace_super_eddington_wind_boost
3087 :
3088 0 : max_tries_for_implicit_wind = s% max_tries_for_implicit_wind
3089 0 : iwind_tolerance = s% iwind_tolerance
3090 0 : iwind_lambda = s% iwind_lambda
3091 :
3092 0 : rlo_scaling_factor = s% rlo_scaling_factor
3093 0 : rlo_wind_min_L = s% rlo_wind_min_L
3094 0 : rlo_wind_max_Teff = s% rlo_wind_max_Teff
3095 0 : rlo_wind_roche_lobe_radius = s% rlo_wind_roche_lobe_radius
3096 0 : roche_lobe_xfer_full_on = s% roche_lobe_xfer_full_on
3097 0 : roche_lobe_xfer_full_off = s% roche_lobe_xfer_full_off
3098 0 : rlo_wind_base_mdot = s% rlo_wind_base_mdot
3099 0 : rlo_wind_scale_height = s% rlo_wind_scale_height
3100 :
3101 0 : cool_wind_RGB_scheme = s% cool_wind_RGB_scheme
3102 0 : cool_wind_AGB_scheme = s% cool_wind_AGB_scheme
3103 0 : RGB_to_AGB_wind_switch = s% RGB_to_AGB_wind_switch
3104 0 : Reimers_scaling_factor = s% Reimers_scaling_factor
3105 0 : Blocker_scaling_factor = s% Blocker_scaling_factor
3106 0 : de_Jager_scaling_factor = s% de_Jager_scaling_factor
3107 0 : van_Loon_scaling_factor = s% van_Loon_scaling_factor
3108 0 : Nieuwenhuijzen_scaling_factor = s% Nieuwenhuijzen_scaling_factor
3109 0 : Vink_scaling_factor = s% Vink_scaling_factor
3110 0 : Dutch_scaling_factor = s% Dutch_scaling_factor
3111 0 : Bjorklund_scaling_factor = s% Bjorklund_scaling_factor
3112 0 : Dutch_wind_lowT_scheme = s% Dutch_wind_lowT_scheme
3113 :
3114 0 : wind_H_envelope_limit = s% wind_H_envelope_limit
3115 0 : wind_H_He_envelope_limit = s% wind_H_He_envelope_limit
3116 0 : wind_He_layer_limit = s% wind_He_layer_limit
3117 :
3118 0 : max_logT_for_k_below_const_q = s% max_logT_for_k_below_const_q
3119 0 : max_q_for_k_below_const_q = s% max_q_for_k_below_const_q
3120 0 : min_q_for_k_below_const_q = s% min_q_for_k_below_const_q
3121 0 : max_logT_for_k_const_mass = s% max_logT_for_k_const_mass
3122 0 : min_q_for_k_const_mass = s% min_q_for_k_const_mass
3123 0 : max_q_for_k_const_mass = s% max_q_for_k_const_mass
3124 :
3125 : ! composition of added mass
3126 0 : accrete_same_as_surface = s% accrete_same_as_surface
3127 :
3128 0 : accrete_given_mass_fractions = s% accrete_given_mass_fractions
3129 0 : num_accretion_species = s% num_accretion_species
3130 0 : accretion_species_id = s% accretion_species_id
3131 0 : accretion_species_xa = s% accretion_species_xa
3132 :
3133 0 : accretion_h1 = s% accretion_h1
3134 0 : accretion_h2 = s% accretion_h2
3135 0 : accretion_he3 = s% accretion_he3
3136 0 : accretion_he4 = s% accretion_he4
3137 0 : accretion_zfracs = s% accretion_zfracs
3138 0 : accretion_dump_missing_metals_into_heaviest = s% accretion_dump_missing_metals_into_heaviest
3139 :
3140 : ! special list of z fractions
3141 0 : z_fraction_li = s% z_fraction_li
3142 0 : z_fraction_be = s% z_fraction_be
3143 0 : z_fraction_b = s% z_fraction_b
3144 0 : z_fraction_c = s% z_fraction_c
3145 0 : z_fraction_n = s% z_fraction_n
3146 0 : z_fraction_o = s% z_fraction_o
3147 0 : z_fraction_f = s% z_fraction_f
3148 0 : z_fraction_ne = s% z_fraction_ne
3149 0 : z_fraction_na = s% z_fraction_na
3150 0 : z_fraction_mg = s% z_fraction_mg
3151 0 : z_fraction_al = s% z_fraction_al
3152 0 : z_fraction_si = s% z_fraction_si
3153 0 : z_fraction_p = s% z_fraction_p
3154 0 : z_fraction_s = s% z_fraction_s
3155 0 : z_fraction_cl = s% z_fraction_cl
3156 0 : z_fraction_ar = s% z_fraction_ar
3157 0 : z_fraction_k = s% z_fraction_k
3158 0 : z_fraction_ca = s% z_fraction_ca
3159 0 : z_fraction_sc = s% z_fraction_sc
3160 0 : z_fraction_ti = s% z_fraction_ti
3161 0 : z_fraction_v = s% z_fraction_v
3162 0 : z_fraction_cr = s% z_fraction_cr
3163 0 : z_fraction_mn = s% z_fraction_mn
3164 0 : z_fraction_fe = s% z_fraction_fe
3165 0 : z_fraction_co = s% z_fraction_co
3166 0 : z_fraction_ni = s% z_fraction_ni
3167 0 : z_fraction_cu = s% z_fraction_cu
3168 0 : z_fraction_zn = s% z_fraction_zn
3169 :
3170 0 : lgT_lo_for_set_new_abundances = s% lgT_lo_for_set_new_abundances
3171 0 : lgT_hi_for_set_new_abundances = s% lgT_hi_for_set_new_abundances
3172 :
3173 : ! automatic stops for mass loss/gain
3174 0 : max_star_mass_for_gain = s% max_star_mass_for_gain
3175 0 : min_star_mass_for_loss = s% min_star_mass_for_loss
3176 0 : max_T_center_for_any_mass_loss = s% max_T_center_for_any_mass_loss
3177 0 : max_T_center_for_full_mass_loss = s% max_T_center_for_full_mass_loss
3178 :
3179 : ! relaxation parameters
3180 0 : extra_power_source = s% extra_power_source
3181 0 : relax_dlnZ = s% relax_dlnZ
3182 0 : relax_dY = s% relax_dY
3183 :
3184 : ! mesh adjustment
3185 0 : show_mesh_changes = s% show_mesh_changes
3186 0 : okay_to_remesh = s% okay_to_remesh
3187 0 : restore_mesh_on_retry = s% restore_mesh_on_retry
3188 0 : num_steps_to_hold_mesh_after_retry = s% num_steps_to_hold_mesh_after_retry
3189 0 : trace_mesh_adjust_error_in_conservation = s% trace_mesh_adjust_error_in_conservation
3190 0 : max_rel_delta_IE_for_mesh_total_energy_balance = s% max_rel_delta_IE_for_mesh_total_energy_balance
3191 0 : max_allowed_nz = s% max_allowed_nz
3192 0 : mesh_max_allowed_ratio = s% mesh_max_allowed_ratio
3193 0 : remesh_max_allowed_logT = s% remesh_max_allowed_logT
3194 0 : max_delta_x_for_merge = s% max_delta_x_for_merge
3195 :
3196 0 : mesh_ok_to_merge = s% mesh_ok_to_merge
3197 0 : mesh_max_k_old_for_split = s% mesh_max_k_old_for_split
3198 0 : mesh_min_k_old_for_split = s% mesh_min_k_old_for_split
3199 0 : mesh_adjust_get_T_from_E = s% mesh_adjust_get_T_from_E
3200 :
3201 0 : max_dq = s% max_dq
3202 0 : min_dq = s% min_dq
3203 0 : min_dq_for_split = s% min_dq_for_split
3204 0 : min_dq_for_xa = s% min_dq_for_xa
3205 0 : min_dq_for_xa_convective = s% min_dq_for_xa_convective
3206 0 : min_dq_for_logT = s% min_dq_for_logT
3207 :
3208 0 : mesh_min_dlnR = s% mesh_min_dlnR
3209 0 : merge_if_dlnR_too_small = s% merge_if_dlnR_too_small
3210 :
3211 0 : mesh_min_dr_div_dRstar = s% mesh_min_dr_div_dRstar
3212 0 : merge_if_dr_div_dRstar_too_small = s% merge_if_dr_div_dRstar_too_small
3213 :
3214 0 : mesh_min_dr_div_cs = s% mesh_min_dr_div_cs
3215 0 : merge_if_dr_div_cs_too_small = s% merge_if_dr_div_cs_too_small
3216 :
3217 0 : max_center_cell_dq = s% max_center_cell_dq
3218 0 : max_surface_cell_dq = s% max_surface_cell_dq
3219 0 : min_surface_cell_dq = s% min_surface_cell_dq
3220 :
3221 0 : max_num_subcells = s% max_num_subcells
3222 0 : max_num_merge_cells = s% max_num_merge_cells
3223 0 : max_num_merge_surface_cells = s% max_num_merge_surface_cells
3224 :
3225 0 : mesh_delta_coeff = s% mesh_delta_coeff
3226 0 : mesh_delta_coeff_for_highT = s% mesh_delta_coeff_for_highT
3227 0 : logT_max_for_standard_mesh_delta_coeff = s% logT_max_for_standard_mesh_delta_coeff
3228 0 : logT_min_for_highT_mesh_delta_coeff = s% logT_min_for_highT_mesh_delta_coeff
3229 0 : mesh_Pgas_div_P_exponent = s% mesh_Pgas_div_P_exponent
3230 :
3231 0 : remesh_dt_limit = s% remesh_dt_limit
3232 :
3233 0 : E_function_weight = s% E_function_weight
3234 0 : E_function_param = s% E_function_param
3235 0 : P_function_weight = s% P_function_weight
3236 :
3237 0 : mesh_logX_species = s% mesh_logX_species
3238 0 : mesh_logX_min_for_extra = s% mesh_logX_min_for_extra
3239 0 : mesh_dlogX_dlogP_extra = s% mesh_dlogX_dlogP_extra
3240 0 : mesh_dlogX_dlogP_full_on = s% mesh_dlogX_dlogP_full_on
3241 0 : mesh_dlogX_dlogP_full_off = s% mesh_dlogX_dlogP_full_off
3242 :
3243 0 : convective_bdy_min_dt_yrs = s% convective_bdy_min_dt_yrs
3244 0 : convective_bdy_weight = s% convective_bdy_weight
3245 0 : convective_bdy_dq_limit = s% convective_bdy_dq_limit
3246 :
3247 0 : mesh_dlog_eps_min_for_extra = s% mesh_dlog_eps_min_for_extra
3248 0 : mesh_dlog_eps_dlogP_full_on = s% mesh_dlog_eps_dlogP_full_on
3249 0 : mesh_dlog_eps_dlogP_full_off = s% mesh_dlog_eps_dlogP_full_off
3250 :
3251 0 : mesh_dlog_pp_dlogP_extra = s% mesh_dlog_pp_dlogP_extra
3252 0 : mesh_dlog_cno_dlogP_extra = s% mesh_dlog_cno_dlogP_extra
3253 0 : mesh_dlog_3alf_dlogP_extra = s% mesh_dlog_3alf_dlogP_extra
3254 :
3255 0 : mesh_dlog_burn_c_dlogP_extra = s% mesh_dlog_burn_c_dlogP_extra
3256 0 : mesh_dlog_burn_n_dlogP_extra = s% mesh_dlog_burn_n_dlogP_extra
3257 0 : mesh_dlog_burn_o_dlogP_extra = s% mesh_dlog_burn_o_dlogP_extra
3258 0 : mesh_dlog_burn_ne_dlogP_extra = s% mesh_dlog_burn_ne_dlogP_extra
3259 0 : mesh_dlog_burn_na_dlogP_extra = s% mesh_dlog_burn_na_dlogP_extra
3260 0 : mesh_dlog_burn_mg_dlogP_extra = s% mesh_dlog_burn_mg_dlogP_extra
3261 0 : mesh_dlog_burn_si_dlogP_extra = s% mesh_dlog_burn_si_dlogP_extra
3262 0 : mesh_dlog_burn_s_dlogP_extra = s% mesh_dlog_burn_s_dlogP_extra
3263 0 : mesh_dlog_burn_ar_dlogP_extra = s% mesh_dlog_burn_ar_dlogP_extra
3264 0 : mesh_dlog_burn_ca_dlogP_extra = s% mesh_dlog_burn_ca_dlogP_extra
3265 0 : mesh_dlog_burn_ti_dlogP_extra = s% mesh_dlog_burn_ti_dlogP_extra
3266 0 : mesh_dlog_burn_cr_dlogP_extra = s% mesh_dlog_burn_cr_dlogP_extra
3267 0 : mesh_dlog_burn_fe_dlogP_extra = s% mesh_dlog_burn_fe_dlogP_extra
3268 :
3269 0 : mesh_dlog_cc_dlogP_extra = s% mesh_dlog_cc_dlogP_extra
3270 0 : mesh_dlog_co_dlogP_extra = s% mesh_dlog_co_dlogP_extra
3271 0 : mesh_dlog_oo_dlogP_extra = s% mesh_dlog_oo_dlogP_extra
3272 :
3273 0 : mesh_dlog_pnhe4_dlogP_extra = s% mesh_dlog_pnhe4_dlogP_extra
3274 0 : mesh_dlog_photo_dlogP_extra = s% mesh_dlog_photo_dlogP_extra
3275 0 : mesh_dlog_other_dlogP_extra = s% mesh_dlog_other_dlogP_extra
3276 :
3277 0 : mesh_delta_coeff_factor_smooth_iters = s% mesh_delta_coeff_factor_smooth_iters
3278 :
3279 0 : T_function1_weight = s% T_function1_weight
3280 0 : T_function2_weight = s% T_function2_weight
3281 0 : T_function2_param = s% T_function2_param
3282 :
3283 0 : R_function_weight = s% R_function_weight
3284 0 : R_function_param = s% R_function_param
3285 :
3286 0 : R_function2_weight = s% R_function2_weight
3287 0 : R_function2_param1 = s% R_function2_param1
3288 0 : R_function2_param2 = s% R_function2_param2
3289 :
3290 0 : R_function3_weight = s% R_function3_weight
3291 :
3292 0 : M_function_weight = s% M_function_weight
3293 0 : M_function_param = s% M_function_param
3294 :
3295 0 : gradT_function_weight = s% gradT_function_weight
3296 0 : log_tau_function_weight = s% log_tau_function_weight
3297 0 : log_kap_function_weight = s% log_kap_function_weight
3298 0 : omega_function_weight = s% omega_function_weight
3299 :
3300 0 : gam_function_weight = s% gam_function_weight
3301 0 : gam_function_param1 = s% gam_function_param1
3302 0 : gam_function_param2 = s% gam_function_param2
3303 :
3304 0 : xa_function_species = s% xa_function_species
3305 0 : xa_function_weight = s% xa_function_weight
3306 0 : xa_function_param = s% xa_function_param
3307 0 : xa_mesh_delta_coeff = s% xa_mesh_delta_coeff
3308 :
3309 0 : use_split_merge_amr = s% use_split_merge_amr
3310 0 : split_merge_amr_nz_baseline = s% split_merge_amr_nz_baseline
3311 0 : split_merge_amr_nz_r_core = s% split_merge_amr_nz_r_core
3312 0 : split_merge_amr_nz_r_core_fraction = s% split_merge_amr_nz_r_core_fraction
3313 0 : split_merge_amr_mesh_delta_coeff = s% split_merge_amr_mesh_delta_coeff
3314 0 : split_merge_amr_log_zoning = s% split_merge_amr_log_zoning
3315 0 : split_merge_amr_hybrid_zoning = s% split_merge_amr_hybrid_zoning
3316 0 : split_merge_amr_flipped_hybrid_zoning = s% split_merge_amr_flipped_hybrid_zoning
3317 0 : split_merge_amr_logtau_zoning = s% split_merge_amr_logtau_zoning
3318 0 : split_merge_amr_okay_to_split_nz = s% split_merge_amr_okay_to_split_nz
3319 0 : split_merge_amr_okay_to_split_1 = s% split_merge_amr_okay_to_split_1
3320 0 : merge_amr_inhibit_at_jumps = s% merge_amr_inhibit_at_jumps
3321 0 : split_merge_amr_MaxLong = s% split_merge_amr_MaxLong
3322 0 : split_merge_amr_MaxShort = s% split_merge_amr_MaxShort
3323 0 : merge_amr_max_abs_du_div_cs = s% merge_amr_max_abs_du_div_cs
3324 0 : merge_amr_ignore_surface_cells = s% merge_amr_ignore_surface_cells
3325 0 : merge_amr_ignore_core_cells = s% merge_amr_ignore_core_cells
3326 0 : split_amr_ignore_core_cells = s% split_amr_ignore_core_cells
3327 0 : merge_amr_du_div_cs_limit_only_for_compression = s% merge_amr_du_div_cs_limit_only_for_compression
3328 0 : split_merge_amr_avoid_repeated_remesh = s% split_merge_amr_avoid_repeated_remesh
3329 0 : merge_amr_k_for_ignore_surface_cells = s% merge_amr_k_for_ignore_surface_cells
3330 0 : merge_amr_logT_for_ignore_core_cells = s% merge_amr_logT_for_ignore_core_cells
3331 0 : split_amr_logT_for_ignore_core_cells = s% split_amr_logT_for_ignore_core_cells
3332 0 : split_merge_amr_dq_min = s% split_merge_amr_dq_min
3333 0 : split_merge_amr_dq_max = s% split_merge_amr_dq_max
3334 0 : split_merge_amr_r_core_cm = s% split_merge_amr_r_core_cm
3335 0 : split_merge_amr_max_iters = s% split_merge_amr_max_iters
3336 0 : trace_split_merge_amr = s% trace_split_merge_amr
3337 0 : equal_split_density_amr = s% equal_split_density_amr
3338 0 : use_hydro_merge_limits_in_mesh_plan = s% use_hydro_merge_limits_in_mesh_plan
3339 : ! nuclear reaction parameters
3340 0 : screening_mode = s% screening_mode
3341 0 : default_net_name = s% default_net_name
3342 :
3343 0 : net_logTcut_lo = s% net_logTcut_lo
3344 0 : net_logTcut_lim = s% net_logTcut_lim
3345 :
3346 0 : eps_nuc_factor = s% eps_nuc_factor
3347 0 : op_split_burn_eps_nuc_infall_limit = s% op_split_burn_eps_nuc_infall_limit
3348 0 : eps_WD_sedimentation_factor = s% eps_WD_sedimentation_factor
3349 0 : max_abs_eps_nuc = s% max_abs_eps_nuc
3350 0 : dxdt_nuc_factor = s% dxdt_nuc_factor
3351 0 : max_abar_for_burning = s% max_abar_for_burning
3352 0 : fe56ec_fake_factor = s% fe56ec_fake_factor
3353 0 : min_T_for_fe56ec_fake_factor = s% min_T_for_fe56ec_fake_factor
3354 0 : weak_rate_factor = s% weak_rate_factor
3355 :
3356 0 : mix_factor = s% mix_factor
3357 :
3358 0 : sig_term_limit = s% sig_term_limit
3359 :
3360 0 : sig_min_factor_for_high_Tcenter = s% sig_min_factor_for_high_Tcenter
3361 0 : Tcenter_min_for_sig_min_factor_full_on = s% Tcenter_min_for_sig_min_factor_full_on
3362 0 : Tcenter_max_for_sig_min_factor_full_off = s% Tcenter_max_for_sig_min_factor_full_off
3363 0 : max_delta_m_to_bdy_for_sig_min_factor = s% max_delta_m_to_bdy_for_sig_min_factor
3364 0 : delta_m_lower_for_sig_min_factor = s% delta_m_lower_for_sig_min_factor
3365 0 : delta_m_upper_for_sig_min_factor = s% delta_m_upper_for_sig_min_factor
3366 :
3367 0 : am_sig_term_limit = s% am_sig_term_limit
3368 0 : am_D_mix_factor = s% am_D_mix_factor
3369 0 : am_gradmu_factor = s% am_gradmu_factor
3370 0 : am_nu_factor = s% am_nu_factor
3371 :
3372 0 : D_visc_factor = s% D_visc_factor
3373 0 : D_DSI_factor = s% D_DSI_factor
3374 0 : D_SH_factor = s% D_SH_factor
3375 0 : D_SSI_factor = s% D_SSI_factor
3376 0 : D_ES_factor = s% D_ES_factor
3377 0 : D_GSF_factor = s% D_GSF_factor
3378 0 : D_ST_factor = s% D_ST_factor
3379 :
3380 0 : am_nu_non_rotation_factor = s% am_nu_non_rotation_factor
3381 0 : skip_rotation_in_convection_zones = s% skip_rotation_in_convection_zones
3382 0 : am_nu_DSI_factor = s% am_nu_DSI_factor
3383 0 : am_nu_SH_factor = s% am_nu_SH_factor
3384 0 : am_nu_SSI_factor = s% am_nu_SSI_factor
3385 0 : am_nu_ES_factor = s% am_nu_ES_factor
3386 0 : am_nu_GSF_factor = s% am_nu_GSF_factor
3387 0 : am_nu_ST_factor = s% am_nu_ST_factor
3388 0 : am_nu_visc_factor = s% am_nu_visc_factor
3389 :
3390 0 : am_nu_omega_rot_factor = s% am_nu_omega_rot_factor
3391 0 : am_nu_omega_non_rot_factor = s% am_nu_omega_non_rot_factor
3392 0 : am_nu_j_rot_factor = s% am_nu_j_rot_factor
3393 0 : am_nu_j_non_rot_factor = s% am_nu_j_non_rot_factor
3394 :
3395 0 : smooth_nu_ST = s% smooth_nu_ST
3396 0 : smooth_D_ST = s% smooth_D_ST
3397 0 : smooth_D_DSI = s% smooth_D_DSI
3398 0 : smooth_D_SSI = s% smooth_D_SSI
3399 0 : smooth_D_SH = s% smooth_D_SH
3400 0 : smooth_D_GSF = s% smooth_D_GSF
3401 0 : smooth_D_ES = s% smooth_D_ES
3402 0 : smooth_D_omega = s% smooth_D_omega
3403 0 : smooth_am_nu_rot = s% smooth_am_nu_rot
3404 0 : ST_angsmt = s% ST_angsmt
3405 0 : ST_angsml = s% ST_angsml
3406 :
3407 0 : simple_i_rot_flag = s% simple_i_rot_flag
3408 0 : do_adjust_J_lost = s% do_adjust_J_lost
3409 0 : premix_omega = s% premix_omega
3410 0 : angular_momentum_error_warn = s% angular_momentum_error_warn
3411 0 : angular_momentum_error_retry = s% angular_momentum_error_retry
3412 0 : recalc_mixing_info_each_substep = s% recalc_mixing_info_each_substep
3413 0 : adjust_J_fraction = s% adjust_J_fraction
3414 0 : min_q_for_adjust_J_lost = s% min_q_for_adjust_J_lost
3415 0 : min_J_div_delta_J = s% min_J_div_delta_J
3416 0 : max_mdot_redo_cnt = s% max_mdot_redo_cnt
3417 0 : mdot_revise_factor = s% mdot_revise_factor
3418 0 : implicit_mdot_boost = s% implicit_mdot_boost
3419 0 : min_years_dt_for_redo_mdot = s% min_years_dt_for_redo_mdot
3420 0 : surf_omega_div_omega_crit_limit = s% surf_omega_div_omega_crit_limit
3421 0 : surf_omega_div_omega_crit_tol = s% surf_omega_div_omega_crit_tol
3422 0 : w_div_wcrit_max = s% w_div_wcrit_max
3423 0 : w_div_wcrit_max2 = s% w_div_wcrit_max2
3424 :
3425 0 : D_mix_rotation_max_logT_full_on = s% D_mix_rotation_max_logT_full_on
3426 0 : D_mix_rotation_min_logT_full_off = s% D_mix_rotation_min_logT_full_off
3427 0 : D_mix_rotation_min_tau_full_off = s% D_mix_rotation_min_tau_full_off
3428 0 : D_mix_rotation_min_tau_full_on = s% D_mix_rotation_min_tau_full_on
3429 :
3430 :
3431 0 : set_uniform_am_nu_non_rot = s% set_uniform_am_nu_non_rot
3432 0 : uniform_am_nu_non_rot = s% uniform_am_nu_non_rot
3433 :
3434 0 : set_min_am_nu_non_rot = s% set_min_am_nu_non_rot
3435 0 : min_am_nu_non_rot = s% min_am_nu_non_rot
3436 0 : min_center_Ye_for_min_am_nu_non_rot = s% min_center_Ye_for_min_am_nu_non_rot
3437 :
3438 0 : set_min_D_mix = s% set_min_D_mix
3439 0 : mass_lower_limit_for_min_D_mix = s% mass_lower_limit_for_min_D_mix
3440 0 : mass_upper_limit_for_min_D_mix = s% mass_upper_limit_for_min_D_mix
3441 0 : min_D_mix = s% min_D_mix
3442 0 : set_min_D_mix_below_Tmax = s% set_min_D_mix_below_Tmax
3443 0 : min_D_mix_below_Tmax = s% min_D_mix_below_Tmax
3444 0 : set_min_D_mix_in_H_He = s% set_min_D_mix_in_H_He
3445 0 : min_D_mix_in_H_He = s% min_D_mix_in_H_He
3446 0 : min_center_Ye_for_min_D_mix = s% min_center_Ye_for_min_D_mix
3447 0 : reaction_neuQs_factor = s% reaction_neuQs_factor
3448 0 : nonlocal_NiCo_kap_gamma = s% nonlocal_NiCo_kap_gamma
3449 0 : nonlocal_NiCo_decay_heat = s% nonlocal_NiCo_decay_heat
3450 0 : dtau_gamma_NiCo_decay_heat = s% dtau_gamma_NiCo_decay_heat
3451 0 : max_logT_for_net = s% max_logT_for_net
3452 0 : smooth_outer_xa_big = s% smooth_outer_xa_big
3453 0 : smooth_outer_xa_small = s% smooth_outer_xa_small
3454 :
3455 : ! element diffusion parameters
3456 0 : diffusion_use_iben_macdonald = s% diffusion_use_iben_macdonald
3457 0 : diffusion_use_paquette = s% diffusion_use_paquette
3458 0 : diffusion_use_caplan = s% diffusion_use_caplan
3459 0 : diffusion_use_cgs_solver = s% diffusion_use_cgs_solver
3460 0 : diffusion_use_full_net = s% diffusion_use_full_net
3461 0 : do_WD_sedimentation_heating = s% do_WD_sedimentation_heating
3462 0 : min_xa_for_WD_sedimentation_heating = s% min_xa_for_WD_sedimentation_heating
3463 0 : do_diffusion_heating = s% do_diffusion_heating
3464 0 : do_element_diffusion = s% do_element_diffusion
3465 0 : cgs_thermal_diffusion_eta_full_on = s% cgs_thermal_diffusion_eta_full_on
3466 0 : cgs_thermal_diffusion_eta_full_off = s% cgs_thermal_diffusion_eta_full_off
3467 0 : diffusion_min_dq_at_surface = s% diffusion_min_dq_at_surface
3468 0 : diffusion_min_T_at_surface = s% diffusion_min_T_at_surface
3469 0 : diffusion_min_dq_ratio_at_surface = s% diffusion_min_dq_ratio_at_surface
3470 0 : diffusion_dt_limit = s% diffusion_dt_limit
3471 :
3472 0 : do_phase_separation = s% do_phase_separation
3473 0 : phase_separation_option = s% phase_separation_option
3474 0 : do_phase_separation_heating = s% do_phase_separation_heating
3475 0 : phase_separation_mixing_use_brunt = s% phase_separation_mixing_use_brunt
3476 0 : phase_separation_no_diffusion = s% phase_separation_no_diffusion
3477 :
3478 0 : diffusion_min_X_hard_limit = s% diffusion_min_X_hard_limit
3479 0 : diffusion_X_total_atol = s% diffusion_X_total_atol
3480 0 : diffusion_X_total_rtol = s% diffusion_X_total_rtol
3481 0 : diffusion_upwind_abs_v_limit = s% diffusion_upwind_abs_v_limit
3482 0 : diffusion_dt_div_timescale = s% diffusion_dt_div_timescale
3483 0 : diffusion_min_num_substeps = s% diffusion_min_num_substeps
3484 0 : diffusion_max_iters_per_substep = s% diffusion_max_iters_per_substep
3485 0 : diffusion_max_retries_per_substep = s% diffusion_max_retries_per_substep
3486 0 : diffusion_v_max = s% diffusion_v_max
3487 0 : diffusion_gamma_full_off = s% diffusion_gamma_full_off
3488 0 : diffusion_gamma_full_on = s% diffusion_gamma_full_on
3489 0 : diffusion_T_full_off = s% diffusion_T_full_off
3490 0 : D_mix_ignore_diffusion = s% D_mix_ignore_diffusion
3491 0 : diffusion_T_full_on = s% diffusion_T_full_on
3492 0 : diffusion_calculates_ionization = s% diffusion_calculates_ionization
3493 0 : diffusion_nsmooth_typical_charge = s% diffusion_nsmooth_typical_charge
3494 0 : diffusion_tol_correction_max = s% diffusion_tol_correction_max
3495 0 : diffusion_tol_correction_norm = s% diffusion_tol_correction_norm
3496 :
3497 0 : diffusion_AD_dm_full_on = s% diffusion_AD_dm_full_on
3498 0 : diffusion_AD_dm_full_off = s% diffusion_AD_dm_full_off
3499 0 : diffusion_AD_boost_factor = s% diffusion_AD_boost_factor
3500 :
3501 0 : diffusion_SIG_factor = s% diffusion_SIG_factor
3502 0 : diffusion_GT_factor = s% diffusion_GT_factor
3503 :
3504 0 : diffusion_Vlimit_dm_full_on = s% diffusion_Vlimit_dm_full_on
3505 0 : diffusion_Vlimit_dm_full_off = s% diffusion_Vlimit_dm_full_off
3506 0 : diffusion_Vlimit = s% diffusion_Vlimit
3507 :
3508 0 : diffusion_max_T_for_radaccel = s% diffusion_max_T_for_radaccel
3509 0 : diffusion_min_T_for_radaccel = s% diffusion_min_T_for_radaccel
3510 0 : diffusion_max_Z_for_radaccel = s% diffusion_max_Z_for_radaccel
3511 0 : diffusion_min_Z_for_radaccel = s% diffusion_min_Z_for_radaccel
3512 0 : diffusion_screening_for_radaccel = s% diffusion_screening_for_radaccel
3513 0 : op_mono_data_path = s% op_mono_data_path
3514 0 : op_mono_data_cache_filename = s% op_mono_data_cache_filename
3515 0 : emesh_data_for_op_mono_path = s% emesh_data_for_op_mono_path
3516 0 : op_mono_method = s% op_mono_method
3517 :
3518 0 : show_diffusion_info = s% show_diffusion_info
3519 0 : show_diffusion_substep_info = s% show_diffusion_substep_info
3520 0 : show_diffusion_timing = s% show_diffusion_timing
3521 :
3522 0 : diffusion_num_classes = s% diffusion_num_classes
3523 0 : diffusion_class_representative = s% diffusion_class_representative
3524 0 : diffusion_class_A_max = s% diffusion_class_A_max
3525 0 : diffusion_class_typical_charge = s% diffusion_class_typical_charge
3526 0 : diffusion_class_factor = s% diffusion_class_factor
3527 :
3528 0 : diffusion_use_isolve = s% diffusion_use_isolve
3529 0 : diffusion_rtol_for_isolve = s% diffusion_rtol_for_isolve
3530 0 : diffusion_atol_for_isolve = s% diffusion_atol_for_isolve
3531 0 : diffusion_maxsteps_for_isolve = s% diffusion_maxsteps_for_isolve
3532 0 : diffusion_isolve_solver = s% diffusion_isolve_solver
3533 :
3534 : ! eos controls
3535 0 : fix_d_eos_dxa_partials = s% fix_d_eos_dxa_partials
3536 :
3537 : ! opacity controls
3538 0 : use_simple_es_for_kap = s% use_simple_es_for_kap
3539 0 : use_starting_composition_for_kap = s% use_starting_composition_for_kap
3540 0 : min_kap_for_dPrad_dm_eqn = s% min_kap_for_dPrad_dm_eqn
3541 :
3542 0 : low_logT_op_mono_full_off = s% low_logT_op_mono_full_off
3543 0 : low_logT_op_mono_full_on = s% low_logT_op_mono_full_on
3544 0 : high_logT_op_mono_full_off = s% high_logT_op_mono_full_off
3545 0 : high_logT_op_mono_full_on = s% high_logT_op_mono_full_on
3546 0 : op_mono_min_X_to_include = s% op_mono_min_X_to_include
3547 0 : use_op_mono_alt_get_kap = s% use_op_mono_alt_get_kap
3548 :
3549 0 : include_L_in_correction_limits = s% include_L_in_correction_limits
3550 0 : include_v_in_correction_limits = s% include_v_in_correction_limits
3551 0 : include_u_in_correction_limits = s% include_u_in_correction_limits
3552 0 : include_w_in_correction_limits = s% include_w_in_correction_limits
3553 :
3554 : ! asteroseismology controls
3555 :
3556 0 : get_delta_nu_from_scaled_solar = s% get_delta_nu_from_scaled_solar
3557 0 : nu_max_sun = s% nu_max_sun
3558 0 : delta_nu_sun = s% delta_nu_sun
3559 0 : astero_Teff_sun = s% astero_Teff_sun
3560 0 : delta_Pg_mode_freq = s% delta_Pg_mode_freq
3561 0 : delta_Pg_traditional = s% delta_Pg_traditional
3562 :
3563 : ! hydro parameters
3564 0 : energy_eqn_option = s% energy_eqn_option
3565 0 : opacity_min = s% opacity_min
3566 0 : opacity_max = s% opacity_max
3567 0 : opacity_factor = s% opacity_factor
3568 0 : min_logT_for_opacity_factor_off = s% min_logT_for_opacity_factor_off
3569 0 : max_logT_for_opacity_factor_off = s% max_logT_for_opacity_factor_off
3570 0 : min_logT_for_opacity_factor_on = s% min_logT_for_opacity_factor_on
3571 0 : max_logT_for_opacity_factor_on = s% max_logT_for_opacity_factor_on
3572 :
3573 0 : non_nuc_neu_factor = s% non_nuc_neu_factor
3574 0 : use_time_centered_eps_grav = s% use_time_centered_eps_grav
3575 0 : no_dedt_form_during_relax = s% no_dedt_form_during_relax
3576 0 : dedt_eqn_r_scale = s% dedt_eqn_r_scale
3577 0 : use_mass_corrections = s% use_mass_corrections
3578 0 : use_gravity_rotation_correction = s% use_gravity_rotation_correction
3579 0 : eps_grav_factor = s% eps_grav_factor
3580 0 : eps_mdot_factor = s% eps_mdot_factor
3581 0 : include_composition_in_eps_grav = s% include_composition_in_eps_grav
3582 0 : max_abs_rel_change_surf_lnS = s% max_abs_rel_change_surf_lnS
3583 0 : max_num_surf_revisions = s% max_num_surf_revisions
3584 0 : Gamma_lnS_eps_grav_full_off = s% Gamma_lnS_eps_grav_full_off
3585 0 : Gamma_lnS_eps_grav_full_on = s% Gamma_lnS_eps_grav_full_on
3586 :
3587 0 : use_dPrad_dm_form_of_T_gradient_eqn = s% use_dPrad_dm_form_of_T_gradient_eqn
3588 0 : use_flux_limiting_with_dPrad_dm_form = s% use_flux_limiting_with_dPrad_dm_form
3589 0 : use_gradT_actual_vs_gradT_MLT_for_T_gradient_eqn = s% use_gradT_actual_vs_gradT_MLT_for_T_gradient_eqn
3590 0 : steps_before_use_velocity_time_centering = s% steps_before_use_velocity_time_centering
3591 0 : include_P_in_velocity_time_centering = s% include_P_in_velocity_time_centering
3592 0 : include_L_in_velocity_time_centering = s% include_L_in_velocity_time_centering
3593 0 : P_theta_for_velocity_time_centering = s% P_theta_for_velocity_time_centering
3594 0 : L_theta_for_velocity_time_centering = s% L_theta_for_velocity_time_centering
3595 0 : max_logT_for_include_P_and_L_in_velocity_time_centering = s% max_logT_for_include_P_and_L_in_velocity_time_centering
3596 0 : use_P_d_1_div_rho_form_of_work_when_time_centering_velocity = s% use_P_d_1_div_rho_form_of_work_when_time_centering_velocity
3597 :
3598 0 : RTI_A = s% RTI_A
3599 0 : RTI_B = s% RTI_B
3600 0 : RTI_C = s% RTI_C
3601 0 : RTI_D = s% RTI_D
3602 0 : RTI_max_alpha = s% RTI_max_alpha
3603 0 : RTI_C_X_factor = s% RTI_C_X_factor
3604 0 : RTI_C_X0_frac = s% RTI_C_X0_frac
3605 0 : RTI_dm_for_center_eta_nondecreasing = s% RTI_dm_for_center_eta_nondecreasing
3606 0 : RTI_min_dm_behind_shock_for_full_on = s% RTI_min_dm_behind_shock_for_full_on
3607 0 : RTI_energy_floor = s% RTI_energy_floor
3608 0 : RTI_D_mix_floor = s% RTI_D_mix_floor
3609 0 : RTI_min_m_for_D_mix_floor = s% RTI_min_m_for_D_mix_floor
3610 0 : RTI_log_max_boost = s% RTI_log_max_boost
3611 0 : RTI_m_full_boost = s% RTI_m_full_boost
3612 0 : RTI_m_no_boost = s% RTI_m_no_boost
3613 :
3614 0 : use_drag_energy = s% use_drag_energy
3615 0 : drag_coefficient = s% drag_coefficient
3616 0 : min_q_for_drag = s% min_q_for_drag
3617 0 : v_drag_factor = s% v_drag_factor
3618 0 : v_drag = s% v_drag
3619 0 : q_for_v_drag_full_off = s% q_for_v_drag_full_off
3620 0 : q_for_v_drag_full_on = s% q_for_v_drag_full_on
3621 :
3622 0 : velocity_logT_lower_bound = s% velocity_logT_lower_bound
3623 0 : max_dt_yrs_for_velocity_logT_lower_bound = s% max_dt_yrs_for_velocity_logT_lower_bound
3624 0 : velocity_tau_lower_bound = s% velocity_tau_lower_bound
3625 0 : velocity_q_upper_bound = s% velocity_q_upper_bound
3626 0 : report_max_infall_inside_fe_core = s% report_max_infall_inside_fe_core
3627 0 : retry_for_v_above_clight = s% retry_for_v_above_clight
3628 :
3629 : ! solvers
3630 :
3631 0 : tol_correction_norm = s% tol_correction_norm
3632 0 : tol_max_correction = s% tol_max_correction
3633 0 : correction_xa_limit = s% correction_xa_limit
3634 :
3635 0 : tol_correction_high_T_limit = s% tol_correction_high_T_limit
3636 0 : tol_correction_norm_high_T = s% tol_correction_norm_high_T
3637 0 : tol_max_correction_high_T = s% tol_max_correction_high_T
3638 :
3639 0 : tol_correction_extreme_T_limit = s% tol_correction_extreme_T_limit
3640 0 : tol_correction_norm_extreme_T = s% tol_correction_norm_extreme_T
3641 0 : tol_max_correction_extreme_T = s% tol_max_correction_extreme_T
3642 :
3643 0 : tol_bad_max_correction = s% tol_bad_max_correction
3644 0 : bad_max_correction_series_limit = s% bad_max_correction_series_limit
3645 :
3646 0 : tol_residual_norm1 = s% tol_residual_norm1
3647 0 : tol_max_residual1 = s% tol_max_residual1
3648 0 : tol_residual_norm2 = s% tol_residual_norm2
3649 0 : tol_max_residual2 = s% tol_max_residual2
3650 0 : tol_residual_norm3 = s% tol_residual_norm3
3651 0 : tol_max_residual3 = s% tol_max_residual3
3652 0 : warning_limit_for_max_residual = s% warning_limit_for_max_residual
3653 0 : trace_solver_damping = s% trace_solver_damping
3654 :
3655 0 : relax_use_gold_tolerances = s% relax_use_gold_tolerances
3656 0 : relax_tol_correction_norm = s% relax_tol_correction_norm
3657 0 : relax_tol_max_correction = s% relax_tol_max_correction
3658 0 : relax_solver_iters_timestep_limit = s% relax_solver_iters_timestep_limit
3659 0 : relax_iter_for_resid_tol2 = s% relax_iter_for_resid_tol2
3660 0 : relax_tol_residual_norm1 = s% relax_tol_residual_norm1
3661 0 : relax_tol_max_residual1 = s% relax_tol_max_residual1
3662 0 : relax_iter_for_resid_tol3 = s% relax_iter_for_resid_tol3
3663 0 : relax_tol_residual_norm2 = s% relax_tol_residual_norm2
3664 0 : relax_tol_max_residual2 = s% relax_tol_max_residual2
3665 0 : relax_tol_residual_norm3 = s% relax_tol_residual_norm3
3666 0 : relax_tol_max_residual3 = s% relax_tol_max_residual3
3667 0 : relax_maxT_for_gold_tolerances = s% relax_maxT_for_gold_tolerances
3668 :
3669 0 : use_gold_tolerances = s% use_gold_tolerances
3670 0 : gold_solver_iters_timestep_limit = s% gold_solver_iters_timestep_limit
3671 0 : maxT_for_gold_tolerances = s% maxT_for_gold_tolerances
3672 0 : gold_tol_residual_norm1 = s% gold_tol_residual_norm1
3673 0 : gold_tol_max_residual1 = s% gold_tol_max_residual1
3674 0 : gold_iter_for_resid_tol2 = s% gold_iter_for_resid_tol2
3675 0 : gold_tol_residual_norm2 = s% gold_tol_residual_norm2
3676 0 : gold_tol_max_residual2 = s% gold_tol_max_residual2
3677 0 : gold_iter_for_resid_tol3 = s% gold_iter_for_resid_tol3
3678 0 : gold_tol_residual_norm3 = s% gold_tol_residual_norm3
3679 0 : gold_tol_max_residual3 = s% gold_tol_max_residual3
3680 0 : steps_before_use_gold_tolerances = s% steps_before_use_gold_tolerances
3681 :
3682 0 : use_gold2_tolerances = s% use_gold2_tolerances
3683 0 : gold2_solver_iters_timestep_limit = s% gold2_solver_iters_timestep_limit
3684 0 : gold2_tol_residual_norm1 = s% gold2_tol_residual_norm1
3685 0 : gold2_tol_max_residual1 = s% gold2_tol_max_residual1
3686 0 : gold2_iter_for_resid_tol2 = s% gold2_iter_for_resid_tol2
3687 0 : gold2_tol_residual_norm2 = s% gold2_tol_residual_norm2
3688 0 : gold2_tol_max_residual2 = s% gold2_tol_max_residual2
3689 0 : gold2_iter_for_resid_tol3 = s% gold2_iter_for_resid_tol3
3690 0 : gold2_tol_residual_norm3 = s% gold2_tol_residual_norm3
3691 0 : gold2_tol_max_residual3 = s% gold2_tol_max_residual3
3692 0 : steps_before_use_gold2_tolerances = s% steps_before_use_gold2_tolerances
3693 :
3694 0 : include_rotation_in_total_energy = s% include_rotation_in_total_energy
3695 :
3696 0 : convergence_ignore_equL_residuals = s% convergence_ignore_equL_residuals
3697 0 : convergence_ignore_alpha_RTI_residuals = s% convergence_ignore_alpha_RTI_residuals
3698 :
3699 0 : iter_for_resid_tol2 = s% iter_for_resid_tol2
3700 0 : iter_for_resid_tol3 = s% iter_for_resid_tol3
3701 :
3702 0 : solver_itermin = s% solver_itermin
3703 0 : solver_itermin_until_reduce_min_corr_coeff = s% solver_itermin_until_reduce_min_corr_coeff
3704 0 : solver_reduced_min_corr_coeff = s% solver_reduced_min_corr_coeff
3705 0 : do_solver_damping_for_neg_xa = s% do_solver_damping_for_neg_xa
3706 0 : scale_max_correction_for_negative_surf_lum = s% scale_max_correction_for_negative_surf_lum
3707 0 : max_frac_for_negative_surf_lum = s% max_frac_for_negative_surf_lum
3708 0 : hydro_mtx_max_allowed_abs_dlogT = s% hydro_mtx_max_allowed_abs_dlogT
3709 0 : hydro_mtx_max_allowed_abs_dlogRho = s% hydro_mtx_max_allowed_abs_dlogRho
3710 0 : min_logT_for_hydro_mtx_max_allowed = s% min_logT_for_hydro_mtx_max_allowed
3711 0 : hydro_mtx_max_allowed_logT = s% hydro_mtx_max_allowed_logT
3712 0 : hydro_mtx_max_allowed_logRho = s% hydro_mtx_max_allowed_logRho
3713 0 : hydro_mtx_min_allowed_logT = s% hydro_mtx_min_allowed_logT
3714 0 : hydro_mtx_min_allowed_logRho = s% hydro_mtx_min_allowed_logRho
3715 :
3716 0 : use_DGESVX_in_bcyclic = s% use_DGESVX_in_bcyclic
3717 0 : use_equilibration_in_DGESVX = s% use_equilibration_in_DGESVX
3718 0 : report_min_rcond_from_DGESXV = s% report_min_rcond_from_DGESXV
3719 :
3720 0 : op_split_burn = s% op_split_burn
3721 0 : op_split_burn_min_T = s% op_split_burn_min_T
3722 0 : op_split_burn_eps = s% op_split_burn_eps
3723 0 : op_split_burn_odescal = s% op_split_burn_odescal
3724 0 : op_split_burn_min_T_for_variable_T_solver = s% op_split_burn_min_T_for_variable_T_solver
3725 :
3726 0 : tiny_corr_coeff_limit = s% tiny_corr_coeff_limit
3727 0 : scale_correction_norm = s% scale_correction_norm
3728 0 : num_times_solver_reuse_mtx = s% num_times_solver_reuse_mtx
3729 0 : corr_param_factor = s% corr_param_factor
3730 0 : scale_max_correction = s% scale_max_correction
3731 0 : ignore_min_corr_coeff_for_scale_max_correction = s% ignore_min_corr_coeff_for_scale_max_correction
3732 0 : ignore_too_large_correction = s% ignore_too_large_correction
3733 0 : ignore_species_in_max_correction = s% ignore_species_in_max_correction
3734 :
3735 0 : corr_norm_jump_limit = s% corr_norm_jump_limit
3736 0 : max_corr_jump_limit = s% max_corr_jump_limit
3737 0 : resid_norm_jump_limit = s% resid_norm_jump_limit
3738 0 : max_resid_jump_limit = s% max_resid_jump_limit
3739 :
3740 0 : corr_coeff_limit = s% corr_coeff_limit
3741 0 : tiny_corr_factor = s% tiny_corr_factor
3742 :
3743 0 : solver_max_tries_before_reject = s% solver_max_tries_before_reject
3744 0 : max_tries1 = s% max_tries1
3745 0 : max_tries_for_retry = s% max_tries_for_retry
3746 0 : max_tries_after_5_retries = s% max_tries_after_5_retries
3747 0 : max_tries_after_10_retries = s% max_tries_after_10_retries
3748 0 : max_tries_after_20_retries = s% max_tries_after_20_retries
3749 0 : retry_limit = s% retry_limit
3750 0 : redo_limit = s% redo_limit
3751 :
3752 0 : use_Pvsc_art_visc = s% use_Pvsc_art_visc
3753 0 : Pvsc_cq = s% Pvsc_cq
3754 0 : Pvsc_zsh = s% Pvsc_zsh
3755 :
3756 0 : min_xa_hard_limit = s% min_xa_hard_limit
3757 0 : min_xa_hard_limit_for_highT = s% min_xa_hard_limit_for_highT
3758 0 : logT_max_for_min_xa_hard_limit = s% logT_max_for_min_xa_hard_limit
3759 0 : logT_min_for_min_xa_hard_limit_for_highT = s% logT_min_for_min_xa_hard_limit_for_highT
3760 :
3761 0 : sum_xa_hard_limit = s% sum_xa_hard_limit
3762 0 : sum_xa_hard_limit_for_highT = s% sum_xa_hard_limit_for_highT
3763 0 : logT_max_for_sum_xa_hard_limit = s% logT_max_for_sum_xa_hard_limit
3764 0 : logT_min_for_sum_xa_hard_limit_for_highT = s% logT_min_for_sum_xa_hard_limit_for_highT
3765 :
3766 0 : xa_clip_limit = s% xa_clip_limit
3767 0 : report_solver_progress = s% report_solver_progress
3768 0 : solver_test_partials_call_number = s% solver_test_partials_call_number
3769 0 : solver_test_partials_iter_number = s% solver_test_partials_iter_number
3770 0 : solver_epsder_chem = s% solver_epsder_chem
3771 0 : solver_epsder_struct = s% solver_epsder_struct
3772 0 : solver_numerical_jacobian = s% solver_numerical_jacobian
3773 0 : solver_jacobian_nzlo = s% solver_jacobian_nzlo
3774 0 : solver_jacobian_nzhi = s% solver_jacobian_nzhi
3775 0 : solver_check_everything = s% solver_check_everything
3776 0 : energy_conservation_dump_model_number = s% energy_conservation_dump_model_number
3777 0 : solver_inspect_soln_flag = s% solver_inspect_soln_flag
3778 0 : solver_test_partials_dx_0 = s% solver_test_partials_dx_0
3779 0 : solver_test_partials_k = s% solver_test_partials_k
3780 0 : solver_test_partials_k_low = s% solver_test_partials_k_low
3781 0 : solver_test_partials_k_high = s% solver_test_partials_k_high
3782 0 : solver_show_correction_info = s% solver_show_correction_info
3783 0 : solver_test_partials_write_eos_call_info = s% solver_test_partials_write_eos_call_info
3784 0 : solver_test_eos_partials = s% solver_test_eos_partials
3785 0 : solver_test_kap_partials = s% solver_test_kap_partials
3786 0 : solver_test_net_partials = s% solver_test_net_partials
3787 0 : solver_test_atm_partials = s% solver_test_atm_partials
3788 0 : solver_test_partials_var_name = s% solver_test_partials_var_name
3789 0 : solver_test_partials_sink_name = s% solver_test_partials_sink_name
3790 0 : solver_test_partials_equ_name = s% solver_test_partials_equ_name
3791 0 : solver_test_partials_show_dx_var_name = s% solver_test_partials_show_dx_var_name
3792 0 : solver_save_photo_call_number = s% solver_save_photo_call_number
3793 0 : fill_arrays_with_NaNs = s% fill_arrays_with_NaNs
3794 0 : zero_when_allocate = s% zero_when_allocate
3795 0 : warn_when_large_rel_run_E_err = s% warn_when_large_rel_run_E_err
3796 0 : absolute_cumulative_energy_err = s% absolute_cumulative_energy_err
3797 0 : warn_when_large_virial_thm_rel_err = s% warn_when_large_virial_thm_rel_err
3798 0 : warn_when_get_a_bad_eos_result = s% warn_when_get_a_bad_eos_result
3799 0 : warn_rates_for_high_temp = s% warn_rates_for_high_temp
3800 0 : max_safe_logT_for_rates = s% max_safe_logT_for_rates
3801 0 : eps_mdot_leak_frac_factor = s% eps_mdot_leak_frac_factor
3802 :
3803 0 : TDC_alpha_D = s% TDC_alpha_D
3804 0 : TDC_alpha_R = s% TDC_alpha_R
3805 0 : TDC_alpha_Pt = s% TDC_alpha_Pt
3806 0 : TDC_alpha_M = s% TDC_alpha_M
3807 0 : TDC_alpha_C = s% TDC_alpha_C
3808 0 : TDC_alpha_S = s% TDC_alpha_S
3809 0 : TDC_alpha_M_use_explicit_mlt_vc_in_momentum_equation = s% TDC_alpha_M_use_explicit_mlt_vc_in_momentum_equation
3810 0 : TDC_use_density_form_for_eddy_viscosity = s% TDC_use_density_form_for_eddy_viscosity
3811 0 : TDC_adjust_mass_fallback_to_mlt = s% TDC_adjust_mass_fallback_to_mlt
3812 0 : TDC_num_innermost_cells_forced_nonturbulent = s% TDC_num_innermost_cells_forced_nonturbulent
3813 0 : TDC_num_outermost_cells_forced_nonturbulent = s% TDC_num_outermost_cells_forced_nonturbulent
3814 0 : include_mlt_Pturb_in_thermodynamic_gradients = s% include_mlt_Pturb_in_thermodynamic_gradients
3815 0 : include_mlt_corr_to_TDC = s% include_mlt_corr_to_TDC
3816 0 : use_TDC_enthalpy_flux_limiter = s% use_TDC_enthalpy_flux_limiter
3817 0 : TDC_include_eturb_in_energy_equation = s% TDC_include_eturb_in_energy_equation
3818 0 : use_rsp_form_of_scale_height = s% use_rsp_form_of_scale_height
3819 0 : include_mlt_in_velocity_time_centering = s% include_mlt_in_velocity_time_centering
3820 0 : compare_TDC_to_MLT = s% compare_TDC_to_MLT
3821 0 : use_TDC_Y_face_seeded_newton = s% use_TDC_Y_face_seeded_newton
3822 0 : hydro_matrix_solver = s% hydro_matrix_solver
3823 0 : TDC_hydro_use_mass_interp_face_values = s% TDC_hydro_use_mass_interp_face_values
3824 0 : TDC_hydro_nz = s% TDC_hydro_nz
3825 0 : TDC_hydro_nz_outer = s% TDC_hydro_nz_outer
3826 0 : TDC_hydro_T_anchor = s% TDC_hydro_T_anchor
3827 0 : TDC_hydro_dq_1_factor = s% TDC_hydro_dq_1_factor
3828 :
3829 0 : remesh_for_TDC_pulsations_log_core_zoning = s% remesh_for_TDC_pulsations_log_core_zoning
3830 :
3831 0 : RSP2_alfap= s% RSP2_alfap
3832 0 : RSP2_alfad = s% RSP2_alfad
3833 0 : RSP2_alfat= s% RSP2_alfat
3834 0 : RSP2_alfam= s% RSP2_alfam
3835 0 : RSP2_alfar= s% RSP2_alfar
3836 0 : RSP2_min_Lt_div_L_for_overshooting_mixing_type = s% RSP2_min_Lt_div_L_for_overshooting_mixing_type
3837 0 : RSP2_min_Lc_div_L_for_convective_mixing_type = s% RSP2_min_Lc_div_L_for_convective_mixing_type
3838 0 : RSP2_Lsurf_factor= s% RSP2_Lsurf_factor
3839 0 : RSP2_use_Stellingwerf_Lr = s% RSP2_use_Stellingwerf_Lr
3840 0 : RSP2_remesh_when_load = s% RSP2_remesh_when_load
3841 0 : RSP2_use_L_eqn_at_surface = s% RSP2_use_L_eqn_at_surface
3842 0 : RSP2_report_adjust_w = s% RSP2_report_adjust_w
3843 0 : RSP2_assume_HSE = s% RSP2_assume_HSE
3844 0 : RSP2_use_RSP_eqn_for_Y_face = s% RSP2_use_RSP_eqn_for_Y_face
3845 0 : RSP2_use_mass_interp_face_values = s% RSP2_use_mass_interp_face_values
3846 0 : RSP2_num_outermost_cells_forced_nonturbulent = s% RSP2_num_outermost_cells_forced_nonturbulent
3847 0 : RSP2_num_innermost_cells_forced_nonturbulent = s% RSP2_num_innermost_cells_forced_nonturbulent
3848 0 : RSP2_T_anchor = s% RSP2_T_anchor
3849 0 : RSP2_dq_1_factor = s% RSP2_dq_1_factor
3850 0 : RSP2_nz = s% RSP2_nz
3851 0 : RSP2_nz_outer = s% RSP2_nz_outer
3852 0 : RSP2_nz_div_IBOTOM = s% RSP2_nz_div_IBOTOM
3853 0 : RSP2_target_steps_per_cycle = s% RSP2_target_steps_per_cycle
3854 0 : RSP2_max_num_periods = s% RSP2_max_num_periods
3855 0 : RSP2_work_period = s% RSP2_work_period
3856 0 : RSP2_map_first_period = s% RSP2_map_first_period
3857 0 : RSP2_map_last_period = s% RSP2_map_last_period
3858 0 : RSP2_min_max_R_for_periods = s% RSP2_min_max_R_for_periods
3859 0 : RSP2_GREKM_avg_abs_frac_new = s% RSP2_GREKM_avg_abs_frac_new
3860 0 : RSP2_GREKM_avg_abs_limit = s% RSP2_GREKM_avg_abs_limit
3861 0 : RSP2_map_zone_interval = s% RSP2_map_zone_interval
3862 0 : RSP2_work_filename = s% RSP2_work_filename
3863 0 : RSP2_map_columns_filename = s% RSP2_map_columns_filename
3864 0 : RSP2_map_filename = s% RSP2_map_filename
3865 0 : RSP2_map_history_filename = s% RSP2_map_history_filename
3866 0 : RSP2_write_map = s% RSP2_write_map
3867 0 : RSP2_w_min_for_damping = s% RSP2_w_min_for_damping
3868 0 : RSP2_source_seed = s% RSP2_source_seed
3869 0 : RSP2_w_fix_if_neg = s% RSP2_w_fix_if_neg
3870 :
3871 0 : max_X_for_conv_timescale = s% max_X_for_conv_timescale
3872 0 : min_X_for_conv_timescale = s% min_X_for_conv_timescale
3873 0 : max_q_for_conv_timescale = s% max_q_for_conv_timescale
3874 0 : min_q_for_conv_timescale = s% min_q_for_conv_timescale
3875 0 : max_q_for_QHSE_timescale = s% max_q_for_QHSE_timescale
3876 0 : min_q_for_QHSE_timescale = s% min_q_for_QHSE_timescale
3877 :
3878 : ! timestep
3879 0 : max_timestep = s% max_timestep
3880 0 : max_years_for_timestep = s% max_years_for_timestep
3881 :
3882 0 : hi_T_max_years_for_timestep = s% hi_T_max_years_for_timestep
3883 0 : max_timestep_hi_T_limit = s% max_timestep_hi_T_limit
3884 :
3885 0 : min_timestep_factor = s% min_timestep_factor
3886 0 : max_timestep_factor = s% max_timestep_factor
3887 0 : max_timestep_factor_at_high_T = s% max_timestep_factor_at_high_T
3888 0 : min_logT_for_max_timestep_factor_at_high_T = s% min_logT_for_max_timestep_factor_at_high_T
3889 0 : time_delta_coeff = s% time_delta_coeff
3890 0 : timestep_factor_for_retries = s% timestep_factor_for_retries
3891 0 : retry_hold = s% retry_hold
3892 0 : neg_mass_fraction_hold = s% neg_mass_fraction_hold
3893 0 : timestep_dt_factor = s% timestep_dt_factor
3894 0 : use_dt_low_pass_controller = s% use_dt_low_pass_controller
3895 :
3896 0 : force_timestep_min = s% force_timestep_min
3897 0 : force_timestep_min_years = s% force_timestep_min_years
3898 0 : force_timestep_min_factor = s% force_timestep_min_factor
3899 0 : force_timestep = s% force_timestep
3900 0 : force_timestep_years = s% force_timestep_years
3901 :
3902 0 : varcontrol_target = s% varcontrol_target
3903 0 : min_allowed_varcontrol_target = s% min_allowed_varcontrol_target
3904 0 : varcontrol_dt_limit_ratio_hard_max = s% varcontrol_dt_limit_ratio_hard_max
3905 0 : xa_scale = s% xa_scale
3906 :
3907 0 : solver_iters_timestep_limit = s% solver_iters_timestep_limit
3908 :
3909 0 : burn_steps_limit = s% burn_steps_limit
3910 0 : burn_steps_hard_limit = s% burn_steps_hard_limit
3911 :
3912 0 : diffusion_steps_limit = s% diffusion_steps_limit
3913 0 : diffusion_steps_hard_limit = s% diffusion_steps_hard_limit
3914 0 : diffusion_iters_limit = s% diffusion_iters_limit
3915 0 : diffusion_iters_hard_limit = s% diffusion_iters_hard_limit
3916 :
3917 0 : dt_div_dt_cell_collapse_limit = s% dt_div_dt_cell_collapse_limit
3918 0 : dt_div_dt_cell_collapse_hard_limit = s% dt_div_dt_cell_collapse_hard_limit
3919 0 : dt_div_min_dr_div_cs_limit = s% dt_div_min_dr_div_cs_limit
3920 0 : dt_div_min_dr_div_cs_hard_limit = s% dt_div_min_dr_div_cs_hard_limit
3921 :
3922 0 : min_abs_du_div_cs_for_dt_div_min_dr_div_cs_limit = s% min_abs_du_div_cs_for_dt_div_min_dr_div_cs_limit
3923 0 : min_abs_u_div_cs_for_dt_div_min_dr_div_cs_limit = s% min_abs_u_div_cs_for_dt_div_min_dr_div_cs_limit
3924 0 : min_k_for_dt_div_min_dr_div_cs_limit = s% min_k_for_dt_div_min_dr_div_cs_limit
3925 0 : min_q_for_dt_div_min_dr_div_cs_limit = s% min_q_for_dt_div_min_dr_div_cs_limit
3926 0 : max_q_for_dt_div_min_dr_div_cs_limit = s% max_q_for_dt_div_min_dr_div_cs_limit
3927 0 : check_remnant_only_for_dt_div_min_dr_div_cs_limit = s% check_remnant_only_for_dt_div_min_dr_div_cs_limit
3928 :
3929 0 : dX_mix_dist_limit = s% dX_mix_dist_limit
3930 0 : dX_limit_species = s% dX_limit_species
3931 0 : dX_limit_min_X = s% dX_limit_min_X
3932 0 : dX_limit = s% dX_limit
3933 0 : dX_hard_limit = s% dX_hard_limit
3934 0 : dX_div_X_limit_min_X = s% dX_div_X_limit_min_X
3935 0 : dX_div_X_limit = s% dX_div_X_limit
3936 0 : dX_div_X_hard_limit = s% dX_div_X_hard_limit
3937 0 : dX_div_X_at_high_T_limit = s% dX_div_X_at_high_T_limit
3938 0 : dX_div_X_at_high_T_hard_limit = s% dX_div_X_at_high_T_hard_limit
3939 0 : dX_div_X_at_high_T_limit_lgT_min = s% dX_div_X_at_high_T_limit_lgT_min
3940 0 : dX_decreases_only = s% dX_decreases_only
3941 :
3942 0 : dX_nuc_drop_min_X_limit = s% dX_nuc_drop_min_X_limit
3943 0 : dX_nuc_drop_max_A_limit = s% dX_nuc_drop_max_A_limit
3944 0 : dX_nuc_drop_limit = s% dX_nuc_drop_limit
3945 0 : dX_nuc_drop_limit_at_high_T = s% dX_nuc_drop_limit_at_high_T
3946 0 : dX_nuc_drop_hard_limit = s% dX_nuc_drop_hard_limit
3947 0 : dX_nuc_drop_min_yrs_for_dt = s% dX_nuc_drop_min_yrs_for_dt
3948 :
3949 0 : dL_div_L_limit_min_L = s% dL_div_L_limit_min_L
3950 0 : dL_div_L_limit = s% dL_div_L_limit
3951 0 : dL_div_L_hard_limit = s% dL_div_L_hard_limit
3952 :
3953 0 : delta_lgP_limit = s% delta_lgP_limit
3954 0 : delta_lgP_hard_limit = s% delta_lgP_hard_limit
3955 0 : delta_lgP_limit_min_lgP = s% delta_lgP_limit_min_lgP
3956 :
3957 0 : delta_lgRho_limit = s% delta_lgRho_limit
3958 0 : delta_lgRho_hard_limit = s% delta_lgRho_hard_limit
3959 0 : delta_lgRho_limit_min_lgRho = s% delta_lgRho_limit_min_lgRho
3960 :
3961 0 : delta_lgT_limit = s% delta_lgT_limit
3962 0 : delta_lgT_hard_limit = s% delta_lgT_hard_limit
3963 0 : delta_lgT_limit_min_lgT = s% delta_lgT_limit_min_lgT
3964 :
3965 0 : delta_lgE_limit = s% delta_lgE_limit
3966 0 : delta_lgE_hard_limit = s% delta_lgE_hard_limit
3967 0 : delta_lgE_limit_min_lgE = s% delta_lgE_limit_min_lgE
3968 :
3969 0 : delta_lgR_limit = s% delta_lgR_limit
3970 0 : delta_lgR_hard_limit = s% delta_lgR_hard_limit
3971 0 : delta_lgR_limit_min_lgR = s% delta_lgR_limit_min_lgR
3972 :
3973 0 : delta_Ye_highT_limit = s% delta_Ye_highT_limit
3974 0 : delta_Ye_highT_hard_limit = s% delta_Ye_highT_hard_limit
3975 0 : minT_for_highT_Ye_limit = s% minT_for_highT_Ye_limit
3976 :
3977 0 : delta_lgL_nuc_cat_limit = s% delta_lgL_nuc_cat_limit
3978 0 : delta_lgL_nuc_cat_hard_limit = s% delta_lgL_nuc_cat_hard_limit
3979 0 : lgL_nuc_cat_burn_min = s% lgL_nuc_cat_burn_min
3980 0 : lgL_nuc_mix_dist_limit = s% lgL_nuc_mix_dist_limit
3981 :
3982 0 : delta_lgL_H_limit = s% delta_lgL_H_limit
3983 0 : delta_lgL_H_hard_limit = s% delta_lgL_H_hard_limit
3984 0 : lgL_H_burn_min = s% lgL_H_burn_min
3985 0 : lgL_H_drop_factor = s% lgL_H_drop_factor
3986 0 : lgL_H_burn_relative_limit = s% lgL_H_burn_relative_limit
3987 :
3988 0 : delta_lgL_He_limit = s% delta_lgL_He_limit
3989 0 : delta_lgL_He_hard_limit = s% delta_lgL_He_hard_limit
3990 0 : lgL_He_burn_min = s% lgL_He_burn_min
3991 0 : lgL_He_drop_factor = s% lgL_He_drop_factor
3992 0 : lgL_He_burn_relative_limit = s% lgL_He_burn_relative_limit
3993 :
3994 0 : delta_lgL_z_limit = s% delta_lgL_z_limit
3995 0 : delta_lgL_z_hard_limit = s% delta_lgL_z_hard_limit
3996 0 : lgL_z_burn_min = s% lgL_z_burn_min
3997 0 : lgL_z_drop_factor = s% lgL_z_drop_factor
3998 0 : lgL_z_burn_relative_limit = s% lgL_z_burn_relative_limit
3999 :
4000 0 : delta_lgL_power_photo_limit = s% delta_lgL_power_photo_limit
4001 0 : delta_lgL_power_photo_hard_limit = s% delta_lgL_power_photo_hard_limit
4002 0 : lgL_power_photo_burn_min = s% lgL_power_photo_burn_min
4003 0 : lgL_power_photo_drop_factor = s% lgL_power_photo_drop_factor
4004 0 : min_lgT_for_lgL_power_photo_limit = s% min_lgT_for_lgL_power_photo_limit
4005 :
4006 0 : delta_lgL_nuc_limit = s% delta_lgL_nuc_limit
4007 0 : delta_lgL_nuc_hard_limit = s% delta_lgL_nuc_hard_limit
4008 0 : delta_lgL_nuc_at_high_T_limit = s% delta_lgL_nuc_at_high_T_limit
4009 0 : delta_lgL_nuc_at_high_T_hard_limit = s% delta_lgL_nuc_at_high_T_hard_limit
4010 0 : delta_lgL_nuc_at_high_T_limit_lgT_min = s% delta_lgL_nuc_at_high_T_limit_lgT_min
4011 :
4012 0 : max_lgT_for_lgL_nuc_limit = s% max_lgT_for_lgL_nuc_limit
4013 0 : lgL_nuc_burn_min = s% lgL_nuc_burn_min
4014 0 : lgL_nuc_drop_factor = s% lgL_nuc_drop_factor
4015 :
4016 0 : delta_lgRho_cntr_limit = s% delta_lgRho_cntr_limit
4017 0 : delta_lgRho_cntr_hard_limit = s% delta_lgRho_cntr_hard_limit
4018 :
4019 0 : delta_lgT_cntr_limit = s% delta_lgT_cntr_limit
4020 0 : delta_lgT_cntr_hard_limit = s% delta_lgT_cntr_hard_limit
4021 0 : delta_lgT_cntr_limit_only_after_near_zams = s% delta_lgT_cntr_limit_only_after_near_zams
4022 :
4023 0 : delta_lgP_cntr_limit = s% delta_lgP_cntr_limit
4024 0 : delta_lgP_cntr_hard_limit = s% delta_lgP_cntr_hard_limit
4025 :
4026 0 : delta_lgT_max_limit = s% delta_lgT_max_limit
4027 0 : delta_lgT_max_hard_limit = s% delta_lgT_max_hard_limit
4028 0 : delta_lgT_max_limit_lgT_min = s% delta_lgT_max_limit_lgT_min
4029 0 : delta_lgT_max_limit_only_after_near_zams = s% delta_lgT_max_limit_only_after_near_zams
4030 :
4031 0 : delta_lgT_max_at_high_T_limit = s% delta_lgT_max_at_high_T_limit
4032 0 : delta_lgT_max_at_high_T_hard_limit = s% delta_lgT_max_at_high_T_hard_limit
4033 0 : delta_lgT_max_at_high_T_limit_lgT_min = s% delta_lgT_max_at_high_T_limit_lgT_min
4034 :
4035 0 : delta_log_eps_nuc_limit = s% delta_log_eps_nuc_limit
4036 0 : delta_log_eps_nuc_hard_limit = s% delta_log_eps_nuc_hard_limit
4037 :
4038 0 : delta_dX_div_X_cntr_min = s% delta_dX_div_X_cntr_min
4039 0 : delta_dX_div_X_cntr_max = s% delta_dX_div_X_cntr_max
4040 0 : delta_dX_div_X_cntr_limit = s% delta_dX_div_X_cntr_limit
4041 0 : delta_dX_div_X_cntr_hard_limit = s% delta_dX_div_X_cntr_hard_limit
4042 :
4043 0 : delta_dX_div_X_drop_only = s% delta_dX_div_X_drop_only
4044 0 : delta_lg_XH_drop_only = s% delta_lg_XH_drop_only
4045 0 : delta_lg_XHe_drop_only = s% delta_lg_XHe_drop_only
4046 0 : delta_lg_XC_drop_only = s% delta_lg_XC_drop_only
4047 0 : delta_lg_XNe_drop_only = s% delta_lg_XNe_drop_only
4048 0 : delta_lg_XO_drop_only = s% delta_lg_XO_drop_only
4049 0 : delta_lg_XSi_drop_only = s% delta_lg_XSi_drop_only
4050 0 : delta_XH_drop_only = s% delta_XH_drop_only
4051 0 : delta_XHe_drop_only = s% delta_XHe_drop_only
4052 0 : delta_XC_drop_only = s% delta_XC_drop_only
4053 0 : delta_XNe_drop_only = s% delta_XNe_drop_only
4054 0 : delta_XO_drop_only = s% delta_XO_drop_only
4055 0 : delta_XSi_drop_only = s% delta_XSi_drop_only
4056 :
4057 0 : delta_lg_XH_cntr_min = s% delta_lg_XH_cntr_min
4058 0 : delta_lg_XH_cntr_max = s% delta_lg_XH_cntr_max
4059 0 : delta_lg_XH_cntr_limit = s% delta_lg_XH_cntr_limit
4060 0 : delta_lg_XH_cntr_hard_limit = s% delta_lg_XH_cntr_hard_limit
4061 :
4062 0 : delta_lg_XHe_cntr_min = s% delta_lg_XHe_cntr_min
4063 0 : delta_lg_XHe_cntr_max = s% delta_lg_XHe_cntr_max
4064 0 : delta_lg_XHe_cntr_limit = s% delta_lg_XHe_cntr_limit
4065 0 : delta_lg_XHe_cntr_hard_limit = s% delta_lg_XHe_cntr_hard_limit
4066 :
4067 0 : delta_lg_XC_cntr_min = s% delta_lg_XC_cntr_min
4068 0 : delta_lg_XC_cntr_max = s% delta_lg_XC_cntr_max
4069 0 : delta_lg_XC_cntr_limit = s% delta_lg_XC_cntr_limit
4070 0 : delta_lg_XC_cntr_hard_limit = s% delta_lg_XC_cntr_hard_limit
4071 :
4072 0 : delta_lg_XNe_cntr_limit = s% delta_lg_XNe_cntr_limit
4073 0 : delta_lg_XNe_cntr_hard_limit = s% delta_lg_XNe_cntr_hard_limit
4074 0 : delta_lg_XNe_cntr_min = s% delta_lg_XNe_cntr_min
4075 0 : delta_lg_XNe_cntr_max = s% delta_lg_XNe_cntr_max
4076 :
4077 0 : delta_lg_XO_cntr_limit = s% delta_lg_XO_cntr_limit
4078 0 : delta_lg_XO_cntr_hard_limit = s% delta_lg_XO_cntr_hard_limit
4079 0 : delta_lg_XO_cntr_min = s% delta_lg_XO_cntr_min
4080 0 : delta_lg_XO_cntr_max = s% delta_lg_XO_cntr_max
4081 :
4082 0 : delta_lg_XSi_cntr_limit = s% delta_lg_XSi_cntr_limit
4083 0 : delta_lg_XSi_cntr_hard_limit = s% delta_lg_XSi_cntr_hard_limit
4084 0 : delta_lg_XSi_cntr_min = s% delta_lg_XSi_cntr_min
4085 0 : delta_lg_XSi_cntr_max = s% delta_lg_XSi_cntr_max
4086 :
4087 0 : delta_XH_cntr_limit = s% delta_XH_cntr_limit
4088 0 : delta_XH_cntr_hard_limit = s% delta_XH_cntr_hard_limit
4089 0 : delta_XHe_cntr_limit = s% delta_XHe_cntr_limit
4090 0 : delta_XHe_cntr_hard_limit = s% delta_XHe_cntr_hard_limit
4091 0 : delta_XC_cntr_limit = s% delta_XC_cntr_limit
4092 0 : delta_XC_cntr_hard_limit = s% delta_XC_cntr_hard_limit
4093 0 : delta_XNe_cntr_limit = s% delta_XNe_cntr_limit
4094 0 : delta_XNe_cntr_hard_limit = s% delta_XNe_cntr_hard_limit
4095 0 : delta_XO_cntr_limit = s% delta_XO_cntr_limit
4096 0 : delta_XO_cntr_hard_limit = s% delta_XO_cntr_hard_limit
4097 0 : delta_XSi_cntr_limit = s% delta_XSi_cntr_limit
4098 0 : delta_XSi_cntr_hard_limit = s% delta_XSi_cntr_hard_limit
4099 :
4100 0 : delta_lgTeff_limit = s% delta_lgTeff_limit
4101 0 : delta_lgTeff_hard_limit = s% delta_lgTeff_hard_limit
4102 :
4103 0 : delta_lgL_limit = s% delta_lgL_limit
4104 0 : delta_lgL_limit_L_min = s% delta_lgL_limit_L_min
4105 0 : delta_lgL_hard_limit = s% delta_lgL_hard_limit
4106 :
4107 0 : delta_HR_ds_L = s% delta_HR_ds_L
4108 0 : delta_HR_ds_Teff = s% delta_HR_ds_Teff
4109 0 : delta_HR_limit = s% delta_HR_limit
4110 0 : delta_HR_hard_limit = s% delta_HR_hard_limit
4111 :
4112 0 : delta_lg_star_mass_limit = s% delta_lg_star_mass_limit
4113 0 : delta_lg_star_mass_hard_limit = s% delta_lg_star_mass_hard_limit
4114 :
4115 0 : delta_mdot_atol = s% delta_mdot_atol
4116 0 : delta_mdot_rtol = s% delta_mdot_rtol
4117 0 : delta_mdot_limit = s% delta_mdot_limit
4118 0 : delta_mdot_hard_limit = s% delta_mdot_hard_limit
4119 :
4120 0 : adjust_J_q_limit = s% adjust_J_q_limit
4121 0 : adjust_J_q_hard_limit = s% adjust_J_q_hard_limit
4122 0 : never_skip_hard_limits = s% never_skip_hard_limits
4123 0 : relax_hard_limits_after_retry = s% relax_hard_limits_after_retry
4124 0 : report_dt_hard_limit_retries = s% report_dt_hard_limit_retries
4125 0 : report_min_dr_div_cs = s% report_min_dr_div_cs
4126 0 : report_solver_dt_info = s% report_solver_dt_info
4127 :
4128 0 : limit_for_rel_error_in_energy_conservation = s% limit_for_rel_error_in_energy_conservation
4129 0 : hard_limit_for_rel_error_in_energy_conservation = s% hard_limit_for_rel_error_in_energy_conservation
4130 :
4131 0 : min_chem_eqn_scale = s% min_chem_eqn_scale
4132 :
4133 : ! controls for the evolve routine
4134 0 : trace_evolve = s% trace_evolve
4135 :
4136 :
4137 : ! misc
4138 0 : zams_filename = s% zams_filename
4139 0 : set_rho_to_dm_div_dV = s% set_rho_to_dm_div_dV
4140 :
4141 0 : use_other_mlt_results = s% use_other_mlt_results
4142 0 : use_other_surface_PT = s% use_other_surface_PT
4143 0 : use_other_kap = s% use_other_kap
4144 0 : use_other_diffusion = s% use_other_diffusion
4145 0 : use_other_diffusion_factor = s% use_other_diffusion_factor
4146 0 : use_other_adjust_mdot = s% use_other_adjust_mdot
4147 0 : use_other_j_for_adjust_J_lost = s% use_other_j_for_adjust_J_lost
4148 0 : use_other_alpha_mlt = s% use_other_alpha_mlt
4149 0 : use_other_am_mixing = s% use_other_am_mixing
4150 0 : use_other_brunt = s% use_other_brunt
4151 0 : use_other_brunt_smoothing = s% use_other_brunt_smoothing
4152 0 : use_other_solver_monitor = s% use_other_solver_monitor
4153 0 : use_other_build_initial_model = s% use_other_build_initial_model
4154 0 : use_other_cgrav = s% use_other_cgrav
4155 0 : use_other_mesh_delta_coeff_factor = s% use_other_mesh_delta_coeff_factor
4156 0 : use_other_energy_implicit = s% use_other_energy_implicit
4157 0 : use_other_momentum_implicit = s% use_other_momentum_implicit
4158 0 : use_other_momentum = s% use_other_momentum
4159 0 : use_other_remove_surface = s% use_other_remove_surface
4160 0 : use_other_energy = s% use_other_energy
4161 0 : use_other_pressure = s% use_other_pressure
4162 0 : use_other_mesh_functions = s% use_other_mesh_functions
4163 0 : use_other_eps_grav = s% use_other_eps_grav
4164 0 : use_other_gradr_factor = s% use_other_gradr_factor
4165 0 : use_other_D_mix = s% use_other_D_mix
4166 0 : use_other_neu = s% use_other_neu
4167 0 : use_other_net_get = s% use_other_net_get
4168 0 : use_other_opacity_factor = s% use_other_opacity_factor
4169 0 : use_other_diffusion_coefficients = s% use_other_diffusion_coefficients
4170 0 : use_other_pgstar_plots = s% use_other_pgstar_plots
4171 0 : use_other_eval_fp_ft = s% use_other_eval_fp_ft
4172 0 : use_other_eval_i_rot = s% use_other_eval_i_rot
4173 0 : use_other_torque = s% use_other_torque
4174 0 : use_other_torque_implicit = s% use_other_torque_implicit
4175 0 : use_other_wind = s% use_other_wind
4176 0 : use_other_accreting_state = s% use_other_accreting_state
4177 0 : use_other_after_struct_burn_mix = s% use_other_after_struct_burn_mix
4178 0 : use_other_before_struct_burn_mix = s% use_other_before_struct_burn_mix
4179 0 : use_other_astero_freq_corr = s% use_other_astero_freq_corr
4180 0 : use_other_timestep_limit = s% use_other_timestep_limit
4181 0 : use_other_set_pgstar_controls = s% use_other_set_pgstar_controls
4182 0 : use_other_screening = s% use_other_screening
4183 0 : use_other_rate_get = s% use_other_rate_get
4184 0 : use_other_net_derivs = s% use_other_net_derivs
4185 0 : use_other_split_burn = s% use_other_split_burn
4186 0 : use_other_close_gaps = s% use_other_close_gaps
4187 :
4188 0 : x_ctrl = s% x_ctrl
4189 0 : x_integer_ctrl = s% x_integer_ctrl
4190 0 : x_logical_ctrl = s% x_logical_ctrl
4191 0 : x_character_ctrl = s% x_character_ctrl
4192 :
4193 : ! info for debugging
4194 0 : stop_for_bad_nums = s% stop_for_bad_nums
4195 0 : report_ierr = s% report_ierr
4196 0 : report_bad_negative_xa = s% report_bad_negative_xa
4197 :
4198 0 : diffusion_dump_call_number = s% diffusion_dump_call_number
4199 :
4200 0 : surface_accel_div_grav_limit = s% surface_accel_div_grav_limit
4201 0 : gradT_excess_age_fraction = s% gradT_excess_age_fraction
4202 0 : gradT_excess_max_change = s% gradT_excess_max_change
4203 0 : hot_wind_scheme = s% hot_wind_scheme
4204 0 : cool_wind_full_on_T = s% cool_wind_full_on_T
4205 0 : hot_wind_full_on_T = s% hot_wind_full_on_T
4206 0 : num_cells_for_smooth_brunt_B = s% num_cells_for_smooth_brunt_B
4207 0 : steps_before_start_stress_test = s% steps_before_start_stress_test
4208 0 : stress_test_relax = s% stress_test_relax
4209 :
4210 :
4211 :
4212 0 : end subroutine set_controls_for_writing
4213 :
4214 0 : subroutine get_control(s, name, val, ierr)
4215 : use utils_lib, only: StrUpCase
4216 : type (star_info), pointer :: s
4217 : character(len=*),intent(in) :: name
4218 : character(len=*), intent(out) :: val
4219 : integer, intent(out) :: ierr
4220 :
4221 0 : character(len(name)+1) :: upper_name
4222 : character(len=512) :: str
4223 : integer :: iounit,iostat,ind,i
4224 :
4225 :
4226 : ! First save current controls
4227 0 : call set_controls_for_writing(s, ierr)
4228 0 : if(ierr/=0) return
4229 :
4230 : ! Write namelist to temporary file
4231 0 : open(newunit=iounit,status='scratch')
4232 0 : write(iounit,nml=controls)
4233 0 : rewind(iounit)
4234 :
4235 : ! Namelists get written in capitals
4236 0 : upper_name = trim(StrUpCase(name))//'='
4237 0 : val = ''
4238 : ! Search for name inside namelist
4239 : do
4240 0 : read(iounit,'(A)',iostat=iostat) str
4241 0 : ind = index(trim(str),trim(upper_name))
4242 0 : if( ind /= 0 ) then
4243 0 : val = str(ind+len_trim(upper_name):len_trim(str)-1) ! Remove final comma and starting =
4244 0 : do i=1,len(val)
4245 0 : if(val(i:i)=='"') val(i:i) = ' '
4246 : end do
4247 : exit
4248 : end if
4249 0 : if(is_iostat_end(iostat)) exit
4250 : end do
4251 :
4252 0 : if(len_trim(val) == 0 .and. ind==0 ) ierr = -1
4253 :
4254 0 : close(iounit)
4255 :
4256 0 : end subroutine get_control
4257 :
4258 0 : subroutine set_control(s, name, val, ierr)
4259 : type (star_info), pointer :: s
4260 : character(len=*), intent(in) :: name, val
4261 0 : character(len=len(name)+len(val)+13) :: tmp
4262 : integer, intent(out) :: ierr
4263 :
4264 : ! First save current controls
4265 0 : call set_controls_for_writing(s, ierr)
4266 0 : if(ierr/=0) return
4267 :
4268 0 : tmp=''
4269 0 : tmp = '&controls '//trim(name)//'='//trim(val)//' /'
4270 :
4271 : ! Load into namelist
4272 0 : read(tmp, nml=controls)
4273 :
4274 : ! Add to star
4275 0 : call store_controls(s, ierr)
4276 0 : if(ierr/=0) return
4277 :
4278 : end subroutine set_control
4279 :
4280 : end module ctrls_io
|