UFS DA (Data Assimilation) Workflow
- Available coupling configurations in UFS Weather Model:
- S2SWA: ATM (FV3+CCPP) + OCN (MOM6) + ICE (CICE) + WAV (WW3)
- S2SWAL: ATM (FV3+CCPP) + OCN (MOM6) + ICE (CICE) + WAV (WW3) + CHM (GOCART) + LND (Noah-MP)
- NG-GODAS: ATM (DATM) + OCN (MOM6) + ICE (CICE)
- ATM: ATM (FV3+CCPP) stand-alone
- Clone the
developbranch of the authoritative repository:
git clone -b develop --recursive https://github.com/ufs-community/ufs-da-workflow
- Move to the
sorcdirectory:
cd ufs-da-workflow/sorc
- Run the build script:
- Workflow components: YES, JEDI-bundle: NO
./app_build.sh -a=[APP]
where [APP] is S2SWA, S2SWAL, NG-GODAS, or ATM.
- Workflow components: YES, JEDI-bundle: YES
./app_build.sh -a=[APP] --jedi=bundle
- Workflow components: NO, JEDI-bundle: YES
./app_build.sh --jedi=bundle-only
- Workflow components: YES, GDAS App: YES
./app_build.sh -a=[APP] --jedi=gdas
- Workflow components: NO, GDAS App: YES
./app_build.sh --jedi=gdas-only
- Load the python environment to set up the workflow:
cd ..
module use modulefiles
module load wflow_[workflow_manager]_[machine]
where [workflow_manager] is ecflow or rocoto, and [machine] is gaeac6, hercules, orion, or ursa.
- Copy a sample configuration and modify it as needed:
cd parm
cp config_samples/config.[sample_case].yaml config.yaml
vim config.yaml
Change the parameter values such as ACCOUNT as needed.
- Set up the workflow in the case-specific experiment directory:
./setup_wflow_env.py
- Launch the workflow tasks:
- WORKFLOW_MANAGER: ecflow
cd ../../exp_case/ecf_server
./start_server.sh
cd ../[EXP_CASE_NAME]/ecf
./begin_suite.sh
ecflow_ui &
where [EXP_CASE_NAME] is specified in the configuration file config.yaml.
- WORKFLOW_MANAGER: rocoto
cd ../../exp_case/[EXP_CASE_NAME]
./automate_launch_script.py -i [time interval in seconds]
where the default value of [time interval in seconds] is 30. This means that the launch script launch_rocoto_wflow.sh is submitted every 30 seconds.
- Check the result and log files:
com_dir: symlink to the directory containing the result fileslog_dir: symlink to the directory containing the log filestmp_dir: symlink to the directory containing the working directories