ReflectionSymmetry Interpolation Errors and WeylScal4

Issue #851 resolved
Tanja Bode created an issue

There is an inconsistency in ReflectionSymmetry on whether a scalar can have a tensor parity tag that isn't unity (pseudoscalars). In ReflectionSymmetry's apply.c, a scalar GF's tensorparity flag is taken into account, while in interpolation this is ignored. In the ET Toolkit, this only effects those using the ET version of WeylScal4 since only Psi4i, Psi2i, and Psi0i have all been registered as scalars with tensorparity=-1. When interpolating, e.g. Psi4, onto a sphere for mode decomposition, the interpolated quantities have sign errors in Psi4i and give erroneous gravitational wave modes.

This problem applies to both Maxwell release and current development branch. Symptoms reported to me by Jim Healy. I would suggest backporting the resulting fix to Maxwell.

Either ReflectionSymmetry's interpolation has to allow for tensorparity=-1, or apply.c's acceptance of tensorparity=-1 should be removed and WeylScal4's GFs reverted to manually specified parities.

Keyword:

Comments (14)

  1. Roland Haas repo owner
    • removed comment

    So that's what this was. Jim had reported this to me and I had looked at this but only at the grid function level (where everything was ok, in fact the one with symmetries was better). I think ReflectionSymmetry should take the parity into account. I suspect this would affect eg. the magnetic field as well, yes? Do you have a patch?

  2. Tanja Bode reporter
    • removed comment

    This interpolation problem seems isolated to the cases where the interpolated variables are pseudo-scalars. Pseudo-vectors aren't affected. I'm looking at possible fixes. No patch quite yet.

    Correction: Pseudo-vectors would have been affected as well.

  3. Roland Haas repo owner
    • removed comment

    It turns out I had a patch since #254 and had apparently forgotten to include it in the commit. The fact that it fixes pseudoscalars is accidental since #254 was intended to fix pseudovectors. Has been in use at GT for a while.

    Ok to apply?

  4. Roland Haas repo owner
    • removed comment

    I applied the code patch. Tanja will provide a test either a distinct one for ReflectionSymmetry or extend WeylScal4's teukolskyID test which is one of the few thorns actually using pseudo-quantities.

  5. Tanja Bode reporter
    • removed comment

    I have an extension for the teukolskyID testsuite which uses InterpToArray to dump a small 2d interpolated slice across the symmetry boundary which I will push to WeylScal4 soon. This clearly shows the bug without the patch. I highly recommend the patch to ReflectionSymmetry be backported to Maxwell so the release version can be used in vanilla form for gravitational wave extraction and pseudo-vector evolution/analysis. I have confirmed that the patch does not make any Maxwell testsuites fail.

  6. Ian Hinder
    • removed comment

    Would it be possible to make this a separate test? In general, it's best for the tests to be a fine-grained as possible. In this case, the same parameter file could be used apart from the output sections. Don't worry if you don't have time though.

  7. Log in to comment