virgil.amigo
AMIGO mixed-DISCO data products.
An AMIGO reduction stores, per filter, a record of DISCO coefficients (linear
combinations of log-amplitudes and phases whose errors are independent) with
the operators that map model visibilities to them. :func:load_oi_data reads
such a product into OIData objects;
OIData(record) also accepts a single record directly.
load_oi_data(path, filter_name=None)
Load one or all filters from an AMIGO mixed-DISCO NumPy product.
The file is a pickled dictionary loaded with allow_pickle=True, which
can run arbitrary code: only load files you trust.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
path
|
str or PathLike
|
|
required |
filter_name
|
str
|
Filter to load. By default every filter is loaded. |
None
|
Returns:
| Type | Description |
|---|---|
OIData or dict[str, OIData]
|
The chosen filter, or a dictionary of all filters. |
is_mixed_disco_record(data)
Whether a dictionary is an AMIGO mixed-DISCO record.
validate_mixed_disco_record(record)
Raise if an AMIGO mixed-DISCO record is incomplete or inconsistent.
mixed_disco_fields(record)
Validate a mixed-DISCO record and return the OIData field values.