Changes between Version 195 and Version 196 of LnDevel


Ignore:
Timestamp:
Nov 24, 2024, 3:13:17 PM (4 hours ago)
Author:
lnerger
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • LnDevel

    v195 v196  
    1111
    1212
    13  ''' New for PDAF V2.3'''
     13 ''' New for PDAF V2.3.1'''
    1414
    15 [wiki:OMI_nondiagonal_observation_error_covariance_matrices]
     15[wiki:PDAFomi_set_doassim]
    1616
    17 [wiki:PDAFomi_observation_localization_weights]
     17[wiki:PDAFomi_set_disttype]
    1818
    19 [wiki:PDAF_correlation_function]
     19[wiki:PDAFomi_set_ncoord]
    2020
    21 [wiki:OMI_search_local_observations]
     21[wiki:PDAFomi_set_obs_err_type]
    2222
    23 [wiki:PDAFomi_set_localization]
     23[wiki:PDAFomi_set_use_global_obs]
    2424
    25 [wiki:PDAFomi_set_localization_noniso]
     25[wiki:PDAFomi_set_inno_omit]
    2626
    27 [wiki:PDAFomi_set_dim_obs_l]
     27[wiki:PDAFomi_set_inno_omit_ivar]
    2828
    29 [wiki:PDAFomi_store_obs_l_index]
     29[wiki:PDAFomi_set_id_obs_p]
    3030
    31 [wiki:PDAFomi_store_obs_l_index_vdist]
     31[wiki:PDAFomi_set_icoeff_p]
    3232
    33 [wiki:PDAFomi_assimilate_3dvar_nondiagR]
    34 
    35 [wiki:PDAFomi_assimilate_en3dvar_estkf_nondiagR]
    36 
    37 [wiki:PDAFomi_assimilate_en3dvar_lestkf_nondiagR]
    38 
    39 [wiki:PDAFomi_assimilate_enkf_nondiagR]
    40 
    41 [wiki:PDAFomi_assimilate_global_nondiagR]
    42 
    43 [wiki:PDAFomi_assimilate_hyb3dvar_estkf_nondiagR]
    44 
    45 [wiki:PDAFomi_assimilate_hyb3dvar_lestkf_nondiagR]
    46 
    47 [wiki:PDAFomi_assimilate_lenkf_nondiagR]
    48 
    49 [wiki:PDAFomi_assimilate_lknetf_nondiagR]
    50 
    51 [wiki:PDAFomi_assimilate_lnetf_nondiagR]
    52 
    53 [wiki:PDAFomi_assimilate_local_nondiagR]
    54 
    55 [wiki:PDAFomi_assimilate_nonlin_nondiagR]
    56 
    57 [wiki:PDAFomi_assimilate_enkf_nondiagR_si.F90]
    58 
    59 [wiki:PDAFomi_assimilate_global_nondiagR_si.F90]
    60 
    61 [wiki:PDAFomi_assimilate_lenkf_nondiagR_si.F90]
    62 
    63 [wiki:PDAFomi_assimilate_lknetf_nondiagR_si.F90]
    64 
    65 [wiki:PDAFomi_assimilate_lnetf_nondiagR_si.F90]
    66 
    67 [wiki:PDAFomi_assimilate_local_nondiagR_si.F90]
    68 
    69 [wiki:PDAFomi_assimilate_nonlin_nondiagR_si.F90]
    70 
    71 [wiki:PDAFomi_put_state_3dvar_nondiagR]
    72 
    73 [wiki:PDAFomi_put_state_en3dvar_estkf_nondiagR]
    74 
    75 [wiki:PDAFomi_put_state_en3dvar_lestkf_nondiagR]
    76 
    77 [wiki:PDAFomi_put_state_enkf_nondiagR]
    78 
    79 [wiki:PDAFomi_put_state_global_nondiagR]
    80 
    81 [wiki:PDAFomi_put_state_hyb3dvar_estkf_nondiagR]
    82 
    83 [wiki:PDAFomi_put_state_hyb3dvar_lestkf_nondiagR]
    84 
    85 [wiki:PDAFomi_put_state_lenkf_nondiagR]
    86 
    87 [wiki:PDAFomi_put_state_lknetf_nondiagR]
    88 
    89 [wiki:PDAFomi_put_state_lnetf_nondiagR]
    90 
    91 [wiki:PDAFomi_put_state_local_nondiagR]
    92 
    93 [wiki:PDAFomi_put_state_nonlin_nondiagR]
    94 
    95 [wiki:PDAFomi_put_state_enkf_nondiagR_si]
    96 
    97 [wiki:PDAFomi_put_state_global_nondiagR_si]
    98 
    99 [wiki:PDAFomi_put_state_lenkf_nondiagR_si]
    100 
    101 [wiki:PDAFomi_put_state_lknetf_nondiagR_si]
    102 
    103 [wiki:PDAFomi_put_state_lnetf_nondiagR_si]
    104 
    105 [wiki:PDAFomi_put_state_local_nondiagR_si]
    106 
    107 [wiki:PDAFomi_put_state_nonlin_nondiagR_si]
     33[wiki:PDAFomi_set_domainsize]
    10834
    10935
     36== Version 2.3.1 - XXX, 2024 ==
    11037
    111 **PDAFlocal**
     38Bug correction:
     39 * Corrected convergence check for the CG+ solver in the 3D-Var methods in case of parallelized control vector.
    11240
    113 [wiki:PDAFlocal_overview]
     41New functionality:
     42 * Added initialization functions for quantities of 'thisobs' in PDAF-OMI, e.g. for thisobs%doassim. These are optional and no code changes are required.
    11443
    115 [wiki:PDAFlocal_set_indices]
    116 
    117 [wiki:PDAFlocal_set_increment_weights]
    118 
    119 [wiki:PDAFlocal_clear_increment_weights]
    120 
    121 
    122 [wiki:PDAFlocal_assimilate_en3dvar_lestkf]
    123 
    124 [wiki:PDAFlocal_assimilate_hyb3dvar_lestkf]
    125 
    126 [wiki:PDAFlocal_assimilate_lestkf]
    127 
    128 [wiki:PDAFlocal_assimilate_lestkf_si]
    129 
    130 [wiki:PDAFlocal_assimilate_letkf]
    131 
    132 [wiki:PDAFlocal_assimilate_letkf_si]
    133 
    134 [wiki:PDAFlocal_assimilate_lknetf]
    135 
    136 [wiki:PDAFlocal_assimilate_lknetf_si]
    137 
    138 [wiki:PDAFlocal_assimilate_lnetf]
    139 
    140 [wiki:PDAFlocal_assimilate_lnetf_si]
    141 
    142 [wiki:PDAFlocal_assimilate_lseik]
    143 
    144 [wiki:PDAFlocal_assimilate_lseik_si]
    145 
    146 [wiki:PDAFlocal_put_state_en3dvar_lestkf]
    147 
    148 [wiki:PDAFlocal_put_state_hyb3dvar_lestkf]
    149 
    150 [wiki:PDAFlocal_put_state_lestkf]
    151 
    152 [wiki:PDAFlocal_put_state_lestkf_si]
    153 
    154 [wiki:PDAFlocal_put_state_letkf]
    155 
    156 [wiki:PDAFlocal_put_state_letkf_si]
    157 
    158 [wiki:PDAFlocal_put_state_lknetf]
    159 
    160 [wiki:PDAFlocal_put_state_lknetf_si]
    161 
    162 [wiki:PDAFlocal_put_state_lnetf]
    163 
    164 [wiki:PDAFlocal_put_state_lnetf_si]
    165 
    166 [wiki:PDAFlocal_put_state_lseik]
    167 
    168 [wiki:PDAFlocal_put_state_lseik_si]
    169 
    170 
    171 [wiki:PDAFlocalomi_assimilate]
    172 
    173 [wiki:PDAFlocalomi_assimilate_en3dvar_lestkf]
    174 
    175 [wiki:PDAFlocalomi_assimilate_hyb3dvar_lestkf]
    176 
    177 [wiki:PDAFlocalomi_assimilate_en3dvar_lestkf_nondiagR]
    178 
    179 [wiki:PDAFlocalomi_assimilate_hyb3dvar_lestkf_nondiagR]
    180 
    181 [wiki:PDAFlocalomi_assimilate_lknetf_nondiagR]
    182 
    183 [wiki:PDAFlocalomi_assimilate_lnetf_nondiagR]
    184 
    185 [wiki:PDAFlocalomi_assimilate_nondiagR]
    186 
    187 
    188 [wiki:PDAFlocalomi_put_state]
    189 
    190 [wiki:PDAFlocalomi_put_state_en3dvar_lestkf]
    191 
    192 [wiki:PDAFlocalomi_put_state_hyb3dvar_lestkf]
    193 
    194 [wiki:PDAFlocalomi_put_state_en3dvar_lestkf_nondiagR]
    195 
    196 [wiki:PDAFlocalomi_put_state_hyb3dvar_lestkf_nondiagR]
    197 
    198 [wiki:PDAFlocalomi_put_state_lknetf_nondiagR]
    199 
    200 [wiki:PDAFlocalomi_put_state_lnetf_nondiagR]
    201 
    202 [wiki:PDAFlocalomi_put_state_nondiagR]
    203 
    204 [wiki:PDAF_diag_crps_mpi]
    205 
    206 == Version 2.3 - XXX, 2024 ==
    207 
    208 Major Changes and additions:
    209  * Addition of ''support for non-diagonal observation error covariance matrices in PDAF-OMI'' (see https://pdaf.awi.de/trac/wiki/OMI_nondiagonal_observation_error_covariance_matrices)
    210  * ''Introduction of PDAFlocal interface''. This simplifies the implementation of the state localization. It also provides support for weighted local increments, e.g. to implement vertical localization or weakly coupled assimilation. (see https://pdaf.awi.de/trac/wiki/PDAFlocal_overview)
    211  * ''Performance improvements to PDAFomi_init_dim_obs_l''. While we already improved the performance in V2.2.1 we found that we can further improve the performance by further restructuring of the code. (In some cases with gfortran and ifort compilers by a factor of 6 to 10.) The previous routine is still present as PDAFomi_init_dim_obs_l_old.
    212  * For even better performance of the initialization of local observations, we added ''support for implementing a user-provided alternative to PDAFomi_init_dim_obs_l''. The user-provided routine can lead to the best performance since it requires less IF-checks, which are required in the generic code inside PDAFomi. If you have the impression that PDAFomi_init_dim_obs_l is still slow in your case, e.g. because it dominates the run time of the analysis step, we recommend to aim for a user-sided implementation (see https://pdaf.awi.de/trac/wiki/OMI_search_local_observations).
    213 
    214 
    215 Further changes and additions:
    216  * Improved ''parser_mpi.F90'': Now parsing a slash '/' is possible. This now also allows to parse directory paths. In addition, for string parsing it is checked if the string is truncated upon parsing. All files parser_mpi.F90 in the different directories of the PDAF package are updated.
    217  * Update of ''PDAF_diag_crps'': The routine now includes parallelization. There is a separate routine ''PDAF_diag_crps_mpi'' which allows one to specify the communicator in which the operation is performed.
    218  * New ''Makefile'' in the PDAF root directory. This makefile performs the compilation in the directory build/ and keeps src/ clean. Further, it supports parallel compilation.  The previous Makefile in src/ is still present, but will be removed in a future release. If you integrated the compilation of PDAF in some larger build process, we recommend to switch to the new Makefile. (The new makefile requires to the set the variable 'MODULEOPT' in the compiler-specific include file in make.arch/. This variable specifies the compiler option for the directory where compiled .mod files are to be stored)
    219  * New routine ''PDAFomi_observation_localization_weights'' as convenient way to get a localization weight. Usable for example in the prodRinvA or likelihood routines for non-diagonal R.
    220  * New routine ''PDAF_correlation_function'' to provide the value of correlation functions. Currently, a Gaussian and the 5th-order polynomial by Gaspari&Cohn (1999) are implemented.
    221  * Revised timer module: Now MPI_Wtime is used instead of SYSTEM_CLOCK. This appears to yield more consistent timings
    22244 
    223 Bug fixes:
    224  * Replace lower-case letters by upper case in TRTRS library calls. This circumvents a bug in some versions of OPENBLAS, which causes OPENBLAS to only accept upper-case letters for this call.
    225  * Revision of ETKF/ESTKF/SEIK analysis step. For domains with dim_obs_p=0 now the observation operator is called consistently with domains having dim_obs_p>0. This allows for global MPI operations in the observation operator routine.