empyrean.TaggedCovariances¶
- class TaggedCovariances(table, **kwargs)[source]
Bases:
TablePer-
(orbit, epoch)provenance-tagged covariance readback.One row per output epoch; rows are grouped contiguously by
orbit_id(matching propagation’s orbit-major output). Filter to one chain with quivr’s standardselectbefore calling the per-chain accessor:chain = tagged.select("orbit_id", "2024 YR4") series = chain.to_series()
Notes
The 6×6 matrix rides as 21 lower-triangular
cov_{i}_{j}columns (same layout asCartesianCovariance). The co-located nominal state and the optional mean-shift vectors ride as six scalar columns each, paired with a presence flag for the optional vectors.has_taggedisFalseon rows where the underlying orbit carried no covariance — those rows are zero-filled placeholders that keep the table aligned 1:1 with the propagated states.Methods
__init__(table, **kwargs)apply_mask(mask)Return a new table with rows filtered to match a boolean mask.
as_column([nullable, metadata])Embed the Table as a column in another Table.
attributes()Return a dictionary of the table's attributes.
chunk_counts()Returns the number of discrete memory chunks that make up each of the Table's underlying arrays.
column(column_name)Returns the column with the given name as a raw pyarrow ChunkedArray.
drop_duplicates([subset, keep])Drop duplicate rows from a ~quivr.Table.
empty(**kwargs)Create an empty instance of the table.
flattened_table()Completely flatten the Table's underlying Arrow table, taking into account any nested structure, and return the data table itself.
fragmented()Returns true if the Table has any fragmented arrays.
from_csv(input_file[, validate])Read a table from a CSV file.
from_dataframe(df[, validate])Load a DataFrame into the Table.
from_feather(path[, validate])Read a table from a Feather file.
from_flat_dataframe(df[, validate])Load a flattened DataFrame into the Table.
from_kwargs([validate, permit_nulls])Create a Table instance from keyword arguments.
from_parquet(path[, memory_map, ...])Read a table from a Parquet file.
from_pyarrow(table[, validate, permit_nulls])Create a new table from a pyarrow Table.
invalid_mask()Return a boolean mask indicating which rows are invalid.
is_valid()Validate the table against the schema.
matrices()Reshape the lower-tri
cov_*columns to(n, 6, 6).null_mask()Return a boolean mask indicating which rows of the entire table are null.
nulls(size, **kwargs)Create a table with nulls.
orbit_ids_unique()Unique
orbit_idvalues, in first-seen order.select(column_name, value)Select from the table by exact match, returning a new Table which only contains rows for which the value in column_name equals value.
separate_invalid()Separates rows that have invalid data from those that have valid data.
set_column(name, data)Return a copy of the table with a particular column replaced with new data.
sort_by(by)Sorts the Table by the given column name (or multiple columns).
take(row_indices)Return a new Table with only the rows at the given indices.
to_csv(path[, attribute_columns])Write the table to a CSV file.
to_dataframe([flatten, attr_handling])Returns self as a pandas DataFrame.
to_feather(path, **kwargs)Write the table to a Feather file.
to_parquet(path, **kwargs)Write the table to a Parquet file.
to_series()Materialize this table as a list of
TaggedCovariance.to_structarray()Returns self as a StructArray.
unique_indices([subset, keep])Get the indices of the first or last occurrence of each unique row in the table.
validate()Validate the table against the schema, raising an exception if invalid.
where(expr)Return a new table with rows filtered to match an expression.
with_table(table)Attributes
cov_vx_vxA column for storing 64-bit floating point numbers.
cov_vx_vyA column for storing 64-bit floating point numbers.
cov_vx_vzA column for storing 64-bit floating point numbers.
cov_vy_vyA column for storing 64-bit floating point numbers.
cov_vy_vzA column for storing 64-bit floating point numbers.
cov_vz_vzA column for storing 64-bit floating point numbers.
cov_x_vxA column for storing 64-bit floating point numbers.
cov_x_vyA column for storing 64-bit floating point numbers.
cov_x_vzA column for storing 64-bit floating point numbers.
cov_x_xA column for storing 64-bit floating point numbers.
cov_x_yA column for storing 64-bit floating point numbers.
cov_x_zA column for storing 64-bit floating point numbers.
cov_y_vxA column for storing 64-bit floating point numbers.
cov_y_vyA column for storing 64-bit floating point numbers.
cov_y_vzA column for storing 64-bit floating point numbers.
cov_y_yA column for storing 64-bit floating point numbers.
cov_y_zA column for storing 64-bit floating point numbers.
cov_z_vxA column for storing 64-bit floating point numbers.
cov_z_vyA column for storing 64-bit floating point numbers.
cov_z_vzA column for storing 64-bit floating point numbers.
cov_z_zA column for storing 64-bit floating point numbers.
epoch_mjd_tdbOutput epoch (MJD TDB).
frameReference frame of the basis (canonical name).
has_mean_shift_inputWhether
mean_shift_input_*carries a value on this row.has_mean_shift_propWhether
mean_shift_prop_*carries a value on this row.has_taggedFalseon zero-filled placeholder rows where the underlying orbit carried no covariance.kindResolved covariance kind (
CovarianceKindvalue).mc_seedMonte-Carlo run seed; null unless
kindismonte_carlo.mean_shift_input_vxA column for storing 64-bit floating point numbers.
mean_shift_input_vyA column for storing 64-bit floating point numbers.
mean_shift_input_vzA column for storing 64-bit floating point numbers.
mean_shift_input_xA column for storing 64-bit floating point numbers.
mean_shift_input_yA column for storing 64-bit floating point numbers.
mean_shift_input_zA column for storing 64-bit floating point numbers.
mean_shift_prop_vxA column for storing 64-bit floating point numbers.
mean_shift_prop_vyA column for storing 64-bit floating point numbers.
mean_shift_prop_vzA column for storing 64-bit floating point numbers.
mean_shift_prop_xA column for storing 64-bit floating point numbers.
mean_shift_prop_yA column for storing 64-bit floating point numbers.
mean_shift_prop_zA column for storing 64-bit floating point numbers.
non_grav_a1A column for storing booleans.
non_grav_a2A column for storing booleans.
non_grav_a3A column for storing booleans.
non_grav_cross6×3 row-major state-to-(A1, A2, A3) cross covariance, 18 values, in the Cartesian basis of the
cov_*columns above.object_idObject metadata label, if carried on the input orbit.
orbit_idOrbit primary key (matches the input
Orbits.orbit_id).originCanonical origin (center body) name of the basis.
qualityDefiniteness (
CovarianceQualityvalue).quality_kappa_stateκ_state behind an
expansion_suspecttag; NaN for every otherquality.quality_min_eigMinimum eigenvalue for indefinite / repaired matrices; NaN for every other
quality.schemasolved_widthSolved width (6 / 9 / 12 / …).
state_vxA column for storing 64-bit floating point numbers.
state_vyA column for storing 64-bit floating point numbers.
state_vzA column for storing 64-bit floating point numbers.
state_xA column for storing 64-bit floating point numbers.
state_yA column for storing 64-bit floating point numbers.
state_zA column for storing 64-bit floating point numbers.
target_functionalThe functional this second moment describes (
TargetFunctionalvalue).thrust_segmentsThrust Δv segments solved for.
wide_crossCross terms beyond the state+Marsden
9x9— state↔DT, state↔AMRAT, state↔Δv, and every mixed parameter pair.table- Parameters:
table (Table)
kwargs (AttributeValueType)
- orbit_id
Orbit primary key (matches the input
Orbits.orbit_id).
- object_id
Object metadata label, if carried on the input orbit.
- epoch_mjd_tdb
Output epoch (MJD TDB).
- state_x
A column for storing 64-bit floating point numbers.
- state_y
A column for storing 64-bit floating point numbers.
- state_z
A column for storing 64-bit floating point numbers.
- state_vx
A column for storing 64-bit floating point numbers.
- state_vy
A column for storing 64-bit floating point numbers.
- state_vz
A column for storing 64-bit floating point numbers.
- kind
Resolved covariance kind (
CovarianceKindvalue).
- quality
Definiteness (
CovarianceQualityvalue).
- quality_min_eig
Minimum eigenvalue for indefinite / repaired matrices; NaN for every other
quality.
- quality_kappa_state
κ_state behind an
expansion_suspecttag; NaN for every otherquality. Read-only provenance — checknp.isfinitefirst.
- mc_seed
Monte-Carlo run seed; null unless
kindismonte_carlo.
- mean_shift_prop_x
A column for storing 64-bit floating point numbers.
- mean_shift_prop_y
A column for storing 64-bit floating point numbers.
- mean_shift_prop_z
A column for storing 64-bit floating point numbers.
- mean_shift_prop_vx
A column for storing 64-bit floating point numbers.
- mean_shift_prop_vy
A column for storing 64-bit floating point numbers.
- mean_shift_prop_vz
A column for storing 64-bit floating point numbers.
- has_mean_shift_prop
Whether
mean_shift_prop_*carries a value on this row.
- mean_shift_input_x
A column for storing 64-bit floating point numbers.
- mean_shift_input_y
A column for storing 64-bit floating point numbers.
- mean_shift_input_z
A column for storing 64-bit floating point numbers.
- mean_shift_input_vx
A column for storing 64-bit floating point numbers.
- mean_shift_input_vy
A column for storing 64-bit floating point numbers.
- mean_shift_input_vz
A column for storing 64-bit floating point numbers.
- has_mean_shift_input
Whether
mean_shift_input_*carries a value on this row.
- non_grav_a1
A column for storing booleans.
- non_grav_a2
A column for storing booleans.
- non_grav_a3
A column for storing booleans.
- thrust_segments
Thrust Δv segments solved for.
- solved_width
Solved width (6 / 9 / 12 / …).
- target_functional
The functional this second moment describes (
TargetFunctionalvalue).
- origin
Canonical origin (center body) name of the basis.
- frame
Reference frame of the basis (canonical name).
- cov_x_x
A column for storing 64-bit floating point numbers.
- cov_x_y
A column for storing 64-bit floating point numbers.
- schema: ClassVar[Schema] = orbit_id: large_string not null object_id: large_string epoch_mjd_tdb: double not null state_x: double not null state_y: double not null state_z: double not null state_vx: double not null state_vy: double not null state_vz: double not null kind: large_string not null quality: large_string not null quality_min_eig: double quality_kappa_state: double mc_seed: uint64 mean_shift_prop_x: double mean_shift_prop_y: double mean_shift_prop_z: double mean_shift_prop_vx: double mean_shift_prop_vy: double mean_shift_prop_vz: double has_mean_shift_prop: bool not null mean_shift_input_x: double mean_shift_input_y: double mean_shift_input_z: double mean_shift_input_vx: double mean_shift_input_vy: double mean_shift_input_vz: double has_mean_shift_input: bool not null non_grav_a1: bool not null non_grav_a2: bool not null non_grav_a3: bool not null thrust_segments: uint32 not null solved_width: uint32 not null target_functional: large_string not null origin: large_string not null frame: large_string not null cov_x_x: double cov_x_y: double cov_y_y: double cov_x_z: double cov_y_z: double cov_z_z: double cov_x_vx: double cov_y_vx: double cov_z_vx: double cov_vx_vx: double cov_x_vy: double cov_y_vy: double cov_z_vy: double cov_vx_vy: double cov_vy_vy: double cov_x_vz: double cov_y_vz: double cov_z_vz: double cov_vx_vz: double cov_vy_vz: double cov_vz_vz: double has_tagged: bool not null non_grav_cross: large_list<item: double> child 0, item: double wide_cross: struct<columns: large_list<item: large_string>, state: large_list<item: double>, pair_a: large_list< (... 98 chars omitted) child 0, columns: large_list<item: large_string> child 0, item: large_string child 1, state: large_list<item: double> child 0, item: double child 2, pair_a: large_list<item: large_string> child 0, item: large_string child 3, pair_b: large_list<item: large_string> child 0, item: large_string child 4, pair_value: large_list<item: double> child 0, item: double
- cov_y_y
A column for storing 64-bit floating point numbers.
- cov_x_z
A column for storing 64-bit floating point numbers.
- cov_y_z
A column for storing 64-bit floating point numbers.
- cov_z_z
A column for storing 64-bit floating point numbers.
- cov_x_vx
A column for storing 64-bit floating point numbers.
- cov_y_vx
A column for storing 64-bit floating point numbers.
- cov_z_vx
A column for storing 64-bit floating point numbers.
- cov_vx_vx
A column for storing 64-bit floating point numbers.
- cov_x_vy
A column for storing 64-bit floating point numbers.
- cov_y_vy
A column for storing 64-bit floating point numbers.
- cov_z_vy
A column for storing 64-bit floating point numbers.
- cov_vx_vy
A column for storing 64-bit floating point numbers.
- cov_vy_vy
A column for storing 64-bit floating point numbers.
- cov_x_vz
A column for storing 64-bit floating point numbers.
- cov_y_vz
A column for storing 64-bit floating point numbers.
- cov_z_vz
A column for storing 64-bit floating point numbers.
- cov_vx_vz
A column for storing 64-bit floating point numbers.
- cov_vy_vz
A column for storing 64-bit floating point numbers.
- cov_vz_vz
A column for storing 64-bit floating point numbers.
- has_tagged
Falseon zero-filled placeholder rows where the underlying orbit carried no covariance.
- non_grav_cross
6×3 row-major state-to-(A1, A2, A3) cross covariance, 18 values, in the Cartesian basis of the
cov_*columns above.The off-diagonal half of the matrix those columns are the state block of. Null on a row whose orbit declared no Marsden block — never a block of zeros, which would read as a supplied zero correlation.
- wide_cross
Cross terms beyond the state+Marsden
9x9— state↔DT, state↔AMRAT, state↔Δv, and every mixed parameter pair.Populated on every uncertainty method that produces a joint, including the sampled ones, which recover the state-parameter columns from the propagated cloud. Absence is per-row nulls; see
WideCross.row_is_empty().
- matrices()[source]
Reshape the lower-tri
cov_*columns to(n, 6, 6).Rows with
has_tagged=Falsecome back zero-filled. Works on the full table or a filtered single chain.- Return type: