check_pulse_atm
This test checks that the atmosphere structure written to the
pulsation output matches the \(T(\tau)\) relation specified by
atm_T_tau_relation
. It is based on the T_tau_gradr
test case
but checks reconstructed atmosphere in the pulsation data file, rather
than the structure of the interior model, which in this case doesn’t
include the atmosphere.
The test changes atm_T_tau_relation
every 5 steps and changes atm_T_tau_opacity
every 20 steps to cycle through
all the available options. Every 5 steps, it
saves the pulsation output,
reads it back in,
computes the root-mean-squared differences (rms, stored as
T_rms
) between the pulsation data’s temperature profile and the target \(T(\tau)\) relation in layers with \(\tau\) < 0.1, andcompares this to a target value set by
x_ctrl(1)
.
If new atm_T_tau_relation
or atm_T_tau_opacity
options are
added to MESA, they must be added to this test case by hand. That is,
the implementation does not automatically track all the available
options.
If the test fails because T_rms
is slightly larger than the tolerance,
there are two possibly benign explanations.
The interpolation error in
T_face
contributes too much tochi2
. The tolerance can be increased or the resolution of the atmosphere integration increased.There are layers included in the sum that are becoming convective, in which case the temperature gradient won’t follow the (radiative) \(T(\tau)\) relation. The sum can be restricted to smaller optical depths.
If the test fails because T_rms
is much larger (orders of magnitude
larger) than the tolerance, then there might be a bug
in the implementation of the integration of the atmosphere and how it’s
written to the pulsation output.
Most options are deliberately left at their default values because they shouldn’t influence the test’s result.
The test currently only checks the FGONG output. It should be extended to cover the other pulsation data formats, too.
Last-Updated: 2022-03-09 (commit 97a1c26) by Warrick Ball