Source code for stilt.observations.operators
"""Observation vertical-operator models."""
from __future__ import annotations
from dataclasses import dataclass, field
from typing import Any, Literal
VerticalOperatorMode = Literal[
"none",
"uniform",
"ak",
"pwf",
"ak_pwf",
"integration",
"tccon",
]
[docs]
@dataclass(slots=True)
class VerticalOperator:
"""Vertical weighting or averaging-kernel operator for one observation."""
mode: VerticalOperatorMode
levels: list[float] = field(default_factory=list)
values: list[float] = field(default_factory=list)
pressure_levels: list[float] = field(default_factory=list)
metadata: dict[str, Any] = field(default_factory=dict)