27 | | == Inserting `init_pdaf` == |
28 | | |
29 | | The right place to insert a routine like `init_pdaf` into the model code is in between the initialization part of the model and the time stepping loop. Thus, the regular model initialization should be completed, which allows PDAF to initialize the ensemble of model states. |
| 27 | == Inserting `init_pdaf` to the model code == |
| 28 | |
| 29 | The right place to insert the routine `init_pdaf` into the model code is in between the initialization part of the model and the time stepping loop. At this point, the regular model initialization is completed, which allows PDAF to initialize the ensemble of model states. |
| 30 | |
| 31 | == Using `init_pdaf` == |
| 32 | |
| 33 | In `init_pdaf` a number of variables are defined that are used in the call to `PDAF_init` as described below. There are also a few variables that are initialized in `init_pdaf` but not used in the call to `PDAF_init`. In stead they are define here for later use in the user-supplied call-back routines. For the tutorial example, these variables are described below in the section '[#Othervariablesfortheassimilation Other variables for the assimilation]'. |
| 34 | |
| 35 | The example implementation and the template code allow to specify all options at run time using a command line parser. These options are specified as the combination `-VARIABLE VALUE`. This method provides a convenient way to define an experiment and could also be used for other models. The parser module is provided by the file `tutorial/offline_2D_parallel/parser_mpi.F90` |