pylupnt.GNSSMeasurements

class pylupnt.GNSSMeasurements

Receiver-side GNSS measurement generator: builds visible channels and computes pseudorange/Doppler/carrier-phase observables from one or more constellations

add_constellation(self: pylupnt._pylupnt.GNSSMeasurements, constellation: pylupnt._pylupnt.GnssConstellation, frequency: pylupnt._pylupnt.GnssFreq) None

Append a (constellation, frequency) pair; BuildChannels merges channels from all pairs

build_channels(self: pylupnt._pylupnt.GNSSMeasurements, t: SupportsFloat | SupportsIndex, state: Annotated[numpy.typing.ArrayLike, numpy.float64, '[m, 1]']) list[pylupnt._pylupnt.GnssChannel]

Build visible GNSS channels at receive epoch t [TAI s] for receiver state

compute(self: pylupnt._pylupnt.GNSSMeasurements, t: SupportsFloat | SupportsIndex, state: Annotated[numpy.typing.ArrayLike, numpy.float64, '[m, 1]']) pylupnt._pylupnt.GNSSMeasurementsEpoch

Compute GNSS measurement epoch (channels + observables) at t for state

get_options(self: pylupnt._pylupnt.GNSSMeasurements) pylupnt._pylupnt.GnssMeasurementOptions

Measurement options currently in use

precompute(self: pylupnt._pylupnt.GNSSMeasurements, times: collections.abc.Sequence[SupportsFloat | SupportsIndex], states: collections.abc.Sequence[Annotated[numpy.typing.ArrayLike, numpy.float64, '[m, 1]']], compute_jacobians: bool = False) list[pylupnt._pylupnt.GNSSMeasurementsEpoch]

Batch-compute GNSS measurement epochs for a series of receive times / states

reset_tracking(self: pylupnt._pylupnt.GNSSMeasurements) None

Clear the internal tracking state; all satellites must re-acquire on next call

set_boresight_target_provider(self: pylupnt._pylupnt.GNSSMeasurements, fn: object) None

Set callback returning receiver boresight target position [m] at epoch t [TAI s]

set_cn0_threshold(self: pylupnt._pylupnt.GNSSMeasurements, cn0_threshold_dbhz: Real) None

Set both acquisition and tracking CN0 thresholds to the same value [dBHz]

set_frequency(self: pylupnt._pylupnt.GNSSMeasurements, frequency: pylupnt._pylupnt.GnssFreq) None

Set the carrier frequency for all current constellations (and default for future ones)

set_occluding_bodies(self: pylupnt._pylupnt.GNSSMeasurements, bodies: collections.abc.Sequence[pylupnt._pylupnt.GnssOccludingBody]) None

Set the spherical bodies checked for line-of-sight occlusion during visibility

set_options(self: pylupnt._pylupnt.GNSSMeasurements, options: pylupnt._pylupnt.GnssMeasurementOptions) None

Replace the measurement options used by build_channels()/compute()

set_receiver_antenna(self: pylupnt._pylupnt.GNSSMeasurements, antenna: pylupnt._pylupnt.Antenna) None

Set the receiver antenna gain pattern used in the CN0 link budget

set_receiver_params(self: pylupnt._pylupnt.GNSSMeasurements, params: pylupnt._pylupnt.GnssReceiverParams) None

Set the receiver tracking-loop/link-budget parameters used to derive noise sigmas

set_sun_position_provider(self: pylupnt._pylupnt.GNSSMeasurements, fn: object) None

Set callback returning Sun position [m] in options.frame at epoch t [TAI s]