################### Observation vectors ################### In pyCIF, the observation vector :math:`\mathbf{y}` is stored as a directory, organised by observation type and species. Each file follows the same format as the :doc:`input monitor files `. .. code-block:: text obsvect/ ├── {obs type 1}/ │ ├── {species 1}/ │ │ └── monitor.nc │ └── {species 2}/ │ └── monitor.nc └── {obs type 2}/ ├── {species 1}/ │ └── monitor.nc └── {species 2}/ └── monitor.nc NetCDF format ^^^^^^^^^^^^^ Each :bash:`monitor.nc` uses NetCDF groups to separate the two types of information: :maindata: Numerical data directly used by the inversion: - **obs** — observed values - **obserror** — observation errors (:math:`\sigma_\varepsilon`) - **sim** — simulated equivalents (forward run) - **sim_tl** — simulated increments (tangent-linear run) - **adj_out** — adjoint sensitivities - **incr** — observation-space increments :metadata: All other information about each observation point: date, station, network, parameter, lon, lat, alt, level, i, j, tstep, tstep_glo, dtstep, dtstep_glo. See :doc:`monitor` for the full description of each field. Each :bash:`monitor.nc` is formatted as illustrated in the following example (real file from a CHIMERE run): .. literalinclude:: dump_monitor.txt