Examples/Usage — osirispy 0.0.1 documentation

# 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`.