<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Some of the tutorials on ETK1 use Kuibit to plot data from
      CarpetX runs, including the basic one on building and running with
      the ET.<br>
    </p>
    <p>--Steve<br>
    </p>
    <div class="moz-cite-prefix">On 7/2/2025 9:41 AM, Gabriele Bozzola
      wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:CAMLD_5FuMpH=5QjTXn=-WMnG45E1r30G1TZToD0nbV_CoUyBBw@mail.gmail.com">
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      <div dir="ltr">Hi Javiera (and all),
        <div><br>
        </div>
        <div>Last year, we <a
href="https://github.com/Sbozzolo/kuibit/commit/49c86debf1b6edbf052ba9fbdc409a0c2f7efc8e"
            moz-do-not-send="true">added experimental support</a> to
          reading OpenPMD files to <a
            href="https://github.com/Sbozzolo/kuibit"
            moz-do-not-send="true">kuibit</a>.</div>
        <div><br>
        </div>
        <div>I haven't tried it for anything more than toy data, but the
          example we were working with is precisely the output generated
          with WaveToyX, as seen <a
href="https://github.com/Sbozzolo/kuibit/tree/master/tests/grid_functions/batman.it00000000.bp4"
            moz-do-not-send="true">here</a>.</div>
        <div><br>
        </div>
        <div>You could give it a try. kuibit will read the data and
          represent it with its HierarchicalGridData data structure,
          which can be sampled to a uniform grid and visualized with
          matplotlib (or you can slice it a given dimension to get a
          1D/2D cut and visualize those).</div>
        <div><br>
        </div>
        <div>Best,</div>
        <div>Gabriele</div>
        <div><br>
        </div>
      </div>
      <br>
      <div class="gmail_quote gmail_quote_container">
        <div dir="ltr" class="gmail_attr">On Tue, Jul 1, 2025 at 8:49 AM
          Steven Brandt <<a href="mailto:sbrandt@cct.lsu.edu"
            moz-do-not-send="true" class="moz-txt-link-freetext">sbrandt@cct.lsu.edu</a>>
          wrote:<br>
        </div>
        <blockquote class="gmail_quote"
