Step-by-step guide
Building and executing hofx test with fv3-bundle on the gnssro branch
In these notes, we assumed that:
The code will be checked out in: $HOME/data/JCSDA/src
The code will be build and executed in: $HOME/data/JCSDA/build
Make sure fv3-bundle has been checked out
mkdir -p $HOME/data/JCSDA/src; cd $HOME/data/JCSDA/src;
git clone https://github.com/JCSDA/fv3-bundle.git
git clone https://github.com/UCAR/ecbuild.git
Make sure to be on the feature/gnssro branch
cd fv3-bundle
git checkout feature/gnssro
Build the code: with this script
If you are in singularity see:
Build JEDI environment with Singularity
Make sure specify: export "FC=mpif90" before running the "ecbuild" command.
If you are in docker see:
Build JEDI environment with Docker
Or on native OS and Homebrew with the script provided in the gnssro branch:
./build_fv3_bundle_gnssro.csh
Edit file fv3-bundle/fv3-jedi/test/testinput/hofx.json and make sure that:
1) Test with Radiosonde file:
ObsType points to Radiosonde
"ObsType": "Radiosonde",
obsfile points to the Radiosonde file provided in ufo/test, eg:
"obsfile": "../../ufo/test/Data/diag_t_01_wprofiles.nc4"
2) Test with Gnssro diag file:
ObsType points to Gnssro
"ObsType": "Gnssro",
obsfile points to the Gnssro file provided in ufo/test, eg:
"obsfile": "../../ufo/test/Data/diag_conv_gps_ges.2016010900_control.nc4"
Run the hofx test with:
In bash:
export BUILD=$HOME/data/JCSDA/build
In tcsh:
setenv BUILD $HOME/data/JCSDA/build
And (all shells):
cd $BUILD/fv3-bundle/fv3-jedi/test
echo "localhost slots=6" > hostfile
/usr/local/bin/mpiexec -n 6 --hostfile hostfile $BUILD/fv3-bundle/bin/fv3jedi_hofx.x testinput/hofx.json
Notes:
1) fv3 requires at least 6 MPI tasks
2) Netcdf files in fv3-jedi/test/Data can be corrupted at checkout with git, use "ncdump -h" to verify the integrity of the files.