Astrophysix package documentation
Introduction
The purpose of the astrophysix
Python package is to provide computational astrophysicists a generic tool to document
their numerical projects, independently of :
the astrophysical code they used (RAMSES, AREPO, GADGET, ASH, PLUTO, MAGICS, etc),
the hardware/software parameters of their numerical setup,
the post-processing software/library they perform their scientific analysis with (Yt, Osyris, PyMSES, RADMC-3D, SAODS9, Paraview, etc.),
the type of their scientific analysis (2D column density maps, 3D power spectrum, PPV cubes, statistical analysis, etc.).
astrophysix
contains :
the
astrophysix.simdm
package follows the Simulation Datamodel (SimDM documentation) standard documented by the International Virtual Observatory Alliance.
the
astrophysix.units
package provides a more generic-purpose physical quantity and units management tool. The most common physical constants used in astrophysics are defined in this module.
With this package, users can create a SimulationStudy
in which a single numerical
project can be fully documented and :
all the reduced datasets (PNG plots, FITS files, etc.) and the experimental configuration files (e.g. RAMSES namelist) can be attached as “binary attachments”,
complete catalogs of objects identified in the simulations can be associated to the numerical experiment’s results.
It follows the hierarchical structure :
Galactica database integration
These studies can be saved in persistent and portable HDF5 files and then distributed to other members of the scientific
collaboration to be updated. SimulationStudy
HDF5 files can be uploaded with a
single-click on the Galactica simulation database to automatically deploy web pages for your
astrophysical simulation project.
SimulationStudy
HDF5 files can be uploaded on the Galactica simulation database
several times in order to :
Create new project web pages on the web application (creation),
Update pages for an existing project (update).
Warning
When you upload a SimulationStudy
HDF5 file, the Galactica server will
NEVER take the responsibility of deleting any entry from the database related to an item that
is missing in your SimulationStudy
HDF5 file. In other words, deleting an object from your
local SimulationStudy
, saving the study into a HDF5 file and uploading the file on
Galactica won’t delete the object from the database (only the creation and update behaviours are
enabled).
If you wish to remove items from the web application, you MUST do so by hand (it must be an explicit user action) in the Galactica administration interface.
Galactica validity checks
Prior to uploading any Simulation study HDF5 file on the Galactica web application, it is advised to
perform some preliminary validity checks on your project to make sure the deployment online will go smoothly. To do so,
you may use the galactica_validity_check()
method or enable the galactica_checks
option
in the SimulationStudy.save_HDF5()
method. For more details, see
How can I check validity for Galactica ?
Online data-processing services (new in version 0.6.0)
The Galactica web application also features online data-processing services through a web form. Authenticated users have the possibility to submit job requests directly on the platform to compute and retrieve post-processed datasets directly, obtained from the raw simulation data :
These job requests are then routed to an ecosystem of data-processing servers (aka Terminus servers) hosting the
raw simulation data and the required post-processing libraries.
Using the astrophysix
package, you have the possibility to define into your
SimulationStudy
which data-processing service you want to bind to a simulation’s
Snapshot
or even a
Catalog
. For more details, see Data-processing services.