midgard.data

midgard.data._h5utils

Simple utilities used by Dataset when dealing with HDF5 files

dict2h5attr()

Full name: midgard.data._h5utils.dict2h5attr

Signature: (dct:Dict[str, str]) -> str

Convert a dictionary to a string that can be stored as an HDF5 attribute

h5attr2dict()

Full name: midgard.data._h5utils.h5attr2dict

Signature: (attr:str) -> List[str]

Convert an HDF5 attribute to a dictionary of strings

h5attr2list()

Full name: midgard.data._h5utils.h5attr2list

Signature: (attr:str) -> List[str]

Convert an HDF5 attribute to a list of strings

h5attr2tuple()

Full name: midgard.data._h5utils.h5attr2tuple

Signature: (attr:str) -> Tuple[str, ...]

Convert an HDF5 attribute to a list of strings

sequence2h5attr()

Full name: midgard.data._h5utils.sequence2h5attr

Signature: (lst:Sequence[str]) -> str

Convert a list to a string that can be stored as an HDF5 attribute

midgard.data._position

Array with positions

LlhPosition

Full name: midgard.data._position.LlhPosition

Signature: (val, **pos_args)

LlhPosition.aberrated_direction_to()

Full name: midgard.data._position.aberrated_direction_to

Signature: (self, other)

LlhPosition.aberrated_elevation_to()

Full name: midgard.data._position.aberrated_elevation_to

Signature: (self, other)

LlhPosition.aberration_to()

Full name: midgard.data._position.aberration_to

Signature: (self, other)

LlhPosition.azimuth_to()

Full name: midgard.data._position.azimuth_to

Signature: (self, other)

LlhPosition.column_names (tuple)

column_names = ('lat', 'lon', 'height')

LlhPosition.create()

Full name: midgard.data._position.create

Signature: (val:numpy.ndarray, system:str, **pos_args:Any) -> 'PositionArray'

Factory for creating PositionArrays for different systems

See each position class for exact optional parameters.

Args:

Returns:

Array with positions in the given system.

LlhPosition.direction_to()

Full name: midgard.data._position.direction_to

Signature: (self, other)

LlhPosition.distance_to()

Full name: midgard.data._position.distance_to

Signature: (self, other)

Distance to other positions in current system

Args:

Returns:

Array of distances to other position array.

LlhPosition.elevation_to()

Full name: midgard.data._position.elevation_to

Signature: (self, other)

LlhPosition.from_position()

Full name: midgard.data._position.from_position

Signature: (val:numpy.ndarray, other:'PositionArray') -> 'PositionArray'

Create a new position with given values and same attributes as other position

Factory method for creating a new position array with the given values. Attributes will be copied from the other position.

LlhPosition.system (str)

system = 'llh'

LlhPosition.to_system()

Full name: midgard.data._position.to_system

Signature: (self, system:str) -> 'PositionArray'

Convert position to a different system

Returns a new PositionArray with the same position in the new system.

Args:

Returns:

PositionArray representing the same positions in the new system.

LlhPosition.unit()

Full name: midgard.data._position.unit

Signature: (field:str='') -> Tuple[str, ...]

Unit of field

LlhPosition.vector_to()

Full name: midgard.data._position.vector_to

Signature: (self, other:'PositionArray') -> numpy.ndarray

Vector to other positions in current system

Args:

Returns:

Array of vectors to other position array.

LlhPosition.zenith_distance_to()

Full name: midgard.data._position.zenith_distance_to

Signature: (self, other)

PositionArray

Full name: midgard.data._position.PositionArray

Signature: (val, **pos_args)

Base class for Position arrays

This PositionArray should not be instatiated. Instead instantiate one of the system specific subclasses, typically using the Position factory function.

PositionArray.aberrated_direction_to()

Full name: midgard.data._position.aberrated_direction_to

Signature: (self, other)

PositionArray.aberrated_elevation_to()

Full name: midgard.data._position.aberrated_elevation_to

Signature: (self, other)

PositionArray.aberration_to()

Full name: midgard.data._position.aberration_to

Signature: (self, other)

PositionArray.azimuth_to()

Full name: midgard.data._position.azimuth_to

Signature: (self, other)

PositionArray.column_names (NoneType)

column_names = None

PositionArray.create()

Full name: midgard.data._position.create

