#1152: Add option to compute center of mass to hydro_analysis and lots of smaller
changes
-----------------------------------+----------------------------------------
Reporter: rhaas | Owner:
Type: enhancement | Status: new
Priority: minor | Milestone:
Component: EinsteinToolkit thorn | Version:
Keywords: Hydro_Analysis |
-----------------------------------+----------------------------------------
The attached set of patches adds the possibility to compute a center of
mass location to hydro_analysis. It works by computing the center of mass
(via x[idx]*rho[idx]) of the matter in a region of radius
Hydro_Analysis_r_core around the point of maximum density. Only points
whose density is above a fraction Hydro_Analysis_rho_core_rel_min of the
maximum density are considered.
I also include a number of bugfix patches and patches to make
Hydro_Analysis more controllable by user input rather than hard-coded
values. All patches contain a short description in the patch (ie. the git
commit message).
The ones adding extra control and/or warnings are:
* Hydro_Analysis: add verbosity_level option to control how much data to
output to stdout
* Hydro_Analysis: use Fortran modules for prototypes if available
* Hydro_Analysis: add parameters to control which interpolator is used
* Hydro_Analysis: make parameters steerable
* Hydro_Analysis: warn if grid point with maximum value cannot be found on
grid
* Hydro_Analysis: add parameter Hydro_Analysis_comp_rho_max_every
* Hydro_Analysis: add option rho_max_loc_use_rotatingsymmetry180
* Hydro_Analysis: add option to average the location of multiple identical
maxima
* Hydro_Analysis: fiddle with when to warn about multiple identical maxima
Bugfixes are:
* Hydro_Analysis: checkpoint grid scalars
* Hydro_Analysis: do reduction in global mode
New feature:
* Hydro_Analysis: add routine to compute center of mass in core region
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1152>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#1006: ExternalLibraries' configure.sh scripts handle /usr inconistently
-----------------------------------+----------------------------------------
Reporter: rhaas | Owner:
Type: defect | Status: new
Priority: minor | Milestone:
Component: EinsteinToolkit thorn | Version:
Keywords: ExternalLibraries |
-----------------------------------+----------------------------------------
library path used for -L should not contain the system paths at least
/lib, /lib64, /usr/lib, /usr/lib64, /usr/local/lib, /usr/local/lib64 (plus
MacOS equivalents, and any other OS we support).
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1006>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#1075: Test cases with specific number of processes
-------------------------+--------------------------------------------------
Reporter: eschnett | Owner:
Type: enhancement | Status: new
Priority: major | Milestone:
Component: Cactus | Version:
Keywords: |
-------------------------+--------------------------------------------------
Some test cases require a specific number of processes. Instead not
running, they should run on that number of processes. This would ensure
that all tests execute all the time.
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1075>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#1158: ExternalLibraries/HDF5 should change the defaults for HDF5_ENABLE_CXX and
HDF5_ENABLE_FORTRAN to "no".
-----------------------------------+----------------------------------------
Reporter: knarf | Owner:
Type: defect | Status: new
Priority: minor | Milestone:
Component: EinsteinToolkit thorn | Version: development version
Keywords: |
-----------------------------------+----------------------------------------
ExternalLibraries/HDF5 should change the defaults for HDF5_ENABLE_CXX and
HDF5_ENABLE_FORTRAN to "no". Nothing within the toolkit or Cactus still
uses these interfaces and system wide installed libraries might not come
with it, leading to link failures.
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1158>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#499: Prolongation fails with vectorisation enabled
--------------------+-------------------------------------------------------
Reporter: hinder | Owner: eschnett
Type: defect | Status: new
Priority: major | Milestone:
Component: Carpet | Version:
Keywords: |
--------------------+-------------------------------------------------------
The development version of Carpet uses vectorisation to speed-up
prolongation. This fails with various errors, including corruption of the
malloc heap.
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/499>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#445: Make Carpet timers hierarchical
-------------------------+--------------------------------------------------
Reporter: hinder | Owner: eschnett
Type: enhancement | Status: new
Priority: major | Milestone:
Component: Carpet | Version:
Keywords: |
-------------------------+--------------------------------------------------
With the current flat structure of timers in Carpet, it is difficult to
identify which timers are contained in which other timers, and hence to
avoid double-counting when adding up the times.
This series of patches modifies the timer infrastructure in Carpet to
generate a tree of timers where the hierarchy reflects the call-graph of
the program. This makes it much easier to interpret the timer output than
with the previous flat structure, where it was not possible to see which
timers "contained" which others. More implementation details are given at
the top of TimerNode.hh.
Note that the Timer source and header files have been renamed as
CactusTimer and a new Timer file and object has been created. This is
because the Timer object now only provides a wrapper around the Cactus
timer mechanism which was contained in the old Timer object.
New parameters output_initialise_timer_tree and output_timer_tree_every
control output of a new "timer tree diagram" to standard output for the
Initialise and Evolve timer trees respectively. These diagrams indicate:
1. the value of each timer;
2. the percentage of the given tree taken by each timer;
3. which timers are contained in which other timers;
4. any untimed code
for any timer which takes more than 1% of the tree time.
Making the timers hierarchical means that the ad-hoc methods used before
to identify the hierarchy (such as naming the timer Evolve::Sync, for
example, to indicate that the Sync timer was a child of the Evolve timer)
are no longer necessary and have been removed. Additionally, the
construction of timers in a "dynamic" manner is now handled automatically
for all timers, so special-case code is no longer needed and has been
removed.
Additionally some previously-untimed parts of the code are now timed, and
timer names have been made more consistent in some places.
There is code in the patches to output the entire timer tree as an XML
file, but it is not enabled.
Ideally the timer tree printed to standard output would contain reductions
across processes, but at the moment it contains only the timer from the
current process.
The attached "tree-example.txt" file shows an example of the timer tree
that is printed for a simulation using the qc0-mclachlan parameter file
from the Einstein Toolkit.
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/445>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#590: McLachlan should allow other thorns to set the gauge
-----------------------------------+----------------------------------------
Reporter: bmundim | Owner:
Type: defect | Status: new
Priority: major | Milestone:
Component: EinsteinToolkit thorn | Version:
Keywords: |
-----------------------------------+----------------------------------------
The parameters lapse_evolution_method and shift_evolution_method are
usually set to ML_BSSN in McLachlan. However they are never checked
in the code. McLachlan indeed seems to ignore their values and
overwrite whatever the values of lapse or shift set elsewhere,
preventing therefore other thorns from setting them differently.
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/590>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#849: Drop explicit support for Fortran 77 in Cactus
-------------------------+--------------------------------------------------
Reporter: eschnett | Owner:
Type: enhancement | Status: new
Priority: minor | Milestone:
Component: Cactus | Version:
Keywords: |
-------------------------+--------------------------------------------------
I suggest to drop explicit support for Fortran 77 in Cactus. Fortran 77
is, for all practical purposes, a subset of Fortran 90, and thus Fortran
77 code can be compiled by Fortran 90 compilers.
There is currently no platform that has a Fortran 77 and no Fortran 90
compiler, and there is no Fortran source code in Cactus that cannot be
compiled by a Fortran 90 compiler.
In a way, supporting Fortran 77 as language is similar to supporting K&R C
as a language. We don't do this either.
I suggest to remove/ignore all configuration options regarding Fortran 77,
and to compile .f77 and .F77 files with a Fortran 90 compiler. This change
will simplify the configuration stage of Cactus. I don't expect any user
to notice.
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/849>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#882: Create ThornGuideHTML target
----------------------+-----------------------------------------------------
Reporter: eschnett | Owner:
Type: defect | Status: new
Priority: minor | Milestone:
Component: Cactus | Version:
Keywords: |
----------------------+-----------------------------------------------------
Barry Wardell suggests: The only issue is that there doesn't seem to be a
HTML version of the configuration specific ThornGuide make target, so we
should add this as a target at the same time as removing the patch. I'd
imagine this would just be a matter of copy-and-paste from the existing
ThornGuideHTML target.
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/882>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
#1117: Wrong CarpetIOASCII headers for complex 2D output.
----------------------------------------+-----------------------------------
Reporter: reisswig@… | Type: defect
Status: new | Priority: minor
Milestone: | Component: Other
Version: | Keywords:
----------------------------------------+-----------------------------------
I am outputting a 2d _complex_ array (called "extracted_vars") using 2d
CarpetIOASCII output.
Using the standard output format, the data starts at column 13.
So the first array element "extracted_vars[0]" is at column 13.
Now, since I have a complex array, the second element,
"extracted_vars[1]", must be at column 15 (column 14 contains the
imaginary part of element [0]). In older versions of Carpet, this was
reported correctly in the header. In the current version, it is incorrect.
The second element, "extracted_vars[1]" is reported to be in column 14
instead of 15.
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1117>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit