# `Sidereon.GNSS.StaticPositioning.Solution`
[🔗](https://github.com/neilberkman/sidereon-ex/blob/main/lib/sidereon/gnss/static_positioning.ex#L20)

Multi-epoch static receiver solution.

`position` is the shared ITRF/IGS ECEF receiver position in metres.
`per_epoch_clock` contains the fitted receiver clock for each epoch and
constellation. `covariance` contains the full stacked state covariance plus
ECEF and ENU position covariance blocks. Influence and residual fields are
index-aligned to the input epochs and used measurements.

# `clock_bias`

```elixir
@type clock_bias() :: %{
  epoch_index: non_neg_integer(),
  system: String.t(),
  clock_s: float()
}
```

Epoch-local receiver clock estimate for one GNSS system.

# `covariance`

```elixir
@type covariance() :: %{
  state_m2: [[float()]],
  position_ecef_m2: [[float()]],
  position_enu_m2: [[float()]]
}
```

Static solve covariance blocks.

# `geodetic`

```elixir
@type geodetic() :: %{lat_rad: float(), lon_rad: float(), height_m: float()}
```

Geodetic receiver position in radians and metres.

# `metadata`

```elixir
@type metadata() :: %{
  iterations: non_neg_integer(),
  converged: boolean(),
  status: atom(),
  outer_iterations: non_neg_integer(),
  final_robust_scale_m: float() | nil,
  used_measurements: non_neg_integer(),
  n_parameters: non_neg_integer(),
  redundancy: integer()
}
```

Core static solve iteration and model metadata.

# `position`

```elixir
@type position() :: %{x_m: float(), y_m: float(), z_m: float()}
```

ECEF receiver position in metres.

# `t`

```elixir
@type t() :: %Sidereon.GNSS.StaticPositioning.Solution{
  covariance: covariance(),
  geodetic: geodetic() | nil,
  geometry_quality: Sidereon.GeometryQuality.t(),
  metadata: metadata(),
  per_epoch_clock: [clock_bias()],
  per_epoch_influence: [map()],
  per_satellite_batch_influence: [map()],
  per_satellite_influence: [map()],
  position: position(),
  rejected_sats: [[{String.t(), atom()}]],
  residual_rms_m: float(),
  residuals_m: [map()],
  used_sats: [[String.t()]]
}
```

Decoded multi-epoch static positioning solution.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
