13 | | * Include[[BR]] `USE PDAF`[[BR]] in all routines that call PDAF routines (e.g. in init_pdaf and assimilate_pdaf). |
14 | | * If you used `USE PDAF_interface_module` in your code, replace this by `USE PDAF`. |
15 | | * You might need to adapt the Makefile of your program to include[[BR]]`-IPATH_TO_PDAF_INCLUDE`,[[BR]] where PATH_TO_PDAF_INCLUDE is the directory `include/` of your PDAF installation. The compiler needs to find the PDAF module files which are placed in `include/` |
16 | | * particular cases: |
17 | | * If the compile process of your programm includes the compilation of PDAF using src/Makefile: With PDAF3 the Makefile is now only in the base-directory and there is no Makefile any more in src/. Thus, you would need adapt to use the Makefile in the base-directory (or alternatively you can copy this Makefile into src/ and adapt it according to the hints given inside the Makefile |
18 | | * If you used the offline mode by specifying **subtype=5**: change `subtype` to 0 and add a call to the routine [wiki:PDAF_set_offline_mode] in `init_pdaf`. Alternatively switch from using the `put_state` routine to using the new `assim_offline` routine, e.g. [wiki:PDAF3_assim_offline_local]. |
19 | | * If your code calls **PDAF_assimilate_lnetf** or **PDAF_put_state_lnetf**: There was an argument added for `init_obs_pdaf`. The code has to be adapted for this additional arguments. (see [wiki:PDAF_assimilate_lnetf] or [wiki:PDAF_put_state_lnetf]) |
20 | | * If your code used the **SEEK filter**: This filter was deprecated for a longer time and is no longer available with PDAF V3. Any call to e.g. PDAF_assimilate_seek has to be removed. |
21 | | * If your code used the **'simplified interface'**, i.e. routines with ending `_si`: The `_si` routine are no longer present in PDAF V3. Instead use the full interface routine, i.e. the routine with the same name as the `_si` routine, but without `_si`. Then set the arguments to the names that you find inside the `_si` routine file from PDAF2. |
| 13 | * Include[[BR]] `USE PDAF`[[BR]] in all routines that call PDAF routines (e.g. in `init_pdaf` and `assimilate_pdaf`). |
| 14 | * If you used `USE PDAF_interface_module` in your code, replace this with `USE PDAF`. |
| 15 | * You might need to adapt the Makefile of your program to include[[BR]]`-IPATH_TO_PDAF_INCLUDE`,[[BR]] where PATH_TO_PDAF_INCLUDE is the directory `include/` of your PDAF installation. The compiler needs to find the PDAF module files which are placed in `include/`. If you use the Makefile from the template or tutorials, you can use `-I{BASEDIR}/include`. |
| 16 | * **Particular cases**: |
| 17 | * If the compile process of your programm includes the compilation of PDAF using **src/Makefile**: With PDAF3 the Makefile is now only in the base-directory and there is no Makefile any more in src/. Thus, you would need adapt to use the Makefile in the base-directory (or alternatively you can copy this Makefile into src/ and adapt it according to the hints given inside the Makefile |
| 18 | * If you used the offline mode by specifying **subtype=5**: change `subtype` to 0 and add a call to the routine [wiki:PDAF_set_offline_mode] in `init_pdaf`. Alternatively, switch from using the `put_state` routine to using the new `assim_offline` routine, e.g. the universal routine [wiki:PDAF3_assim_offline]. |
| 19 | * If your code calls **PDAF_assimilate_lnetf** or **PDAF_put_state_lnetf**: We had to add an argument for `init_obs_pdaf`, which is required internally for the revised observation initialization. The code has to be adapted for this additional argument. (see [wiki:PDAF_assimilate_lnetf] or [wiki:PDAF_put_state_lnetf]) |
| 20 | * If your code used the **SEEK filter**: This filter was deprecated for a longer time and is no longer available with PDAF V3. Any call to e.g. `PDAF_assimilate_seek` has to be removed. |
| 21 | * If your code used the **'simplified interface'**, i.e. routines with ending `_si`: The `_si` routines are no longer present in PDAF V3. Instead use the full interface routine, i.e. the routine with the same name as the `_si`-routine, but without `_si`. Then, set the arguments to the names that you find inside the `_si` routine file from PDAF2. |
25 | | Two additional changes relate to the specification of `subtype` and the integer and real parameters for `PDAF_init`: |
26 | | * A few of the parameters used to configure PDAF in the call to `PDAF_init` have changed their index. This only concerns the EnKF, LEnKF, LKNETF and PF. An overview of the parameters is show in the tables on the [wiki:AvailableOptionsforInitPDAFinPDAF3 page 'Available options for the different DA methods']. |
| 25 | **Two additional changes** relate to the specification of `subtype` and the integer and real parameters for `PDAF_init`: |
| 26 | * A few of the parameters used to configure PDAF in the call to `PDAF_init` have changed their index value. This only concerns the EnKF, LEnKF, LKNETF and PF. An overview of the parameters is shown in the tables on the [wiki:AvailableOptionsforInitPDAFinPDAF3 page 'Available options for the different DA methods']. |