Changes between Version 1 and Version 2 of ImplementGenerateObs_PDAF3


Ignore:
Timestamp:
Jun 2, 2025, 7:49:32 AM (2 days ago)
Author:
lnerger
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • ImplementGenerateObs_PDAF3

    v1 v2  
    33[[PageOutline(2-3,Contents of this page)]]
    44
    5 ||This page describes the implementation for PDAF2. It will be updated for PDAF3. ||
    6 
    7 The observation generation functionality was added with Version 1.14 of PDAF. Here we describe the implementation using PDAF-OMI that was introduced with PDAF version 1.16. (The older implementation variant is documented on the page on [wiki:ImplementGenerateObs_noOMI Implementation of Observation Generation without OMI].)
     5||This page describes the implementation for PDAF3. The [wiki:ImplementGenerateObs_PDAF23 documentation for PDAF2] is still available. ||
    86
    97== Overview ==
    108
    11 Twin data assimilation experiments are a common approach to assess data assimilation methods. In twin experiments one uses the model to generate a ''true'' model state. Further one generates synthetic observations by adding random perturbations to the true state. The, in the actual twin experiment one starts the data assimilation with a state estimate that is different from the true state and assimilates the synthetic observations. One can analyze the assimilation result by comparing the state estimate from the twin experiment with the previously generated true state.
     9Twin data assimilation experiments are a common approach to assess data assimilation methods. In twin experiments one uses the model to generate a ''true'' model state. Further, one generates synthetic observations by adding random perturbations to the true state. Then, in the actual twin experiment one starts the data assimilation with a state estimate that is different from the true state and assimilates the synthetic observations. One can analyze the assimilation result by comparing the state estimate from the twin experiment with the previously generated true state. One can also further modify the model or the observations to simulate deficiencies in real systems.
    1210
    13 Starting with version 1.14, PDAF provides functionality to generate synthetic observations. The functionality bases on the normal implementation of the assimilation used with PDAF. However, one can run the observation generation with an ensemble of just one member, which should be initialized with the initial true state. PDAF provides the routines `PDAFomi_generate_obs` and `PDAFomi_put_state_generate_obs` to perform the observation generation. These routines use the observation operator routines which the user implements e.g. for assimilating real observations.
     11PDAF provides functionality to generate synthetic observations. The functionality bases on the usual implementation of the assimilation used with PDAF's oneline coupled mode. However, one can run the observation generation with an ensemble of just one member, which should be initialized with the initial true state. PDAF provides the routines `PDAF3_generate_obs` and `PDAF3_put_state_generate_obs` to generate the observations. These routines use the observation operator routines which the user also implements for assimilating real observations. Thus, one can use characterstics of real observations to generate the synthetic observations.
    1412
    15 Here we describes the steps need to generate synthetic obsrvations.
     13Here we describes the steps needed to generate synthetic obsrvations.
    1614
    1715== Initialization ==
    1816
    19 The implementation of the initialization of PDAF is explained on the [wikiInitPdaf page on `init_pdaf` and `PDAF_init`].
     17The implementation of the initialization of PDAF is explained on the [wiki:OnlineInitPdaf_PDAF3 page on `init_pdaf` and `PDAF_init`].
    2018
    21 For the observation generation one just has to set `filtertype = 11`.
     19For the observation generation one just has to set `filtertype = PDAF_DA_GENOBS` or `filtertype = 100`.
    2220
    23 There are no particular options for the observation generation functionality. So for `filter_param_i` one just has to specify the mandatory values of the state dimension and the ensemble size. For `filter_param_r` one has to specify the mandatory values of the forgetting factor (even though, this value is ignored for the observation generation)
     21There are no particular options for the observation generation functionality. So, using the common names in the tutorial and template codes, for `filter_param_i` one just has to specify the mandatory values of the state dimension and the ensemble size. For `filter_param_r` one has to specify the mandatory values of the forgetting factor (even though, this value is ignored for the observation generation). An overview of the options can be optained by runnign the program with `subtype=-1`. The options are also listed on the [wiki:AvailableOptionsforInitPDAF#ObservationGeneration page on available options].
    2422
    2523== Observation Generation Step ==