empyrean.BPlanes¶
- class BPlanes(table, **kwargs)[source]
Bases:
TableB-plane geometry breakdowns tagged by uncertainty method.
One row per (method × orbit × body) close-approach encounter. Mirrors
empyrean_core.impact.BPlaneData(= villeneuve’s upstream type) flattened to columns: , , miss distance, hyperbolic excess velocity, the projected covariance, and the 3σ uncertainty ellipse (semi-major / semi-minor / rotation angle).Closest-approach time carried as an
Epochssub-table — same convention asImpactProbabilities.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.
null_mask()Return a boolean mask indicating which rows of the entire table are null.
nulls(size, **kwargs)Create a table with nulls.
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_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
b_dot_r_kmÖpik coordinate in km.
b_dot_t_kmÖpik coordinate in km.
b_mag_kmMagnitude in km.
bodyBody name; B-plane is defined relative to this body's hyperbolic-excess-velocity asymptote at closest approach.
body_radius_kmBody radius (km), pre-inflation.
cov_rr_km2B-plane projected covariance, R-R component (km²).
cov_tr_km2B-plane projected covariance, T-R off-diagonal (km²).
cov_tt_km2B-plane projected covariance, T-T component (km²).
effective_radius_kmGravitational-focusing-inflated radius in km — the radius is compared against.
ellipse_angle_radRotation angle of the uncertainty ellipse from the +T axis (radians).
epochsClosest-approach epoch (TDB).
ip_linearLinear impact probability evaluated against the projected B-plane covariance — convenience copy of the IP that matches this B-plane row.
methodUncertainty method tag — see
ImpactProbabilities.schemasemi_major_3sig_kmSemi-major axis of the 3σ uncertainty ellipse on the B-plane (km), eigenvector of the projected covariance.
semi_minor_3sig_kmSemi-minor axis of the 3σ uncertainty ellipse on the B-plane (km).
v_inf_km_sHyperbolic excess velocity at the close approach (km/s).
table- Parameters:
table (Table)
kwargs (AttributeValueType)
- method
Uncertainty method tag — see
ImpactProbabilities.
- body
Body name; B-plane is defined relative to this body’s hyperbolic-excess-velocity asymptote at closest approach.
- epochs
Closest-approach epoch (TDB).
- b_dot_t_km
Öpik coordinate in km. T points along the projection of the planet’s heliocentric velocity onto the B-plane; controls the along-track encounter geometry and the resonant-return / keyhole structure.
- schema: ClassVar[Schema] = method: large_string not null body: large_string not null epochs: struct<mjd: double> child 0, mjd: double b_dot_t_km: double not null b_dot_r_km: double not null b_mag_km: double not null v_inf_km_s: double not null effective_radius_km: double not null body_radius_km: double not null cov_tt_km2: double cov_tr_km2: double cov_rr_km2: double semi_major_3sig_km: double semi_minor_3sig_km: double ellipse_angle_rad: double ip_linear: double
- b_dot_r_km
Öpik coordinate in km. R completes a right-handed frame with the inbound asymptote; controls the cross-track miss component.
- b_mag_km
Magnitude in km. Impact requires .
- v_inf_km_s
Hyperbolic excess velocity at the close approach (km/s).
- effective_radius_km
Gravitational-focusing-inflated radius in km — the radius is compared against.
- body_radius_km
Body radius (km), pre-inflation.
- cov_tt_km2
B-plane projected covariance, T-T component (km²).
- cov_tr_km2
B-plane projected covariance, T-R off-diagonal (km²).
- cov_rr_km2
B-plane projected covariance, R-R component (km²).
- semi_major_3sig_km
Semi-major axis of the 3σ uncertainty ellipse on the B-plane (km), eigenvector of the projected covariance.
- semi_minor_3sig_km
Semi-minor axis of the 3σ uncertainty ellipse on the B-plane (km).
- ellipse_angle_rad
Rotation angle of the uncertainty ellipse from the +T axis (radians).
- ip_linear
Linear impact probability evaluated against the projected B-plane covariance — convenience copy of the IP that matches this B-plane row.