Setting up a sandbox to test coupled model restarts #797
Replies: 27 comments 49 replies
-
Using the above procedure, I have tested restart reproducibility for the P7 RT tests in PR #765. For the C192mx050 test case, using tile2 as an example, the following fields imported from ATM do not reproduce on restart:
Plotting these fields on only water points shows that of these, the atmImp_Faxa_lwnet field is not reproducing on land (the final panel shows a constant field of 0), the others do not reproduce on water: Making an identical run but setting |
Beta Was this translation helpful? Give feedback.
-
A further test case w/ both ca turned off and the recent sfcsub fix (ccpp-physics PR 378) reverted gives restart reproducibility for the test. In this case, the coupler restart file at the end of the rest run is B4B with the coupler restart file from the base run.
|
Beta Was this translation helpful? Give feedback.
-
Denise, are these atmImp* fields some coupling fields between land/ocean and atmosphere? Or is it atmosphere output, e.g "rain"? If you revert the recent sfcsub fix (ccpp-physics PR 378) and have do_ca = true, does it reproduce? I'm thinking if it is a combination with these two on it could be easier to figure out what has happened. |
Beta Was this translation helpful? Give feedback.
-
I have run an additional test now at C192mx050. First, turning off ca leaves only the lwnet imported from ATM as not reproducing. If I then turn off frac_grid, I get full restart reproducibility. |
Beta Was this translation helpful? Give feedback.
-
It seems that the SST restart field was a red herring. Looking closer at this yesterday I found that I never read in the restart fields, as I never get to the line that reads them:
Here fname = INPUT/ca_data.nc I'm testing now to comment out the "if file_exist" line to see if the coupled CA restart reproduce. If it does I will try to figure out why this works in atmosphere only simulations, and find a better logic to enter this loop. Will get back to you shortly. |
Beta Was this translation helpful? Give feedback.
-
Yes, my run had
"NOTE from PE 0: No CA restarts - cold starting CA"
Moorthi
…On Tue, Sep 14, 2021 at 9:32 AM lisa-bengtsson ***@***.***> wrote:
It seems that the SST restart field was a red herring. Looking closer at
this yesterday I found that I never read in the restart fields, as I never
get to the line that reads them:
fname = 'INPUT/'//trim(fn_phy)
if (file_exist(fname)) then
!--- read the CA restart data
call mpp_error(NOTE,'reading CA restart data from INPUT/ca_data.tile*.nc')
call restore_state(CA_restart)
else
call mpp_error(NOTE,'No CA restarts - cold starting CA')
return
endif
Here fname = INPUT/ca_data.nc
I'm testing now to comment out the "if file_exist" line to see if the
coupled CA restart reproduce. If it does I will try to figure out why this
works in atmosphere only simulations, and find a better logic to enter this
loop. Will get back to you shortly.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#797 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ALLVRYSUZJCKI4UJCRJEFZ3UB5FF3ANCNFSM5D552CEA>
.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
or Android
<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
--
Dr. Shrinivas Moorthi
Research Meteorologist
Modeling and Data Assimilation Branch
Environmental Modeling Center / National Centers for Environmental
Prediction
5830 University Research Court - (W/NP23), College Park MD 20740 USA
Tel: (301)683-3718
e-mail: ***@***.***
Phone: (301) 683-3718 Fax: (301) 683-3718
|
Beta Was this translation helpful? Give feedback.
-
@DeniseWorthen is there a way to search for recent PR's in github? I'm looking for the one in where the routine FV3/io/FV3GFS_io.F90 was updated. |
Beta Was this translation helpful? Give feedback.
-
Why not just check for "ca_data.tile1.nc"?
…On Tue, Sep 14, 2021 at 10:26 AM Phil Pegion ***@***.***> wrote:
No, it doesn't exist in the unit tests. I removed the check for ca_data.nc
for the unit test, thinking it wasn't necessary, but had to put it back
when integrating to the UFS, but haven't updated my unit test scripts yet.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#797 (reply in thread)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ALLVRYVHW5P4RJKNVES2X6LUB5LP3ANCNFSM5D552CEA>
.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
or Android
<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
--
Dr. Shrinivas Moorthi
Research Meteorologist
Modeling and Data Assimilation Branch
Environmental Modeling Center / National Centers for Environmental
Prediction
5830 University Research Court - (W/NP23), College Park MD 20740 USA
Tel: (301)683-3718
e-mail: ***@***.***
Phone: (301) 683-3718 Fax: (301) 683-3718
|
Beta Was this translation helpful? Give feedback.
-
Ok, I can confirm that if I simply replace:
with
in the routine: I get reproducible results in the coupled control restart regression test. @SMoorthi-emc do you think you can try this also in your setup? I will test now in atmosphere only run. |
Beta Was this translation helpful? Give feedback.
-
If CA were to be applied to a nest or a single-tile model like RRFS, will
fname='INPUT/ca_data.tile1.nc' still work ?
…On Tue, Sep 14, 2021 at 11:10 AM lisa-bengtsson ***@***.***> wrote:
Ok, I can confirm that if I simply replace:
fname = 'INPUT/'//trim(fn_phy)
with
fname = 'INPUT/ca_data.tile1.nc'
in the routine: stochastic_physic/update_ca.F90
I get reproducible results in the coupled control restart regression test.
@SMoorthi-emc <https://github.com/SMoorthi-emc> do you think you can try
this also in your setup?
I will test now in atmosphere only run.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#797 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AKY5N2PTWXJDMYRO3HBU2H3UB5QUHANCNFSM5D552CEA>
.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
or Android
<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
--
*Fanglin Yang, Ph.D.*
*Chief, Model Physics Group*
*Modeling and Data Assimilation Branch*
*NOAA/NWS/NCEP Environmental Modeling Center*
*https://www.emc.ncep.noaa.gov/gmb/wx24fy/fyang/
<https://www.emc.ncep.noaa.gov/gmb/wx24fy/fyang/>*
|
Beta Was this translation helpful? Give feedback.
-
I can also confirm that if I replace:
with
in the routine: stochastic_physic/update_ca.F90 atmosphere only runs are also still restart reproducible with CA switched on. |
Beta Was this translation helpful? Give feedback.
-
I did one additional test with the same code base, atmosphere only, and using |
Beta Was this translation helpful? Give feedback.
-
I made one 48 hour run and then a second restart run from 24 hours.
I get
"nccmp -dgqSfs
/gpfs/dell2/ptmp/Shrinivas.Moorthi/CFV3/C384_phyac/gfs.20130701/00/ATM_HISTORY_0/
gfs.t00z.sfcf027.nc gfs.t00z.sfcf027.nc
Variable Group Count Sum AbsSum Min Max Range
Mean StdDev
ulwrf_ave / 72080 109.53 150.607 -0.0213928 0.0229797 0.0443726
0.00151957 0.00309552"
"nccmp -dgqSfs
/gpfs/dell2/ptmp/Shrinivas.Moorthi/CFV3/C384_phyac/gfs.20130701/00/ATM_HISTORY_0/
gfs.t00z.sfcf030.nc gfs.t00z.sfcf030.nc
Files
"/gpfs/dell2/ptmp/Shrinivas.Moorthi/CFV3/C384_phyac/gfs.20130701/00/ATM_HISTORY_0/
gfs.t00z.sfcf030.nc" and "gfs.t00z.sfcf030.nc" are identical."
"nccmp -dgqSfs
/gpfs/dell2/ptmp/Shrinivas.Moorthi/CFV3/C384_phyac/gfs.20130701/00/ATM_HISTORY_0/
gfs.t00z.sfcf048.nc gfs.t00z.sfcf048.nc
Files
"/gpfs/dell2/ptmp/Shrinivas.Moorthi/CFV3/C384_phyac/gfs.20130701/00/ATM_HISTORY_0/
gfs.t00z.sfcf048.nc" and "gfs.t00z.sfcf048.nc" are identical."
This is akin to what I used to get without CA.
note that I am using NoahMP and frac-grid=.true.
Moorthi
…On Tue, Sep 14, 2021 at 12:39 PM Denise Worthen ***@***.***> wrote:
yes, this test was with noahmp. I can't run w/ noahmp off and the other
options on (nsst,ugwpv1) because I don't have a suite file. Trying lsm=1
gave me a seg fault.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#797 (reply in thread)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ALLVRYQ4ZD7KWMBNDS5DDNLUB53ELANCNFSM5D552CEA>
.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
or Android
<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
--
Dr. Shrinivas Moorthi
Research Meteorologist
Modeling and Data Assimilation Branch
Environmental Modeling Center / National Centers for Environmental
Prediction
5830 University Research Court - (W/NP23), College Park MD 20740 USA
Tel: (301)683-3718
e-mail: ***@***.***
Phone: (301) 683-3718 Fax: (301) 683-3718
|
Beta Was this translation helpful? Give feedback.
-
When I tried it, it was a bit tricky. I used "ca_data.tile1.nc" only in
checking for the existence, but left the name of the file generic.
Otherwise, it could not find all tiles.
…On Tue, Sep 14, 2021 at 1:40 PM Denise Worthen ***@***.***> wrote:
OK, maybe a stupid question, but if you specify "tile1" directly, is it
reading all the other CA tiles also or just filling the ca restart fields
w/ zeros on other tiles?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#797 (reply in thread)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ALLVRYTUNWGQFABBSW7P7YLUB6CHNANCNFSM5D552CEA>
.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
or Android
<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
--
Dr. Shrinivas Moorthi
Research Meteorologist
Modeling and Data Assimilation Branch
Environmental Modeling Center / National Centers for Environmental
Prediction
5830 University Research Court - (W/NP23), College Park MD 20740 USA
Tel: (301)683-3718
e-mail: ***@***.***
Phone: (301) 683-3718 Fax: (301) 683-3718
|
Beta Was this translation helpful? Give feedback.
-
One question I have is why this restart file can't be read in
FV3_GFS_io.F90 instead of under stochastic physics?
On Tue, Sep 14, 2021 at 1:44 PM Shrinivas Moorthi - NOAA Federal <
***@***.***> wrote:
… When I tried it, it was a bit tricky. I used "ca_data.tile1.nc" only in
checking for the existence, but left the name of the file generic.
Otherwise, it could not find all tiles.
On Tue, Sep 14, 2021 at 1:40 PM Denise Worthen ***@***.***>
wrote:
> OK, maybe a stupid question, but if you specify "tile1" directly, is it
> reading all the other CA tiles also or just filling the ca restart fields
> w/ zeros on other tiles?
>
> —
> You are receiving this because you were mentioned.
> Reply to this email directly, view it on GitHub
> <#797 (reply in thread)>,
> or unsubscribe
> <https://github.com/notifications/unsubscribe-auth/ALLVRYTUNWGQFABBSW7P7YLUB6CHNANCNFSM5D552CEA>
> .
> Triage notifications on the go with GitHub Mobile for iOS
> <https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
> or Android
> <https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
>
>
--
Dr. Shrinivas Moorthi
Research Meteorologist
Modeling and Data Assimilation Branch
Environmental Modeling Center / National Centers for Environmental
Prediction
5830 University Research Court - (W/NP23), College Park MD 20740 USA
Tel: (301)683-3718
e-mail: ***@***.***
Phone: (301) 683-3718 Fax: (301) 683-3718
--
Dr. Shrinivas Moorthi
Research Meteorologist
Modeling and Data Assimilation Branch
Environmental Modeling Center / National Centers for Environmental
Prediction
5830 University Research Court - (W/NP23), College Park MD 20740 USA
Tel: (301)683-3718
e-mail: ***@***.***
Phone: (301) 683-3718 Fax: (301) 683-3718
|
Beta Was this translation helpful? Give feedback.
-
I am not 100% satisfied with the hard-coded change, mainly because I don't know exactly what was changed (perhaps FMS?). But since it works, I propose to include it in the PR that addresses the MPI decomposition and GNU debug issue so that we can close all the CA infrastructure issues for P7 in one PR. Me and Phil are planning on creating a second PR at a later time where we make some additional changes to the scheme (infrastructure only, will not impact performance), and I can take a closer look at this particular update for that future PR to see if it can be done better. Please let me know if anyone has any comments/concerns regarding this proposed strategy. |
Beta Was this translation helpful? Give feedback.
-
Helin,
I don’t see the issue Denise sees.
I have never run RUC lsm.
Moorthi
…Sent from my iPhone
On Sep 14, 2021, at 4:52 PM, HelinWei-NOAA ***@***.***> wrote:
@SMoorthi-emc Can you have another test with RUC lsm? RUC LSM has the same way to deal with surface albedo/emissivity as Noah MP. If we get the same result, then we can conclude that this problem is caused by how we composite surface emissivity with fractional grid for Noah MP/RUC LSMs.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.
|
Beta Was this translation helpful? Give feedback.
-
If you want to try RUC, use the following settings in input.nml:
lsoil = 4
lsoil_lsm = 9
kice = 9
lsm = 3
and in the SDF, replace
<scheme>lsm_noah</scheme>
<scheme>sfc_sice</scheme>
with
<scheme>lsm_ruc</scheme>
… On Sep 14, 2021, at 3:02 PM, SMoorthi-emc ***@***.***> wrote:
Helin,
I don’t see the issue Denise sees.
I have never run RUC lsm.
Moorthi
Sent from my iPhone
> On Sep 14, 2021, at 4:52 PM, HelinWei-NOAA ***@***.***> wrote:
>
> @SMoorthi-emc Can you have another test with RUC lsm? RUC LSM has the same way to deal with surface albedo/emissivity as Noah MP. If we get the same result, then we can conclude that this problem is caused by how we composite surface emissivity with fractional grid for Noah MP/RUC LSMs.
>
> —
> You are receiving this because you were mentioned.
> Reply to this email directly, view it on GitHub, or unsubscribe.
> Triage notifications on the go with GitHub Mobile for iOS or Android.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub <#797 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AB5C2RJCFV4JQSOPVVNYMGLUB6Z4ZANCNFSM5D552CEA>.
Triage notifications on the go with GitHub Mobile for iOS <https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675> or Android <https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
|
Beta Was this translation helpful? Give feedback.
-
You are. You will need to replace
<scheme>noahmpdrv</scheme>
<scheme>sfc_sice</scheme>
with the RUC scheme, but I am not sure about the coupled ice code sfc_cice, though. @tanyasmirnova any ideas? We may need to look at the sfc_cice code and see what it does to prep the ice arrays. Maybe it needs to go before the call to RUC, because RUC contains the replacement for sfc_sice.
… On Sep 14, 2021, at 3:54 PM, Denise Worthen ***@***.***> wrote:
@climbfuji <https://github.com/climbfuji> I'm willing to give this a try, but I'm not sure I see the right thing to do in the suite file. For the FV3_GFS_v16_coupled_nsstNoahmpUGWPv1 we're using, I see:
<!-- Surface iteration loop -->
<subcycle loop="2">
<scheme>sfc_diff</scheme>
<scheme>GFS_surface_loop_control_part1</scheme>
<scheme>sfc_nst_pre</scheme>
<scheme>sfc_nst</scheme>
<scheme>sfc_nst_post</scheme>
<scheme>noahmpdrv</scheme>
<scheme>sfc_cice</scheme>
<scheme>sfc_sice</scheme>
<scheme>GFS_surface_loop_control_part2</scheme>
</subcycle>
I don't see any lsm_noah, only noahmpdrv. Am I looking in the right place?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub <#797 (reply in thread)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AB5C2RMTMQFDQP6H3BCCRK3UB7AC5ANCNFSM5D552CEA>.
Triage notifications on the go with GitHub Mobile for iOS <https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675> or Android <https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
|
Beta Was this translation helpful? Give feedback.
-
Should it be one or another? I mean if the model is coupled to sea ice (sfc_cice.f) then sfc_sice.f is not needed. At least with RUC LSM, this is the case - nothing is done when the model is coupled to a sea ice model. |
Beta Was this translation helpful? Give feedback.
-
Just to clarify,
"sfc_cice" is used only in the coupled model. It is used to take care of
miscellaneous fluxes over sea-ice.
In the coupled model "sfc_sice" only operates on lake ice. If RUC LSM
takes care of lake ice, I assume "sfc_sice" may not be needed.
However, you will need "sfc_cice".
Moorthi
…On Tue, Sep 14, 2021 at 6:05 PM tanyasmirnova ***@***.***> wrote:
Should it be one or another? I mean if the model is coupled to sea ice
(sfc_cice.f) then sfc_sice.f is not needed. At least with RUC LSM, this is
the case - nothing is done when the model is coupled to a sea ice model.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#797 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ALLVRYSFJB5YCZRBJJXVPPDUB7BKDANCNFSM5D552CEA>
.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
or Android
<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
--
Dr. Shrinivas Moorthi
Research Meteorologist
Modeling and Data Assimilation Branch
Environmental Modeling Center / National Centers for Environmental
Prediction
5830 University Research Court - (W/NP23), College Park MD 20740 USA
Tel: (301)683-3718
e-mail: ***@***.***
Phone: (301) 683-3718 Fax: (301) 683-3718
|
Beta Was this translation helpful? Give feedback.
-
In my restart tests, at hour 3 from restart one field had different
values. This field is "ulwrf_ave".
Attached is the difference between the two fields. You can see that the
differences are small and over sea-ice!
I wonder what is causing this. For the remaining hours of the forecast all
are identical.
Moorthi
…On Tue, Sep 14, 2021 at 7:32 PM HelinWei-NOAA ***@***.***> wrote:
Are all of 16 points fractional grids? So the fractional grid (have both
land and water) in the atm will be mapped to the ocean points in the ocean
model?
The results are as expected. The C96mx100 case does not map any changed
lwnet to ocean and it reproduces. The C384 has 16 points, all in the Arctic
(tile3) where changed lwnet values get mapped to the ocean. The C384mx025
case does not reproduce.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#797 (reply in thread)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ALLVRYS446MACPDQYWCTL2LUB7LR5ANCNFSM5D552CEA>
.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
or Android
<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
--
Dr. Shrinivas Moorthi
Research Meteorologist
Modeling and Data Assimilation Branch
Environmental Modeling Center / National Centers for Environmental
Prediction
5830 University Research Court - (W/NP23), College Park MD 20740 USA
Tel: (301)683-3718
e-mail: ***@***.***
Phone: (301) 683-3718 Fax: (301) 683-3718
|
Beta Was this translation helpful? Give feedback.
-
For restart tests,the cpld_restart_bmark_v16 from the develop branch with the new ICs and fixed files reproduces cpld_bmark_v16. So this confirms that:
|
Beta Was this translation helpful? Give feedback.
-
I made a fix to the CICE cap which allows a run w/ frac_grid off and CA on. This case reproduces. It seems clear to me that the issue for the P7 RTs is the compositing of lwnet and/or ulwrf on fractional grid points. The run directory is |
Beta Was this translation helpful? Give feedback.
-
Why does the CICE cap depend on fractional grid and CA? I do not
understand.
…On Wed, Sep 15, 2021 at 8:25 AM Denise Worthen ***@***.***> wrote:
I made a fix to the CICE cap which allows a run w/ frac_grid off and CA
on. This case reproduces. It seems clear to me that the issue for the P7
RTs is the compositing of lwnet and/or ulwrf on fractional grid points. The
run directory is
/scratch1/NCEPDEV/stmp2/Denise.Worthen/FV3_RT/REST192/ca_on_frac_grid_off_stochfix
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#797 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ALLVRYU2CDBFAC5YUZZDLDTUCCGCDANCNFSM5D552CEA>
.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
or Android
<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
--
Dr. Shrinivas Moorthi
Research Meteorologist
Modeling and Data Assimilation Branch
Environmental Modeling Center / National Centers for Environmental
Prediction
5830 University Research Court - (W/NP23), College Park MD 20740 USA
Tel: (301)683-3718
e-mail: ***@***.***
Phone: (301) 683-3718 Fax: (301) 683-3718
|
Beta Was this translation helpful? Give feedback.
-
I've tested the cpld_control P7 for C96mx100, C192mx050 and C384mx025 in the RT and all restart tests pass. This is using the CA file name fix and the GFS_surface_composit fix. The remaining tests which do not pass are the 2-threads and the decomp. |
Beta Was this translation helpful? Give feedback.
-
This procedure will set up a "rundir" which contains all the input used by the RT test (in this case cpld_bmark_v16), two directories containing the control and restart namelists or configuration files and a script to copy the checkpoint restarts from a "base" run to a "restart" run. This setup allows repeated re-build of the model executable or changes to the input namelists to test various combinations of features or code changes.
The nems.configure will be modified to write the coupler history file at every pass through the fast coupling loop. These files can be compared to identify which ATM fields do not reproduce on restart. When comparing the coupler history files, it is important to remember that the terms "import" and "export" are relative to the coupler. Fields which are labeled "atmImp" are fields which the coupler is importing from the ATM; fields labeled "atmExp" are fields which the coupler is exporting to the ATM.
The ATM fields in the coupler history file are stored on the mesh. The files must be processed to write the fields on the ATM tiles. I use an NCL script (unwind_cpl_hi_v2.ncl) to do this. It is included in the test case described below.
The following example uses the cpld_bmark_v16 test from the current develop branch. A sample sandbox directory has been set up here:
/scratch1/NCEPDEV/stmp2/Denise.Worthen/FV3_RT/REST_V16
.Prepare the sandbox:
Run the existing cpld_bmark_v16 and cpld_restart_bmark_v16 tests from the current ufs-weather-model model develop branch
and keep the run directories:
./rt.sh -k -l rt.v16 >output 2>&1 &
where rt.v16 contains just those two tests and the compile line.
Make a run directory from the initial run and then clean it up.
cp -r cpld_bmark_v16/ rundir
in rundir remove the following files:
Make a control nml directory and move the following items from the rundir to the nmlctl directory:
Make a restart nml directory and move the following items from the cpld_restart_bmark_v16 directory to nmlrest directory:
MED med_phases_history_write
after the prep_ocn_accum phase:And change the write frequency of the coupler history to write at every pass:
Edit the sorc and dest directories in the
cpintermedrestarts.sh
script to point to your location.Test a restart case
After re-compiling the code or deciding on a change in the input.nml (eg. turning on/off a feature), a base and restart run
can be made from the three prepared directories. For example:
After the base case completes:
Remember that if you change an input.nml in the base directory, you must also change it in the rest directory! The same
goes for re-compiled executable. Also be careful with the pointer files (ice.restart_file and rpointer.cpl). These are over-
written at the end of each integration and must be "re-set" if you do not start with a clean restart directory. The
cpintermedrestarts.sh
automatically creates the right pointer files.If you rebuild, then make sure the rebuilt fv3.exe is copied into both base and rest. My personal practice is to keep the three
directories (rundir, nmlctl, nmlrest) unchanged and make changes only in the base and rest directories.
Compare the coupler history files at the first step through the fast loop. If the fields from the ATM are not B4B at this timestep, the coupled model will not reproduce. For the
cpld_bmark_v16
case, the file to compare isufs.cpld.cpl.hi.2013-04-01-11100.nc
.If the coupler history file is not identical at the first pass through the fast loop, then the fields which are not reproducing can be identified. To visualize the field differences, the NCL script can be run to write the mesh ATM files on the tiles.
Beta Was this translation helpful? Give feedback.
All reactions