#745: the flesh allows two implemantion of the same interface to have different
default values for restricted parameters
--------------------+-------------------------------------------------------
Reporter: rhaas | Owner:
Type: defect | Status: new
Priority: minor | Milestone:
Component: Cactus | Version:
Keywords: |
--------------------+-------------------------------------------------------
since the flesh creates paramters for all compiled in (rather than
activated) thorns initially, this affects the default value that a thorn
sees. Thorns seem to be initialized (and thus their parameter structures
being created) in alphabetical order, which means that the thorn
alphabetically '''last''' (How, I have no idea, the parameter handling
logic seems a bit of a mess) will determine the default parameter value.
Attached is a parameter file to demonstrate this with Carpet and PUGH who
both declare parameters periodic and periodic_[xyz] but differ in their
defaults.
To demonstrate, create an executable with only Carpet compiled in and run
the parameter file. Then look at the paramters in the checkpoint it
creates eg.
{{{
h5dump -r -d /Parameters\ and\ Global\ Attributes/All\ Parameters
output/checkpoint.chkpt.it_0.h5 | grep periodic
}}}
Do the same with an executable that contains both PUGH and Carpet. Notice
that parameter values are now PUGH's defaults.
This can actually cause a runs to abort when recovering from a checkpoint
when one switches from an executable with PUGH compiled in to one that
does not. (Beyond the fact that some thorn might actually use it's
parameters rather than the Carpet/PUGH pair where happily Carpet ignores
these parameters and PUGH who actually used them gets to set the default).
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/745>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#1058: Add "lapsefactor" parameter to EinsteinExact
-----------------------------------+----------------------------------------
Reporter: eschnett | Owner:
Type: enhancement | Status: new
Priority: major | Milestone:
Component: EinsteinToolkit thorn | Version:
Keywords: |
-----------------------------------+----------------------------------------
I suggest introducing a "lapsefactor" parameter to EinsteinExact. This
defines a transformation for the time coordinate between the underlying
metric and the metric as will be used by Cactus. For example, setting
lapsefactor=1/2 will lead to alpha=0.5 for the Minkowski metric, with the
other metric components unchanged.
This complements the "shiftadd" parameters, and is very useful for
testing.
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1058>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#1053: CarpetIOHDF5: it doesn't honor out3D_every parameter
--------------------------------------+-------------------------------------
Reporter: bmundim | Owner: eschnett
Type: defect | Status: new
Priority: major | Milestone:
Component: Carpet | Version:
Keywords: CarpetIOHDF5 out3D_every |
--------------------------------------+-------------------------------------
Hi,
I have noticed a strange behaviour of CarpetIOHDF5 when running a bbh
simulation with Lovelace release: it doesn't seem to follow the parameter
out3D_every. I have attached a modified version of
CarpetWaveToyCheckpointTest.par that reproduces this error. I tried to
mimic a
bbh simulation setup I am using in terms of number of refinement levels
(it also helps to slow down the simulation a bit) and what I was
interested
to output. The experiment goes as follows:
1) create two directories, 000 and 001, where you can copy the attached
par
file to. Symlink a cactus executable for ET on each directory. Both
development
and lovelace releases will show this problem. You should have something
like this:
{{{
[bruno@frozenstar wavetoytest]$ ls 0*
000:
cactus_einstein@ CarpetWaveToyCheckpointTest.par
001:
cactus_einstein@ CarpetWaveToyCheckpointTest.par
}}}
2) Run the executable on both directories. First on 000 and then on 001.
{{{
./cactus_einstein CarpetWaveToyCheckpointTest.par
}}}
3) Analyze the results. Everything goes all right on the first directory,
000:
{{{
[bruno@frozenstar CarpetWaveToyCheckpointTest]$ h5ls
wavetoy::scalarevolve.xyz.h5
Parameters\ and\ Global\ Attributes Group
WAVETOY::phi\ it=0\ tl=0\ rl=0 Dataset {43, 43, 43}
WAVETOY::phi\ it=0\ tl=0\ rl=1 Dataset {41, 41, 41}
WAVETOY::phi\ it=0\ tl=0\ rl=2 Dataset {33, 33, 33}
WAVETOY::phi\ it=0\ tl=0\ rl=3 Dataset {33, 33, 33}
WAVETOY::phi\ it=0\ tl=0\ rl=4 Dataset {33, 33, 33}
WAVETOY::phi\ it=0\ tl=0\ rl=5 Dataset {33, 33, 33}
WAVETOY::phi\ it=0\ tl=0\ rl=6 Dataset {33, 33, 33}
WAVETOY::phi\ it=0\ tl=0\ rl=7 Dataset {33, 33, 33}
WAVETOY::phi\ it=0\ tl=0\ rl=8 Dataset {33, 33, 33}
WAVETOY::phi\ it=128\ tl=0\ rl=1 Dataset {41, 41, 41}
WAVETOY::phi\ it=128\ tl=0\ rl=2 Dataset {33, 33, 33}
WAVETOY::phi\ it=128\ tl=0\ rl=3 Dataset {33, 33, 33}
WAVETOY::phi\ it=128\ tl=0\ rl=4 Dataset {33, 33, 33}
WAVETOY::phi\ it=128\ tl=0\ rl=5 Dataset {33, 33, 33}
WAVETOY::phi\ it=128\ tl=0\ rl=6 Dataset {33, 33, 33}
WAVETOY::phi\ it=128\ tl=0\ rl=7 Dataset {33, 33, 33}
WAVETOY::phi\ it=128\ tl=0\ rl=8 Dataset {33, 33, 33}
WAVETOY::phi\ it=256\ tl=0\ rl=0 Dataset {43, 43, 43}
WAVETOY::phi\ it=256\ tl=0\ rl=1 Dataset {41, 41, 41}
WAVETOY::phi\ it=256\ tl=0\ rl=2 Dataset {33, 33, 33}
WAVETOY::phi\ it=256\ tl=0\ rl=3 Dataset {33, 33, 33}
WAVETOY::phi\ it=256\ tl=0\ rl=4 Dataset {33, 33, 33}
WAVETOY::phi\ it=256\ tl=0\ rl=5 Dataset {33, 33, 33}
WAVETOY::phi\ it=256\ tl=0\ rl=6 Dataset {33, 33, 33}
WAVETOY::phi\ it=256\ tl=0\ rl=7 Dataset {33, 33, 33}
WAVETOY::phi\ it=256\ tl=0\ rl=8 Dataset {33, 33, 33}
}}}
You can see above that all refinement levels were correctly output every
128
iterations as it was set on the par file. That doesn't happen anymore
after
recovery, ie on the second directory, 001:
{{{
[bruno@frozenstar CarpetWaveToyCheckpointTest]$ h5ls
wavetoy::scalarevolve.xyz.h5
Parameters\ and\ Global\ Attributes Group
WAVETOY::phi\ it=262\ tl=0\ rl=7 Dataset {33, 33, 33}
WAVETOY::phi\ it=262\ tl=0\ rl=8 Dataset {33, 33, 33}
WAVETOY::phi\ it=390\ tl=0\ rl=7 Dataset {33, 33, 33}
WAVETOY::phi\ it=390\ tl=0\ rl=8 Dataset {33, 33, 33}
}}}
neither 262 or 390 are multiples of 128! So something is going really
wrong
here. Note however that the respective 2D slice is correct:
{{{
[bruno@frozenstar CarpetWaveToyCheckpointTest]$ h5ls
wavetoy::scalarevolve.xy.h5
Parameters\ and\ Global\ Attributes Group
WAVETOY::phi\ it=384\ tl=0\ rl=1 Dataset {41, 41}
WAVETOY::phi\ it=384\ tl=0\ rl=2 Dataset {33, 33}
WAVETOY::phi\ it=384\ tl=0\ rl=3 Dataset {33, 33}
WAVETOY::phi\ it=384\ tl=0\ rl=4 Dataset {33, 33}
WAVETOY::phi\ it=384\ tl=0\ rl=5 Dataset {33, 33}
WAVETOY::phi\ it=384\ tl=0\ rl=6 Dataset {33, 33}
WAVETOY::phi\ it=384\ tl=0\ rl=7 Dataset {33, 33}
WAVETOY::phi\ it=384\ tl=0\ rl=8 Dataset {33, 33}
}}}
384 is a multiple of 128 and as you can see all active refinement levels
for
that iteration were written down.
Any idea on how to fix this?
Thanks!
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1053>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#1031: write index files for checkpoints
--------------------------+-------------------------------------------------
Reporter: rhaas | Owner: eschnett
Type: enhancement | Status: new
Priority: minor | Milestone:
Component: Carpet | Version:
Keywords: CarpetIOHDF5 |
--------------------------+-------------------------------------------------
this patch writes index files for checkpoints if output_index is set. This
is (only) useful if the checkpoints will be read in by a different number
of processes than written. In that case, parsing the index files is faster
than parsing the heavy data files.
The two patches provide read and write functionality. The attached C code
creates index files from existing HDF5 files (not necessary checkpoints).
It is a modified copy of hdf5_extract from the HDF5 thorn.
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1031>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#1063: GRHydro_InitData update
-----------------------------------+----------------------------------------
Reporter: rhaas | Owner:
Type: defect | Status: new
Priority: major | Milestone:
Component: EinsteinToolkit thorn | Version:
Keywords: GRHydro_InitData |
-----------------------------------+----------------------------------------
attach please find patches to bring Zelmani and trunk GRhydro_InitData in
sync again. Mostly they add hot EOS support, but also there is a fix for a
double definition of initial_Bvec both as a restricted parameter in
HydroBase and a private parameter in GRHydro.
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1063>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#1072: User guide does not explain how to use boolean parameters from Fortran.
---------------------------+------------------------------------------------
Reporter: hinder | Owner:
Type: defect | Status: new
Priority: minor | Milestone:
Component: Cactus | Version:
Keywords: documentation |
---------------------------+------------------------------------------------
The Cactus user guide does not explain how to use boolean parameters from
Fortran.
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1072>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#669: Rewrite users of deprecated HDF5 C++ API
----------------------+-----------------------------------------------------
Reporter: eschnett | Owner:
Type: task | Status: new
Priority: minor | Milestone:
Component: Other | Version:
Keywords: |
----------------------+-----------------------------------------------------
The C++ API for HDF5 is decprecated. We should examine which code uses it,
and rewrite it to use the C API instead. This would allow us to use more
system-provided HDF5 installations.
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/669>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#1042: Cactus should know more about allowed configuration options
-------------------------+--------------------------------------------------
Reporter: hinder | Owner:
Type: enhancement | Status: new
Priority: minor | Milestone:
Component: Cactus | Version:
Keywords: |
-------------------------+--------------------------------------------------
Currently, thorns can specify which configuration options their
configuration scripts use in their configuration.ccl file. Cactus itself
also reads a certain set of options. There should be a list of such
options, and Cactus could warn or abort if unrecognised options are
included in an optionlist. This would help to avoid user error where
options are misspelled or omitted.
Maintaining such a list would also help with documentation: we could
ensure that each such option was documented.
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1042>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#1050: [PATCH]CarpetIOHDF5: make WriteLargeAttribute write a string, not an array
of ints
-------------------------------+--------------------------------------------
Reporter: anton@… | Owner: eschnett
Type: defect | Status: new
Priority: minor | Milestone:
Component: Carpet | Version:
Keywords: |
-------------------------------+--------------------------------------------
The data that's supplied to it is to be interpreted as a string.
Before the attached patch the data is written as an array of int8,
e.g.:
h5dump -d '/Parameters and Global Attributes/Datasets' alpha.h5
HDF5 "alpha.h5" {
DATASET "/Parameters and Global Attributes/Datasets" {
DATATYPE H5T_STD_I8LE
DATASPACE SIMPLE { ( 16 ) / ( 16 ) }
DATA {
(0): 77, 76, 95, 66, 83, 83, 78, 58, 58, 97, 108, 112, 104, 97, 10,
0
}
}
}
After the patch:
h5dump -d '/Parameters and Global Attributes/Datasets' alpha.h5
HDF5 "alpha.h5" {
DATASET "/Parameters and Global Attributes/Datasets" {
DATATYPE H5T_STRING {
STRSIZE 16;
STRPAD H5T_STR_NULLTERM;
CSET H5T_CSET_ASCII;
CTYPE H5T_C_S1;
}
DATASPACE SIMPLE { ( 1 ) / ( 1 ) }
DATA {
(0): "ML_BSSN::alpha
"
}
}
}
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1050>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#1064: Dissipation tests failing
-----------------------------------+----------------------------------------
Reporter: hinder | Owner:
Type: defect | Status: new
Priority: major | Milestone:
Component: EinsteinToolkit thorn | Version:
Keywords: |
-----------------------------------+----------------------------------------
The tests
Dissipation/test_ah
Dissipation/test_ob
are currently failing. The commits since the last time the test passed
are:
{{{
GRHydro_InitData remove unused GRHydro_reflevel declaration that
causes compilation to fail
carpet CarpetInterp2: White space change
carpet Carpet: Initialise outer_boundaries during recursive load
balancing
carpet Carpet: Improve layout of grid structure files
GRHydro GRHydro: clear atmosphere_mask_real in MHD AtmosphereReset
GRHydro GRHydro: add OpenMP parallelization to IntialAtmosphereReset
GRHydro GRHydro: remove unused file
GRHydro GRHydro: Option to reconstruct W*vel (W = Lorentz factor) instead
of just the primitive velocity 'vel'. This ensures that the Lorentz factor
can never become unphysical during reconstruction. This patch is necessary
for NS collapse when ePPM+Refluxing is used.
GRHydro GRHydro: Changes fixing issues with hot EOS treatment: 1) Set
correct keytemp in C2P 2) Fix OpenMP private variable declaration in HLLEM
3) Fix velocity arguments for Y_e 1D PPM reconstruction 4) If in
atmosphere and if evolve a Y_e also reset Y_e with cell averaged value in
Reconstruction 5) Fix index permutation bug in ReconstructPoly routines
for divergence cleaning field 6) Remove extra comment character in
UpdateMaskM 7) Fix a missing velocity permutation when calling 1D
reconstruction for Y_e. 8) Insert missing sqrt(det) factor for pressure
term in resetting tau when temperature got too cold with a hot EOS.
GRHydro GRHydro: Adding back OpenMP support to HLLEM.F90
GRHydro GRHydro: improve error handling in C2P hot routine
GRHydro GRHydro: use inverse Jacobian to transform Bvec back to global
basis
GRHydro GRHydro: MP pointer stuff for MHD
GRHydro GRHydro: Changes to make GRHydro MHD work with nuclear/hot
equation of state:
}}}
http://damiana2.aei.mpg.de/~ianhin/testreports/EinsteinToolkitTests/results…
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1064>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit