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

Make atmos_fcst job work using GFSv17 and new COM structure #120

Conversation

XianwuXue-NOAA
Copy link
Contributor

The job works on both WCOSS2 and HARA.

 On branch feature/v13_atmos_fcst
	renamed:    parm/gefs_fcst.parm -> parm/parm_gefs/gefs_fcst.parm

Refs: NOAA-EMC#94
 On branch feature/v13_atmos_fcst
	modified:   jobs/JGEFS_FORECAST
	modified:   rocoto/bin/wcoss2/common.sh
	modified:   rocoto/bin/wcoss2/forecast_hr.sh
	modified:   scripts/exgefs_forecast.sh

Refs: NOAA-EMC#94
 On branch feature/v13_atmos_fcst
	modified:   jobs/JGEFS_FORECAST
	modified:   scripts/exgefs_forecast.sh

Refs: NOAA-EMC#94
Also modify parm files

 On branch feature/v13_atmos_fcst
	modified:   jobs/JGEFS_FORECAST
	modified:   parm/.gitignore
	new file:   parm/config/config.ufs
	modified:   parm/parm_gefs/gefs.parm
	modified:   parm/parm_gefs/gefs_fcst.parm
	new file:   parm/parm_gefs/gefs_fcst_resources.parm
	modified:   sorc/link_gefs.sh

Refs: NOAA-EMC#94
 On branch feature/v13_atmos_fcst
	modified:   scripts/exgefs_forecast.sh

Refs: NOAA-EMC#94
 On branch feature/v13_atmos_fcst
	modified:   jobs/JGEFS_FORECAST
	modified:   parm/.gitignore
	modified:   parm/config/config.ufs
	modified:   parm/parm_gefs/gefs.parm
	modified:   parm/parm_gefs/gefs_fcst.parm
	modified:   rocoto/parm/setbase
	modified:   rocoto/py/GEFS_XML_For_Tasks.py
	modified:   rocoto/user_full.conf
	modified:   scripts/exgefs_forecast.sh
	modified:   sorc/link_gefs.sh
	modified:   ush/.gitignore

Refs: NOAA-EMC#94
 On branch feature/v13_atmos_fcst
	modified:   rocoto/user_full.conf

Refs: NOAA-EMC#94
 On branch feature/v13_atmos_fcst
	modified:   jobs/JGEFS_FORECAST
	modified:   parm/parm_gefs/gefs_fcst.parm
	modified:   scripts/exgefs_forecast.sh

Refs: NOAA-EMC#94
 On branch feature/v13_atmos_fcst
	modified:   rocoto/bin/hera/forecast_hr.sh
	modified:   rocoto/bin/wcoss2/forecast_hr.sh

Refs: NOAA-EMC#94
 On branch feature/v13_atmos_fcst
	modified:   rocoto/bin/hera/forecast_hr.sh
	modified:   rocoto/parm/setbase

Refs: NOAA-EMC#94
#export jchunk2d=$((2*RESTILE))
#export ichunk3d=$((4*RESTILE))
#export jchunk3d=$((2*RESTILE))
#export kchunk3d=1
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Lines 210~252 are for GEFS fcst job, especially for d16_35 and chem

@XianwuXue-NOAA XianwuXue-NOAA self-assigned this Apr 26, 2023
@XianwuXue-NOAA XianwuXue-NOAA added this to the GEFSv13 milestone Apr 26, 2023
@XianwuXue-NOAA XianwuXue-NOAA marked this pull request as ready for review April 26, 2023 18:22
elif [[ "$imp_physics" -eq 11 ]]; then # GFDL
export ncld=5
if [[ $cplchm = ".true." ]]; then
export FIELD_TABLE="$HOMEgfs/parm/parm_fv3diag/chm_field_table_gfdl"
Copy link
Contributor Author

Choose a reason for hiding this comment

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

This is for chem, maybe we don't use it in gefs.v13

# Disable the use of coupler.res; get model start time from model_configure
export USE_COUPLER_RES="NO"

# Write more variables to output
Copy link
Contributor Author

Choose a reason for hiding this comment

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

In original config.fcst, there is no condition for gefs

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@XianwuXue-NOAA
Copy link
Contributor Author

@WalterKolczynski-NOAA @aerorahul Could you please review my changes for fcst job? I have a few comments for the config files, could you also give me some suggestions? I have ran c00, p01 and p02 (C48) succeeded on Hera, but failed for p02 on WCOSS2 because of instability of the model.

 On branch feature/v13_atmos_fcst
	modified:   parm/parm_gefs/gefs_fcst.parm
	modified:   rocoto/user_full.conf

Refs: NOAA-EMC#94
Copy link
Contributor

@WalterKolczynski-NOAA WalterKolczynski-NOAA left a comment

Choose a reason for hiding this comment

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

Instead of duplicating the contents of GFS config files to make a few changes, you should be making changes to the config files in global workflow to support GEFS and/or adding config files that just change the things that are different. We want GEFS to run more more like GFS.

