Mark5BFrame

class baseband.mark5b.Mark5BFrame(header, payload, valid=None, verify=True)[source] [edit on github]

Bases: baseband.vlbi_base.frame.VLBIFrameBase

Representation of a Mark 5B frame, consisting of a header and payload.

Parameters:

header : Mark5BHeader

Wrapper around the encoded header words, providing access to the header information.

payload : Mark5BPayload

Wrapper around the payload, provding mechanisms to decode it.

valid : bool or None

Whether the data are valid. If None (default), the validity will be determined by checking whether the payload consists of the fill pattern 0x11223344.

verify : bool

Whether to do basic verification of integrity (default: True)

Notes

The Frame can also be read instantiated using class methods:

fromfile : read header and payload from a filehandle

fromdata : encode data as payload

Of course, one can also do the opposite:

tofile : method to write header and payload to filehandle

data : property that yields full decoded payload

A number of properties are defined: shape, dtype and size are the shape, type and number of complete samples of the data array, and nbytes the frame size in bytes. Furthermore, the frame acts as a dictionary, with keys those of the header. Any attribute that is not defined on the frame itself, such as .time will be looked up on the header as well.

Attributes Summary

data Full decoded frame.
dtype Numeric type of the frame data.
fill_value Value to replace invalid data in the frame.
nbytes Size of the encoded frame in bytes.
ndim Number of dimensions of the frame data.
sample_shape Shape of a sample in the frame (nchan,).
shape Shape of the frame data.
size Total number of component samples in the frame data.
valid Whether frame contains valid data.

Methods Summary

fromdata(data[, header, bps, valid, verify]) Construct frame from data and header.
fromfile(fh[, kday, ref_time, nchan, bps, …]) Read a frame from a filehandle.
keys()
tofile(fh) Write encoded frame to filehandle.
verify() Simple verification.

Attributes Documentation

data

Full decoded frame.

dtype

Numeric type of the frame data.

fill_value

Value to replace invalid data in the frame.

nbytes

Size of the encoded frame in bytes.

ndim

Number of dimensions of the frame data.

sample_shape

Shape of a sample in the frame (nchan,).

shape

Shape of the frame data.

size

Total number of component samples in the frame data.

valid

Whether frame contains valid data.

Methods Documentation

classmethod fromdata(data, header=None, bps=2, valid=True, verify=True, **kwargs)[source] [edit on github]

Construct frame from data and header.

Parameters:

data : ndarray

Array holding data to be encoded.

header : Mark5BHeader or None

If not given, will attempt to generate one using the keywords.

bps : int

Bits per elementary sample. Default: 2.

valid : bool

Whether the data are valid (default: True). If not, the payload will be set to a fill pattern.

verify : bool

Whether to do basic checks of frame integrity (default: True).

classmethod fromfile(fh, kday=None, ref_time=None, nchan=1, bps=3, valid=None, verify=True)[source] [edit on github]

Read a frame from a filehandle.

Parameters:

fh : filehandle

To read the header and payload from.

kday : int or None

Explicit thousands of MJD of the observation time. Can instead pass an approximate ref_time.

ref_time : Time or None

Reference time within 500 days of the observation time, used to infer the full MJD. Used only if kday is not given.

nchan : int, optional

Number of channels. Default: 1.

bps : int, optional

Bits per elementary sample. Default: 2.

verify : bool

Whether to do basic checks of frame integrity (default: True).

keys() [edit on github]
tofile(fh)[source] [edit on github]

Write encoded frame to filehandle.

verify() [edit on github]

Simple verification. To be added to by subclasses.