Signature: (val:numpy.ndarray, system:str, **pos_args:Any) -> 'PositionArray'

Factory for creating PositionArrays for different systems

See each position class for exact optional parameters.

Args:

Returns:

Array with positions in the given system.

PositionArray.direction_to()

Full name: midgard.data._position.direction_to

Signature: (self, other)

PositionArray.distance_to()

Full name: midgard.data._position.distance_to

Signature: (self, other)

Distance to other positions in current system

Args:

Returns:

Array of distances to other position array.

PositionArray.elevation_to()

Full name: midgard.data._position.elevation_to

Signature: (self, other)

PositionArray.from_position()

Full name: midgard.data._position.from_position

Signature: (val:numpy.ndarray, other:'PositionArray') -> 'PositionArray'

Create a new position with given values and same attributes as other position

Factory method for creating a new position array with the given values. Attributes will be copied from the other position.

PositionArray.system (NoneType)

system = None

PositionArray.to_system()

Full name: midgard.data._position.to_system

Signature: (self, system:str) -> 'PositionArray'

Convert position to a different system

Returns a new PositionArray with the same position in the new system.

Args:

Returns:

PositionArray representing the same positions in the new system.

PositionArray.unit()

Full name: midgard.data._position.unit

Signature: (field:str='') -> Tuple[str, ...]

Unit of field

PositionArray.vector_to()

Full name: midgard.data._position.vector_to

Signature: (self, other:'PositionArray') -> numpy.ndarray

Vector to other positions in current system

Args:

Returns:

Array of vectors to other position array.

PositionArray.zenith_distance_to()

Full name: midgard.data._position.zenith_distance_to

Signature: (self, other)

TrsPosition

Full name: midgard.data._position.TrsPosition

Signature: (val, **pos_args)

TrsPosition.aberrated_direction_to()

Full name: midgard.data._position.aberrated_direction_to

Signature: (self, other)

TrsPosition.aberrated_elevation_to()

Full name: midgard.data._position.aberrated_elevation_to

Signature: (self, other)

TrsPosition.aberration_to()

Full name: midgard.data._position.aberration_to

Signature: (self, other)

TrsPosition.azimuth_to()

Full name: midgard.data._position.azimuth_to

Signature: (self, other)

TrsPosition.column_names (tuple)

column_names = ('x', 'y', 'z')

TrsPosition.create()

Full name: midgard.data._position.create

Signature: (val:numpy.ndarray, system:str, **pos_args:Any) -> 'PositionArray'

Factory for creating PositionArrays for different systems

See each position class for exact optional parameters.

Args:

Returns:

Array with positions in the given system.

TrsPosition.direction_to()

Full name: midgard.data._position.direction_to

Signature: (self, other)

TrsPosition.distance_to()

Full name: midgard.data._position.distance_to

Signature: (self, other)

Distance to other positions in current system

Args:

Returns:

Array of distances to other position array.

TrsPosition.elevation_to()

Full name: midgard.data._position.elevation_to

Signature: (self, other)

TrsPosition.from_position()

Full name: midgard.data._position.from_position

Signature: (val:numpy.ndarray, other:'PositionArray') -> 'PositionArray'

Create a new position with given values and same attributes as other position

Factory method for creating a new position array with the given values. Attributes will be copied from the other position.

TrsPosition.system (str)

system = 'trs'

TrsPosition.to_system()

Full name: midgard.data._position.to_system

Signature: (self, system:str) -> 'PositionArray'

Convert position to a different system

Returns a new PositionArray with the same position in the new system.

Args:

Returns:

PositionArray representing the same positions in the new system.

TrsPosition.unit()

Full name: midgard.data._position.unit

Signature: (field:str='') -> Tuple[str, ...]

Unit of field

TrsPosition.vector_to()

Full name: midgard.data._position.vector_to

Signature: (self, other:'PositionArray') -> numpy.ndarray

Vector to other positions in current system

Args:

Returns:

Array of vectors to other position array.

TrsPosition.zenith_distance_to()

Full name: midgard.data._position.zenith_distance_to

Signature: (self, other)

register_attribute()

Full name: midgard.data._position.register_attribute

Signature: (name:str) -> None

Function used to register new attributes on position arrays

The registered attributes will be available as attributes on PositionArray and its subclasses. In addition, each attribute can be given as a parameter when creating a PositionArray.

