#1218: MoL updates
-----------------------------------+----------------------------------------
Reporter: eschnett | Owner:
Type: defect | Status: new
Priority: major | Milestone:
Component: EinsteinToolkit thorn | Version:
Keywords: |
-----------------------------------+----------------------------------------
The enclosed patches update MoL in three respects:
(1) Introduce a function LinearCombination that calculates a linear
combination of several grid functions. Use this throughout several (but
not yet all) integrators, simplifying the code substantially. This
function can also be overloaded to execute on devices if OpenCL or CUDA is
used, thus making MoL device aware.
(2) Introduce a new integrator "Euler", providing an explicit first-order
integrator. This is very handy for debugging.
(3) Use cctk_ash instead of cctk_lsh where necessary.
Since we use svn, these changed are intermingled in my working directory.
I created the patches above manually.
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1218>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#1134: Adams-Bashforth time integrator
-----------------------------------+----------------------------------------
Reporter: eschnett | Owner:
Type: enhancement | Status: new
Priority: major | Milestone:
Component: EinsteinToolkit thorn | Version:
Keywords: |
-----------------------------------+----------------------------------------
The attached patch implements Adams-Bashforth time integration in MoL and
provides a WaveToy test case.
Adams-Bashforth integrators calculate a high-order extrapolation with a
single RHS evaluation by combining it with results from previous time
steps. This requires multiple time levels for the RHS variables.
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1134>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#940: McLachlan dissipation error
-----------------------------------+----------------------------------------
Reporter: eschnett | Owner:
Type: defect | Status: new
Priority: major | Milestone:
Component: EinsteinToolkit thorn | Version:
Keywords: |
-----------------------------------+----------------------------------------
A kind person tells me:
I wanted to mention what appears to be a mistake in your dissipation
calculation. If you refer to Kreiss-Oliger, or equivalently to
Dissipation/src/apply_dissipation.F77, you find that there is a sign flip
at certain orders. For example, 3rd order dissipation to be used with 2nd
order differencing, and 7th order dissipation to be used with 6th order
differencing, both need a negative coefficient. But you don't appear to
have such a minus sign (unless I missed it), and your parameter epsdiss is
constrained to be positive. It looks to me like PDdissipationNth needs to
be multiplied by something like (-1)^(fdOrder/2).
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/940>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#1202: fix some CarpetProlongationTest tests
--------------------+-------------------------------------------------------
Reporter: rhaas | Owner: eschnett
Type: defect | Status: new
Priority: minor | Milestone:
Component: Carpet | Version:
Keywords: |
--------------------+-------------------------------------------------------
the attached patch fixes (by adjusting the domain which was created before
CarpetRegrid2 changed its property enforcement logic) some tests in
CarpetProlongationTest and also restricts those tests that produce Carpet
1D ouptut to 1 or 2 processes (depending on how many were apparently used
to create the test).
For some tests (test_o1 test_cc_rest_o0 test_cc_rest_o1) I could not make
the code agree with these measures and since they also show differences in
a "sum" reduced quantity I replaced the "sum" data by errornorm 0D output
(and had to regenerate the data because of this). I am not sure what the
expected smallness of errornorm is.
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1202>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#1199: [PATCH]McLachlan_BSSN: fix the Hamiltonian constraint for CCZ4
---------------------------------+------------------------------------------
Reporter: anton@… | Type: defect
Status: new | Priority: major
Milestone: | Component: EinsteinToolkit thorn
Version: development version | Keywords:
---------------------------------+------------------------------------------
A typo in a8794cd2227c87c7457ba51d040e863be2f981e7 has caused the
additional CCZ4 terms to overwrite the BSSN value instead of adding to it.
Tested to work on TwoPunctures initial data:
h = h5py.File('/tmp/testbssn/H.h5') # BSSN reference
h1 = h5py.File('/tmp/testccz4/H.h5') # with the patch
h2 = h5py.File('/tmp/testccz42/H.h5') # without the patch
In [89]: numpy.sum(numpy.abs(h.values()[0][:] - h1.values()[0][:]))
Out[89]: 8.0082674998918897e-15
In [90]: numpy.sum(numpy.abs(h.values()[0][:] - h2.values()[0][:]))
Out[90]: 7.9536720382719803
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1199>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#1235: commit4306806ad6d517f4e9b675d3cd541c95db3ea7fa breaks multipatch runs
--------------------+-------------------------------------------------------
Reporter: rhaas | Owner:
Type: defect | Status: new
Priority: major | Milestone:
Component: Other | Version:
Keywords: |
--------------------+-------------------------------------------------------
The assert(offsets.empty()) in dh::regrid line 1207 and 1265 which may not
find the std::vector offsets empty if regrid is called on levels that were
not changed.
A quick fix is to clear() local_boxes at the top of dh::regrid (attached).
However since local_boxes are expensive I less drastic method might be
better.
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1235>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#1233: McLachlan should not define one-character variables
---------------------------------+------------------------------------------
Reporter: knarf | Type: enhancement
Status: new | Priority: minor
Milestone: | Component: EinsteinToolkit thorn
Version: development version | Keywords:
---------------------------------+------------------------------------------
McLachlan defines several one-character grid functions, making it
impossible to use these in thorns inheriting from McLachlan. One example
is 'A' which in Fortran is the same as 'a' which is often used as
temporary variable. 'A' in McLachlan is the time derivative of the lapse,
and in the ML_dtlapse group. Would there be any problem renaming the grid
function also to ML_dtlapse? (and similarly others, e.g., B and H and
possible some of the two-character variables as well)
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1233>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#1228: rename 'mike2' in simfactory to just 'mike'
-------------------------+--------------------------------------------------
Reporter: knarf | Owner: eschnett
Type: enhancement | Status: new
Priority: minor | Milestone:
Component: SimFactory | Version:
Keywords: |
-------------------------+--------------------------------------------------
I would like to rename the machine 'mike2' in simfactory to just 'mike',
as there is no 'mike1', and while the machine _is_ called "Supermike 2",
even the login node is usually 'mike1'. But of course the main reason is
that I am lazy to type the '2'. :)
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1228>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit