Examples/Usage
import the package in python
import osirispy as ospy
You can use the function osirispy.read() to read osiris files. It will give a different output based on the type of file that is being opened.
Grid files
Grid files are the output of vdf objects and can have between 1 and 3 dimensions. They can represent charge density, current, E.M. fields, phasespaces, etc…
osirispy.read() will output a osirispy.grid object when reading a grid-type file.
The data is a numpy array accessible at grid.data
# read grid data
griddata=ospy.read("/path/to/grid.h5")
#access grid data
data=griddata.data
The object also contains a list of osirispy.axis containing the physical dimentions of the grid file at grid.axis.
Particle (aka RAW) files
Particle files contain the output of the RAW diagnostic for a given species at a given time-step.
RAW files contain information on the quantities x1, x2, x3, p1, p2, p3, ene.
osirispy.read() will output a osirispy.raw object with the required quantities specified with a list of strings on the req_quantities parameter.
The data is a python dictionary of numpy arrays accessible at rawdata.data. An example is given below:
# read raw data
rawdata=ospy.read("/path/to/raw.h5",("x1","x2"))
#access x1 array
x1=rawdata.data["x1"]
The object also contains a dictionary with the label of each quantity accessible at rawdata.label.
Track files
Track files contain the output of the tracks diagnostic for a given species .
Track files contain information on the quantities t, x1, x2, x3, p1, p2, p3, ene
osirispy.read() will output a osirispy.track object
The data is a python dictionary of a list of numpy arrays accessible at grid data. An example is given below:
# read tracks data
trackdata=ospy.read("/path/to/track.h5",("x1","x2"))
#access x1 array of particle i
x1=trackdata.data["x1"][i]
The object also contains a dictionary with the label of each quantity accessible at trackdata.label.