1extern crate self as sidereon_core;
58
59mod validate;
65
66#[cfg(all(test, sidereon_repo_tests))]
67mod test_parity;
68
69pub mod artifact_bytes;
70pub mod astro;
71pub(crate) mod format;
72
73pub use artifact_bytes::DigestProvenance;
74
75mod ambiguity; mod antenna; pub mod antex; pub mod araim; pub mod bias; mod broadcast; pub mod broadcast_comparison; pub mod carrier_phase; pub mod clock_stability; pub mod constants; pub mod constellation; mod crinex; pub mod data; pub mod dop; pub mod error_metrics; pub mod exact_cache; pub mod frequencies; mod glonass; pub mod has; mod ionex; pub mod navigation; pub mod nmea; pub mod ntrip; pub mod observables; pub mod ppp_corrections; pub mod precise_positioning; mod reduced_orbit; mod rinex_clock; mod rinex_common; mod rinex_nav; mod rinex_obs; mod rinex_qc; pub mod rtcm; pub mod rtk; pub mod sbas;
115pub mod sbas_pl; pub mod scenario; pub mod sidereal; pub mod signal; pub mod source_localization; mod sp3; mod spp; pub mod ssr; pub mod staleness; pub mod static_positioning; mod static_reference_station; mod tropo; pub mod velocity; mod error;
130pub mod frame;
131pub mod frame_catalog;
132mod id;
133
134pub mod atmosphere;
135pub mod combinations;
136pub mod dgnss;
137pub mod ephemeris;
138pub mod estimation; pub mod geodesic; pub mod geodetic_time_series; pub mod geofence; pub mod geoid; pub mod geometry;
144pub mod geometry_quality;
145pub mod ils; pub mod inertial; pub mod integrity; pub mod observation_qc; pub mod qc_obs {
150 pub use crate::observation_qc::*;
152}
153pub mod orbit;
154pub mod orbit_determination;
155pub mod positioning;
156pub mod prelude;
157pub mod quality; pub mod rinex;
159pub mod rtk_filter; pub mod terrain;
161pub mod terrain_store;
162pub mod tides;
163pub mod tolerances;
164
165pub mod fusion; pub use crate::astro::frames::{
168 EarthOrientation, EarthOrientationProvider, PolarMotionSample,
169 PolarMotionSeriesEarthOrientationProvider, TdbEarthOrientationProvider,
170};
171pub use crate::error_metrics::{
172 error_ellipse_from_enu_m2, horizontal_radius_at, metrics_from_ecef_covariance_m2,
173 metrics_from_enu_covariance_m2, metrics_from_kinematic_solution,
174 metrics_from_position_covariance, spherical_radius_at, vertical_radius_at, ErrorEllipse,
175 ErrorMetricsError, PercentileRadius, PositionErrorMetrics,
176};
177pub use crate::estimation::{
178 alpha_beta_apply_measurement, alpha_beta_filter_step, alpha_beta_predict,
179 alpha_beta_steady_state_gains, cfar_ca_false_alarm_probability, cfar_ca_multiplier_from_pfa,
180 cfar_ca_pfa_from_multiplier, cfar_ca_threshold, ewma_update, ewma_update_power_of_two,
181 kalman_cv_steady_state_gains, mad_spread, nis_expected_value, nis_gate_test,
182 nis_gate_threshold, nis_statistic, normalized_innovation, rts_smooth, smooth_track_rts,
183 AlphaBetaGains, AlphaBetaState, AlphaBetaStep, PrimitiveError, ScalarKalmanGains,
184 SmoothedTrack, SmoothedTrackEpoch, TrackCoordinateFrame, TrackError, TrackFilter,
185 TrackFilterConfig, TrackGatedUpdate, TrackInnovation, TrackPrediction, TrackRtsEpoch,
186 TrackRtsHistory, TrackRtsHistoryBuilder, TrackState, TrackUpdate, MAD_GAUSSIAN_CONSISTENCY,
187};
188pub use crate::quality::{
189 reliability_araim, reliability_design, wtest_noncentrality, wtest_noncentrality_components,
190 ObservationReliability, RangeReliabilityRow, ReliabilityOptions, ReliabilityReport,
191 ReliabilitySummary, WtestNoncentralityComponents,
192};
193pub use araim::ProtectionModel;
194pub use error::{Error, Result};
195pub use frame::{
196 geodetic_to_itrf, itrf_to_geodetic, FrameValueError, ItrfPositionM, ItrfVelocityMS,
197 Wgs84Geodetic,
198};
199pub use frame_catalog::{
200 catalog, catalog_entry, propagate_position, transform, transform_from_epoch, FrameCatalogError,
201 HelmertParameters, HelmertRates, HelmertTransform, TerrestrialFrame, TerrestrialPositionM,
202 TerrestrialState, TerrestrialVelocityMPerYear, TERRESTRIAL_FRAME_CATALOG,
203};
204pub use fusion::{
205 loose_coupling_correction, smooth_fusion_rts, ukf_correct_closed_loop,
206 validate_time_sync_gnss_order, validate_time_sync_imu_order, velocity_match_outage,
207 velocity_match_outage_to_state, F64Bits, FusionFilterKind, FusionRtsEpoch, FusionRtsHistory,
208 FusionRtsHistoryBuilder, FusionStateCodecError, FusionUpdate, GnssFixMeasurement,
209 GnssFixStatus, GnssFixStatusWeighting, IggIiiMeasurementReweighting, InertialFilter,
210 InertialFilterConfig, LooseCouplingConfig, NonHolonomicConstraintConfig,
211 SerializableErrorStateLayout, SerializableFusionSnapshot, SerializableFusionState,
212 SerializableGnssFixStatus, SerializableImuSample, SerializableImuSampleKind,
213 SerializableInsFilterState, SerializableLooseMeasurement, SerializableNavState,
214 SerializableRateEndpoint, SerializableSatelliteId, SerializableStationarityDetectorSample,
215 SerializableStoredCheckpoint, SerializableStoredGnssMeasurement, SerializableStoredImuSample,
216 SerializableTightCarrierPhaseObservation, SerializableTightFilterState,
217 SerializableTightGnssEpoch, SerializableTightGnssObservation,
218 SerializableTightRangeRateObservation, SerializableTimeSyncHistory,
219 SerializableTimeSyncHistoryConfig, SmoothedFusionEpoch, SmoothedFusionTrajectory,
220 StationarityDetectorSnapshotSample, StationaryDetectorConfig, StationaryUpdateConfig,
221 TimeSyncHistoryConfig, TimeSyncHistoryStatus, TimeSyncUpdate, UkfUpdateOptions,
222 UnscentedTransformOptions, VelocityMatchState, VelocityMatchedTrajectory,
223 VelocityMatchingConfig, YangPredictionAdaptiveFactor, DEFAULT_TIME_SYNC_CHECKPOINT_CAPACITY,
224 DEFAULT_TIME_SYNC_IMU_CAPACITY, FUSION_STATE_CODEC_VERSION,
225};
226pub use geodesic::{geodesic_direct, geodesic_inverse, GeodesicError};
227pub use geofence::{
228 containment, containment_probability, containment_probability_with_options, crossing,
229 crossing_probability, crossing_probability_with_options, distance_to_boundary, CrossingEvent,
230 CrossingKind, Fence, GeofenceError, GeofencePositionEstimate, PositionUncertainty,
231 ProbabilityHysteresis, ProbabilityMethod, ProbabilityOptions, GEOFENCE_BOUNDARY_TOLERANCE_M,
232 PLANAR_FAST_PATH_MAX_RADIUS_M,
233};
234pub use geoid::{
235 egm96_undulations_deg, egm96_undulations_rad, ellipsoidal_height_m, geoid_undulation,
236 geoid_undulations_deg, geoid_undulations_rad, orthometric_height_m, Egm2008GridSpacing,
237 Egm2008RasterWindow, GeoidError, GeoidGrid, ProjVgridshiftArithmetic, ProjVgridshiftError,
238};
239pub use id::{GnssSatelliteId, GnssSystem, SatelliteIdError};
240pub use inertial::{
241 gauss_markov_bias_decay, gauss_markov_bias_variance_increment, gravity_ecef_mps2,
242 mechanize_ecef, normal_gravity_mps2, rodrigues_delta_dcm, simulate_imu_samples,
243 simulate_imu_samples_from_increments, true_imu_increment_between, AttitudeQuaternion,
244 ConingCorrection, CorrectedImuIncrement, ImuBias, ImuCalibration, ImuErrorModel, ImuGrade,
245 ImuRateRandomWalk, ImuSample, ImuSampleKind, ImuSimulationOptions, ImuSimulationOutput,
246 ImuSimulator, ImuSpec, InertialError, MechanizationConfig, NavState, SimulatedImuSequence,
247 StrapdownMechanizer, DEFAULT_IMU_SIM_SEED, WGS84_NORMAL_GRAVITY_EQUATOR_MPS2,
248 WGS84_NORMAL_GRAVITY_POLE_MPS2, WGS84_SOMIGLIANA_K,
249};
250pub use observables::{
251 emission_media_batch_at_j2000_s, observable_media_corrections, predict_batch_with_media,
252 predict_batch_with_media_parallel, predict_ranges_with_media, predict_with_media,
253 AppliedMediaCorrections, EmissionMediaBatch, EmissionMediaBatchOptions, EmissionMediaStatus,
254 MediaPredictOptions, MediaPredictedObservables, MediaRangePrediction,
255 ObservableIonosphereCorrection, ObservableMediaOptions, ObservableTroposphereCorrection,
256};
257pub use positioning::{RejectedSat, RejectionReason};
258pub use sbas_pl::{
259 sbas_protection_levels, AirborneModel, DegradationParams, ProtectionGeometry, ProtectionRow,
260 SbasErrorModel, SbasKMultipliers, SbasPlError, SbasProtection, SbasSisError,
261};
262pub use sidereal::{
263 orbit_repeat_lag, periodicity_strength, periodicity_strength_with_sample_interval,
264 repeat_period, sidereal_filter, solar_day_period, SiderealFilterError, SiderealFilterOptions,
265 SiderealFilterOutput, SiderealTemplateMethod, SIDEREAL_DAY_NANOS, SIDEREAL_DAY_SECONDS,
266};