jobs/JGEFS_FORECAST Outdated Show resolved Hide resolved
jobs/JGEFS_FORECAST Outdated Show resolved Hide resolved
jobs/JGEFS_FORECAST Outdated Show resolved Hide resolved
jobs/JGEFS_FORECAST Outdated Show resolved Hide resolved
jobs/JGEFS_FORECAST Outdated Show resolved Hide resolved
jobs/JGEFS_FORECAST Outdated Show resolved Hide resolved
jobs/JGEFS_FORECAST Outdated Show resolved Hide resolved
scripts/exgefs_forecast.sh Outdated Show resolved Hide resolved
scripts/exgefs_forecast.sh Outdated Show resolved Hide resolved
Copy link
Contributor

Choose a reason for hiding this comment

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

Much of this should be in a config file.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

in config.fcst in g-w? If it is, you and @aerorahul should determine can I use cdump=gefs? or only use RUN=gefs? If you want to use run=gefs, then we should modify the config* in g-w to use RUN instead of cdump

Copy link
Contributor

Choose a reason for hiding this comment

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

Per the slack and in-person conversations, make GEFS versions of the config files and then make sure these settings are defined in there.

 On branch feature/v13_atmos_fcst
	modified:   jobs/JGEFS_FORECAST
	modified:   scripts/exgefs_forecast.sh

Refs: NOAA-EMC#94
@XianwuXue-NOAA
Copy link
Contributor Author

@WalterKolczynski-NOAA I have submitted a few commits based on your comment. When you have time, please review it.

 On branch feature/v13_atmos_fcst
	renamed:    parm/parm_gefs/gefs_fcst_resources.parm -> parm/config/config.resources
	modified:   parm/parm_gefs/gefs_fcst.parm

Refs: NOAA-EMC#94
 On branch feature/v13_atmos_fcst
	modified:   parm/parm_gefs/gefs_fcst.parm
	modified:   scripts/exgefs_forecast.sh

Refs: NOAA-EMC#94
 On branch feature/v13_atmos_fcst
 	modified:   jobs/JGEFS_ATMOS_PREP
	modified:   jobs/JGEFS_FORECAST
	renamed:    parm/parm_gefs/gefs.parm -> parm/config/config.base
	renamed:    parm/parm_gefs/gefs_fcst.parm -> parm/config/config.fcst
	renamed:    parm/parm_gefs/gefs_atmos_prep.parm -> parm/config/config.prep

Refs: NOAA-EMC#94
 On branch feature/v13_atmos_fcst
	modified:   jobs/JGEFS_ATMOS_PREP

Refs: NOAA-EMC#94
	The current g-w can not be used as flat structure for GEFS
		so I change the default structure is vertical structure

 On branch feature/v13_atmos_fcst
	modified:   rocoto/compile_install_all.sh

Refs: NOAA-EMC#94
 On branch feature/v13_atmos_fcst
	modified:   rocoto/compile_install_all.sh

Refs: NOAA-EMC#94
 On branch feature/v13_atmos_fcst
	modified:   parm/config/config.fcst

Refs: NOAA-EMC#94
  after delete them

 On branch feature/v13_atmos_fcst
 Changes to be committed:
	modified:   scripts/exgefs_forecast.sh
Refs: NOAA-EMC#94
 On branch feature/v13_atmos_fcst
 Changes to be committed:
	modified:   scripts/exgefs_forecast.sh

Refs: NOAA-EMC#94
 On branch feature/v13_atmos_fcst
	modified:   parm/config/config.base
	modified:   parm/config/config.fcst
	modified:   scripts/exgefs_forecast.sh

Refs: NOAA-EMC#94
 On branch feature/v13_atmos_fcst
	modified:   parm/config/config.fcst

Refs: NOAA-EMC#94
 On branch feature/v13_atmos_fcst
	modified:   parm/config/config.fcst
	modified:   scripts/exgefs_forecast.sh

Refs: NOAA-EMC#94
@XianwuXue-NOAA
Copy link
Contributor Author

@WalterKolczynski-NOAA @aerorahul I have moved some vars from ex-script of fcst to config.fcst and also did other modification. Please review my changes. Thanks

@XianwuXue-NOAA
Copy link
Contributor Author

@WalterKolczynski-NOAA @aerorahul When you have time, could you review my changes for this PR? Thanks.

 On branch feature/v13_atmos_fcst
	modified:   sorc/checkout.sh

Refs: NOAA-EMC#94
Copy link
Contributor

@WalterKolczynski-NOAA WalterKolczynski-NOAA left a comment

Choose a reason for hiding this comment

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

Didn't complete the review of the config files. It seems like a lot of GEFS settings were tacked on to GFS settings without considering whether they are still needed or to update them to match the GFS style (for instance, using $cplchm for branching instead of $DO_AERO). Many settings have been updated for GFS v17/GEFS v13 and we should defer to the new settings as given in GFS unless there is a good reason to deviate (like turning on stochastic physics for some members). Please carefully review all of the settings and determine whether it is conflicting with an existing setting elsewhere. If you have any trouble determining whether a setting should be overridden for GEFS, I'll help and if necessary we'll ask MDAB.