style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">I
          could add Visit. I included it on etk1 for the workshop. The
          only <br>
          catch is it has to run headless.<br>
          <br>
          --Steve<br>
          <br>
          On 6/30/2025 12:20 PM, Roland Haas wrote:<br>
          > Hello all,<br>
          ><br>
          > There's no VisIt instance installed on the tutorial
          server (it only<br>
          > provides an interface using jupyter notebooks, no X11
          server access).<br>
          ><br>
          > I believe Steve has written some Python code to visualize
          CarpetX data.<br>
          ><br>
          > Yours,<br>
          > Roland<br>
          ><br>
          >> [CAUTION: Non-UBC Email]<br>
          >><br>
          >> Javiera<br>
          >><br>
          >> Unfortunately I don't recall what software is
          installed on the ETK tutorial server... I'm sure someone else
          can help us out here?<br>
          >><br>
          >> -erik<br>
          >><br>
          >>> On Jun 30, 2025, at 12:17, Javiera Hernández
          Morales <<a href="mailto:javihernandezm@posteo.net"
            target="_blank" moz-do-not-send="true"
            class="moz-txt-link-freetext">javihernandezm@posteo.net</a>>
          wrote:<br>
          >>><br>
          >>> Hi Erik,<br>
          >>><br>
          >>> Thanks for your answer. Maybe for more context I
          should mention that I am starting to learn how to use the ETK,
          and for that I am using the notebooks provided in the tutorial
          server (<a href="http://etk.cct.lsu.edu" rel="noreferrer"
            target="_blank" moz-do-not-send="true">etk.cct.lsu.edu</a>
          <<a href="http://etk.cct.lsu.edu/" rel="noreferrer"
            target="_blank" moz-do-not-send="true"
            class="moz-txt-link-freetext">http://etk.cct.lsu.edu/</a>>),
          together with some of the ones used for the last ETK workshop.<br>
          >>><br>
          >>> To answer your last question, I am not doing
          anything specific with the output, I wanted to get 3D data to
          see if that could help me visualise the output of the examples
          I did with the WaveToyX thorn.<br>
          >>><br>
          >>> Unfortunately I am not familiar with SILO, so I
          tried to use the 1D .tsv files, but they only provide the
          values in a slice (for example the wave as a function of x,
          for y=z=0), but I wanted to create a 3D plot similar to the
          one found in the CreatingANewThorn-WaveEqn notebook from the
          tutorial server (I leave a screenshot attached), that is why I
          thought of outputting 3D.<br>
          >>><br>
          >>> To use SILO files I understand that one has to
          have VisIt installed, however when I wanted to install it in
          the tutorial server via terminal, I got the error that I am
          not allowed to install software, which I suppose makes sense.<br>
          >>><br>
          >>> In principle all I want to do is experiment with
          the WaveToyX thorn (and the other examples, like
          SpacetimeWaveToyX or FluxWaveToyX), changing parameters and
          see how things behave, but I am struggling a lot with the
          visualisation part. Do you have any recommendations that I
          could implement in the environment of the ETK Tutorial server?<br>
          >>><br>
          >>> Thanks in advance.<br>
          >>><br>
          >>> Best regards,<br>
          >>><br>
          >>> Javiera H.M.<br>
          >>><br>
          >>> <Screen Shot 2025-06-30 at 17.12.42
          p.m..png><br>
          >>>    <br>
          >>>> El 30.06.2025, a las 16:45, Erik Schnetter
          <<a href="mailto:schnetter@gmail.com" target="_blank"
            moz-do-not-send="true" class="moz-txt-link-freetext">schnetter@gmail.com</a>>
          escribió:<br>
          >>>><br>
          >>>> Javiera<br>
          >>>><br>
          >>>> I recommend using 3D output in the way others
          are. CarpetX supports many parameters, but not all parameter
          combinations are well tested, or are intended for production
          runs.<br>
          >>>><br>
          >>>> (1, 2) Yes, there are two ways of 3D ASCII
          (tsv) output. This is very slow and is thus only intended for
          debugging. Therefore it doesn't have all the features needed
          for comfortable output in production runs.<br>
          >>>><br>
          >>>> (3) Either OpenPMD or Silo output are the
          preferred ways for production runs. These formats are also
          supported by post-processing and visualization tools. These
          are not file formats, but they only describe how the metadata
          are arranged (i.e. what names the attributes have) in the
          output files. The actual file formats are ADIOS2 (preferred,
          faster) or HDF5. OpenPMD uses ADIOS2 by default, Silo uses
          HDF5 by default.<br>
          >>>><br>
          >>>> I do not know why the OpenPMD/HDF5 output is
          not working. The error message doesn't show enough detail.<br>
          >>>><br>
          >>>> If you want HDF5 output then I recommend
          using Silo. This will produce an HDF5 file. I'm not sure
          that's what you want because, whatever you are going to do
          with the file, you will need to understand the metadata in the
          file, and thus that tool or script will need to understand
          either the OpenMPD or Silo layout. Otherwise your HDF5 will
          look like a bag of 3D arrays, each array describing a Fortran
          array, and it will be very difficult to find out which
          component of which variable and which time step on which
          refinement level is stored in what array: That's what the
          metadata describes.<br>
          >>>><br>
          >>>> On the other hand, if you want to have an
          easy way to read the file, then you could use e.g. the Julia
          or Python of C++ bindings of the OpenMPD library, and you then
          wouldn't need to care whether the low-level file format is
          ADIOS2 or HDF5.<br>
          >>>><br>
          >>>> What do you want to do with the 3D output?<br>
          >>>><br>
          >>>> -erik<br>
          >>>>    <br>
          >>>>> On Jun 27, 2025, at 12:54, Javiera
          Hernández Morales <<a
            href="mailto:javihernandezm@posteo.net" target="_blank"
            moz-do-not-send="true" class="moz-txt-link-freetext">javihernandezm@posteo.net</a>>
          wrote:<br>
          >>>>><br>
          >>>>> Hi all,<br>
          >>>>><br>
          >>>>> I am starting to learn the use of CarpetX
          and for this I started using the WaveToyX thorn. I wanted to
          ask for guidance for three problems that I have encountered so
          far, all of them related to the output data:<br>
          >>>>><br>
          >>>>> 1) I wanted to get 3D data, for example
          in .tsv format. Here I realised that there is an ambiguous
          definition in the documentation for the parameter “out_tsv”,
          which in section 12.1 it says to control TSV output and have
          default value “yes”, but in section 14 it says to control the
          3D output in TSV and have default value “no”. This last
          behaviour is the one that I encounter when running the
          parfiles.<br>
          >>>>><br>
          >>>>> 2) When I set up “out_tsv" to “yes” and
          “out_tsv_every” to a number, for example = 16, I get 1D output
          every 16 iterations, but 3D output in every iteration,
          therefore I suspect that “out_tsv_every” is only controlling
          the frequency of the 1D output, and I cannot find a way to
          control the frequency of 3D output.<br>
          >>>>><br>
          >>>>> 3) I attempted to output data in HDF5
          format but I did not succeed. I first set the parameter
          “openpmd_format” to “HDF5” and also set “out_openpmd_vars” to
          the variables that I wanted, but I got an error in the first
          iteration:<br>
          >>>>><br>
          >>>>> INFO (CarpetX): OutputGH: iteration 0,
          time 0.000000, run time 1 s<br>
          >>>>> INFO (CarpetX): OutputOpenPMD...<br>
          >>>>> INFO (CarpetX): Creating openPMD
          object...<br>
          >>>>> INFO (CarpetX):   options:<br>
          >>>>>    {<br>
          >>>>>      "adios2": {<br>
          >>>>>        "dataset": {<br>
          >>>>>          "operators": [<br>
          >>>>>          ]<br>
          >>>>>        }<br>
          >>>>>      }<br>
          >>>>>    }<br>
          >>>>><br>
          >>>>> [et-juphub:699479] *** An error occurred
          in MPI_Comm_create_keyval<br>
          >>>>> [et-juphub:699479] *** reported by
          process [211877889,2]<br>
          >>>>> [et-juphub:699479] *** on communicator
          MPI_COMM_WORLD<br>
          >>>>> [et-juphub:699479] *** MPI_ERR_ARG:
          invalid argument of some other kind<br>
          >>>>> [et-juphub:699479] ***
          MPI_ERRORS_ARE_FATAL (processes in this communicator will now
          abort,<br>
          >>>>> [et-juphub:699479] ***    and potentially
          your MPI job)<br>
          >>>>> [et-juphub:699473] PMIX ERROR:
          UNREACHABLE in file ../../../src/server/pmix_server.c at line
          2193<br>
          >>>>> [et-juphub:699473] 3 more processes have
          sent help message help-mpi-errors.txt / mpi_errors_are_fatal<br>
          >>>>> [et-juphub:699473] Set MCA parameter
          "orte_base_help_aggregate" to 0 to see all help / error
          messages<br>
          >>>>> Simfactory Done at date: Thu 26 Jun 2025
          09:19:08 AM UTC<br>
          >>>>> And I did not know how to move on from
          there.<br>
          >>>>> I am working on the ETK Tutorial server,
          in case that is important.<br>
          >>>>> Thanks in advance to anyone who took the
          time to read until here, I will be looking forward to any
          piece of advice :)<br>
          >>>>> Best,<br>
          >>>>> Javiera H.M.<br>
          >>>>>
          _______________________________________________<br>
          >>>>> Users mailing list<br>
          >>>>> <a
            href="mailto:Users@einsteintoolkit.org" target="_blank"
            moz-do-not-send="true" class="moz-txt-link-freetext">Users@einsteintoolkit.org</a><br>
          >>>>> <a
href="http://lists.einsteintoolkit.org/mailman/listinfo/users"
            rel="noreferrer" target="_blank" moz-do-not-send="true"
            class="moz-txt-link-freetext">http://lists.einsteintoolkit.org/mailman/listinfo/users</a><br>
          >>>>    <br>
          >>>    <br>
          ><br>
          > Yours,<br>
          > Roland<br>
          ><br>
          _______________________________________________<br>
          Users mailing list<br>
          <a href="mailto:Users@einsteintoolkit.org" target="_blank"
            moz-do-not-send="true" class="moz-txt-link-freetext">Users@einsteintoolkit.org</a><br>
          <a
href="http://lists.einsteintoolkit.org/mailman/listinfo/users"
            rel="noreferrer" target="_blank" moz-do-not-send="true"
            class="moz-txt-link-freetext">http://lists.einsteintoolkit.org/mailman/listinfo/users</a><br>
        </blockquote>
      </div>
    </blockquote>
  </body>
</html>