Sidereon.Tides (Sidereon v3.0.0)

Copy Markdown View Source

High-level geophysical tide corrections.

Summary

Functions

Evaluate station displacement from ECEF or WGS84 geodetic coordinates.

Evaluate station displacement independently at each epoch, retaining row-local errors.

Evaluate station displacement at each epoch under a selected validity mode.

Evaluate station displacement under an explicit UT1 table-validity policy.

Station-tide displacement with an explicit UT1 validity policy.

Validate and return a core tide-system label.

Types

station_displacement_row()

@type station_displacement_row() ::
  Sidereon.Tides.StationDisplacement.t()
  | {:error, {:station_tide, station_tide_error()} | term()}

station_tide_error()

@type station_tide_error() :: %{
  variant: String.t(),
  field: String.t() | nil,
  kind: String.t() | nil,
  source: String.t() | nil,
  line: non_neg_integer() | nil,
  block: non_neg_integer() | nil,
  detail_variant: String.t() | nil,
  station: String.t() | nil,
  token: String.t() | nil,
  constituent: String.t() | nil,
  expected: non_neg_integer() | nil,
  found: non_neg_integer() | nil,
  index: non_neg_integer() | nil,
  row: non_neg_integer() | nil
}

validity_mode()

@type validity_mode() :: :strict | :permissive

Functions

station_displacement(position, epoch, opts \\ [])

@spec station_displacement(map(), map(), keyword() | map()) ::
  {:ok, Sidereon.Tides.StationDisplacement.t()} | {:error, term()}

Evaluate station displacement from ECEF or WGS84 geodetic coordinates.

station_displacement_batch(position, epochs, opts \\ [])

@spec station_displacement_batch(map(), [map()], keyword() | map()) ::
  {:ok, [station_displacement_row()]}

Evaluate station displacement independently at each epoch, retaining row-local errors.

station_displacement_batch_with_validity(position, epochs, validity, opts \\ [])

@spec station_displacement_batch_with_validity(
  map(),
  [map()],
  validity_mode(),
  keyword() | map()
) ::
  {:ok, [station_displacement_row()]}

Evaluate station displacement at each epoch under a selected validity mode.

station_displacement_with_validity(position, epoch, validity, opts \\ [])

@spec station_displacement_with_validity(
  map(),
  map(),
  validity_mode(),
  keyword() | map()
) ::
  {:ok, Sidereon.Tides.StationDisplacement.t()} | {:error, term()}

Evaluate station displacement under an explicit UT1 table-validity policy.

station_tide_displacement(position, epoch, opts \\ [])

@spec station_tide_displacement(map(), map(), keyword() | map()) ::
  {:ok, Sidereon.Tides.StationDisplacement.t()} | {:error, term()}

Alias for station_displacement/3 with the station-tide name.

station_tide_displacement_with_validity(position, epoch, validity, opts \\ [])

@spec station_tide_displacement_with_validity(
  map(),
  map(),
  validity_mode(),
  keyword() | map()
) ::
  {:ok, Sidereon.Tides.StationDisplacement.t()} | {:error, term()}

Station-tide displacement with an explicit UT1 validity policy.

tide_system(system)

Validate and return a core tide-system label.