SimulationIO is a data format created by @Erik Schnetter for relativistic simulations that is designed to be extremely self-describing. SimulationIO uses a category theory graph to describe all parameters of the simulation, including manifold properties and topology, coordinate system, tensorial structure, coordinate systems and tangent spaces, etc. We have a converter from Carpet's native IO format to SimulationIO and we'd like to use SimulationIO as a target for the Einstein Toolkit and Carpet.
This pull request provides a reader for SimulationIO in yt that can handle many of the situations one encounters in the Einstein Toolkit. There are, unfortunately, missing features. However, I believe that SimulationIO and the frontend are now sufficiently mature that they can be released for Einstein Toolkit users to try and make use of.
Getting Everything to Work
To use the frontend, you must:
Install a version of yt with the frontend (obviously)
install a current version of HDF5 (the one provided by Ubuntu, for example, is too old).
Install the release-0.1 version of SimulationIO as per the instructions here.
This file is my to-do list. I will keep it up to date:
The frontend can successfully read Cartesian cell-centred AMR data. However the Einstein Toolkit supports semi-structured meshes via both a multiblock and discontinuous Galerkin infrastructure. It also supports vertex-centred AMR. Sadly, none of these features are compatible with the frontend.
These are my long term goals, in rough order of priority.
Just a head's up that the last commit you just pushed was done on a new named branch simulationio. Unfortunately we don't accept pull requests that add new named branches. You may need to reissue the pull request after you fix the issue using e.g. hg strip.
Wait really? Locally I see my branch as yt and my bookmark as simulationio
I did push the bookmark: hg push -B simulationio
Ah sorry, you're fine. Bitbucket treats bookmarks like branches, sorry.