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

Add developmental test cases: idealized baroclinic wave and 2020 July CAPE cases + https://github.com/ufs-community/ufs-weather-model/pull/2459 #2461

Merged
merged 132 commits into from
Nov 12, 2024
Merged
Show file tree
Hide file tree
Changes from 26 commits
Commits
Show all changes
132 commits
Select commit Hold shift + click to select a range
9c60f80
make ufs model compile on CSPs with Rocky 8
weihuang-jedi Aug 30, 2024
30893c0
Merge branch 'develop' of github.com:NOAA-EPIC/ufs-weather-model into…
weihuang-jedi Sep 10, 2024
48d4d91
update test yaml
jkbk2004 Sep 18, 2024
79b5b4b
Merge branch 'ufs-community:develop' into feature/jedi-build
jkbk2004 Sep 18, 2024
d299ba5
update utils scirpt: jedi build
jkbk2004 Sep 18, 2024
ab33fd7
Create compile_slurm_jedi.IN_hera
jkbk2004 Sep 18, 2024
5c6d960
Create ufs_bundle.yaml
jkbk2004 Sep 18, 2024
f4a8754
Create jedi_slurm.IN_hera
jkbk2004 Sep 18, 2024
636d8ba
Bring in updated test_cases directory structure from old branch. Port…
ulmononian Sep 18, 2024
bdc2a0b
Add logic to copy test_case configurations to symlinked tests/fv3_con…
ulmononian Sep 18, 2024
17b6530
Remove control_run.IN from test_cases/fv3_conf.
ulmononian Sep 18, 2024
2841c7b
Merge branch 'ufs-community:develop' into feature/jedi-build
jkbk2004 Sep 22, 2024
d8c1d0c
update test yaml
jkbk2004 Sep 22, 2024
d180247
Merge branch 'ufs-community:develop' into feature/enable_test_cases
ulmononian Sep 23, 2024
ca31cd1
Add BCW192 fv3_conf and nml; update BCW192 test file.
ulmononian Sep 23, 2024
33d4746
Merge branch 'ufs-community:develop' into feature/enable_test_cases
ulmononian Sep 25, 2024
e74709a
Change fv3_conf dir name and bcw IN file title.
ulmononian Sep 25, 2024
f4db42b
Rename 2020_CAPE.IN.
ulmononian Sep 25, 2024
843fe6b
Fix CICE hash.
ulmononian Sep 25, 2024
52a37c1
Update ufs_test.sh to use exp_conf.
ulmononian Sep 25, 2024
f590477
Update baroclinic wave tests file.
ulmononian Sep 25, 2024
914f177
Update bcw nml and test file.
ulmononian Sep 30, 2024
6b1a424
Updates.
ulmononian Sep 30, 2024
fdabfd8
Merge branch 'ufs-community:develop' into feature/jedi-build
jkbk2004 Oct 1, 2024
c419652
Update machine_orion.config
jkbk2004 Oct 1, 2024
2b66c95
remove unneeded path
weihuang-jedi Oct 1, 2024
95fb82b
remove unneeded path
weihuang-jedi Oct 1, 2024
3304451
Update machine_orion.config
jkbk2004 Oct 1, 2024
b599e33
update log py: pass check
jkbk2004 Oct 1, 2024
a9bde34
Merge branch 'ufs-community:develop' into feature/enable_test_cases
ulmononian Oct 1, 2024
e69a80d
update fixes for -n and -b
jkbk2004 Oct 2, 2024
9a1a1b3
compile under Rocky8 on AWS passed
weihuang-jedi Oct 2, 2024
9b1d66c
Merge https://github.com/jkbk2004/ufs-weather-model/tree/feature/tuni…
ulmononian Oct 2, 2024
948ea17
Updates to bcw and cape conf files.
ulmononian Oct 2, 2024
e468f54
Update ufs_test_utils.py
jkbk2004 Oct 2, 2024
55ceceb
Compile ufs-weather-model successfully on GCP with Rocky 8
weihuang-jedi Oct 3, 2024
7e644a8
Merge branch 'csps-rocky8' of github.com:NOAA-EPIC/ufs-weather-model …
weihuang-jedi Oct 3, 2024
a040e40
Update bcw IN file for orion; change yaml function in ufs test utils …
ulmononian Oct 3, 2024
19dde9a
Add orion logic to 2020_CAPE.IN.
ulmononian Oct 3, 2024
cdab4ca
Merge branch 'ufs-community:develop' into feature/enable_test_cases
ulmononian Oct 7, 2024
2d234d0
Update case test files.
ulmononian Oct 7, 2024
d432b5c
Merge branch 'feature/enable_test_cases' of https://github.com/ulmono…
ulmononian Oct 7, 2024
58eebbf
Merge branch 'ufs-community:develop' into csps-rocky8
weihuang-jedi Oct 8, 2024
0cc340c
Merge branch 'ufs-community:develop' into feature/tuning
jkbk2004 Oct 8, 2024
27b0ffb
Fix typo in 2020_CAPE test.
ulmononian Oct 10, 2024
56fdbd6
Add Hera log for idealized cases (used Rocoto).
ulmononian Oct 11, 2024
5f4ec8e
Merge branch 'ufs-community:develop' into feature/tuning
jkbk2004 Oct 11, 2024
ebfa8c2
Merge branch 'ufs-community:develop' into feature/enable_test_cases
ulmononian Oct 14, 2024
8f8ccb2
Update idealize test case files to new staged data paths (orion/hercu…
Oct 14, 2024
455a440
Add full Hera RT suite results (run with ufs_test.sh & ufs_test.yaml …
Oct 14, 2024
3918aac
Fix Python path export in xml py script for jet clause.
Oct 15, 2024
b47f2f4
Add beta 2020_CAPE_C768 test files; update bcw and 2020 CAPE IN files…
ulmononian Oct 17, 2024
152934f
Update 2020_CAPE_C768 test file.
ulmononian Oct 17, 2024
55ccb39
Update 2020_CAPE.IN with c768 fix files on hera.
ulmononian Oct 17, 2024
283e9fb
Merge branch 'ufs-community:develop' into feature/enable_test_cases
ulmononian Oct 21, 2024
91b422a
Merge branch 'ufs-community:develop' into csps-rocky8
zach1221 Oct 21, 2024
6812601
add noaacloud modulefile
zach1221 Oct 22, 2024
5b495d9
add noaacloud fv3_slurm changes
zach1221 Oct 22, 2024
04f5fd3
add noaacloud RT logs: passed
zach1221 Oct 22, 2024
acba3eb
remove extra set -x
zach1221 Oct 22, 2024
d3b897b
update rocoto version noaacloud
zach1221 Oct 22, 2024
326cff4
Add missing dash in ufs_test.yaml to fix rocoto bug; update 2020_CAPE…
ulmononian Oct 23, 2024
29f16c8
update machine_noaacloud.config for the test cases
Oct 24, 2024
a094204
Update noaacloud machine config.
ulmononian Oct 24, 2024
76b36f2
Turn on noaacloud for idealized cases; update STMP for noaacloud base…
Oct 24, 2024
d85f796
noaacloud updates.
Oct 24, 2024
a07a2c9
Update test_cases and ufs_test YAMLS to enable tests on noaacloud.
Oct 24, 2024
10f36b3
Merge branch 'ufs-community:develop' into feature/tuning
jkbk2004 Oct 29, 2024
5d69998
HSD testing for noaacloud
Oct 30, 2024
32336fb
Merge branch 'feature/enable_test_cases' of github.com:natalie-perlin…
Oct 30, 2024
ceadc2a
update create_log.py
Oct 30, 2024
0780855
HSD test cases: HSD_INPUT_DATA variable added
Oct 30, 2024
4d0e25a
HSD test_case_gnu added to ./tests-dev/ufs_test.yaml
Oct 30, 2024
5889335
Merge pull request #17 from natalie-perlin/feature/enable_test_cases
ulmononian Oct 30, 2024
2013289
updates for baroclinic_wave HSD case; MODEL_INITIALIZATION is set to …
Oct 31, 2024
a7936c7
correction for ./tests-dev/baseline_setup.yaml
Oct 31, 2024
a2ec19e
HSD testing update for Hercules
Nov 4, 2024
e36f418
Merge with ufs-wm develop 547be6d.
ulmononian Nov 4, 2024
1447a09
Merge branch 'feature/enable_test_cases' of github.com:natalie-perlin…
Nov 4, 2024
f31236a
updates for derecho
Nov 4, 2024
ceaa411
Lmod init update for derecho
Nov 4, 2024
d4ffef9
reverted changes to MODEL_INITIALIZATION variable in tests/fv3_conf/l…
Nov 4, 2024
2465432
Merge branch 'ufs-community:develop' into csps-rocky8
weihuang-jedi Nov 4, 2024
a06a10d
Fix rocoto_create_entried since HSD arg was removed in last commit.
ulmononian Nov 4, 2024
89688ed
Revert 2020_CAPE.IN.
ulmononian Nov 4, 2024
1064ca8
Merge branch 'ufs-community:develop' into feature/tuning
jkbk2004 Nov 5, 2024
5b7b93e
Reverting change of MODEL_INITIALIZATION variable back to a string va…
Nov 5, 2024
23df70f
Revert variables MODEL_INITIALIZATION, HSD_CASE to simple true or fal…
Nov 5, 2024
2995d64
Merge pull request #18 from natalie-perlin/feature/enable_test_cases
ulmononian Nov 5, 2024
f9bf2bc
Updated FV3_slurm job configurations for Jet
Nov 6, 2024
79d85ec
adapt HSD baroclinic_wave test for Jet
Nov 6, 2024
febdc20
Merge ufs-wm dev f9c91d3.
Nov 6, 2024
0e2d767
update for HSD baroclinic_wave test on Jet, new file fv3_slurm.IN_jet
Nov 6, 2024
88caa18
Merge pull request #19 from natalie-perlin/feature/enable_test_cases
ulmononian Nov 6, 2024
7b4419d
Merge branch 'ufs-community:develop' into feature/tuning
jkbk2004 Nov 7, 2024
908c5de
Update srun args for jet fv3_slurm.
Nov 7, 2024
5a2db10
update create_log.py
jkbk2004 Nov 7, 2024
c92b526
Merge branch 'ufs-community:develop' into csps-rocky8
weihuang-jedi Nov 7, 2024
7fe3ebe
update ufs_test.yaml
jkbk2004 Nov 7, 2024
55621d9
Merge in jk feature/tuning at 7fe3ebe.
ulmononian Nov 7, 2024
fb027b2
Revert jet compile card.
ulmononian Nov 8, 2024
cc0d23a
Merge branch 'csps-rocky8' of https://github.com/NOAA-EPIC/ufs-weathe…
ulmononian Nov 8, 2024
ee33a92
Comment out 2020_CAPE_C768 for now.
ulmononian Nov 8, 2024
bd9dba5
Update 2020_CAPE_C768 test file.
ulmononian Nov 8, 2024
d708a09
Turn post on for 2020_CAPE.
ulmononian Nov 8, 2024
ff4c91b
Remove test_case.yaml.
ulmononian Nov 8, 2024
704a251
Remove 2020_CAPE_C768, update ufs_test.yaml.
ulmononian Nov 8, 2024
b292cb9
Revert create_xml for now.
ulmononian Nov 8, 2024
d3a3ca8
Update HSD input data paths in fv3_run files and baseline_setup.yaml;…
ulmononian Nov 8, 2024
07ba905
Fix big in bcw IN.
ulmononian Nov 8, 2024
31ac2a9
Merge branch 'ufs-community:develop' into feature/enable_test_cases
ulmononian Nov 8, 2024
3f091b3
point to fv3 feature branch to combine in PR-2489
jkbk2004 Nov 8, 2024
304d878
Update ufs_test.yaml
ulmononian Nov 8, 2024
ada6d96
Update baroclinic_wave
ulmononian Nov 8, 2024
e366ec5
undo combining upp inline post update PR-2489
jkbk2004 Nov 9, 2024
059aa74
update create_log and reduce FHMAX baroclinic_wave
jkbk2004 Nov 11, 2024
922330f
add tests-dev RT log hercules: passed
jkbk2004 Nov 11, 2024
c91c6c4
add noaacloud RT logs: passed
zach1221 Nov 11, 2024
2bacc1d
Update fv3_slurm.IN_jet
jkbk2004 Nov 11, 2024
ee291dd
Update baroclinic_wave
jkbk2004 Nov 11, 2024
f2d689e
update create_xml.py for INPUTDATA_LM4
jkbk2004 Nov 11, 2024
6957dd9
Update fv3_slurm.IN_jet
ulmononian Nov 11, 2024
4554965
Update fv3_slurm.IN_jet
ulmononian Nov 11, 2024
20a921d
add tests-dev orion RT log: passed
jkbk2004 Nov 12, 2024
ec937be
add tests-dev hera RT log: passed
jkbk2004 Nov 12, 2024
812251d
add tests-dev RT log: passed
jkbk2004 Nov 12, 2024
e61876f
fv3_slurm.IN_jet update.
Nov 12, 2024
69cd30c
More jet change.s
Nov 12, 2024
36a1377
Remove custom fv3_slurm.IN_jet file and revert Jet python path exports.
Nov 12, 2024
841ab6f
Update test_changes.list
jkbk2004 Nov 12, 2024
6a39e65
Update create_log.py
ulmononian Nov 12, 2024
292d4c7
Update 2020_CAPE.IN
ulmononian Nov 12, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 7 additions & 7 deletions tests-dev/baseline_setup.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -54,15 +54,15 @@ jet:
QUEUE: batch
COMPILE_QUEUE: batch
PARTITION: xjet
dprefix: /mnt/lfs4/HFIP/hfv3gfs/${USER}
DISKNM: /mnt/lfs4/HFIP/hfv3gfs/role.epic/RT
STMP: /mnt/lfs4/HFIP/hfv3gfs/${USER}/RT_BASELINE
PTMP: /mnt/lfs4/HFIP/hfv3gfs/${USER}/RT_RUNDIRS
dprefix: /lfs5/HFIP/hfv3gfs/${USER}
DISKNM: /lfs5/HFIP/hfv3gfs/role.epic/RT
STMP: /lfs5/HFIP/hfv3gfs/${USER}/RT_BASELINE
PTMP: /lfs5/HFIP/hfv3gfs/${USER}/RT_RUNDIRS
RUNDIR_ROOT:
SCHEDULER: slurm
INPUTDATA_ROOT: /mnt/lfs4/HFIP/hfv3gfs/role.epic/RT/NEMSfv3gfs/input-data-20240501
INPUTDATA_ROOT_WW3: /mnt/lfs4/HFIP/hfv3gfs/role.epic/RT/NEMSfv3gfs/input-data-20240501/WW3_input_data_20240214
INPUTDATA_ROOT_BMIC: /mnt/lfs4/HFIP/hfv3gfs/role.epic/RT/NEMSfv3gfs/BM_IC-20220207
INPUTDATA_ROOT: /lfs5/HFIP/hfv3gfs/role.epic/RT/NEMSfv3gfs/input-data-20240501
INPUTDATA_ROOT_WW3: /lfs5/HFIP/hfv3gfs/role.epic/RT/NEMSfv3gfs/input-data-20240501/WW3_input_data_20240214
INPUTDATA_ROOT_BMIC: /lfs5/HFIP/hfv3gfs/role.epic/RT/NEMSfv3gfs/BM_IC-20220207
derecho:
QUEUE: main
COMPILE_QUEUE: main
Expand Down
22 changes: 17 additions & 5 deletions tests-dev/create_log.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,18 @@
import subprocess
import yaml
from datetime import datetime
#import datetime
from ufs_test_utils import get_testcase, write_logfile, delete_files, machine_check_off

def get_timestamps(path):
dir_list = os.listdir(path)
dt = []
for f in dir_list:
m_time = os.path.getmtime(path+f)
dt.append(datetime.fromtimestamp(m_time))
dtsort=sorted(dt)
return str(dtsort[0]),str(dtsort[-1])

def finish_log():
"""Collect regression test results and generate log file.
"""
Expand Down Expand Up @@ -40,8 +50,10 @@ def finish_log():
COMPILE_ID = apps
COMPILE_LOG = 'compile_'+COMPILE_ID+'.log'
COMPILE_LOG_TIME ='compile_'+COMPILE_ID+'_timestamp.txt'
COMPILE_CHECK1 ='Compile '+COMPILE_ID+' Completed'
COMPILE_CHECK2 ='[100%] Linking Fortran executable'
with open('./logs/log_'+MACHINE_ID+'/'+COMPILE_LOG) as f:
if "[100%] Linking Fortran executable" in f.read():
if COMPILE_CHECK1 in f.read() or COMPILE_CHECK2 in f.read():
COMPILE_PASS += 1
f.seek(0)
for line in f:
Expand Down Expand Up @@ -131,10 +143,10 @@ def finish_log():
run_logs += '\n'
write_logfile(filename, "a", output=run_logs)

TEST_START_TIME = os.getenv('TEST_START_TIME')
TEST_END_TIME = os.getenv('TEST_END_TIME')
start_time = datetime.strptime(TEST_START_TIME, "%Y%m%d %H:%M:%S")
end_time = datetime.strptime(TEST_END_TIME, "%Y%m%d %H:%M:%S")
TEST_START_TIME, TEST_END_TIME = get_timestamps('./logs/log_'+MACHINE_ID+'/')

start_time = datetime.strptime(TEST_START_TIME, "%Y-%m-%d %H:%M:%S")
end_time = datetime.strptime(TEST_END_TIME, "%Y-%m-%d %H:%M:%S")
hours, remainder= divmod((end_time - start_time).total_seconds(), 3600)
minutes, seconds= divmod(remainder, 60)
hours = int(hours); minutes=int(minutes); seconds =int(seconds)
Expand Down
757 changes: 382 additions & 375 deletions tests-dev/logs/RegressionTests_hera.log

Large diffs are not rendered by default.

66 changes: 66 additions & 0 deletions tests-dev/logs/RegressionTests_hera_idealized_cases.log
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
====START OF hera REGRESSION TESTING LOG====

UFSWM hash used in testing:
27b0ffbaa36574336166aaffcac2f5a95f1beaa1

Submodule hashes used in testing:
37cbb7d6840ae7515a9a8f0dfd4d89461b3396d1 AQM (v0.2.0-37-g37cbb7d)
be5d28fd1b60522e6fc98aefeead20e6aac3530b AQM/src/model/CMAQ (CMAQv5.2.1_07Feb2018-198-gbe5d28fd1)
1f9eaaa142c8b07ed6b788c9f44ea02cc86d0bae CDEPS-interface/CDEPS (cdeps0.4.17-42-g1f9eaaa)
5e57a89cf533fe98352bcfd1a464b1d50713274d CICE-interface/CICE (CICE6.0.0-378-g5e57a89)
05ac0ec3ea666080eed36e67f6cf8ce1255b243f CICE-interface/CICE/icepack (Icepack1.1.0-192-g05ac0ec)
dc977bcadd1ade1a528dee75f1ad45e8bd80ca0a CMEPS-interface/CMEPS (cmeps_v0.4.1-2310-gdc977bc)
cabd7753ae17f7bfcc6dad56daf10868aa51c3f4 CMakeModules (v1.0.0-28-gcabd775)
1aba87cb308fb52912e7fe6dd6b53d0ce7077554 FV3 (heads/develop)
24686a2561f1414eb86c7b97c93960c36e4257b1 FV3/atmos_cubed_sphere (201912_public_release-406-g24686a2)
0f8232724975c13289cad390c9a71fa2c6a9bff4 FV3/ccpp/framework (2024-07-11-dev)
5a363134a77535f35594e56b58ba1e6141a23d2b FV3/ccpp/physics (EP4-884-g5a363134)
74a0e098b2163425e4b5466c2dfcf8ae26d560a5 FV3/ccpp/physics/physics/Radiation/RRTMGP/rte-rrtmgp (v1.6)
6f5dd627d124ae94bb5ed7f5afd22f82c470b1b7 FV3/upp (upp_v10.2.0-230-g6f5dd627)
-1ba8270870947b583cd51bc72ff8960f4c1fb36e FV3/upp/sorc/libIFI.fd
-529f870d33b65c3b6c1aa3c3236b94efc3bd336d FV3/upp/sorc/ncep_post.fd/post_gtg.fd
041422934cae1570f2f0e67239d5d89f11c6e1b7 GOCART (sdr_v2.1.2.6-119-g0414229)
bcf7777bb037ae2feb2a8a8ac51aacb3511b52d9 HYCOM-interface/HYCOM (2.3.00-122-gbcf7777)
5e0c21f64fa5b20efc8f29f8709766e1e6793a79 MOM6-interface/MOM6 (dev/master/repository_split_2014.10.10-10230-g5e0c21f64)
9423197f894112edfcb1502245f7d7b873d551f9 MOM6-interface/MOM6/pkg/CVMix-src (9423197)
29e64d652786e1d076a05128c920f394202bfe10 MOM6-interface/MOM6/pkg/GSW-Fortran (29e64d6)
3ac32f0db7a2a97d930f44fa5f060c983ff31ee8 NOAHMP-interface/noahmp (v3.7.1-436-g3ac32f0)
c7004b658b9dae9fc473d4e6511dfc1cf8e6a7bd WW3 (6.07.1-347-gc7004b65)
05cad173feeb598431e3ef5f17c2df6562c8d101 fire_behavior (v0.2.0-1-g05cad17)
fad2fe9f42f6b7f744b128b4a2a9433f91e4296f stochastic_physics (ufs-v2.0.0-219-gfad2fe9)

NOTES:
[Times](Memory) are at the end of each compile/test in format [MM:SS](Size).
The first time is for the full script (prep+run+finalize).
The second time is specifically for the run phase.
Times/Memory will be empty for failed tests.

BASELINE DIRECTORY: /scratch2/NAGAPE/epic/UFS-WM_RT/NEMSfv3gfs/develop-20241001
COMPARISON DIRECTORY: /scratch1/NCEPDEV/stmp2/Cameron.Book/FV3_RT/rt_3325106

UFS_TEST.SH OPTIONS USED:
* (-a) - HPC PROJECT ACCOUNT: epic
* (-c) - CREATE NEW BASELINES
* (-k) - KEEP RUN DIRECTORY
* (-r) - USE ROCOTO

PASS -- COMPILE test_cases_intel [10:05, 10:05](1 warnings,1 remarks)
PASS -- TEST 2020_CAPE_intel [06:39, 06:30] (853192 MB)
PASS -- TEST baroclinic_wave_intel [36:40, 36:04] (1519928 MB)


SYNOPSIS:
Starting Date/Time: 2024-10-10 22:43:44
Ending Date/Time: 2024-10-10 23:22:07
Total Time: 00h:38m:23s
Compiles Completed: 1/1
Tests Completed: 2/2


NOTES:
A file test_changes.list was generated but is empty.
If you are using this log as a pull request verification, please commit test_changes.list.

Result: SUCCESS

====END OF hera REGRESSION TESTING LOG====
4 changes: 3 additions & 1 deletion tests-dev/machine_config/machine_orion.config
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@
set -eux

module load gcc/12.2.0
module load python/3.10.8
#module load python/3.10.8
module use -a /work/noaa/epic/conda/modulefiles.orion
module load anaconda/23.7.4

module load contrib ruby/3.2.3 rocoto/1.3.7
ROCOTORUN=/apps/contrib/rocoto/1.3.7/bin/rocotorun
Expand Down
184 changes: 184 additions & 0 deletions tests-dev/test_cases/exp_conf/2020_CAPE.IN
Original file line number Diff line number Diff line change
@@ -0,0 +1,184 @@
rm -fr INPUT RESTART
if [ $NPX = 97 ]; then
inputdir=FV3_input_data
elif [ $NPX = 49 ]; then
inputdir=FV3_input_data48
elif [ $NPX = 193 ]; then
inputdir=FV3_input_data192
elif [ $NPX = 385 ]; then
inputdir=FV3_input_data384
elif [ $NPX = 769 ]; then
inputdir=FV3_input_data768
fi

echo "inputdir=$inputdir,NPX=$NPX,NESTED=$NESTED"

OPNREQ_TEST=${OPNREQ_TEST:-false}
V2_SFC_FILE=${V2_SFC_FILE:-false}
HSD_CASE=${HSD_CASE:-false}
SUFFIX=${RT_SUFFIX}
if [ $WARM_START = .false. ]; then
mkdir INPUT RESTART
if [ "$NESTED" = .true. ]; then
cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_nested/* ./INPUT/.
elif [ "$V2_SFC_FILE" = "true" ]; then
cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_v2_sfc/* ./INPUT/.
elif [ "$HSD_CASE" = "true" ]; then
if [ ${MACHINE_ID} = hera ]; then
cp -r /scratch1/NCEPDEV/nems/role.epic/HSD_INPUT_DATA/FV3_input_data48/INPUT_L127_v2_sfc/* ./INPUT/.
elif [ ${MACHINE_ID} = orion ]; then
cp -r /work/noaa/epic/role-epic/contrib/HSD_INPUT_DATA/FV3_input_data48/INPUT_L127_v2_sfc/* ./INPUT/.
jkbk2004 marked this conversation as resolved.
Show resolved Hide resolved
elif [ ${MACHINE_ID} = hercules ]; then
cp -r /work/noaa/epic/role-epic/contrib/HSD_INPUT_DATA/FV3_input_data48/INPUT_L127_v2_sfc/* ./INPUT/.
elif [ ${MACHINE_ID} = jet ]; then
cp -r /mnt/lfs5/HFIP/hfv3gfs/role.epic/HSD_INPUT_DATA/FV3_input_data48/INPUT_L127_v2_sfc/* ./INPUT/.
fi
else
cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_gfsv17/* ./INPUT/.
fi
else
mkdir INPUT RESTART

if [[ ${OPNREQ_TEST} == true ]]; then
SUFFIX=${BL_SUFFIX}
fi

# WAVE restart file for ATMW ORT tests
if [[ $CPLWAV == .true. ]]; then
if [[ $med_model == cmeps ]] && [[ $RUNTYPE == continue ]]; then
# CMEPS restart and pointer files
RFILE=ufs.atmw.cpl.r.${RESTART_FILE_SUFFIX_SECS}.nc
cp ../${DEP_RUN}${SUFFIX}/RESTART/${RFILE} .
ls -1 ${RFILE}>rpointer.cpl
fi
RFILE=ufs.atmw.ww3.r.${RESTART_FILE_SUFFIX_SECS}
cp ../${DEP_RUN}${SUFFIX}/${RFILE} .
fi

if [ $MODEL_INITIALIZATION = false ]; then
#read_inc and iau tests restart from fh=24
CURRDIR=`pwd`
FILEDIR=${CURRDIR}/../${DEP_RUN}${SUFFIX}/RESTART
else
#for warm start from initialiation time
jkbk2004 marked this conversation as resolved.
Show resolved Hide resolved
FILEDIR=@[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_GDAS
fi

if [[ ${IAU_OFFSET} != 0 ]] || [[ $READ_INCREMENT = .true. ]]; then

if [ $MODEL_INITIALIZATION = false ]; then
cp ${FILEDIR}/../INPUT/fv3_increment.nc INPUT/.
cp ${FILEDIR}/../INPUT/grid_spec.nc INPUT/.
cp ${FILEDIR}/../INPUT/*_grid.tile*.nc INPUT/.
cp ${FILEDIR}/../INPUT/oro_data.tile*.nc INPUT/.
else
cp ${FILEDIR}/fv_increment*.nc INPUT/.
cp ${FILEDIR}/grid_spec.nc INPUT/.
cp ${FILEDIR}/*_grid.tile*.nc INPUT/.
cp ${FILEDIR}/oro_data.tile*.nc INPUT/.
fi
cp ${FILEDIR}/coupler.res INPUT/.
cp ${FILEDIR}/fv_core.res.* INPUT/.
cp ${FILEDIR}/fv_srf_wnd.res.* INPUT/.
cp ${FILEDIR}/fv_tracer.* INPUT/.
cp ${FILEDIR}/phy_data.* INPUT/.
cp ${FILEDIR}/sfc_data.* INPUT/.
else
#restart test start from fh FHROT
cp -r ../${DEP_RUN}${SUFFIX}/RESTART/${RESTART_FILE_PREFIX}.* ./INPUT
rm -f INPUT/fv_core.res.*
rm -f INPUT/fv_srf_wnd.res.*
rm -f INPUT/fv_tracer.res.*
rm -f INPUT/phy_data.*
rm -f INPUT/sfc_data.*
cp ${FILEDIR}/../INPUT/grid_spec.nc INPUT/.
cp ${FILEDIR}/../INPUT/*_grid.tile*.nc INPUT/.
cp ${FILEDIR}/../INPUT/oro_data*.nc INPUT/.
for RFILE in ../${DEP_RUN}${SUFFIX}/RESTART/${RESTART_FILE_PREFIX}.*; do
[ -e $RFILE ] || exit 1
RFILE_OLD=$(basename $RFILE)
RFILE_NEW="${RFILE_OLD//${RESTART_FILE_PREFIX}./}"
cp $RFILE INPUT/${RFILE_NEW}
done
fi
fi

if [ $TILEDFIX = .true. ]; then
if [ $CPLLND == .true. ]; then
cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/@[ATMRES]*.nc INPUT/.
else
cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/@[ATMRES]*.nc .
fi
cp @[INPUTDATA_ROOT]/FV3_fix/global_glacier.2x2.grb .
cp @[INPUTDATA_ROOT]/FV3_fix/global_maxice.2x2.grb .
cp @[INPUTDATA_ROOT]/FV3_fix/RTGSST.1982.2012.monthly.clim.grb .
cp @[INPUTDATA_ROOT]/FV3_fix/global_snoclim.1.875.grb .
cp @[INPUTDATA_ROOT]/FV3_fix/IMS-NIC.blended.ice.monthly.clim.grb .
cp @[INPUTDATA_ROOT]/${inputdir}/@[FNSMCC] .
cp @[INPUTDATA_ROOT]/${inputdir}/@[FNMSKH_control] .
else
cp @[INPUTDATA_ROOT]/${inputdir}/*grb .
fi

if [ $CPLWAV = .true. ]; then
if [ $WW3_MULTIGRID = 'true' ]; then
cp @[INPUTDATA_ROOT_WW3]/mod_def.pointsatmw mod_def.points
cp @[INPUTDATA_ROOT_WW3]/@[WW3_MODDEF] .
cp @[INPUTDATA_ROOT_WW3]/rmp_src* .
else
cp @[INPUTDATA_ROOT_WW3]/@[WW3_MODDEF] mod_def.ww3
cp @[INPUTDATA_ROOT_WW3]/@[MESH_WAV] .
fi
fi

#inline post
if [[ $POSTAPP = 'global' ]]; then
cp ${PATHRT}/parm/@[POST_ITAG] itag
cp ${PATHRT}/parm/@[POSTXCONFIG] postxconfig-NT.txt
cp ${PATHRT}/parm/@[POSTXCONFIG_FH00] postxconfig-NT_FH00.txt
cp ${PATHRT}/parm/params_grib2_tbl_new params_grib2_tbl_new
fi

#rrtmgp
if [ $DO_RRTMGP = .true. ]; then
cp @[INPUTDATA_ROOT]/FV3_input_data_RRTMGP/* .
fi

#merra2
if [ $USE_MERRA2 = .true. ]; then
for n in 01 02 03 04 05 06 07 08 09 10 11 12; do
cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/MERRA2_y14_24/merra2_1423_${n}.nc aeroclim.m${n}.nc
done
cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/aer_data/LUTS/optics_BC.v1_3.dat optics_BC.dat
cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/aer_data/LUTS/optics_OC.v1_3.dat optics_OC.dat
cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/aer_data/LUTS/optics_DU.v15_3.dat optics_DU.dat
cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/aer_data/LUTS/optics_SS.v3_3.dat optics_SS.dat
cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/aer_data/LUTS/optics_SU.v1_3.dat optics_SU.dat
fi

#rad_c_gocart
if [ $IAER = 2011 ]; then
cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/aer_data/LUTS/optics_BC.v1_3.dat optics_BC.dat
cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/aer_data/LUTS/optics_OC.v1_3.dat optics_OC.dat
cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/aer_data/LUTS/optics_DU.v15_3.dat optics_DU.dat
cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/aer_data/LUTS/optics_SS.v3_3.dat optics_SS.dat
cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/aer_data/LUTS/optics_SU.v1_3.dat optics_SU.dat
fi
#ugwpv1
if [ $DO_UGWP_V1 = .true. ]; then
cp @[INPUTDATA_ROOT]/FV3_input_data/ugwp_c384_tau.nc ./ugwp_limb_tau.nc
fi

#Thompson
if [ $IMP_PHYSICS = 8 ]; then
cp @[INPUTDATA_ROOT]/FV3_fix/qr_acr_qsV2.dat .
cp @[INPUTDATA_ROOT]/FV3_fix/qr_acr_qgV2.dat .
cp @[INPUTDATA_ROOT]/FV3_fix/freezeH2O.dat .
cp @[INPUTDATA_ROOT]/FV3_fix/CCN_ACTIVATE.BIN .
fi

#prognostic aerosols
if [ $CPLCHM = .true. ]; then
cp ${PATHRT}/parm/gocart/*.rc .
ln -sf @[INPUTDATA_ROOT]/GOCART/p8/ExtData .
fi
Loading