- changed status to open
kasner example from ET paper cannot be reproduced
Nisa Amir found that the current release version of the toolkit no longer reproduces the Kasner example from the ET paper.
http://lists.einsteintoolkit.org/pipermail/users/2020-April/007382.html
The parfile is checked out by default and in par/arXiv-1111.3344/ .
Comments (7)
-
reporter -
reporter Running the kasner.par file from einsteeinexamples with a number of previous ET releases:
- ET_2019_03 "Proca"
- ET_2013_05 "Gauss"
- ET_2011_10 "Maxwell": aborts with NaN found in step 0
- ET_2011_05 "Curie"
shows the same behaviour for all of them, namely exponential growth i n gxx.
Note that Curie is the release before the parfile shows up and also the release before the ET paper showing the Kasner example, Maxwell is the release just after and the first one to contain the parfile.
This turns out to be due to the fact that
ML_BSSN
, while it extendsADMBASE::lapse_evolution_method
actually ignores that parameter and evolves the lapse with its default gauge condition. This is despite the parfile setting:ADMBase::lapse_evolution_method = "static" ADMBase::shift_evolution_method = "static" ADMBase::dtlapse_evolution_method = "static" ADMBase::dtshift_evolution_method = "static"
It can be fixed by choosing gauge evolution parameters such that all RHS for the gauge quantities are zero:
# ML_BSSN ignores gauge evolution method parameters, so manually force its RHS # to be all zero ML_BSSN::harmonicF = 0. ML_BSSN::LapseAdvectionCoeff = 0. ML_BSSN::ShiftGammaCoeff = 0. ML_BSSN::ShiftAdvectionCoeff = 0.
The parfile is also misleading in that it uses
Exact::exact_model = "Kasner-like" Exact::Kasner_generalized__p1 = 0.666666666666666666666666666666666666666666666666666666666666 Exact::Kasner_generalized__p2 = 0.666666666666666666666666666666666666666666666666666666666666
since the “kasner-like” spacetime uses a (single) parameter
Kasner_like__q
which also defaults (and should be set to) 2/3.Commit 8ecec76 "arXiv-1111.3344: fix kasner examples to freeze gauge" of einsteinexamples adds these changes to the parfile and removes
CarpetLib::max_allowed_memory_MB = 2048
and changes the reduction used for screen output to
average
instead ofnorm2
so that negative values eg in kxx show up. Kasner spacetime is homogeneous so the average is identical to any pointwise value. -
reporter - changed status to resolved
-
Do you know why the behaviour changed between releases?
-
reporter As far as I can tell the parfile in the examples repo, which matches the parfile in the paper repo, never worked as advertised. Certainly not with the Curie release (the release version at the time the paper was prepared) and given that Maxwell (the release just after the paper was published) fails with NaN I cannot say if it possibly ever worked with Maxwell.
My own guess would be that when the data for the paper was produced, a modified version of McLachlan was used that had gauge evolution disabled. No version of McLachlan of any release has
lapse_evolution_method
appear anywhere other than inparam.ccl
so no version could have respected it being set tostatic
. Since ML_BSSN e.g, has its ownML_lapse
group, even havingADMBase
resetalp
to 1 after each step would not avoid the metric blowing up sincealp
is no used for input by ML_BSSN. -
reporter Hmm, I think my plot is wrong. The “Curie” plot accidentally used the fixed parameter file.
-
reporter I updated the plot.
- Log in to comment