The reason for using this register-function instead of a regular attribute is to allow additional attributes to be added on all position systems.

Args:

register_field()

Full name: midgard.data._position.register_field

Signature: (units:List[str]) -> Callable

Decorator used to register fields and their units

register_system()

Full name: midgard.data._position.register_system

Signature: (convert_to:Dict[str, Callable]=None, convert_from:Dict[str, Callable]=None) -> Callable[[Callable], Callable]

Decorator used to register new position systems

The system name is read from the .system attribute of the Position class.

Args:

Returns:

Decorator registering system.

midgard.data._position_delta

Array with positions

EnuPositionDelta

Full name: midgard.data._position_delta.EnuPositionDelta

Signature: (val, ref_pos, **delta_args)

EnuPositionDelta.column_names (tuple)

column_names = ('east', 'north', 'up')

EnuPositionDelta.create()

Full name: midgard.data._position_delta.create

Signature: (val:numpy.ndarray, system:str, ref_pos, **delta_args:Any) -> 'PositionDeltaArray'

Factory for creating PositionDeltaArrays for different systems

See each position delta class for exact optional parameters.

Args:

Returns:

Array with positions in the given system.

EnuPositionDelta.system (str)

system = 'enu'

EnuPositionDelta.to_system()

Full name: midgard.data._position_delta.to_system

Signature: (self, system:str) -> 'PositionDeltaArray'

Convert position to a different system

Returns a new PositionDeltaArray with the same position in the new system.

Args:

Returns:

PositionDeltaArray representing the same positions in the new system.

PositionDeltaArray

Full name: midgard.data._position_delta.PositionDeltaArray

Signature: (val, ref_pos, **delta_args)

Base class for position deltas

This PositionDeltaArray should not be instatiated. Instead instantiate one of the system specific subclasses, typically using the PositionDelta factory function.

PositionDeltaArray.column_names (NoneType)

column_names = None

PositionDeltaArray.create()

Full name: midgard.data._position_delta.create

Signature: (val:numpy.ndarray, system:str, ref_pos, **delta_args:Any) -> 'PositionDeltaArray'

Factory for creating PositionDeltaArrays for different systems

See each position delta class for exact optional parameters.

Args:

Returns:

Array with positions in the given system.

PositionDeltaArray.system (NoneType)

system = None

PositionDeltaArray.to_system()

Full name: midgard.data._position_delta.to_system

Signature: (self, system:str) -> 'PositionDeltaArray'

Convert position to a different system

Returns a new PositionDeltaArray with the same position in the new system.

Args:

Returns:

PositionDeltaArray representing the same positions in the new system.

TrsPositionDelta

Full name: midgard.data._position_delta.TrsPositionDelta

Signature: (val, ref_pos, **delta_args)

TrsPositionDelta.column_names (tuple)

column_names = ('x', 'y', 'z')

TrsPositionDelta.create()

Full name: midgard.data._position_delta.create

Signature: (val:numpy.ndarray, system:str, ref_pos, **delta_args:Any) -> 'PositionDeltaArray'

Factory for creating PositionDeltaArrays for different systems

See each position delta class for exact optional parameters.

Args:

Returns:

Array with positions in the given system.

TrsPositionDelta.system (str)

system = 'trs'

TrsPositionDelta.to_system()

Full name: midgard.data._position_delta.to_system

Signature: (self, system:str) -> 'PositionDeltaArray'

Convert position to a different system

Returns a new PositionDeltaArray with the same position in the new system.

Args:

Returns:

PositionDeltaArray representing the same positions in the new system.

delta_enu2trs()

Full name: midgard.data._position_delta.delta_enu2trs

Signature: (enu:'EnuPositionDelta') -> numpy.ndarray

Convert position deltas from ENU to TRS

delta_trs2enu()

Full name: midgard.data._position_delta.delta_trs2enu

Signature: (trs:'TrsPositionDelta') -> numpy.ndarray

Convert position deltas from TRS to ENU

register_system()

Full name: midgard.data._position_delta.register_system

Signature: (convert_to:Dict[str, Callable]=None, convert_from:Dict[str, Callable]=None) -> Callable[[Callable], Callable]

Decorator used to register new position systems

The system name is read from the .system attribute of the Position class.

Args:

Returns:

Decorator registering system.

midgard.data._time

Array with time epochs

