Analysis and post-processing
(page under construction)
This page collects information on existing tools which can be used to analyse data produced using the Einstein Toolkit. See also Visualization of simulation results.
|Authors||Ian Hinder and Barry Wardell|
|Other info||Documentation, unit tests (automatic on commit)|
SimulationTools provides a functional interface to simulation data which deals transparently with merging output from different segments, and can read data from several different thorns, depending on what is available. The package supports reading Carpet HDF5 data and doing the required component-merging etc. so that you can do analysis on the resulting data in Mathematica. This supports 1D, 2D and 3D data, but is essentially dimension-agnostic. It has a component called SimulationOverview which displays a panel summarising a BBH simulation, including run speed and memory usage as a function of coordinate time, BH trajectories, separation, waveforms, etc. SimulationTools is coupled to a C++ replacement for the Mathematica HDF5 reader.
SimulationTools is available under the GPL and is developed on BitBucket, and would be a good candidate for including in the Einstein Toolkit at some point.
A more detailed overview of the features in SimulationTools is available.
|Requirements||Python 2.7, HDF5, PyTables, H5Py, NumPy, SciPy|
This package contains modules to read and represent various CACTUS data formats in Python, and some utilities for data analysis. In detail,
- simdir is an abstraction of one or more CACTUS output directories, allowing access to data of various type by variable name, and seamlessly combining data split over several directories.
- cactus_grid_h5 reads 1,2 and 3D data from CACTUS hdf5 datasets.
- cactus_grid_omni uses whatever data source it finds, e.g. cut a 3D file to get xy plane data
- grid_data represents simple and mesh refinened datsets, common arithmetic operations on them, as well as interpolation.
- cactus_scalars reads CACTUS 0D/Reductions ASCII files representing timeseries.
- cactus_gwsignal reads GW data
- cactus_multipoles reads multipole decomposition data (ASCII)
- timeseries represents timeseries and provides resampling numerical differentiation.
- fourier_util performs FFT on timeseries and searches for peaks.
- unitconv performs unit conversion with focus on geometric units, including predefined CACTUS, PIZZA, and CGS systems.
|Licence||BSD 3-clause license|
|Requirements||all in one install script|
Mostly a visualization toolkit with basic support to read Cactus data, however can do some data manipulation. The current version of the Einstein Toolkit frontend is available in Kacper Krowalik's fork of yt. It is a work in progress and highly experimental. Therefore many datasets will not be read in correctly. To attain it:
hg clone ssh://email@example.com/xarthisius/yt cd yt hg bookmark cactus python setup.py build_ext -i
if this works, you installed yt. Now just add $(pwd) to your PYTHONPATH.
Some example scripts for using and extending yt (and using the Einstein Toolkit frontend) can be found here.
|Authors||Roberto De Pietri, Francesco Maione, Frank Löffler|
PyCactus are tools currently primarily developed to read Carpet ASCII and HDF5 data (especially 0D/1D) for usage in python and plotting using matplotlib. Documentation is essentially non-existent at this point, but the scripts are not that long and for the most part should be understandable.
|Requirements||Python 3, NumPy, Matplotlib, h5py, HDF5|
A minimalist set of tools to read and plot Carpet data, with an equally minimalist set of dependencies, written in Python 3. The tools allow to read and plot 0D, Scalar, 1D data in ASCII format and 2D data in HDF5 format. The focus of these tools is to allow quickly looking at large data sets in a hassle-free way, without worrying too much about producing beautiful, publication ready figures. The main piece of software is the "rug" script, with four subcommands (rope, freeze, snake and window) to deal with various kinds of data. Quite a lot of documentation is available on the command line by typing: 'rug doc command' where command is one of the available command names.
|Requirements||Python 2.7, NumPy, h5py|
Simple, high-performance, Cactus/Carpet data reader for python-2.7.
|Requirements||Python 2.7, NumPy|
A simple set of GW analysis tools in python. Can be made to read Multipole date when using h5py for example in pyGWAnalysis/Examples/integrate-modes-ffi.py:
t = dataset[:,0] RePsi4 = dataset[:,1] ImPsi4 = dataset[:,2] WF[l][m] = WaveFunction(t, RePsi4, ImPsi4) # WF[l][m].Load("rPsi4_l"+str(l)+"m"+str(m)+".dat")