/
Tropical Cyclones analysis with TempestExtremes
Tropical Cyclones analysis with TempestExtremes
This page is intended to provide a quick example on how to perform an analysis of Tropical Cyclones from E3SM output using the TempestExtremes package. For this example, we use output from the E3SMv1 Water Cycle low-res AMIP simulation (. Based on a demo and instructions from Paul Ullrich. Tested on NERSC Cori.
Installation on Cori
To download and install under ~/Tempest:
module load cray-netcdf mkdir ~/Tempest cd ~/Tempest git clone https://github.com/ClimateGlobalChange/tempestextremes.git cd tempestextremes make all -j 4
Running
Reserve an interactive session on compute nodes. For this example, one node for one hour is sufficient:
salloc -N 1 -C haswell -q interactive -t 01:00:00
For this particular example, we assume that the input data consists of cam.h2 files located under /global/cscratch1/sd/golaz/ACME_simulations/20180316.DECKv1b_A1.ne30_oEC.edison/archive/atm/hist
INPUTDIR="/global/cscratch1/sd/golaz/ACME_simulations/20180316.DECKv1b_A1.ne30_oEC.edison/archive/atm/hist"
Let's further assume that we want to process years 2000 and onward.
cd <workdir> # Copy over the connectivity file for the CSne30 mesh # (this is an adjacency list that describes the unstructured grid, generated using the GenerateConnectivityFile tool): cp /global/homes/p/paullric/outCSne30_connect.txt . # Create list of input files ls -1 $INPUTDIR/*20??*.nc > input.txt # Create list of output files sed -e 's/.*cam.h2[.]//' -e 's/[.]nc$/.cyclones.txt/' input.txt > output.txt # Run DetectNodes to detect TC on the unstructured E3SM grid. # This is the most time consuming operation. ~/Tempest/tempestextremes/bin/DetectNodes --verbosity 0 \ --timestride 1 --in_connect outCSne30_connect.txt \ --closedcontourcmd "PSL,300.0,4.0,0;_AVG(T200,T500),-0.6,4,1.0" \ --mergedist 6.0 --searchbymin PSL --outputcmd "PSL,min,0;_VECMAG(UBOT,VBOT),max,2" \ --in_data_list input.txt --out_file_list output.txt # The output consists of one text file for every input netCDF file with detected cyclones. # Concatenate all output files to make a master detection list cat *.cyclones.txt > cyclones.txt # Run StitchNodes on the master detection list to identify actual TC tracks: ~/Tempest/tempestextremes/bin/StitchNodes --format "i,lon,lat,slp,wind" --range 6.0 \ --minlength 6 --maxgap 1 --in cyclones.txt --out cyclones_stitch.txt \ --threshold "wind,>=,17.5,6;lat,<=,40.0,6;lat,>=,-40.0,6" # Generate histogram of detections: ~/Tempest/tempestextremes/bin/HistogramNodes --in cyclones_stitch.txt \ --iloncol 2 --ilatcol 3 --out cyclones_stitch_hist.nc # Visualize it, for example with ncview module load ncview ncview cyclones_stitch_hist.nc &
, multiple selections available,
Related content
Regridding E3SM Data with ncremap
Regridding E3SM Data with ncremap
Read with this
Packages in the E3SM Unified conda environment
Packages in the E3SM Unified conda environment
Read with this