Also, note the changes that were made in the NOAA-EMC/global-workflow#1509. You've updated the commit hash, but there are changes to the config files that will need to be duplicated here.

export GESIN=${GESIN:-$(compath.py $envir/com/$NET/${ver})/${RUN}.${PDY}/$cyc/nwges}
export GESOUT=${GESOUT:-$(compath.py -o $NET/${ver})/${RUN}.${PDY}/$cyc/nwges}
ver=${gefs_ver:0:5}
export ROTDIR=${ROTDIR:-$(compath.py $envir/com/$NET/${ver})}
Copy link
Contributor

Choose a reason for hiding this comment

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

This should be defined before the j-job is called, and definitely should not use compath.py. compath.py should only be used for external packages (GFS, tracker, etc.).

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Is it the NCO new requirements? Because all the compath.py are in j-job in the current production.

jobs/JGEFS_FORECAST Outdated Show resolved Hide resolved
jobs/JGEFS_FORECAST Show resolved Hide resolved
jobs/JGEFS_FORECAST Outdated Show resolved Hide resolved
parm/config/config.base Outdated Show resolved Hide resolved
fi

# Choose coupling with wave
if [[ "$DO_WAVE" = "YES" && "$WAVE_CDUMP" != "gdas" ]]; then
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
if [[ "$DO_WAVE" = "YES" && "$WAVE_CDUMP" != "gdas" ]]; then
if [[ "$DO_WAVE" = "YES" ]]; then

Copy link
Contributor Author

Choose a reason for hiding this comment

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

This is the copy of code segments from config.fcst in g-w, I will follow the the config.fcst of g-w changes

parm/config/config.fcst Outdated Show resolved Hide resolved
parm/config/config.fcst Outdated Show resolved Hide resolved

export ROTDIR=${COMROOT}/gefs/${ver}
Copy link
Contributor

Choose a reason for hiding this comment

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

For development, I don't think we need to add the additional unnecessary directory levels that NCO is.

Suggested change
export ROTDIR=${COMROOT}/gefs/${ver}
# Assuming $EXPDIR is already built into $COMROOT
ROTDIR=${COMROOT}

Copy link
Contributor Author

Choose a reason for hiding this comment

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

GEFS will not use EXPDIR, This line is to set ROTDIR because I call j-job. This is only be used on Hera.


export ROTDIR=${COMROOT}/gefs/${ver}
export ROTDIR_GFS=${HOMEdata}/gfs/${gfs_ver}
Copy link
Contributor

Choose a reason for hiding this comment

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

Same here. For GFS development we don't include the extra directory levels NCO does. For operations, this needs to use compath.py, since GFS is an external package.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yes, however, this is only used on Hera. On wcos2, I will use compath.py to get the path, but it can not used on Hera.

 On branch feature/v13_atmos_fcst
	modified:   jobs/JGEFS_FORECAST
	modified:   parm/config/config.base
	modified:   parm/config/config.fcst
	modified:   parm/config/config.resources
	modified:   parm/config/config.ufs

Refs: NOAA-EMC#94
 On branch feature/v13_atmos_fcst
	modified:   jobs/JGEFS_FORECAST
	modified:   parm/config/config.base

Refs: NOAA-EMC#94
 On branch feature/v13_atmos_fcst
	modified:   parm/config/config.fcst
	modified:   parm/config/config.ufs
	modified:   scripts/exgefs_forecast.sh

Refs: NOAA-EMC#94
 On branch feature/v13_atmos_fcst
	modified:   parm/config/config.resources

Refs: NOAA-EMC#94
 On branch feature/v13_atmos_fcst
	modified:   parm/config/config.fcst

Refs: NOAA-EMC#94
 On branch feature/v13_atmos_fcst
	modified:   jobs/JGEFS_FORECAST
	new file:   parm/config/config.efcs
	modified:   parm/config/config.fcst

Refs: NOAA-EMC#94
@XianwuXue-NOAA
Copy link
Contributor Author

@WalterKolczynski-NOAA @aerorahul I have decided the config.fcst into two files: config.fcst and config.efcs. Which will shorten the config.fcst. Please re-review my changes for this PR. I think I have resolved all the comments. If I missed something, please let me know.

 On branch feature/v13_atmos_fcst
	modified:   parm/config/config.efcs

Refs: NOAA-EMC#94
@XianwuXue-NOAA
Copy link
Contributor Author

Since the GEFSv13 workflow will be in g-w, I will merge this PR to close this PR and for the future's reference. I will do the same PR for the other jobs. If you have any suggestions, please let me know. @WalterKolczynski-NOAA @aerorahul

@XianwuXue-NOAA XianwuXue-NOAA merged commit 2970fdf into NOAA-EMC:feature/v13_atm_only May 4, 2023
@XianwuXue-NOAA XianwuXue-NOAA deleted the feature/v13_atmos_fcst branch May 4, 2023 23:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants