Minutes of the code management group meeting 2023-03-30

From UKCA

Code management group minutes

Teleconference Details

Thursday 30th March 2023, 10.00am - 11.30am GMT

Meeting via Zoom - details have been emailed

Met Office: AJH, MS, JW, CN, JA, FM, MD, CH

Cambridge: NLA

Leeds: DG

NIWA: OM

CSIRO: AL

Apologies: FOC, GM, MR

Actions from this meeting

  1. (ongoing) NLA to put C_SPECIES definitions in the Redundant Code table (short-term), and switch to use M_SPECIES instead. Talk with JH about AQUM tests and requirements. Note that there will be problems with exoplanets and >100km top configs where M_air not constant. LA to make a branch and progress. May want to move to redundant code table at some point
  2. (ongoing) GM/DG to update table on UKCA wiki documenting GLOMAP versions. DG/GM to consider the code and lodging process for GLOMAP developments and consider a suitable rose-stem test supported by NLA.
  3. (ongoing) NLA to feedback comments to JH on updated API document (reflecting the UMvn13.0 release) before it can be circulated.
  4. (ongoing) Unprotected rose-stem options: AJH to look at i_mode_setup=6
  5. (ongoing) ALL look at um:#6203 showing other unprotected rose-stem options and think about any code/settings they are interested in.
  6. (ongoing) ALL to consider who is best to add a test for 2-D photolysis as part of Photolysis API changes. Could be part of box model tests.
  7. (ongoing) NLA, AJH to identify owners for TropChem and StratChem items in the Desirable changes not Tested Table. AJH to arrange call with NLA. Should also update the UKCA UMDP to reflect which configurations are supported/widely used.
  8. (ongoing) AJH to check over the priorities list and see which have been completed.
  9. (new) NLA to follow-up with JM, CH, and MS about column-call and potential testing
  10. (ongoing) DG - activation change/possible bug to implement.
  11. (new) NLA to update Open Bugs page with DG reported bug
  12. (new) NLA to update UKCA development practices to include umdp3 testing from now on (see ukca:#76).
  13. (new) NLA to think about adding requirement for including LFRic rose-bush links on UKCA Ticket Summary pages, but need to be careful about requirement creep.
  14. (new) NLA to send round a Doodle for mid-May to mid-June, with a preference towards mid-May.

Actions from the Last Meeting (NLA)

Minutes of the code management group meeting 2023-01-30

  1. (ongoing) NLA to put C_SPECIES definitions in the Redundant Code table (short-term), and switch to use M_SPECIES instead. Talk with JH about AQUM tests and requirements. Note that there will be problems with exoplanets and >100km top configs where M_air not constant. LA to make a branch and progress.
    • Ongoing - may want to move to redundant code table at some point
  2. (ongoing) GM/DG to update table on UKCA wiki documenting GLOMAP versions. DG/GM to consider the code and lodging process for GLOMAP developments and consider a suitable rose-stem test supported by NLA.
    • DG has updated the GLOMAP versions table, and will also chat with GM.
    • DG has made a GLOMAP8.0 branch at UMvn12.2
    • Ongoing
  3. (ongoing) NLA to feedback comments to JH on updated API document (reflecting the UMvn13.0 release) before it can be circulated.
    • Ongoing
  4. (ongoing) Unprotected rose-stem options: MD to look at highorder_scheme.
    • Close - move to redundant code table
  5. (ongoing) Unprotected rose-stem options: AJH to look at i_mode_setup=6
    • AJH is working on an LFRic ticket that includes this and will put in a UM testing ticket during next release cycle.
    • Ongoing
  6. (ongoing) ALL look at um:#6203 showing other unprotected rose-stem options and think about any code/settings they are interested in.
    • Ongoing
  7. (ongoing) ALL to consider who is best to add a test for 2-D photolysis as part of Photolysis API changes. Could be part of box model tests.
    • Ongoing
  8. (ongoing) NLA, AJH to identify owners for TropChem and StratChem items in the Desirable changes not Tested Table. AJH to arrange call with NLA. Should also update the UKCA UMDP to reflect which configurations are supported/widely used.
    • Ongoing
  9. (new) AJH to check over the priorities list and see which have been completed.
  10. (new) NLA to follow up with JM about UKESM2 package testing.
    • Closed - met earlier in March. UKCA package testing in UKESM2 is ongoing.
    • Action: NLA to follow-up with JM, CH, and MS about column-call and potential testing
  11. (new) DG - activation change/possible bug to implement.
    • Ongoing - progressing for next release
    • Action: NLA to update Open Bugs page with reported bug
  12. (new) NLA to send Doodle poll for the middle to the end of March 2023
    • Closed

Standing actions

  1. (ongoing - standing item) CMG to monitor list of bugs and circulate between group for owners.
  2. (ongoing - standing item) At CMG future meetings there should be included an appendix listing the open bugs. If a ticket is included it is not an open bug (as the owner of ticket is person doing lodging).
  3. (ongoing - standing item) ALL with access to keep monitoring ukca_bugs email list.
  4. (ongoing - standing item) ALL to think about if code changes will change KGO and let systems team know in good time, and remember to include the UKCA keywords to all UKCA tickets. This should be a standard part of our working practice. Note also the required keywords.
  5. (ongoing - standing item) ALL to note, review, and remove obsolete/redundant code
  6. (ongoing - standing item) ALL closed ticket owners to produce a summary of their change for the UKCA newsletter for special occasions, e.g. to coincide with Composition-Climate Meeting.
  7. (ongoing - standing item) Code Owner to produce draft newsletter for CMG to approve.
  8. (ongoing - standing item) ALL to consider other rose-stem tests that could be included.
  9. (ongoing - standing item) ALL to email NLA with suggestions for next set of tutorials.

Tickets (NLA)

Tickets on MOSRS:


PLEASE REMEMBER TO USE THE UKCA KEYWORD FOR ALL UKCA CHANGES

NOTE: The UM requirement for LFric testing of all changes under UM:src/atmosphere, UKCA:src/science, and UKCA:src/control/core

Please also give any feedback on the UM release cycle to NLA to pass-back to UM Sys.

Message from UM Sys - please take care when considering keywords. It is important to get these correct for the Code Review process.

Feedback: Great that every ticket that made to code review made it to release

MD highlighted that the emissions framework has gone into LFRic

Action: NLA to update UKCA development practices to include umdp3 testing from now on (see ukca:#76).

UKCA Ticket #7 (AJH)

There is a requirement to run with mix of prognostic and climatological aerosols so AJH has made changes to how GLOMAP-mode is set-up, which will have impacts for GLOMAP developers. The code is now more complicated as information is now held in a structure, with pointers to entries in this structure. Developers will spot changes if re-branching from a previous version. Existing rose-stem tests will cover testing requirements. This is LFRic-only functionality and will be included in an LFRic test. If you have any issues please email AJH about it.

Action: NLA to think about adding requirement for including LFRic rose-bush links on UKCA Ticket Summary pages, but need to be careful about requirement creep.

Update on UKCA API redesign (NLA/AJH for JH)

Large ticket ukca:#25, necessary for NAME work. Let us know of any comments from NAME/Box Model users.

GPU porting and convergence mask progress (JW & NLA)

GPU porting work initially funded under ExCALIBUR has continued in collaboration with NVIDIA. There are 2 code developments necessary for this:

  1. Ability to pass more cells to the ASAD chemical solver package
  2. Ability to prevent cells that have converged from continuing to be worked on during the solver step (a "convergence mask")


JW has implemented the first point, allowing multiple columns and slices to be passed to the ASAD solver. NVIDIA work has developed the second point, and JW has merged these together for testing purposes.

Currently the code is slower than the trunk, but potentially might be able to be made faster. If this is the case we would want to implement the convergence mask, but this would break all current KGO. However, this would be acceptable if it made the code better.

Progress with Priorities (NLA)

ACTION REQUEST FROM UKCA SCIENCE & MANAGEMENT BOARD: CMG to provide list of priorities & their status, with particular thought to UKESM2 changes that will be required.

The current priorities are:

# Description Owner Desirable for UKESM2? Status Comments from this meeting Complete
1 UKCA API John Hemmings (main) No UKCA API work is progressing (AJH). Radaer API on hold until after GA7 port to LFRic. Functionality of RADAER in LFRic currently works without an API although it will be preferable to update this in future.
2 UKCA and NAME coupling John Hemmings (main) No ukca:#25 was lodged for UM13.2
3 Review UKCA tests to cover all requirements Luke Abraham / Mohit Dalvi Will cover these in a table in future for review.
Updated testing coverage on Linux and can run 1x1 decomposition
4 Updates/fixes to GLOMAP routines YES AH asked about the stratospheric changes from a UKESM2 context, and whether there is any help for these.
5 Standalone UKCA configurations Luke Abraham/Scott Archer-Nicholls ExCALIBUR work progressing.
Aim to remove UKCA from UM trunk at vn12.3.
See UKCA Box Model page
6 Emissions flexibility Mohit Dalvi
7 Separare UKCA repository Luke Abraham Separate UKCA trac environment set-up on MOSRS here, will hold UKCA code on completion of current ExCALIBUR project.
Aiming for vn12.3.
UKCA removed from UM at UMvn13.0 - see UKCA repo
Closed
yes
8 Non-API LFRic work, e.g. Porting aerosol science functionality etc. Alan J Hewitt No Porting calculation of CDNC from GLOMAP Climatology aerosols complete.
I will pass required elements of ukca_radaer to ukca_radaer_band_average (um:#5957)
Porting calculation of fields in radaer_band_average to be passed to Socrates underway(lfric:#2488)
Includes RADAER, need to use imode_setup=8
RADAER now callable from LFRic, can do GA-type comparisons from LFRic to UM. JH to put UKCA into LFRic soon - working in an SCM configuration (GLOMAP with offox) - needs more testing. A lot more work to do, possibly until end of 2021.
AJH has tickets going in for 12.1 that would cover all of the basic GA7 but with climatological aerosol. JH tickets will do the prognostic alternative. JH currently has an LFRic-SCM configuration with prognostic aerosol.
JH now has UKCA working in proto-GAL7 (LFRic) config. Needs to couple with convection & plume scavenging.
Convection & plume scavenging has been done.
AJH - some of this has been done or is in progress.
yes
9 RADAER API Alan Hewitt (main) No Radaer API on hold until after GA7 port to LFRic.
Functionality of RADAER in LFRic will work without an API although it will be preferable to update this in future.
Not clear if RADAER will work independently of UM in single column mode.
AJH and AH and JH and Ben Johnson and NB need to work out if desirable and practical to run independent of UM.
10 RADAER optimisation Alan Hewitt (main) NO AJH highlighted that there have been some discussions about this - a few people interested in this (James Manners, AH, Ben Johnson, AJH). Have had someone looking to see if something could be changed to make it faster to make a trimmed-down version with less calculations for e.g. NWP.
AJH and BJ to look at making number of integration points a user variable
AJH and others to look at emulation of RADAER
11 Dry deposition and Jules tiles YES If Jules adds extra tiles for UKESM2 we may need to hard code options in dry deposition (like in um:#1761)
Aerosol Dry Deposition will be considered in the JULES context once the gas-phase changes have been committed.
Completed for UM13.1
yes
12 FastJX-GLOMAP coupling YES UMvn10.8 branches exist - see ticket UM:#2689
Note: FastJX rates also need updating - potential for code as well as input-file changes
13 Cloud-J
14 Fixes for chemistry rates and ASAD (bugs #101 & #103) Luke Abraham YES #101 still open, #103 completed (necessary for GC5 ticket GMED:#551)
Issues on EX1A.
Closed - see also UKESM:#841 for UKCA package ticket
yes
15 Rc fixes for water (bug #104) UKESM Core Team YES Lodged at UMvn11.7 in ticket UM:#5167 yes
16 CH4 deposition fixes (bug #109) Gerd Folberth YES Closed yes
17 UKCA STASHmaster PP-codes Luke Abraham Verification system makes some use of existing PP-codes. New items should have a PP-code of 0 and verification team will use STASH items for these if required.
18 Removal of redundant code ALL No Parked whilst GA7.0 is a protected suite.
19 GLOMAP-CLIM API refresh Alan J Hewitt No Parked until science functionality around GLOMAP aerosols ported to LFRic.
20 N48L85 configuration
21 ACTIVATE optimisation TBC A quick win here is to reduce nwbins in namelist ( see um:#4740 ).
Parked for now.
There does not seem to be resource to look at this at present.
22 Stratospheric Ozone improvements James Keeble/Luke Abraham YES
UKESM:#729
Work ongoing, covered in ticket UM:#5641.
Note: FastJX rates also need updating - potential for code as well as input-file changes
See also UKESM:#841 for UKCA package ticket
23 Solar cycle in photolysis Luke Abraham YES
UKESM:#732
Some code lodged at UMvn10.9 (UM:#2587) but needs bugfixing. This work has stalled in ticket UM:#4828 (bug #110).
UM:#4828 lodged for UMvn12.2.
See also UKESM:#841 for UKCA package ticket
24 Deposition updates from CSIRO YES
UKESM:#730
UKESM:#739
Code lodged in UM:#4020 (UMvn11.4, oceanic dry deposition) and UM:#5713 (UMvn11.8, Lightning NOx updates).
See also UKESM:#841 for UKCA package ticket
25 Sol/Insol Anthony Jones (main) No ukca:#14 was lodged for UM13.2

It was noted that it would be helpful for the UKCA Science and Management Board to have oversight of these priorities and provide feedback and direction.

Bugs/Bugfixes (NLA)

Open Bugs

# Description Ticket Owner Comments Comments from this meeting
124 H2 and N2 cannot be set for RCP and WMOA1 scenario routines UM:#5620 Mohit Dalvi Values are hard-wired in the code and cannot be changed without a branch
Will be handled at UM11.8
At least for the next version
Keep open
Tested it quickly - N2 is used from namelist but not obvious, but H2 needs further testing
128 Bug in UKCA stratospheric chemistry diagnostics UM:#5839 Luke Abraham pre-UMvn10.0. The indexing/values of diagnostics m01s50i101-i104 are incorrect. Fixes provided for vn11.1 and vn11.7. May affect CMIP6 diagnostics
May be best to lump #101.
NLA to contact JM
Should be fixed for UKESM2
Biggish ticket for 12.2 with bug fixes.
See if can be done for 12.3
Nice to do ASAP, but if just diagnostics might be able to do at a later time.
135 The SO2 dry deposition improvements added under #5167 do not work for Convection permitting configurations (e.g Nested suite) and fail due to absence of Convection diagnostics. um:#6433 The error message could be turned to a warning and related fields initialised to zero
136 There appears to be a bug in some Section 51 diagnostics. 6598 51996 and 51999 are fine.
51921 and 51922 are broken.
Other fields unknown.
Problem uncovered during 6358
May just linger. Should we take the broken ones out?
MD has opened a ticket to see which ones fail and which ones work
140 Heaviside Function cannot have multiple level sets um:#6816 The Heaviside function needed to scale UKCA pressure-level diagnostics is valid only for a single set of pressure levels from Stash requests. If some Sec 51/52 diagnostics are requested on say 19 pressure-levels and the same/ different ones on 36 pressure-levels, the Heaviside field in output will be applicable to only one of these.
May be able to request multiple Heaviside functions
143 Error in print statements from UKCA_TRACERS_COPY_FROM_UM The final species listed in the diagnostic print statement seems to have very large concentrations (O(1E+08)) compared to others in the ppm-ppt range. Does not seem to affect model output. Reported by James Weber.
144 interchangeable use of specific humidity and water vapour mixing ratio #6813 UKCA includes calculations of relative humidity, clear-sky relative humidity and saturation vapour pressure. Relative humidity calculations should be based on water vapour mass mixing ratio but are in part based on specific humidity. Also, the calculation of saturation vapour pressure is derived from saturation mixing ratio but uses a formula for deriving SVP from saturation specific humidity. This interchangeable use of specific humidity (ratio for moist air) and mixing ratio (ratio for dry air) in existing configurations introduces small numerical errors in UM and LFRic model runs. These bugs were identified at UM version vn12.2 and have been highlighted by comments in code lodged with UM ticket #6660 (in ukca_main1-ukca_main1.F90 and atmos_ukca_humidity_mod.F90). All UKCA configurations are affected.
JH doesn’t think it’s complicated but not particularly trivial either.
145 all_ntp not explicitly dimensioned in UKCA_MAIN Possible fix here all_ntp not being dimensioned explicitly in ukca_main1-ukca_main1.F90. Highlighted in NCAS CMS ticket
https://cms-helpdesk.ncas.ac.uk/t/nested-ukca-suite-on-archer2/604
raised by Paul Field. Grenville Lister has found the cause and implemented a possible fix
https://code.metoffice.gov.uk/trac/um/changeset/110132/main/branches/dev/grenvillelister/vn12.0_all_ntp_fix
147 Missing products in Sec-50 diagnostics: Mismatch in ukca_chem_master and asad_flux_dat
50-092 STRATOSPHERIC OH LOSS (B153) Products for (OH + H2) changed under scheme v121 but not reflected in asad_flux_dat
50-123 STRAT O3 LOSS: HO2 + NO3 (B61) Product O2 not available for StratTrop
After chem v121/ always
Luke Abraham NLA to take a look

There was a discussion about an error highlighting negative tracer values seen by NCAS-CMS when porting GC5. Jeff Cole thought it might be the start dump, but it could also be emissions and boundary layer mixing if the emissions fields have changed significantly from the conditions in the dump.

Redundant Code (NLA)

Code for deletion

PLEASE REMEMBER TO EDIT THE ORIGINAL REDUNDANT CODE TABLE AND NOT THIS PAGE

  • The NG-Composition Project Board has agreed to use the Redundant code table as the Technical Debt Log for UKCA as part of that project. This has highlighted the issue that some areas of code are not listed as being redundant, but are also not tested/used routinely and are not in any rose-stem tests, for example 2D photolysis and the TropIsop and Strat chemistry schemes. We have been asked to review this code and list untested code which is still desirable to be included for testing, and to ensure that other areas of code are listed for deletion.
# Description Ticket Remarks Status Timeframe Owner Comments from previous meetings Comments from this meeting
4 ukca_strat_update.F90 - relax_ozone UM:#1505 None PROPOSED Medium-term Luke Abraham
5 Backward Euler Standard Tropospheric Chemistry UM:#1507 None PROPOSED Medium-term Fiona O'Connor
6 Wet oxidation of SO2 in GLOMAP UM:#4475 None PROPOSED Medium-term Colin Johnson JM to look at this re: UKESM1 c.f. offline GLOMAP. JM to take ownership.
Still needed for CTM. Relevance for standalone code and later coupling to CTM.
7 Updraft velocity - l_conv_tke UM:#3668 Proposed in December 2017. Approval being sought for GA series (likely GA8). PROPOSED Medium-term Alan J Hewitt / Ian Boutle
8 All backward Euler chemistry schemes None Note that this is only for the “hard-coded” BE schemes. Quite a lot of work would be involved, but good as a longer-term aim. Note that problems for AQUM would need to be addressed first. PROPOSED Long-term Luke Abraham
9 Deprecated UKCA netcdf attribute options UM:#2513 'emission_type', string type attributes no longer recommeneded. Need some time for most new code to adopt these. Still used in AQUM files. DEPRECATED Medium-term Nick Savage AQUM are addressing the files. Have gone from operational jobs, have ticket to remove from rose-stem. LN to document. These have been removed from AQUM.
AQUM work has been done.
From AS: In the ancil ticket linked from #2513 (https://code.metoffice.gov.uk/trac/ancil/ticket/782) it says that GA7 depends on the old format files, and as far as I know this is still true. In the 3-step timeline suggested, we haven't reached step 2 unfortunately. That ticket was about ensuring GA8 did not use the old attributes. I believe that GA8 is due for release in the next few months (it has been a very long time coming), so UM vn11.5 may be the last version at which GA7 is supported. Do you mind waiting a bit longer?
AJH to follow-up with LA
10 ASAD families chemistry None Families chemistry has not been used for many years (since at least UM6.1. It is likely that it no longer works if turned on, and it complicates the code making other developments harder DEPRECATED Short-term Luke Abraham
11 Dry deposition 9 PFT option None The 13 PFT option has been adopted for UKESM1.
The 9 PFT option is possibly not being used at all.
Proposed in June 2018.
PROPOSED Long-term Alan J Hewitt AJH may be able to remove 9 PFT option, but it might be better to do when removing other dry-dep temporary logicals.
12 Remove explicit C_SPECIES constants and calculate these from M_SPECIES and the mass of air None Will have wide-ranging rose-stem KGO breakages PROPOSED Short-term Luke Abraham
13 Remove temporary logical l_fix_nacl_density
Introduced at UM:#2405
UM:#3490 Requires AMIP testing and a GMED ticket
Could be accepted to GA9
PROPOSED Medium-term Jane Mulcahy See JM GMED action
15 Remove temporary logical l_fix_ukca_impscav
Introduced at UM:#1421
UM:#4145 Approval being sought for GA series (likely GA9)
GMED:#402
PROPOSED Medium-term Alan J Hewitt See JM GMED action
16 Remove temporary logical l_fix_improve_drydep
Introduced at UM:#1250
UM:#3997 Approval being sought for GA series (likely GA9)
GMED:#393
PROPOSED Medium-term Alan J Hewitt See JM GMED action
17 Remove temporary logical l_fix_ukca_h2dd_x
Introduced at UM:#4157
UM:#4245 Approval being sought for GA series (likely GA9)
GMED:#410
PROPOSED Medium-term Alan J Hewitt See JM GMED action
18 Remove temporary logical l_fix_neg_pvol_wat
Introduced at UM:#4383
UM:#4416 Approval being sought for GA series (likely GA9)
GMED:#421
PROPOSED Medium-term Alan J Hewitt
21 Remove code behind L_use_stratclim from ukca_fastjx_mod
Introduced prior to MOSRS
UM:#4854 This could either be properly included via a namelist or removed from the UM PROPOSED Medium-term Alan J Hewitt LA contact OW about progressing FastJX-RADAER work
Ties in with API work. MD/NC to take a look, can be removed. Do as part of API.
Relevant person take ownership as part of API work
NC to take ownership as part of his work
22 Remove temporary logical l_fix_ukca_input_meoh_emiss
Introduced at UM:#3031
UM:#4848 Approval being sought for GA series (likely GA9)
GMED:#461
PROPOSED Medium-term Mohit Dalvi
24 Remove ability to use of Cambridge 2D model data from ukca_stratf.F90 PROPOSED Neal Carr Need to confirm from wider community for possible tropospheric configs and other choices for top-bdy
25 Change from using ukca_chem_master.F90 to a file-read for the chemical mechanism PROPOSED Short-term Luke Abraham Current chem_master module has compiler issues with that require changes to optimisation level on some compilers. A file read would be more flexible and would allow the mechanism to be more easily changed not requiring UM/UKCA code tickets.
26 highorder_scheme PROPOSED Mohit Dalvi May need to test this in rose-stem

Desirable Science not tested

PLEASE REMEMBER TO EDIT THE ORIGINAL SCIENCE NOT TESTED TABLE AND NOT THIS PAGE

See also the complete list of unprotected rose-stem options

# Description Ticket Remarks Owner
1 Use of tropospheric (2D) look-up table photolysis Still useful to compare against FastJX. May be used for a "fast" configuration. Will be doen as part of photolysis refactoring
2 TropIsop chemistry configuration May be useful in a "fast" configuration & to drive GLOMAP-mode. Useful for low-top configurations.
3 Strat chemistry configuration Useful for stratospheric studies, particularly with a high model top.

Round (virtual) Table of current activities, plans

Person Activity

A.O.B. & D.N.M. (NLA)

OM highlighted the upper boundary condition and issues with hydrogen conservation. NLA mentioned that the improvements from the StratO3 PEG are being tested for UKESM2, and CH suggested looking at the UKCA package testing ticket for UKESM, UKESM:#905.

Date of next meeting (NLA)

Action: NLA to send round a Doodle for mid-May to mid-June, with a preference towards mid-May.