NCAR / i-wrf

Integrated End-To-End WRF Containerized Framework
https://i-wrf.org
Apache License 2.0
6 stars 1 forks source link

Run Hurricane Matthew case end-to-end in WRF and METplus containers #49

Open jaredalee opened 4 months ago

jaredalee commented 4 months ago

Describe the Task

After completion of #46, and #48, run the Hurricane Matthew test case end-to-end through the WRF and METplus containers. One or two other team members should be able to follow the instructions/execute the script(s). Developing the script to run this test case through WRF and METplus will partially accomplish #43.

Time Estimate

Estimate the amount of work required here. Issues should represent approximately 1 to 3 days of work.

Sub-Issues

Consider breaking the task down into sub-issues.

Relevant Deadlines

Target completion 15 Mar 2024.

Funding Source

7790013

Define the Metadata

Assignee

Labels

Projects and Milestone

Task Checklist

georgemccabe commented 1 month ago

@Trumbore, @rcplane , here are the instructions to run the METplus portion of the Hurricane Matthew use case using Docker. Note that this uses a development version of the METplus image because there are changes needed to run that aren't available in a stable release. We will need to update these instructions when the release is available. The METplus 6.0.0-beta5 release is scheduled from June 26 and the next official release will not be available until around November 2024.

METPLUS_IMAGE=dtcenter/metplus-dev:develop

pull METplus image

docker pull ${METPLUS_IMAGE}

pull observation input data (for Docker)

docker pull ncar/iwrf:data-matthew-input-obs.docker

create Docker data volume from observation input data

docker create --name data-matthew-input-obs ncar/iwrf:data-matthew-input-obs.docker

choose a working directory (modify to chose a local directory where the user has write permissions)

WORKING_DIR=/path/to/my/working/dir

create a directory to store the output

mkdir -p ${WORKING_DIR}/out

clone the I-WRF GitHub repository

git clone https://github.com/NCAR/i-wrf ${WORKING_DIR}/i-wrf

set environment variables to point to METplus config directory, directory containing WRF output, and directory to write output (modify these to match your local directories)

LOCAL_METPLUS_CONFIG_DIR=${WORKING_DIR}/i-wrf/use_cases/Hurricane_Matthew/METplus
LOCAL_FCST_INPUT_DIR=/Users/mccabe/data/iwrf/matthew/wrf_matthew
LOCAL_OUTPUT_DIR=${WORKING_DIR}/out

run the METplus use case in the METplus container, mounting the obs data from the data volume and all other inputs/outputs from local directories

docker run --rm -it --volumes-from data-matthew-input-obs -v $LOCAL_METPLUS_CONFIG_DIR:/config -v ${LOCAL_FCST_INPUT_DIR}:/data/input/wrf -v ${LOCAL_OUTPUT_DIR}:/data/output ${METPLUS_IMAGE} /metplus/METplus/ush/run_metplus.py /config/PointStat_matthew.conf