Various small problems with FishboneMoncriefID

Issue #2503 open
Gabriele Bozzola created an issue

I found the following small problems in FishboneMoncriefID:

  • The thorn defines initial_lapse, initial_shift, …, but it ignores all of them. If you activate the thorn, it will always set the initial data.
  • The thorn checks if K is set so that rho_max is 1 and provides suggestions to fix the problem depending on your choice of Gamma. These suggestions are hard-coded even if they depend on the parameters used for the disk.
  • The file FMdisk_GRHD_rho_initial.h is never used.
  • The parameter A_b is defined but never used.

Having used this thorn for a little bit, I now have the following considerations:

  • I think that the perturbation should be added optionally and not by default
  • I found using the thorn rather clunky: every time I have to change the disk parameters, I need to run an empty run to find what value of K should be used. Since K is uniquely determined by the thorn, It would be nice if FishboneMoncriefID overrode the values set for IllinoisGRMHD/ GRHydro in the parameter file (which I have to do anyways ‘by hand’).
  • The parameter for the spin is called a, which is practically impossible to grep in the source code.
  • The documentation is only offered as Jupyter notebooks, which is more impractical to consult quickly on remote clusters and more difficult to grep in

@Zach Etienne

Comments (11)

  1. Zach Etienne

    Hi @Gabriele Bozzola , and thanks for your feedback! Indeed interacting with this thorn can be rather clunky and I’d like to work on improving it. Basically once I got it working I didn’t bother to refine its user interface much. Hopefully sometime over the summer I might find the time to address some of these issues, but in the meantime you are more than welcome to submit a pull request to the nrpytutorial repo: https://github.com/zachetienne/nrpytutorial , which houses the Jupyter notebook for this thorn.

    The documentation is only offered as Jupyter notebooks, which is more impractical to consult quickly on remote clusters and more difficult to grep in

    So long as you have a web browser, all my Jupyter notebooks are “at your fingertips” in HTML format. For example
    https://nbviewer.jupyter.org/github/zachetienne/nrpytutorial/blob/master/Tutorial-FishboneMoncriefID.ipynb

    and

    https://nbviewer.jupyter.org/github/zachetienne/nrpytutorial/blob/master/Tutorial-ETK_thorn-FishboneMoncriefID.ipynb

    display the fully rendered documentation for both the ID itself and the corresponding thorn in any functioning web browser. I generally bookmark this page
    https://nbviewer.jupyter.org/github/zachetienne/nrpytutorial/blob/master/NRPyPlus_Tutorial.ipynb

    so I have quick access to all NRPy+-related documentation.

    Note that any and all of my Jupyter notebooks can be converted directly to proper (and good looking when rendered!) TeX, and storing that TeX in the doc/ directories might be a good idea. The problem is, the ET TeX->HTML converter would probably choke on anything but the simplest TeX documentation.

  2. Gabriele Bozzola reporter

    but in the meantime you are more than welcome to submit a pull request to the nrpytutorial repo: https://github.com/zachetienne/nrpytutorial , which houses the Jupyter notebook for this thorn.

    Unfortunately, I don’t have much time for this at the moment.

    Note that any and all of my Jupyter notebooks can be converted directly to proper (and good looking when rendered!) TeX, and storing that TeX in the doc/ directories might be a good idea.

    I think that would be a great idea. This would solve my problem of being able to quickly read the documentation by allowing me to read directly the .tex file using standard command-line tools/Emacs. Of course, to understand what the thorn is doing and what equations are being solved the online documentation is perfect.

  3. Roland Haas

    Any progress on this? I note that Gabriele’s initial point:

    The thorn defines initial_lapse, initial_shift, …, but it ignores all of them. If you activate the thorn, it will always set the initial data.

    was also brought up during review https://bitbucket.org/einsteintoolkit/tickets/issues/2286/add-the-fishbone-moncrief-initial-data#comment-54093594 and should have been part of the initial inclusion review into the ET.

    It would be good to address bug reports (in particular for issues that were already brought up during the inclusion review) more quickly so that the Einstein Toolkit thorn are properly maintained.

  4. Zach Etienne

    Yes, I did make some progress but was pulled off to another project.

    My conclusion: the thorn is generally in need of modernization, and I hope to have some time before the May 2023 release to get the above issues fixed, as well as others to bring it more in line with the standards set within Baikal . Please consider May 2023 the target for F-M thorn modernization.

  5. Log in to comment