Coupler choices #7
Replies: 25 comments 16 replies
-
Valcke et al., 2012 provide an overview of coupling technologies and issues (pre-dates NUOPC, but mentions it in discussion of ESMF; also discusses old serial OASIS3, only briefly mentioning parallel OASIS3-MCT). |
Beta Was this translation helpful? Give feedback.
-
These couplers are already supported in the model components to be used for ACCESS-OM3 and probable ACCESS-CM3:
From this it seems that the main contenders are OASIS3-MCT and NUOPC (more specifically, probably CMEPS). |
Beta Was this translation helpful? Give feedback.
-
Background: our current model architectures all use OASIS3-MCT
|
Beta Was this translation helpful? Give feedback.
-
OASIS3-MCTDocumentation: https://oasis.cerfacs.fr/en/documentation/
|
Beta Was this translation helpful? Give feedback.
-
NUOPC
Theurich et al, 2016: 4 basic component types: Very flexible; can be be used in many different ways, such as these (and many more): |
Beta Was this translation helpful? Give feedback.
-
Some useful links:
Also see post below on Sixth Workshop on Coupling Technologies for Earth System Models. |
Beta Was this translation helpful? Give feedback.
-
SummaryIn summary, MOM6, CICE6, WW3 are close to coupling "out of the box" with NUOPC, whereas UM, LFRic and WW3 can couple with OASIS3-MCT, so we have a foot in each canoe trying to couple US-based (MOM6, CICE6, WW3) and Met Office (UM, LFRic) models. For ACCESS-OM3 it seems far easier to use NUOPC, as several experienced and well-resourced groups are already using it to couple MOM6-CICE6-WW3 and we could benefit from their work, debugging etc., and it also offers nice features like changing/disabling model components without recompilation. The flexibility of NUOPC could be a significant advantage for research users of ACCESS-OM3. UM/LFRic is outside the scope of the COSIMA Linkage grant, but within the remit of ACCESS-NRI, which will also be far better resourced than COSIMA to take on the software engineering task of coupling UM/LFRic to the other model components in a future ACCESS-CM3. I can think of several possible ways forward:
ACCESS-CM3 will probably be developed On the basis of what I've learned so far I'm in favour of moving to NUOPC for ACCESS-OM3, with the hope that option 3 will be feasible when we come to designing ACCESS-CM3 (failing that, we could try option 2 or as a last resort 4). |
Beta Was this translation helpful? Give feedback.
-
@aekiss Thanks for the nice summary!
I fully agree with this. |
Beta Was this translation helpful? Give feedback.
-
Thanks. My main uncertainty is how much effort it would take to port our existing OASIS drivers to MOM6 and CICE6 - if that's relatively easy, then option 1 could be reasonable. However, I really like the opportunities presented by the modular "plug and play" design of NUOPC, which would make it easier to create and support various configurations driven by a data atmosphere, for both development and research:
as well as the many useful permutations with a dynamic atmospheric model (e.g. UM or a simple atmospheric boundary layer model), with/without any/all of MOM6, CICE6, WW3. |
Beta Was this translation helpful? Give feedback.
-
@aekiss Nice summary, I don't disagree with leveraging the work done in the US on NUOPC on coupling MOM6-CICE6-WW3 for COSIMA2. One comment the version of CICE6 we will need to couple to the UM will need to pick up some of the code from CICE5 that we allowed us to coupled the Bl99 thermodynamics to the UM that's not part of the CICE6 release we could merge it in as an option into the system or have a totally separate code base it wouldn't be as an executable of the 3 codes that you could just couple together. Last time in our ACCESS-CM2 set up we also used CICE as an intermediate medium between the ocean and the atmosphere I haven't seen it used this way in the NUOPC diagrams but I haven't read all of them yet, not sure if we do that again. |
Beta Was this translation helpful? Give feedback.
-
@aekiss One other comment of clarification of the above on the UM coupling. The way the NCAR CESM2 is set up is so that every model component can be replaced by a data model. The UM coupling works differently, The surface and boundary scheme calculates the surface temperature and some of the surface properties of each surface land/ocean/ice in its code including albedo. So its no as easily exchanged with a data model, and why we have to make code changes in CICE6. |
Beta Was this translation helpful? Give feedback.
-
Thanks @ofa001, good point - I hadn't been aware of the reasons for that code in CICE5. |
Beta Was this translation helpful? Give feedback.
-
HI @aekiss no it they belong in go in the CICE6 code its part of the ice thermodynamics, we could set it up as options and flags and have different subroutines in the code with similar names like icepack_therm_xxx_mo for the met_office related versions and a different driver as we already have a different driver set of code for the coupled model v stand alone one these parallel subroutine may have extra/different variable that are passed and they are some extra functions calculations that are undertaken. They will be similar ones for the intermediate steps as well passing code to it. Ed Blockley did have a comment on the CICE6 github saying how far the codes had diverged but I guess some of those differences were down to icepack and the reorganization for CICE6 and history files taking different approaches. |
Beta Was this translation helpful? Give feedback.
-
@aekiss Still trying to get my head around a mixture of OASIS and NUOPC together and see if I think its viable, I have found the CICE6 nuopc driver, and the MOM6 nuopc cap, I will see if I can find the ones CICE6 nuopc cap and WW3 nuopc cap and see if the contain all the things I am expecting there. |
Beta Was this translation helpful? Give feedback.
-
@ aekiss just thinking of a few other issues a well as all the many differences in the driver code for CICE which was in between the atmosphere and ocean coupling last time, lots of extra variables being passed back and forth, there was also the time stepping, the atmospheric data model had explicit coupling while the UM had a mixture implicit and semi-implicit depending which surface it was coupling too. So I am beginning to worry if one executable like in option3 will handle it all even if we have lots of flags controlled by namelist variables that can send it down different code paths. I should look at the other options. |
Beta Was this translation helpful? Give feedback.
-
@aekiss one other issue is that we couple in individual ice categories in UM -ACCESS-CM2, in ACCESS1-0/3 we did it across grid box mean. Not sure how we handle this with the NUOPC system this may make option3 more difficult and possibly option 4 until we understand how NUOPC caps work. |
Beta Was this translation helpful? Give feedback.
-
@aekiss Thanks for the very objective summary! |
Beta Was this translation helpful? Give feedback.
-
This recommendation looks reasonable to me. Option 4 is not necessarily a last resort. I think it's worth trying to scope what a NUOPC cap for the UM would look like. If it's a new wrapper around some minimally modified existing top level routines (e.g. replacing um_shell and u_model but keeping atm_step and everything below) it might not be too hard to maintain it ourselves even if the Met Office aren't interested. A comparison of the MOM NUOPC cap c.f. the OASIS interface would be a start. If this is feasible, some intermediate steps before CM3 could be
|
Beta Was this translation helpful? Give feedback.
-
A comment from Ben Galton-Fenzi:
|
Beta Was this translation helpful? Give feedback.
-
For reference, here's the plan for building ACCESS-OM3 we had in the Linkage proposal. Some steps involve standalone (e.g. steps 1, 2, 4) or coupling a subset of MOM6, CICE6, WW3 (e.g. step 5). |
Beta Was this translation helpful? Give feedback.
-
Alexander & Easterbrook 2015 provide an interesting overview of climate model architectures, contrasting the "star" approach often taken in the US (everything goes through the coupler) and the European "two-sided" approach, e.g. |
Beta Was this translation helpful? Give feedback.
-
UM ticket with NUOPC feasibility test https://code.metoffice.gov.uk/trac/um/ticket/6904 (need a MOSRS account to see it) |
Beta Was this translation helpful? Give feedback.
-
Thanks @MartinDix, great to see that it seems feasible to drive the UM with NUOPC. Does it also look straightforward to couple the UM to the other model components via NUOPC/CMEPS, or is that a potential roadblock? |
Beta Was this translation helpful? Give feedback.
-
Slides and videos from the Sixth Workshop on Coupling Technologies for Earth System Models (CW2023) are here. Talks relevant to NUOPC include:
There are also several talks on OASIS. |
Beta Was this translation helpful? Give feedback.
-
Interestingly, NOAA are considering moving away from API-based "loose" coupling (e.g. NUOPC) towards "close" (integrated code) coupling to get greater control of load balancing, timestepping and numerical stability - see Tolman's talk and slides from the 5th workshop on waves and wave-coupled processes. |
Beta Was this translation helpful? Give feedback.
-
Purpose
To decide on a coupler to use for ACCESS-OM3. ACCESS-OM2 uses OASIS3-MCT, but this may not be the best choice for ACCESS-OM3. The chosen coupler should
and ideally have
Beta Was this translation helpful? Give feedback.
All reactions