Changes between Version 25 and Version 26 of OMI_observation_modules


Ignore:
Timestamp:
Dec 9, 2021, 3:48:23 PM (12 months ago)
Author:
lnerger
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • OMI_observation_modules

    v25 v26  
    171171   - `srange`: The support radius of the localization
    172172
     173== Additional routines for 3D-Var ==
     174
     175For the 3D-Var methods added with PDAF V2.0 two more routines are required in the observation module.
     176
     177=== `obs_op_lin_TYPE` ===
     178
     179This routine applies the linearized observation operator to a state vector. It returns the observed state vector to PDAF. The routine is used only by the 3D-Var methods.
     180
     181'''Note:''' A separate routine for `obs_op_lin_TYPE` is only required if the full observation operator in `obs_op_TYPE` is nonlinear. If `obs_op_TYPE` is linear, one can just insert calls to this operator in the routine `obs_op_lin_pdafomi` in `callback_obs_pdafomi.F90`.
     182
     183PDAF-OMI provides several linear observation operators. For example the observation operator for observations that are grid point values is called as:
     184{{{
     185    CALL PDAFomi_obs_op_gridpoint(thisobs, state_p, ostate)
     186}}}
     187
     188Here, `state_p` is the state vector and `ostate` is the observed state vector.
     189
     190For more information on the available observation operators and on how to implement your own observation operator see the [wiki:OMI_observation_operators documentation of observation operators for OMI].
     191
     192=== `obs_op_adj_TYPE` ===
     193
     194This routine applies the adjoint observation operator to an observation vector. It returns the state vector to PDAF. The routine is used only by the 3D-Var methods.
     195
     196PDAF-OMI provides consistent pairs of linear observation operators. For example the adjoint observation operator for observations that are grid point values is called as:
     197{{{
     198    CALL PDAFomi_obs_op_adj_gridpoint(thisobs, ostate, state_p)
     199}}}
     200
     201Here, `ostate` is the observation vector and `state_p` is the state vector.
     202
     203For more information on the available observation operators and on how to implement your own observation operator see the [wiki:OMI_observation_operators documentation of observation operators for OMI].
     204
     205
    173206== Implementing a new observation type ==
    174207