ModelOutput
- class psipy.model.base.ModelOutput(path)
Bases:
ABC
The results from a single model run.
This is a storage object that contains a number of
Variable
objects. It is not designed to be used directly, but must be sub-classed for different models.Data is stored in the
_data
attribute. This is a mapping of variable names toxarray.DataArray
variables. Each data array must haveFour dimensions
These dimensions must be labelled
['r', 'theta', 'phi', 'time']
The phi values must be latitude and not co-latitude (ie. must be in the range \([-\pi / 2, \pi / 2]\))
The theta values must be in the range \([0, 2\pi]\)
- Parameters
- path
Path to the directry containing the model output files.
Notes
Variables are loaded on demand. To see the list of available variables use
ModelOutput.variables
, and to see the list of already loaded variables useModelOutput.loaded_variables
.Attributes Summary
List of loaded variable names.
List of all variable names present in the directory.
Methods Summary
cell_corner_b
([t_idx])Get the magnetic field vector at the cell corners.
Return the units for the radial coordiate.
get_unit
(var)Return the units for a variable, and the factor needed to convert from the model output to those units.
- Returns
load_file
(var)Load data for variable var.
Attributes Documentation
- loaded_variables
List of loaded variable names.
- variables
List of all variable names present in the directory.
Methods Documentation
- abstract cell_corner_b(t_idx: Optional[int] = None) DataArray
Get the magnetic field vector at the cell corners.
- Parameters
- t_idxint, optional
If more than one timestep is present in the loaded model, a timestep index at which to get the vectors must be provided.
- Returns
- xarray.DataArray
Notes
The phi limits go from 0 to 2pi inclusive, with the vectors at phi=0 equal to the vectors at phi=2pi.
- abstract get_runit()
Return the units for the radial coordiate.
- Returns
- abstract get_unit(var)
Return the units for a variable, and the factor needed to convert from the model output to those units.
- Returns
- unit
astropy.units.Unit
- factorfloat
- unit
- abstract get_variables()
- Returns
- list
A list of all variable names present in the directory.
- abstract load_file(var)
Load data for variable var.