-
Notifications
You must be signed in to change notification settings - Fork 180
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
Consolidate ocean, ice and wave task info into config.ufs #1334
Changes from 14 commits
d5a6fb1
2574e13
6fe99f8
b79e2b2
76b4c7e
9bbde7e
6bce5d3
ec44bef
5bcd7f9
4d26b46
e35831f
29bab08
54cee0c
91eb293
17f5872
a1cfea4
3a30d96
1e6488b
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -5,19 +5,36 @@ | |
|
||
echo "BEGIN: config.efcs" | ||
|
||
# TODO: the _ENKF counterparts need to be defined in config.base | ||
export DO_AERO=${DO_AERO_ENKF:-"NO"} | ||
export DO_OCN=${DO_OCN_ENKF:-"NO"} | ||
export DO_ICE=${DO_ICE_ENKF:-"NO"} | ||
export DO_WAVE=${DO_WAVE_ENKF:-"NO"} | ||
|
||
# TODO: Possibly need OCNRES_ENKF, ICERES_ENKF, WAVRES_ENKF too | ||
if [[ ${DO_OCN} == "YES" ]]; then | ||
case "$CASE_ENKF" in | ||
"C48") export OCNRES=500;; | ||
"C96") export OCNRES=100;; | ||
WalterKolczynski-NOAA marked this conversation as resolved.
Show resolved
Hide resolved
|
||
"C192") export OCNRES=050;; | ||
"C384") export OCNRES=025;; | ||
"C768") export OCNRES=025;; | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Question for future: Do we want wave grids to depend on atm grid? Or for that to be more flexible when this gets updated (hopefully in the very near future...) There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think in the future, ideally, we should be able to have any combination and it should not depend on the atmosphere resolution. Just like There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. That sounds great. Unfortunately there are files that depend on CASE and OCN RES so you can't have "any" combination without the appropriate fix files, but ideally it wouldn't be pre-determined otherwise and I like the idea of the wave grid being an independent choice. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yes. When we provide that flexibility, we will also implement a "validity check" to ensure that the the user has the illusion of choice, but not really :-) |
||
*) export OCNRES=025;; | ||
esac | ||
fi | ||
[[ ${DO_ICE} == "YES" ]] && export ICERES=$OCNRES | ||
[[ ${DO_WAVE} == "YES" ]] && export waveGRD=${waveGRD_ENKF:-$waveGRD} # TODO: will we run waves with a different resolution in the ensemble? | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Or run waves at all? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Sure. |
||
|
||
# Source model specific information that is resolution dependent | ||
. $EXPDIR/config.fv3 $CASE_ENKF | ||
string="--fv3 $CASE_ENKF" | ||
[[ ${DO_OCN} == "YES" ]] && string="$string --mom6 $OCNRES" | ||
[[ ${DO_ICE} == "YES" ]] && string="$string --cice6 $ICERES" | ||
[[ ${DO_WAVE} == "YES" ]] && string="$string --ww3 ${waveGRD// /;}" | ||
source $EXPDIR/config.ufs ${string} | ||
|
||
# Get task specific resources | ||
. $EXPDIR/config.resources efcs | ||
|
||
export npe_fv3=$npe_efcs | ||
|
||
if [ $QUILTING = ".true." ]; then | ||
export npe_fv3=$(echo " $npe_fv3 + $WRITE_GROUP * $WRTTASK_PER_GROUP" | bc) | ||
export npe_efcs=$npe_fv3 | ||
fi | ||
|
||
# Use serial I/O for ensemble (lustre?) | ||
export OUTPUT_FILETYPE_ATM="netcdf" | ||
export OUTPUT_FILETYPE_SFC="netcdf" | ||
|
This file was deleted.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,17 +1,5 @@ | ||
#! /usr/bin/env bash | ||
|
||
case "${ICERES}" in | ||
"025") | ||
export NX_GLB="1440" | ||
export NY_GLB="1080" | ||
;; | ||
"500") | ||
export NX_GLB="72" | ||
export NY_GLB="35" | ||
export cice_processor_shape="slenderX1" | ||
;; | ||
*) | ||
echo "FATAL ERROR: Unsupported ICERES = ${ICERES}, ABORT!" | ||
exit 1 | ||
;; | ||
esac | ||
echo "BEGIN: config.ice" | ||
|
||
echo "END: config.ice" |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,23 @@ | ||
#! /usr/bin/env bash | ||
|
||
# OCNRES is currently being set in config.base | ||
case "$CASE" in | ||
"C48") export OCNTIM=3600;; | ||
*) export OCNTIM=1800;; | ||
esac | ||
echo "BEGIN: config.ocn" | ||
|
||
# MOM_input template to use | ||
export MOM_INPUT="MOM_input_template_${OCNRES}" | ||
|
||
export DO_OCN_SPPT="NO" # In MOM_input, this variable is determines OCN_SPPT (OCN_SPPT = True|False) | ||
export DO_OCN_PERT_EPBL="NO" # In MOM_input, this variable determines PERT_EPBL (PERT_EPBL = True|False) | ||
|
||
# Templated variables in MOM_input_template | ||
export MOM6_USE_LI2016="True" # set to False for restart reproducibility | ||
export MOM6_THERMO_SPAN="False" | ||
export MOM6_ALLOW_LANDMASK_CHANGES="False" | ||
|
||
if [[ "${DO_JEDIOCNVAR}" == "YES" ]]; then | ||
export ODA_INCUPD="True" | ||
else | ||
export ODA_INCUPD="False" | ||
fi | ||
export ODA_INCUPD_NHOURS="3.0" # In MOM_input, this is time interval for applying increment | ||
|
||
echo "END: config.ocn" |
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.
With this line here, should this line get changed: https://github.com/aerorahul/global-workflow/blob/feature/config.ufs/parm/config/config.wave#L29 ?
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.
It shouldn't matter, but I think it makes sense to define the "wave resolution" or "wave grids" in
config.base
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.
@JessicaMeixner-NOAA Should this be updated to a different value for
waveGRD
as default? Perhaps in another PR. I'ld be interested in your suggestion.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.
Probably... Right now all the defaults are "v16" which this is, but it's probably time to move towards v17 - except we don't know what this is yet, so leaving that until we do might be a better answer although I don't see us running this three grid option any time soon either, so also probably not a good choice to leave as is...