#2551: include RePriMand in the ET
Reporter: Roland Haas
Status: open
Milestone: ET_2021_11
Version: development version
Type: enhancement
Priority: major
Component:
Comment (by Roland Haas):
Sphinx’s LaTeX output is produces broken LaTeX for me:
```
! Extra alignment tab has been changed to \cr.
<template> }$\hfill \endtemplate
l.2819 ... \epsilon}(\rho, \theta, Y_e)\end{split}
```
This with RePrimAnd hash [6ec1def](https://github.com/wokast/RePrimAnd/commits/6ec1defa01d91a4df0f648… "Merge pull request #13 from rhaas80/public" of [RePrimAnd](https://github.com/wokast/RePrimAnd) sphinx 4.2.0-5, doxygen 1.9.1 on my Debian bookworm box.
There seems to be no way to produce LaTeX output in sphinx that could be included in the Cactus documentation.tex file \(ie that does not include the document preamble and documentclass\).
--
Ticket URL: https://bitbucket.org/einsteintoolkit/tickets/issues/2551/include-reprimand…
#2574: alias patterns for BlueWaters and frontera conflict
Reporter: Roland Haas
Status: new
Milestone:
Version: ET_2021_05
Type: bug
Priority: major
Component: SimFactory
Comment (by Gabriele Bozzola):
It works. You can also add the ^ in front.
--
Ticket URL: https://bitbucket.org/einsteintoolkit/tickets/issues/2574/alias-patterns-fo…
#2574: alias patterns for BlueWaters and frontera conflict
Reporter: Roland Haas
Status: new
Milestone:
Version: ET_2021_05
Type: bug
Priority: major
Component: SimFactory
Comment (by Roland Haas):
If you could change aliaspattern to:
```
aliaspattern = login[1234]\.frontera\.tacc\.utexas\.edu$
```
ie remove the `(...)?` optional marker, then check if `./simfactory/bin/sim whoami` still reports frontera then we can update the machine definition file to avoid the confusion due to identical login node hostnames in different cluster domains.
--
Ticket URL: https://bitbucket.org/einsteintoolkit/tickets/issues/2574/alias-patterns-fo…
#2574: alias patterns for BlueWaters and frontera conflict
Reporter: Roland Haas
Status: new
Milestone:
Version: ET_2021_05
Type: bug
Priority: major
Component: SimFactory
Comment (by Gabriele Bozzola):
`hostname -f` returns `login4.frontera.tacc.utexas.edu` on Frontera. I can test any other change if you want so.
--
Ticket URL: https://bitbucket.org/einsteintoolkit/tickets/issues/2574/alias-patterns-fo…
#2574: alias patterns for BlueWaters and frontera conflict
Reporter: Roland Haas
Status: new
Milestone:
Version: ET_2021_05
Type: bug
Priority: major
Component: SimFactory
Both Blue Waters and Frontera define somewhat lenient regular expressions to match for their respective login nodes. Namely:
```
aliaspattern = ^h2ologin[1-4](\.ncsa\.illinois\.edu)?$
```
and
```
aliaspattern = login[1234](\.frontera\.tacc\.utexas\.edu)?$
```
In particular Frontera’s is too lenient since it misses the `^` anchor to anchor the regex to the beginning of the string making it match any node whose name contains `login[1234]`. This was encountered in real live by Cheng-Hsin Cheng while testing the BBH gallery example on BlueWaters.
This confuses `sim setup` \(and `setup-silent`\) but does apparently not face `sim whoami`, which on Blue Waters at least returns `bluewaters`. Possibly b/c Blue Waters is alphabetically first.
There are two things that should be fixed by:
1. add a `^` to the alias pattern for Frontera
2. check whether one can leave in the FQDN instead of just the hostname itself since `login` since a fairly typical \(if annoyingly generic\) hostname \(eg Stampede2, also TACC, uses the same name\).
3. simfactory should warn / abort if more than one machine definition files aliaspattern matches I think \(unless the pattern is emtpy, which we use for “alternative” machine definition files\).
Should be backported.
--
Ticket URL: https://bitbucket.org/einsteintoolkit/tickets/issues/2574/alias-patterns-fo…
#2538: Inclusion of kuibit
Reporter: Gabriele Bozzola
Status: open
Milestone: ET_2021_11
Version: development version
Type: enhancement
Priority: major
Component:
Comment (by Gabriele Bozzola):
I fixed the issue with `h5py` in `kuibit` 1.3.1, which I have just released.
--
Ticket URL: https://bitbucket.org/einsteintoolkit/tickets/issues/2538/inclusion-of-kuib…
#2538: Inclusion of kuibit
Reporter: Gabriele Bozzola
Status: open
Milestone: ET_2021_11
Version: development version
Type: enhancement
Priority: major
Component:
Comment (by Gabriele Bozzola):
> @Gabriele Bozzola
>
> for inclusion in in the ET, at least one of the ET maintainers \([http://einsteintoolkit.org/maintainers-credits.html](http://einsteintoolkit.org/maintainers-credits.html)\) should have write permission to the repository. Is that already the case? In this case
>
> @Steven R. Brandt
>
> may be the best person to give access to since he is release mananger ie will have to create tags or ensure that they have been created otherwise.
You are Steven were invited to join the GitHub repo.
> Current version may not build if user hasn’t separately installed hdf5 build environment \(h5py usually can install without this\).
This comes from the fact that `kuibit` requires `h5py < 3` at the moment. I am trying to relax this assumption, but the dependency solver goes crazy. I will have to fiddle around to find a way out of this. In case, I will push a version 1.3.1 to fix this.
> Can we add examples showing how to make 2D figures like BNS movie in gallery?
I can help those that are running the gallery examples to make visualizations with `kuibit`. For example, you should be able to make the 2D movie we have in the gallery with `kuibit` without writing any single line of code:
`mopi -m examples/mopi_movies/grid_var --resolution 500 --plane xy --variable rho_b --colorbar --datadir simulation --interpolation-method bicubic --logscale --vmin -7 --vmax -1 --parallel --outdir movie -x0 -30 -30 -x1 30 30`
> I added kubit’s source code as well just so that is there \(and in case users already have the prereqs installed eg on their laptops\) but my recollection was that either:
Correct, it is not trivial to install kuibit directly from the repo \(one needs \`poetry\`, and even then, it is still not simple\). The best way is with pip. This also simplifies upgrading `kuibit`.
Hence, we should provide instructions to download `kuibit` with pip and a link to the documentation relative to the version.
> For the new user notebook we can provide a list of OS package manager packages to install to be able to use kuibit from the copy in the ET.
Unless I fail to work around the h5py problem, I think and hope that no extra package should be required, unless one wants to do 3D rendering with `mayavi`.
I can also give a tutorial on `kuibit` at some point.
--
Ticket URL: https://bitbucket.org/einsteintoolkit/tickets/issues/2538/inclusion-of-kuib…
#2538: Inclusion of kuibit
Reporter: Gabriele Bozzola
Status: open
Milestone: ET_2021_11
Version: development version
Type: enhancement
Priority: major
Component:
Comment (by Roland Haas):
@{557058:4b0c8315-696b-4d2e-92da-2da5fea9e8d4} for inclusion in in the ET, at least one of the ET maintainers \([http://einsteintoolkit.org/maintainers-credits.html](http://einsteintoolkit.org/maintainers-credits.html)\) should have write permission to the repository. Is that already the case? In this case @{557058:1671c5c3-29cc-4e83-9850-a152d33a6235} may be the best person to give access to since he is release mananger ie will have to create tags or ensure that they have been created otherwise.
--
Ticket URL: https://bitbucket.org/einsteintoolkit/tickets/issues/2538/inclusion-of-kuib…
#2538: Inclusion of kuibit
Reporter: Gabriele Bozzola
Status: open
Milestone: ET_2021_11
Version: development version
Type: enhancement
Priority: major
Component:
Comment (by Roland Haas):
A bit late but here’s a pull request that installs parts of kuibit into `utils/Analysis/kuibit` \(same location as POWER got installed to\): [https://bitbucket.org/einsteintoolkit/manifest/pull-requests/10/einsteintoo…
I added kubit’s source code as well just so that is there \(and in case users already have the prereqs installed eg on their laptops\) but my recollection was that either:
```shell
pip install git+https://github.com/Sbozzolo/kuibit.git@1.3.0
```
or \(eventually\):
```shell
pip install git+https://github.com/Sbozzolo/kuibit.git@ET_2021_11
```
to have all prerequisites installed \(note the `@` sign to specify the tagged version to get\).
For the new user notebook we can provide a list of OS package manager packages to install to be able to use kuibit from the copy in the ET.
--
Ticket URL: https://bitbucket.org/einsteintoolkit/tickets/issues/2538/inclusion-of-kuib…
#2538: Inclusion of kuibit
Reporter: Gabriele Bozzola
Status: open
Milestone: ET_2021_11
Version: development version
Type: enhancement
Priority: major
Component:
Comment (by Yosef Zlochower):
Current version may not build if user hasn’t separately installed hdf5 build environment \(h5py usually can install without this\). Can we add examples showing how to make 2D figures like BNS movie in gallery?
--
Ticket URL: https://bitbucket.org/einsteintoolkit/tickets/issues/2538/inclusion-of-kuib…
#2551: include RePriMand in the ET
Reporter: Roland Haas
Status: open
Milestone: ET_2021_11
Version: development version
Type: enhancement
Priority: major
Component:
Comment (by Roland Haas):
Ideally there would be a TeX file documetnation.tex that can be used in the usual ET manner. Ie:
* is included in the online doumentation auto-generated from the documentation.tex files
* can be use to create a local thornguide / thorndoc using the respective make targets
* can be used with `cd FOO/doc; pdflatex documentation.tex` to create documentation.pdf. The goal here is uniformity of available documentation to avoid situations where some thorns might have “[README.md](http://README.md)”, others “index.html”, and more again “Start.docx”.
Said tex file should ideally be using the sphinx generated tex files, but some thorns instead just point to the actual documentation \(eg. [https://www.einsteintoolkit.org/thornguide/WVUThorns/Baikal/documentation.h…). This approach, of course, is a poor substitute for the real thing.
Really good documetnation is eg in [https://www.einsteintoolkit.org/thornguide/CactusNumerical/MoL/documentatio… and there’s of course also empty documentation eg [https://www.einsteintoolkit.org/thornguide/CactusUtils/Vectors/documentatio… which should be avoided.
--
Ticket URL: https://bitbucket.org/einsteintoolkit/tickets/issues/2551/include-reprimand…
#2176: Test "Binary neutron star" example
Reporter: Roland Haas
Status: open
Milestone: ET_2021_11
Version: development version
Type: task
Priority: major
Component: EinsteinToolkit website
Comment (by Roland Haas):
Alexandru Dima \(UIUC\) will handle this for ET\_2021\_11.
--
Ticket URL: https://bitbucket.org/einsteintoolkit/tickets/issues/2176/test-binary-neutr…
#2572: Build failure in PITTNullCode SphericalHarmonicReconGen
Reporter: Wolfgang Kastaun
Status: open
Milestone:
Version: ET_2021_05
Type: bug
Priority: major
Component: EinsteinToolkit thorn
Comment (by Roland Haas):
Sounds like it to me. I tried installing Arch in a virtual machine but its installation procedure defeats me. It has been a _long_ time since I last had to run `grub-install` and bootstrap a Linux installation from scratch. Arch is too much down-on-your-knees-in-the-muck for me :-\). I may try a Docker image if there exists one, or is there is a simpler installation instruction than the official “Installation guide” \(which as far as I can tell is faulty right now since SHELL defaults to zsh but their instruction do not pacstrap zsh into the installed system\).
Do you know the exact version number that Arch installed 1.12.0 exactly? And there were no other leftover HDF5 packages around?
In principle I would want to know why this fails and if there is something we can do to avoid this on Arch \(and maybe similar systems in the future\), but without being able to reproduce the issue this is hard.
--
Ticket URL: https://bitbucket.org/einsteintoolkit/tickets/issues/2572/build-failure-in-…
#2572: Build failure in PITTNullCode SphericalHarmonicReconGen
Reporter: Wolfgang Kastaun
Status: open
Milestone:
Version: ET_2021_05
Type: bug
Priority: major
Component: EinsteinToolkit thorn
Comment (by Wolfgang Kastaun):
Changing only HDF5\_DIR=BUILD, it build without problem. So it is not a problem connected to the compiler. Maybe the Arch Linux hdf5 package is simply messed up.
--
Ticket URL: https://bitbucket.org/einsteintoolkit/tickets/issues/2572/build-failure-in-…
#2572: Build failure in PITTNullCode SphericalHarmonicReconGen
Reporter: Wolfgang Kastaun
Status: open
Milestone:
Version: ET_2021_05
Type: bug
Priority: major
Component: EinsteinToolkit thorn
Comment (by Roland Haas):
Hmm, correction, if I build my `hdf5-1.12.0.tar.gz` tarball without options it does default `H5_USE_112_API_DEFAULT` ie the new API is used by default. I get no breakage though.
Looking at the source code, the function in question \(H5iter\) is declared as:
```c++
herr_t SPH_db_SpEC_H5::H5iter(hid_t loc_id, const char* name, const H5L_info_t* info, void* operator_data)
```
i.e. it takes a `H5L_info_t` and inconsistencies in type would be blamed on HDF5.
I cannot make it actually fail though. Even with gcc-11 and a self-compiled HDF5 1.12.0. I tried no options. `-with-default-api-version=v110` and `-with-default-api-version=v18` all let me compile the ET without issue.
--
Ticket URL: https://bitbucket.org/einsteintoolkit/tickets/issues/2572/build-failure-in-…
#2573: Cactus treats a directory "configs/FOO/ThornList" as an empty thornlist file
Reporter: Roland Haas
Status: new
Milestone:
Version: development version
Type: bug
Priority: minor
Component: Cactus
Perl lets one open a directory with the regular `open` command but then reports no content in it ie it shows up as an empty file. Eg.
```perl
#!/usr/bin/perl
use strict;
use warnings;
open(my $FH, "<", "empty") or die;
print "$FH\n";
while(<$FH>) {
print $_;
}
close $FH;
```
will work without error after a `mkdir empty`.
The suggested solution seems to be to use Perl’s `-f` operator to check for file type first. Eg something like:
```perl
-f "empty" && open(my $FH, "<", "empty") or die;
```
which I verified to fail if empty is a directory or a symbolic link to a directory but works fine for files and symbolic links to files.
This actually happened to someone “in the wild”, so it not quite hypothetical.
--
Ticket URL: https://bitbucket.org/einsteintoolkit/tickets/issues/2573/cactus-treats-a-d…
#1472: simfactory:dsitribute key envsetup should be optional
Reporter: Frank Löffler
Status: closed
Milestone:
Version: development version
Type: bug
Priority: minor
Component: SimFactory
Changes (by Roland Haas):
status: closed (was new)
When trying distribute from my workstation I get:
$ ~/utils/simfactory/bin/distribute --no-benchmark --no-recover --thornlist ./thornlists/ET_2013_11.th mike
...
$ tail log/mike.out
Info: Executing command for remote machine: mike
Error: machine spine is missing a required key: envsetup
Aborting Simfactory.
My workstation doesn't need a envsetup key, nor should it matter here as I am already on that machine.
**Keyword:**
--
Ticket URL: https://bitbucket.org/einsteintoolkit/tickets/issues/1472/simfactory-dsitri…
#1472: simfactory:dsitribute key envsetup should be optional
Reporter: Frank Löffler
Status: new
Milestone:
Version: development version
Type: bug
Priority: minor
Component: SimFactory
Comment (by Roland Haas):
envsetup is not specific to the distribute helper script. As of right now the key is not required for simfactory, ie a machine db entry without it works fine.
--
Ticket URL: https://bitbucket.org/einsteintoolkit/tickets/issues/1472/simfactory-dsitri…
#2572: Build failure in PITTNullCode SphericalHarmonicReconGen
Reporter: Wolfgang Kastaun
Status: open
Milestone:
Version: ET_2021_05
Type: bug
Priority: major
Component: EinsteinToolkit thorn
Comment (by Roland Haas):
Interesting. Ok. The Silo one is an actual bug in HDF5 since it’s symbols are not internally consistent. This one here may be different though even so the newsletter “\[…\]that includes deprecated symbols \(the default\)\[…\]” to me would read as if the default settings should be a backwards compatible API \(which of course Arch Linux may change if they want to be on the bleading edge\).
I will give this a try on my workstation with a self-compiled HDF5 1.12.
Semantic versioning by HDF5 would be great so that API change → major version change. But then, with the Linux kernel now also updating major version numbers when the devs run out of fingers and toes to count, this is probably a futile hope…
--
Ticket URL: https://bitbucket.org/einsteintoolkit/tickets/issues/2572/build-failure-in-…