TimeArray

Full name: midgard.data._time.TimeArray

Signature: (val, val2=None, format='', _jd1=None, _jd2=None)

TimeArray.create()

Full name: midgard.data._time.create

Signature: (val:numpy.ndarray, scale:str, format:str, val2:Union[numpy.ndarray, NoneType]=None) -> 'TimeArray'

Factory for creating TimeArrays for different scales

See each time class for exact optional parameters.

Args:

Returns:

Array with times in the given scale.

TimeArray.from_jds()

Full name: midgard.data._time.from_jds

Signature: (jd1:numpy.ndarray, jd2:numpy.ndarray, format:str) -> 'TimeArray'

Create a new time array with given Julian dates and format, keep scale

TimeArray.now()

Full name: midgard.data._time.now

Signature: (scale='utc', format='datetime') -> 'TimeArray'

Create a new time representing now

TimeArray.scale (NoneType)

scale = None

TimeArray.to_scale()

Full name: midgard.data._time.to_scale

Signature: (self, scale:str) -> 'TimeArray'

Convert time to a different scale

Returns a new TimeArray with the same time in the new scale.

Args:

Returns:

TimeArray representing the same times in the new scale.

TimeArray.unit()

Full name: midgard.data._time.unit

Signature: (self, field:str='') -> Tuple[str, ...]

Unit of field

register_scale()

Full name: midgard.data._time.register_scale

Signature: (convert_to:Dict[str, Callable]=None, convert_from:Dict[str, Callable]=None) -> Callable[[Callable], Callable]

Decorator used to register new time scales

The scale name is read from the .scale attribute of the Time class.

Args:

Returns:

Decorator registering scale.

midgard.data._time_formats

Array with time epochs

TimeDateTime

Full name: midgard.data._time_formats.TimeDateTime

Signature: (val, val2=None)

TimeDateTime.day2seconds (float)

day2seconds = 86400.0

TimeDateTime.format (str)

format = 'datetime'

TimeDateTime.from_jds()

Full name: midgard.data._time_formats.from_jds

Signature: (jd1, jd2)

TimeDateTime.to_jds()

Full name: midgard.data._time_formats.to_jds

Signature: (val, val2=None)

TimeDateTime.unit (NoneType)

unit = None

TimeDateTime.week2days (float)

week2days = 6.999999999999998

TimeFormat

Full name: midgard.data._time_formats.TimeFormat

Signature: (val, val2=None)

TimeFormat.day2seconds (float)

day2seconds = 86400.0

TimeFormat.format (NoneType)

format = None

TimeFormat.from_jds()

Full name: midgard.data._time_formats.from_jds

Signature: (jd1, jd2)

Convert Julian days to the right format

TimeFormat.to_jds()

Full name: midgard.data._time_formats.to_jds

Signature: (val, val2)

Convert val and val2 to Julian days and set the .jd1 and .jd2 attributes

TimeFormat.unit (NoneType)

unit = None

TimeFormat.week2days (float)

week2days = 6.999999999999998

TimeGPSWeekSec

Full name: midgard.data._time_formats.TimeGPSWeekSec

Signature: (val, val2=None)

GPS weeks and seconds.

TimeGPSWeekSec.day2seconds (float)

day2seconds = 86400.0

TimeGPSWeekSec.format (str)

format = 'gps_ws'

TimeGPSWeekSec.from_jds()

Full name: midgard.data._time_formats.from_jds

Signature: (jd1, jd2)

TimeGPSWeekSec.to_jds()

Full name: midgard.data._time_formats.to_jds

Signature: (wwww, sec)

TimeGPSWeekSec.unit (tuple)

unit = ('week', 'second')

TimeGPSWeekSec.week2days (float)

week2days = 6.999999999999998

TimeJD

Full name: midgard.data._time_formats.TimeJD

Signature: (val, val2=None)

TimeJD.day2seconds (float)

day2seconds = 86400.0

TimeJD.format (str)

format = 'jd'

TimeJD.from_jds()

Full name: midgard.data._time_formats.from_jds

Signature: (jd1, jd2)

TimeJD.to_jds()

Full name: midgard.data._time_formats.to_jds

Signature: (val, val2)

TimeJD.unit (tuple)

unit = ('day',)

TimeJD.week2days (float)

week2days = 6.999999999999998

TimeMJD

