= Name and subject of the action Last edition: '''[[Wikinfo(changed_ts)]]''' by '''[[Wikinfo(changed_by)]]''' The PI is responsible to closely follow the progress of the action, and especially to contact NEMO project manager if the delay on preview (or review) are longer than the 2 weeks expected. [[PageOutline(2, , inline)]] == Summary ||=Action || ENHANCE-04_dford_OBSOP_BGC || ||=PI(S) || David Ford || ||=Digest || Adapt OBS code to make it easier to add new (especially biogeochemical) variables in a generic fashion || ||=Dependencies || None || ||=Branch || source:/NEMO/branches/2020/dev_r13747_ENHANCE-04_dford_OBSOP_BGC || ||=Previewer(s) || Dan Lea || ||=Reviewer(s) || Dan Lea || ||=Ticket || #2567 || === Description Adapt observation operator code so that variables are handled more generically as possible in the code, making it easier to add new variables. This will be particularly useful for adding new biogeochemical profile variables from different models. === Implementation {{{#!box width=35em help Describe flow chart of the changes in the code. \\ List the Fortran modules and subroutines to be created/edited/deleted. \\ Detailed list of new variables to be defined (including namelists), \\ give for each the chosen name and description wrt coding rules. }}} Change some of the internal handling of profile observation variables. Currently it's only set up to be able to handle inputs with two variables in, either temperature and salinity, or U&V velocity. This change will remove those restrictions, so that users adding an observation operator for third party biogeochemical model variables will be able to more easily. The changes also add some error checking on the variable names read in from observation files, as currently these aren't checked. This will require edits to the following modules in OCE/OBS: * diaobs.F90 * obs_oper.F90 * obs_prep.F90 * obs_read_prof.F90 * obs_read_surf.F90 * obs_write.F90 The following new variables will be added to the &namobs namelist: * ln_default_fp_indegs * rn_default_avglamscl * rn_default_avgphiscl * nn_2dint_default [renamed from nn_2dint] === Documentation updates {{{#!box width=55em help Using previous parts, define the main changes to be done in the NEMO literature (manuals, guide, web pages, …). }}} namobs to be updated in doc/namelists/namobs to reflect the changes noted above. == Preview {{{#!box width=50em info [[Include(wiki:Developers/DevProcess#preview_)]] }}} These are changes which have already been incorporated and used in the branch source:/branches/UKMO/dev_r5518_obs_oper_update. See r9306 and r11546, noting that the changes specific to third party biogeochemical models will not be included here. == Tests {{{#!box width=50em info [[Include(wiki:Developers/DevProcess#tests)]] }}} The SETTE tests have been run with the updated code, and all pass. Note that the fix described in #2568 is required for the OBS and ASM code to be tested correctly. No changes to results are expected or seen with ln_diaobs either activated or deactivated. Due to the issue in #2568 the test doesn't seem to run properly in the trunk, so I can't compare feedback files before and after. But all the output feedback files have been created as expected, and the _Hx variables contain expected model values. I've copied the contents of a working directory, including output, to /scratch/frdf/sette/REPRO_4_8 on the Met Office system. The changes have also been used extensively in source:/branches/UKMO/dev_r5518_obs_oper_update, and shown not to change any results. == Review {{{#!box width=50em info [[Include(wiki:Developers/DevProcess#review)]] }}} ''Looks fine. I'm happy with the testing. This can go back. (Dan Lea)''