Documentation
¶
Index ¶
- Constants
- type SatelliteState
- func (s *SatelliteState) CalculateGeometryFree(config config.Config) error
- func (s *SatelliteState) CalculateIonosphereFree(config config.Config) error
- func (s *SatelliteState) CalculateIonosphericCorrection() error
- func (s *SatelliteState) CalculateMelbourneWubbena(config config.Config) error
- func (s *SatelliteState) CalculateModeledRange(config config.Config)
- func (s *SatelliteState) CalculateNarrowLane(config config.Config) error
- func (s *SatelliteState) CalculateSagnacCorrection(config config.Config) error
- func (s *SatelliteState) CalculateSatelliteAzimuthElevation(config config.Config) error
- func (s *SatelliteState) CalculateSatelliteCoordinates(config config.Config) error
- func (s *SatelliteState) CalculateTroposphericCorrection(config config.Config) error
- func (s *SatelliteState) GetSignalEmissionTime(config.Config) error
- func (s *SatelliteState) WriteJSON(w io.Writer) error
- type SatelliteStateMap
- func (ssm *SatelliteStateMap) Add(s *SatelliteState)
- func (ssm *SatelliteStateMap) AddEphemeris(ephemeris map[string]ephemeris.GenericEphemeris, config config.Config) error
- func (ssm *SatelliteStateMap) Get(key observation.SatelliteKey) (*SatelliteState, error)
- func (ssm *SatelliteStateMap) Prepare(config config.Config) error
- func (ssm *SatelliteStateMap) WriteJSON(w io.Writer) error
Constants ¶
View Source
const ( // RadiusOfEarth is the radius of the Earth in meters RadiusOfEarth = 6378137.0 // AngularVelocity is the angular velocity of the Earth in rad/s AngularVelocity = 7.2921151467e-5 )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type SatelliteState ¶
type SatelliteState struct {
SignalArrivalTime time.Time `json:"signal_arrival_time"` // T - time signal was received by receiver
SignalEmissionTime time.Time `json:"signal_emmision_time"` // Tau - time signal was emitted by satellite
System gnss.System `json:"system"` // GNSS system (e.g., GPS, Galileo)
SatelliteID int `json:"satellite_id"` // Satellite ID (PRN or Slot number)
Prepared bool `json:"prepared"` // Indicates if the satellite state is prepared
Ephemeris ephemeris.TypeSpecificEphemeris `json:"-"` // Ephemeris data for the satellite
Position ephemeris.SatPosition `json:"satellite_position"` // Satellite position in ECEF coordinates
Elevation float64 `json:"elevation"` // Elevation in degrees
Azimuth float64 `json:"azimuth"` // Azimuth in degrees
SagnacCorrection float64 `json:"sagnac"` // Sagnac correction in meters
TroposphericCorrection float64 `json:"troposhere"` // Tropospheric correction in meters
IonosphericCorrection float64 `json:"ionosphere"` // Ionospheric correction in meters
IonosphereFreePhase float64 `json:"ionosphere_free_phase"` // Ionosphere-free phase in meters
IonosphereFreeRange float64 `json:"ionosphere_free_range"` // Ionosphere-free range in meters
NarrowLanePhase float64 `json:"narrow_lane_phase"` // Narrow-lane phase in meters
NarrowLaneRange float64 `json:"narrow_lane_range"` // Narrow-lane range in meters
GeometryFreePhase float64 `json:"geometry_free_phase"` // Geometry-free phase in meters
GeometryFreeRange float64 `json:"geometry_free_range"` // Geometry-free range in meters
MelbourneWubbena float64 `json:"melborne_wubbena"` // Melbourne-Wubbena combination in meters
ModeledRange float64 `json:"modeled_range"` // Modeled range in meters
Observations []observation.Observation `json:"-"` // Slice of observations for this satellite
}
func NewSatelliteState ¶ added in v0.16.0
func NewSatelliteState() *SatelliteState
func (*SatelliteState) CalculateGeometryFree ¶
func (s *SatelliteState) CalculateGeometryFree(config config.Config) error
func (*SatelliteState) CalculateIonosphereFree ¶
func (s *SatelliteState) CalculateIonosphereFree(config config.Config) error
func (*SatelliteState) CalculateIonosphericCorrection ¶
func (s *SatelliteState) CalculateIonosphericCorrection() error
func (*SatelliteState) CalculateMelbourneWubbena ¶
func (s *SatelliteState) CalculateMelbourneWubbena(config config.Config) error
CalculateMelbourneWubbena calculates the Melbourne-Wubbena combination for a given pair of observation codes c1 and c2 (e.g. "1C" and "2W") TODO - add support for more than two observation codes
func (*SatelliteState) CalculateModeledRange ¶
func (s *SatelliteState) CalculateModeledRange(config config.Config)
TODO: add support for configuration of the modeled terms
func (*SatelliteState) CalculateNarrowLane ¶ added in v0.14.0
func (s *SatelliteState) CalculateNarrowLane(config config.Config) error
CalculateNarrowLane computes the narrow-lane combination of dual-frequency GNSS measurements.
func (*SatelliteState) CalculateSagnacCorrection ¶
func (s *SatelliteState) CalculateSagnacCorrection(config config.Config) error
func (*SatelliteState) CalculateSatelliteAzimuthElevation ¶
func (s *SatelliteState) CalculateSatelliteAzimuthElevation(config config.Config) error
func (*SatelliteState) CalculateSatelliteCoordinates ¶
func (s *SatelliteState) CalculateSatelliteCoordinates(config config.Config) error
func (*SatelliteState) CalculateTroposphericCorrection ¶
func (s *SatelliteState) CalculateTroposphericCorrection(config config.Config) error
func (*SatelliteState) GetSignalEmissionTime ¶
func (s *SatelliteState) GetSignalEmissionTime(config.Config) error
type SatelliteStateMap ¶
type SatelliteStateMap map[observation.SatelliteKey]*SatelliteState
type SatelliteStateMap map[string]*SatelliteState
func NewSatelliteStateMap ¶ added in v0.16.0
func NewSatelliteStateMap() *SatelliteStateMap
func NewSatelliteStateMapFromEpoch ¶ added in v0.16.0
func NewSatelliteStateMapFromEpoch(epoch observation.Epoch, config config.Config) (*SatelliteStateMap, error)
func (*SatelliteStateMap) Add ¶ added in v0.16.0
func (ssm *SatelliteStateMap) Add(s *SatelliteState)
func (*SatelliteStateMap) AddEphemeris ¶ added in v0.16.0
func (ssm *SatelliteStateMap) AddEphemeris(ephemeris map[string]ephemeris.GenericEphemeris, config config.Config) error
func (*SatelliteStateMap) Get ¶ added in v0.16.0
func (ssm *SatelliteStateMap) Get(key observation.SatelliteKey) (*SatelliteState, error)
Click to show internal directories.
Click to hide internal directories.