Full name: midgard.data._time_formats.TimeMJD

Signature: (val, val2=None)

Modified Julian Date time format.

This represents the number of days since midnight on November 17, 1858. For example, 51544.0 in MJD is midnight on January 1, 2000.

TimeMJD.day2seconds (float)

day2seconds = 86400.0

TimeMJD.format (str)

format = 'mjd'

TimeMJD.from_jds()

Full name: midgard.data._time_formats.from_jds

Signature: (jd1, jd2)

TimeMJD.to_jds()

Full name: midgard.data._time_formats.to_jds

Signature: (val, val2)

TimeMJD.unit (tuple)

unit = ('day',)

TimeMJD.week2days (float)

week2days = 6.999999999999998

TimeYear

Full name: midgard.data._time_formats.TimeYear

Signature: (val, val2=None)

Year.

TODO: conversion is not correct!!!

TimeYear.day2seconds (float)

day2seconds = 86400.0

TimeYear.format (str)

format = 'decimalyear'

TimeYear.from_jds()

Full name: midgard.data._time_formats.from_jds

Signature: (jds1, jds2)

TimeYear.to_jds()

Full name: midgard.data._time_formats.to_jds

Signature: (val, val2=None)

TimeYear.unit (tuple)

unit = ('common_year',)

TimeYear.week2days (float)

week2days = 6.999999999999998

register_format()

Full name: midgard.data._time_formats.register_format

Signature: (cls:Callable) -> Callable

Decorator used to register new time formats

The format name is read from the .format attribute of the TimeFormat class.

midgard.data._time_scales

Time scales and conversions between them

GpsTime

Full name: midgard.data._time_scales.GpsTime

Signature: (val, val2=None, format='', _jd1=None, _jd2=None)

GpsTime.scale (str)

scale = 'gps'

TaiTime

Full name: midgard.data._time_scales.TaiTime

Signature: (val, val2=None, format='', _jd1=None, _jd2=None)

TaiTime.scale (str)

scale = 'tai'

TtTime

Full name: midgard.data._time_scales.TtTime

Signature: (val, val2=None, format='', _jd1=None, _jd2=None)

TtTime.scale (str)

scale = 'tt'

UtcTime

Full name: midgard.data._time_scales.UtcTime

Signature: (val, val2=None, format='', _jd1=None, _jd2=None)

UtcTime.scale (str)

scale = 'utc'

midgard.data.dataset

A dataset for handling time series data

Description:

Dataset

Full name: midgard.data.dataset.Dataset

Signature: (num_obs:int=0) -> None

A dataset representing fields of data arrays

Dataset.add_collection()

Full name: midgard.data.dataset.add_collection

Signature: (self, name, val, unit=None, write_level=None, suffix=None, **field_args)

Add a collection field to the dataset

Dataset.add_float()

Full name: midgard.data.dataset.add_float

Signature: (self, name, val, unit=None, write_level=None, suffix=None, **field_args)

Add a float field to the dataset

Dataset.add_position()

Full name: midgard.data.dataset.add_position

Signature: (self, name, val, unit=None, write_level=None, suffix=None, **field_args)

Add a position field to the dataset

Dataset.add_position_delta()

Full name: midgard.data.dataset.add_position_delta

Signature: (self, name, val, unit=None, write_level=None, suffix=None, **field_args)

Add a position_delta field to the dataset

Dataset.add_sigma()

Full name: midgard.data.dataset.add_sigma

Signature: (self, name, val, unit=None, write_level=None, suffix=None, **field_args)

Add a sigma field to the dataset

Dataset.add_time()

Full name: midgard.data.dataset.add_time

Signature: (self, name, val, unit=None, write_level=None, suffix=None, **field_args)

Add a time field to the dataset

Dataset.apply()

Full name: midgard.data.dataset.apply

Signature: (self, func:Callable, field:str, **filters:Any) -> Any

Apply a function to a field

Dataset.as_dataframe()

Full name: midgard.data.dataset.as_dataframe

Signature: (self, fields=None, index=None) -> pandas.core.frame.DataFrame

Return a representation of the dataset as a Pandas DataFrame

Dataset.as_dict()

Full name: midgard.data.dataset.as_dict

Signature: (self, fields=None) -> Dict[str, Any]

Return a representation of the dataset as a dictionary

Dataset.copy_from()

