Skip to content
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

NCEP GFSv16/GEFSv12 #140

Merged
merged 66 commits into from
Jan 13, 2020
Merged

NCEP GFSv16/GEFSv12 #140

merged 66 commits into from
Jan 13, 2020

Conversation

ajhenrique
Copy link
Collaborator

@ajhenrique ajhenrique commented Jan 10, 2020

Changes including new features and bugfixes for adding WW3 to the GEFSv12 and GFSv16 coupled systems at NCEP:

  • Added option to write single output (gridded and point) files at individual specified output time steps (Add option to create output files at every output time step #141 ), to allow inline post-processing;
  • Added option to write second stream of restart files (Adding a checkpoint restart capability #1 ) with write stride different to first (default) restart file,
  • Updated ww3_grib for grib2 encoding following recent additions/changes in WMO tables,
  • Several bugfixes to new output and restart options, including alignment of MPI calls and resources, backwards compatibility with multiple output configurations specified in regtests,
  • Changes to compile options for WCOSS to allow b4b.
    Please find results from the regtest matrix comparisons in the comment below.

ajhenrique and others added 30 commits June 10, 2019 15:17
FB_gefsv12: Adding changes to adjust to NCEP operations.

* Changed compile option for NCEP Dell Phase 3, 
* Removed empty line on w3iogomd, 
* Expanded output parameters to include Tz, depth, mean direction on ww3_grib, 
* Enforced NOSW=3 on ww3_grid for NCEP operations (NCO switch).
* Added cmplr.env support to new NCEP Dell P3 comp/link
* Changed opt in cmplr.env, comp/link.wcoss_dell_p3 following suggestion to consolidate compiler flags eliminating redundancies and generalizing blocks for several compiler/machine configurations.
On lines 1439 and 1440, the calculations for ABX2 and ABY2 were like that of ABX and ABY. This may have been an oversight when inserted. This PR fixes the issue and aligns the code with parameter definitions in the manual.
…ormance slightly, which can be welcome in operational applications.
…ency FR1, temporarily provides fix for grib2 encoding failing due to unrealistically low peak frequency values
… to lowest discrete frequency FR1, temporarily provides fix for grib2 encoding failing due to unrealistically low peak frequency values
…tarting off with changes to

out_grd and out_pnt to complete checkpointg with restart files at checkpointing stride.
…int output to single file per output stride. Cleaned up auxiliary parameters. Added single output file marker defined as YYYYMMDD.HHMMSS prefix.
ajhenrique and others added 10 commits January 6, 2020 14:51
…w not an actual output type but an add-on to output type 4.
…plr.env intel option (which are b4b). Adjustments to w3wavemd to correct log file column width changed by mistake.
…d caused compile error in the coupled system.
Issue with infinite loop reading individual grid output settings in multi.inp solved (#138)
…hould not be active in this regtest (only in mww3_test_04)
… reinstating log.mww3 column width as new restart stream will be reported jointly with first restart file productio.
@ajhenrique
Copy link
Collaborator Author

Results from regtest output compared to develop.
matrix.zip

Copy link
Collaborator

@JessicaMeixner-NOAA JessicaMeixner-NOAA left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi - A few questions:

  1. Documentation in the manual is missing.
  2. Update of generic input files in model/inp and model/nml are missing
  3. Are the regression test changes testing these new features? Which regression tests can I run to test which new features? Were they added to matrix.base?
  4. I know that check point restarting has this issue: Adding a checkpoint restart capability #1 is there an associated issue with the inline post updates? Maybe that can help answer questions like with the inline post option are you directly getting netcdf, grib, files generated or instead is it just a single file combining both the gridded and point output written for each time step?

model/bin/switch_NCEP_gwm Outdated Show resolved Hide resolved
model/bin/switch_NCEP_gwm Outdated Show resolved Hide resolved
model/ftn/w3initmd.ftn Outdated Show resolved Hide resolved
model/ftn/w3initmd.ftn Outdated Show resolved Hide resolved
model/ftn/w3iogomd.ftn Outdated Show resolved Hide resolved
model/ftn/w3wavemd.ftn Outdated Show resolved Hide resolved
model/ftn/wmesmfmd.ftn Outdated Show resolved Hide resolved

! call ESMF_ClockGet(extClock, startTime=ttmp, rc=rc)
! if (ESMF_LogFoundError(rc, PASSTHRU)) return
call ESMF_ClockGet(extClock, currTime=ttmp, rc=rc)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To me this does not match the email thread from @ajhenrique "Tim and I agreed that for now we should use the "if currTime > startTime" approach: in InitializeP1, get startTime, currTime, and stopTime from the external clock. If currTime > startTime, then set WW3 stime from currTime, otherwise set WW3 stime from startTime."

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@JessicaMeixner-NOAA thanks again for noticing, these changes were made in a separate machine and not pushed to the repo. This will be completed shortly.

@ajhenrique
Copy link
Collaborator Author

ajhenrique commented Jan 10, 2020

Hi - A few questions:

1. Documentation in the manual is missing.

2. Update of generic input files in model/inp and model/nml are missing

3. Are the regression test changes testing these new features? Which regression tests can I run to test which new features?  Were they added to matrix.base?

4. I know that check point restarting has this issue: #1 is there an associated issue with the inline post updates?  Maybe that can help answer questions like with the inline post option are you directly getting netcdf, grib, files generated or instead is it just a single file combining both the gridded and point output written for each time step?

@JessicaMeixner-NOAA I have @RobertoPadilla-NOAA helping me to resolve these missing bits and pieces. For now, the integration of the PR would be required to move ahead with the coupled ufs-weather-model update which is needed for the upcoming GFS and GEFS upgrades. The issues you outline have been included in issue #142 . (In the meantime, if you would like to run the new features, you can use grid sets grdset_d_r for additional restarts and grdset_d_h for single-file-per-time-step output in mww3_test_06 .)

@JessicaMeixner-NOAA
Copy link
Collaborator

Based on the original description
"Added option to write single output (gridded and point) files at individual specified output time steps (#141 ), to allow inline post-processing;"

  • After running:
    ./bin/run_test -b slurm -c hera -m grdset_d_h -s PR3_UQ_SCRIP -w work_h ../model mww3_test_06
    There is not 1 single file per time step for each of the gridded and point outputs, so:
19680606.000000.out_grd.arcticsub
19680606.000000.out_grd.gbandd360
19680606.000000.out_pnt.points
19680606.010000.out_grd.arcticsub
19680606.010000.out_grd.gbandd360
19680606.010000.out_pnt.points
19680606.020000.out_grd.arcticsub
19680606.020000.out_grd.gbandd360
19680606.020000.out_pnt.points
.... 

The comment also says this is for "inline post processing" however, there does not appear to be any additional post processing inline in the code. This is simply splitting the output files per-time step, which is needed for checkpoint restarting. I believe the description is misleading here. Lastly, the output programs (or the regression test system) do not appear to be updated for this new splitting of the output binary files as no output is produced during the regression test.

@ajhenrique
Copy link
Collaborator Author

Based on the original description
"Added option to write single output (gridded and point) files at individual specified output time steps (#141 ), to allow inline post-processing;"

* After running:
  `./bin/run_test -b slurm -c hera -m grdset_d_h  -s PR3_UQ_SCRIP -w work_h ../model mww3_test_06`
  There is not 1 single file per time step for each of the gridded and point outputs, so:
19680606.000000.out_grd.arcticsub
19680606.000000.out_grd.gbandd360
19680606.000000.out_pnt.points
19680606.010000.out_grd.arcticsub
19680606.010000.out_grd.gbandd360
19680606.010000.out_pnt.points
19680606.020000.out_grd.arcticsub
19680606.020000.out_grd.gbandd360
19680606.020000.out_pnt.points
.... 

The comment also says this is for "inline post processing" however, there does not appear to be any additional post processing inline in the code. This is simply splitting the output files per-time step, which is needed for checkpoint restarting. I believe the description is misleading here. Lastly, the output programs (or the regression test system) do not appear to be updated for this new splitting of the output binary files as no output is produced during the regression test.

Hi @JessicaMeixner-NOAA I don't understand your issue. When running the regtest as stated, on Hera and WCOSS, I get the expected output of a single file for each grid and each output time step as in:

-bash-4.2$ ls -l mww3_test_06/work_h
total 21568
-rw-r--r-- 1 Henrique.Alves ocean 154246 Jan 13 15:48 19680606.000000.out_grd.arcticsub
-rw-r--r-- 1 Henrique.Alves ocean 85906 Jan 13 15:48 19680606.000000.out_grd.gbandd360
-rw-r--r-- 1 Henrique.Alves ocean 6097 Jan 13 15:48 19680606.000000.out_pnt.points
-rw-r--r-- 1 Henrique.Alves ocean 154246 Jan 13 15:48 19680606.010000.out_grd.arcticsub
-rw-r--r-- 1 Henrique.Alves ocean 85906 Jan 13 15:48 19680606.010000.out_grd.gbandd360
-rw-r--r-- 1 Henrique.Alves ocean 6097 Jan 13 15:48 19680606.010000.out_pnt.points
-rw-r--r-- 1 Henrique.Alves ocean 154246 Jan 13 15:48 19680606.020000.out_grd.arcticsub
-rw-r--r-- 1 Henrique.Alves ocean 85906 Jan 13 15:48 19680606.020000.out_grd.gbandd360
-rw-r--r-- 1 Henrique.Alves ocean 6097 Jan 13 15:48 19680606.020000.out_pnt.points
-rw-r--r-- 1 Henrique.Alves ocean 154246 Jan 13 15:48 19680606.030000.out_grd.arcticsub
-rw-r--r-- 1 Henrique.Alves ocean 85906 Jan 13 15:48 19680606.030000.out_grd.gbandd360
-rw-r--r-- 1 Henrique.Alves ocean 6097 Jan 13 15:48 19680606.030000.out_pnt.points
-rw-r--r-- 1 Henrique.Alves ocean 154246 Jan 13 15:48 19680606.040000.out_grd.arcticsub
-rw-r--r-- 1 Henrique.Alves ocean 85906 Jan 13 15:48 19680606.040000.out_grd.gbandd360
-rw-r--r-- 1 Henrique.Alves ocean 6097 Jan 13 15:48 19680606.040000.out_pnt.points

Also, as discussed in person and by email, the reference to "inline post" was erroneously used and will be updated.

Copy link
Collaborator

@JessicaMeixner-NOAA JessicaMeixner-NOAA left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since it has been clarified offline that no process from the ww3_o* are intended to be merged into the separation of the output files by time stamps and that generating ascii or netcdf from the separated output files will be added in the following PR, this is fine.

@ajhenrique
Copy link
Collaborator Author

Since it has been clarified offline that no process from the ww3_o* are intended to be merged into the separation of the output files by time stamps and that generating ascii or netcdf from the separated output files will be added in the following PR, this is fine.

Thank you @JessicaMeixner-NOAA !

@ajhenrique ajhenrique merged commit 328a42a into develop Jan 13, 2020
@mickaelaccensi mickaelaccensi mentioned this pull request Sep 8, 2023
4 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants