| Commit message (Collapse) | Author | Age |
|
|
|
| |
The latter has higher overhead.
|
| |
|
| |
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@202 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
|
|
|
|
|
| |
this is to allow bit-wise recovery of Hydro data since con2prim runs in MoL_PostStep. Also we should be able to read in all data from a checkpoint and thus mol_poststep should not be required. Thorns that want to be clever and re-compute some quantities that can be recomputed from the checkpointed data should schedule themselves explicitly in Post_Recover_Variables.
See extensive discussion at https://trac.einsteintoolkit.org/ticket/1256
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@199 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
|
|
|
|
| |
This can be used as performance improvement, if timelevel cycling is
also modified to perform this copy instead.
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@196 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@195 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
|
|
|
|
| |
the message affected evolved slow variables where it would output the currently
registered fast evolved variables instead of the slow ones.
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@194 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@193 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@192 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
limit
Currently when a thorn tries to register more evolved/constrained/sandr
variables than the respective parameters allow, MoL aborts with an error
message "You have tried to register more evolved variables than the
accumulator parameter MoL_Num_Evolved_Variables allows. Check that you are
accumulating onto this parameter correctly." which is not terribly helpful in
finding out why this is happening.
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@191 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
New integrator Euler. This is an explicit, first-order method, mostly
useful for debugging.
New integrators AB (Adams-Bashforth) with various orders. These are
explicit integrators using several past timelevels to provide
higher-order integration with a single RHS evaluation each.
Introduce LinearCombination, a generic routine to calculate linear
combinations of grid functions. This simplifies existing code, and can
be overloaded if MoL should run on a device (e.g. with OpenCL).
Replace cctk_lsh with cctk_ash where necessary.
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@190 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
|
|
| |
The compiler doesn't know that CCTK_WARN(0,…) is fatal.
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@189 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@188 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@187 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@184 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
|
|
|
| |
Declare variables where they are first used.
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@183 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@182 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
|
|
|
|
| |
boundary conditions (and synchronization, and prolongation)
to the initial data.
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@181 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@180 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@179 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
|
|
|
|
|
| |
combines several loops into one, and reduces the required scratch space.
Code originally by Erik, tested by Christian Reisswig.
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@178 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
|
|
|
|
|
|
|
| |
Flags indicate whether it is time to execute slow RHS computation.
For instance, in the RK4-RK2 scheme, there are 4 substeps in total, but the RK2 RHS are only evaluated in the very first and in the very last step of the four substeps.
From: Christian Reisswig, minor changes by Roland Haas
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@175 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
|
|
|
|
|
|
|
|
| |
By default, MoL initialises the RHS variables to zero before calling
the CalcRHS routines. This is (a) superfluous in a well-written code,
and (b) makes it impossible to re-use a RHS that has been calculated
ahead of time, e.g. at the end of the previous time step.
This patch adds a parameter to disable this behaviour.
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@173 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@165 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@155 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
|
|
|
| |
to match what happens to MoL_PostStep
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@154 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
|
|
|
| |
Remove now-unused and currently broken OldBoundary infrastructure
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@153 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@149 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
|
|
|
|
|
|
| |
Help ensure exact consistency while checkpointing and recovering:
Introduce new schedule groups MoL_PostStepModify and
MoL_PseudoEvolutionBoundaries. Correct scheduling of
MoL_PseudoEvolution.
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@148 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
|
|
|
| |
than one map) exist on the current process
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@147 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I just encountered a weird case where evolving Minkowski with the
efficient RK4 implementation was not static. It turns out that the
reason was floating-point round-off error in RK4. During each of the
substeps, RK4 adds terms with factors of 1/3 and 2/3, and for the
final step, adds a term with a factor of 4/3. Due to round-off, these
terms do not cancel exactly, so that the time-evolved lapse is
slightly different from 1 (although all the lapse RHS terms are 0).
The same goes for the diagonal terms of the metric.
The attached patch keeps track of the round-off error when adding
these terms, leading to a more accurate integration result.
The problem described above is not always visible, but also depends on
optimisation settings.
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@145 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@144 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Certain variables need to be calculated at every time step, but are
not evolved in time themselves. For example, the ADM constraints are
of this type.
Such calculations need to be scheduled in several locations:
- AT postinitial
- AT evol AFTER MoL_Evolution
- AT postregrid
- AT postregridinitial
- AT post_recover_variables (assuming these quantities are not checkpointed)
To simplify scheduling this, this new schedule group
MoL_PseudoEvolution is scheduled at all these times. Other thorns can
then schedule their calculations in this single location. This
simplifies their schedule specifications, and helps prevent errors
since people tend to forget to schedule at some of these times.
This group complements MoL_PostStep, where quantities can be
calculated that need to be re-calculated after every sub-time-step,
such as e.g. the ADM variables.
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@139 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@138 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
|
|
|
|
| |
that boundary conditions, ADM variables etc. are correct after
recovering.
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@137 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@133 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@132 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@131 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@130 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@129 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
|
|
|
|
| |
of calling it directly. This decouples thorn MoL from thorn
NaNChecker.
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@128 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@127 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
|
|
|
|
| |
with 'Checkpoint="no"'
(fixes http://www.cactuscode.org/old/pipermail/developers/2007-October/005461.html)
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@126 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
|
|
|
| |
identified by Yosef Zlochower.
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@125 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
|
|
|
|
|
|
|
| |
number of stusteps that the time integrator performs for one time
step.
This information can e.g. used to automatically calculate the
necessary number of buffer zones for mesh refinement.
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@124 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
|
|
|
|
| |
boundaries and symmetries are applied correctly. (This is equivalent
to scheduling MoL_PostStep in POSTRESTRICT.)
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@123 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
|
|
|
| |
detected.
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@122 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@121 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@120 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
|