Full name: midgard.data.dataset.copy_from

Signature: (self, other:'Dataset') -> None

Copy observations from another dataset

Args:

other_dset (Dataset): The other dataset. meta_key (str): Dictionary key for introduction of an additional level in dictionary.

Dataset.count()

Full name: midgard.data.dataset.count

Signature: (self, field:str, **filters:Any) -> int

Count the number of unique values in a field

Dataset.extend()

Full name: midgard.data.dataset.extend

Signature: (self, other_dataset:'Dataset') -> None

Add observations from another dataset to the end of this dataset

Dataset.filter()

Full name: midgard.data.dataset.filter

Signature: (self, idx=None, **filters) -> <built-in function array>

Filter observations

TODO: default_field_suffix

Dataset.for_each()

Full name: midgard.data.dataset.for_each

Signature: (self, key)

Do something for each suffix

Dataset.mean()

Full name: midgard.data.dataset.mean

Signature: (self, field:str, **filters:Any) -> float

Calculate mean of a field

Dataset.num()

Full name: midgard.data.dataset.num

Signature: (self, **filters:Any) -> int

Number of observations satisfying the filters

Dataset.plot_values()

Full name: midgard.data.dataset.plot_values

Signature: (self, field:str) -> <built-in function array>

Return values of a field in a form that can be plotted

Dataset.read()

Full name: midgard.data.dataset.read

Signature: (file_path:Union[str, pathlib.Path]) -> 'Dataset'

Read a dataset from file

Dataset.rms()

Full name: midgard.data.dataset.rms

Signature: (self, field:str, **filters:Any) -> float

Calculate Root Mean Square of a field

Dataset.subset()

Full name: midgard.data.dataset.subset

Signature: (self, idx:<built-in function array>) -> None

Remove observations from all fields based on index

Dataset.unique()

Full name: midgard.data.dataset.unique

Signature: (self, field, **filters) -> <built-in function array>

List unique values of a given field

TODO: default_field_suffix

Dataset.unit()

Full name: midgard.data.dataset.unit

Signature: (self, field)

Unit for values in a given field

Dataset.version (str)

version = 'Dataset v3.0, Midgard v0.2.0'

Dataset.write()

Full name: midgard.data.dataset.write

Signature: (self, file_path:Union[str, pathlib.Path], write_level:Union[midgard.collections.enums.WriteLevel, NoneType]=None) -> None

Write a dataset to file

Meta

Full name: midgard.data.dataset.Meta

Signature: (*args, **kwargs)

Meta.add()

Full name: midgard.data.dataset.add

Signature: (self, section, name, value)

Add information to the metaset

Meta.add_event()

Full name: midgard.data.dataset.add_event

Signature: (self, timestamp, event_type, description)

Add event to the metaset

Meta.copy_from()

Full name: midgard.data.dataset.copy_from

Signature: (self, other)

Meta.get_events()

Full name: midgard.data.dataset.get_events

Signature: (self, *event_types)

Get events from the metaset

Meta.read()

Full name: midgard.data.dataset.read

Signature: (self, h5_group)

Meta.write()

Full name: midgard.data.dataset.write

Signature: (self, h5_group)

field_type (str)

field_type = 'time'

midgard.data.fieldtypes

Field types that can be used by Dataset

function()

Full name: midgard.data.fieldtypes.function

Signature: (plugin_name:str) -> Callable

Function creating new field

names()

Full name: midgard.data.fieldtypes.names

Signature: () -> List[str]

Names of fieldtype plugins

midgard.data.fieldtypes._fieldtype

Abstract class used to define different types of tables for a Dataset

FieldType

Full name: midgard.data.fieldtypes._fieldtype.FieldType

Signature: (num_obs, master, name, val, unit=None, write_level=None, **field_args)

Abstract class representing a type of field in the Dataset

FieldType.as_dataframe()

Full name: midgard.data.fieldtypes._fieldtype.as_dataframe

Signature: (self, fields=None, index=None) -> pandas.core.frame.DataFrame

Return a representation of the field as a Pandas DataFrame

FieldType.as_dict()

Full name: midgard.data.fieldtypes._fieldtype.as_dict

Signature: (self, fields=None) -> Dict[str, Any]

Return a representation of the field as a dictionary

FieldType.copy()

Full name: midgard.data.fieldtypes._fieldtype.copy

