-
Notifications
You must be signed in to change notification settings - Fork 161
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add import/export fields for fv3-jedi coupling #301
Add import/export fields for fv3-jedi coupling #301
Conversation
…d fillExportFields
@rsdunlapiv you mentioned about the ESMF_METHOD_INITIALIZE, would you please show us what the changes need to make in the SetServices in fv3_cap? |
@junwang-noaa thanks for noticing that |
@DusanJovic-NOAA I am not sure if it will work with fv3-chem if you remove that. @rmontuoro can confirm. I think it will break the fv3-chem with the current run sequence as those fv3 tracer fields (state t=n) should not be updated from the fv3 import state (state t=n-1 after chem) in the place where assign_importdata is called. More code changes are required in order to remove the cplflx/cplwav/cplchem. |
we can then do this:
|
that should work.
…On Wed, May 19, 2021 at 11:55 AM Dusan Jovic ***@***.***> wrote:
we can then do this:
if( .not. GFS_control%cplchm ) then
call assign_importdata(rc)
endif
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#301 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/AI7D6TP43YFUWNIUWXWBCOTTOPNNPANCNFSM45E2MRIQ>
.
|
@@ -840,8 +826,8 @@ subroutine update_atmos_model_state (Atmos) | |||
call atmosphere_get_bottom_layer (Atm_block, DYCORE_Data) | |||
|
|||
!if in coupled mode, set up coupled fields |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This means for all runs, including APP=ATM
atmosphere only runs, just not for coupled chemistry runs? Should the comments in lines 828 and 268 be updated?
Per @junwang-noaa question about, this is a good time to clean up the SetServices to use ONLY the semantic labels for each of the phases. This is more clear than the "IPDv01p1" labels, which are hard to understand. This means:
You don't need the subroutine And the registration labels in
should be:
And
should be:
This also means that the signature of InitializeAdvertise and IntializeRealize can be simplified from:
to
It is not critical that you do this now or in this PR, but it is a good cleanup and removes the confusing IPDxxxx stuff. Another part of this - which should probably be a follow on, is to rework |
The full list of NUOPC semantic labels is here: |
endif | ||
endif | ||
|
||
fldname = 't2m' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I know JEDI-FV3 interface is using these coupling field names shared between the two components, but it may cause confusion in the future. I'd suggest to use the names in fd_nems.yaml which are shared by all the ufs subcomponents, I think 't2m" has a standard name "inst_temp_height2m". This can be fixed in a later PR.
endif | ||
else if (datatype == ESMF_TYPEKIND_R4) then | ||
if (dimCount == 2) then | ||
call ESMF_FieldGet(exportFields(n),farrayPtr=datar42d,localDE=0, rc=localrc) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I see only datar83d is used later when setting up the pointers, I am not sure if this will work for 32BIT=Y, for which we may need to set up datar43d. It may not be an issue for fv3-mom6-cice6-wav coupling as those coupled fields are from physics which is always running with real8. We can update this later.
with chemistry and other coupled components that don't require cplflx set to .true.. Fortran preprocessor macros are introduced to minimize code replication.
Fortran preprocessor macros with generic subrotines.
Description
(Instructions: this, and all subsequent sections of text should be removed and filled in as appropriate.)
Provide a detailed description of what this PR does.
What bug does it fix, or what feature does it add?
This PR adds import and export fields to support fv3-jedi coupling
Is a change of answers expected from this PR?
No.
Testing
How were these changes tested? Full regression tests on Hera and WCOSS Dell.
What compilers / HPCs was it tested with? Intel
Are the changes covered by regression tests? Not every code change is covered by ufs-weather-model tests, we do not run jedi in any of regression tests.
Have the ufs-weather-model regression test been run? On what platform? Yes. Hera and Dell.
Dependencies
If testing this branch requires non-default branches in other repositories, list them.
Those branches should have matching names (ideally)
Depends on ufs-community/ufs-weather-model/pull/586
Do PRs in upstream repositories need to be merged first? No.