Signature: (self) -> 'FieldType'

Make a copy of field

FieldType.copy_from()

Full name: midgard.data.fieldtypes._fieldtype.copy_from

Signature: (self, other_field) -> None

Copy data from another field

FieldType.extend()

Full name: midgard.data.fieldtypes._fieldtype.extend

Signature: (self, other_field) -> None

Add observations from another field

FieldType.read()

Full name: midgard.data.fieldtypes._fieldtype.read

Signature: (h5_group, master) -> 'FieldType'

Read a field from a HDF5 data source

FieldType.subset()

Full name: midgard.data.fieldtypes._fieldtype.subset

Signature: (self, idx:<built-in function array>) -> None

Remove observations from a field based on index

FieldType.unit()

Full name: midgard.data.fieldtypes._fieldtype.unit

Signature: (self, subfield)

Unit(s) of field

FieldType.write()

Full name: midgard.data.fieldtypes._fieldtype.write

Signature: (self, h5_group, write_level:midgard.collections.enums.WriteLevel) -> None

Write data to a HDF5 data source

midgard.data.fieldtypes.collection

A Dataset collection field consisting of other fields

Collection

Full name: midgard.data.fieldtypes.collection.Collection

Signature: ()

Collection.unit()

Full name: midgard.data.fieldtypes.collection.unit

Signature: (self, field)

Unit for values in a given field

CollectionField

Full name: midgard.data.fieldtypes.collection.CollectionField

Signature: (num_obs, master, name, val, unit=None, write_level=None, **field_args)

CollectionField.read()

Full name: midgard.data.fieldtypes.collection.read

Signature: (h5_group, master)

CollectionField.write()

Full name: midgard.data.fieldtypes.collection.write

Signature: (self, h5_group, write_level)

Write data to a HDF5 data source

midgard.data.fieldtypes.float

A Dataset float field

FloatField

Full name: midgard.data.fieldtypes.float.FloatField

Signature: (num_obs, master, name, val, unit=None, write_level=None, **field_args)

midgard.data.fieldtypes.position

A Dataset position field

PositionField

Full name: midgard.data.fieldtypes.position.PositionField

Signature: (num_obs, master, name, val, unit=None, write_level=None, **field_args)

midgard.data.fieldtypes.position_delta

A Dataset position delta field

PositionDeltaField

Full name: midgard.data.fieldtypes.position_delta.PositionDeltaField

Signature: (num_obs, master, name, val, unit=None, write_level=None, **field_args)

midgard.data.fieldtypes.sigma

A Dataset sigma field

SigmaField

Full name: midgard.data.fieldtypes.sigma.SigmaField

Signature: (num_obs, master, name, val, unit=None, write_level=None, **field_args)

midgard.data.fieldtypes.time

A Dataset time field

TimeField

Full name: midgard.data.fieldtypes.time.TimeField

Signature: (num_obs, master, name, val, unit=None, write_level=None, **field_args)

midgard.data.position

Array with positions

Position()

Full name: midgard.data.position.Position

Signature: (val:numpy.ndarray, system:str, **pos_args:Any) -> 'PositionArray'

Factory for creating PositionArrays for different systems

See each position class for exact optional parameters.

Args:

Returns:

Array with positions in the given system.

PositionDelta()

Full name: midgard.data.position.PositionDelta

Signature: (val:numpy.ndarray, system:str, ref_pos:midgard.data._position.PositionArray, **delta_args:Any) -> midgard.data._position_delta.PositionDeltaArray

Factory for creating PositionArrays for different systems

See each position class for exact optional parameters.

Args:

Returns:

Array with positions in the given system.

midgard.data.sigma

Array with sigma values

See https://docs.scipy.org/doc/numpy/user/basics.subclassing.html for information about subclassing Numpy arrays.

SigmaArray is a regular Numpy array with an added field, sigma.

SigmaArray

Full name: midgard.data.sigma.SigmaArray

Signature: (values, sigma=None)

midgard.data.time

Array with time epochs

Time()

Full name: midgard.data.time.Time

Signature: (val:numpy.ndarray, scale:str, format:str, val2:Union[numpy.ndarray, NoneType]=None) -> 'TimeArray'

Factory for creating TimeArrays for different systems

See each time class for exact optional parameters.

Args:

Returns:

Array with epochs in the given time scale and format