!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Run METplus for the Weather Regime use case
Background on the Weather Regime Use-Case:
The weather regime use case is more complicated than the OMI use case for several reasons. The first is that the use case has more pre-processing steps. The second is that the weather regime calculation has several steps. Specifically, it has three calculation steps and three optional output graphics for both the model and observations. Lastly, the use case calls Stat-Analysis on the output to create statistics. It uses 500mb height over December, January, and February to compute patterns for weather regime classification.
Configure the Weather Regime Use-Case:
To configure the weather regime use case, first check the python dependencies in the online User's Guide. The required python packages are numpy, netCDF4, datetime, pylab, scipy, sklearn, eofs, and matplotlib.
cd ${METPLUS_TUTORIAL_DIR}/output/met_output/weather_regime
The file shows 2 PROCESS_LIST variables, one of which is commented out. The commented out version includes pre-processing steps which can take a long time to run due to the amount of data. Here there are 2 pre-processing steps, regridding and creating daily means on the observations. The last three steps run the weather regime calculation and Stat-Analysis twice.
Input variables to the OMI calculation are given in the [user_env_vars] section. The first two variables, FCST_STEPS and OBS_STEPS are lists of the steps in each calculation that should be performed for the model and observation data. There are four calculation steps, ELBOW, EOF, KMEANS, and TIMEFREQ. The first two, ELBOW and EOF, can be omitted or run. The last step, TIMEFREQ has to be run after KMEANS. Additionally, the plotting for each step can only be run if the step is run. For example, PLOTEOF can only be run after EOF is run. In this example, all steps and plotting are turned on.
The third variable, SCRIPT_OUTPUT_BASE gives the location of the output graphics. The next variables, NUM_SEASONS and DAYS_PER_SEASON tell the code how many years of data are being input, and how many days are in each year respectively. The current setup uses data from December, January, and February of each year across 17 years. OBS_WR_VAR and FCST_WR_VAR give the names of the observation and model variables in their files. The following 11 variables control settings to the calculation including the number of weather regimes to classify, the number of clusters to use, and the frequency to use in the TIMEFREQ step. Finally, the last variables control output, including the format of the file listing the weather regime classification for each day and settings for the various plots created.
The information to run the Weather Regime calculation is given in the [script_wr] section. The variables give the frequency of the run time, location of the model and observation input 500mb height data, the input template labels, which shouldn’t be changed and then the actual command that is run. Here, the command calls the Weather Regime driver script. The last two sections [sanal_wrclass] and [sanal_wrfreq] contain the settings for running Stat-Analysis on the output weather regime classification and time frequency. These runs will not work if the KMEANS and TIMEFREQ steps are not run on both model and observation data. They produce multi category contingency table statistics on the weather regime classification and continuous statistics on the time frequency.
Run METplus for the Weather Regime use case:
${METPLUS_BUILD_BASE}/parm/use_cases/model_applications/s2s_mid_lat/UserScript_fcstGFS_obsERA_WeatherRegime.conf \
${METPLUS_TUTORIAL_DIR}/tutorial.conf \
config.OUTPUT_BASE=${METPLUS_TUTORIAL_DIR}/output/met_output/weather_regime
The script should run and if successful, will say:
Check the output:
In the ${METPLUS_TUTORIAL_DIR}/output/met_output/weather_regime directory, you should see three directories (logs, s2s_mid_lat, and tmp) and the METplus configuration file. Inside the s2s_mid_lat directory, there should be another directory, UserScript_fcstGFS_obsERA_WeatherRegime, that contains four files and two directories. The mpr directory contains output matched pair files for the weather regime classification and time frequency. The plots directory contains eight output plots, fcst_elbow.png fcst_eof.png fcst_freq.png fcst_kmeans.png obs_elbow.png obs_eof.png obs_freq.png obs_kmeans.png. Finally, there are two types of text output files. Fcst_weather_regime_class.txt and obs_weather_regime_class.txt contain text output where each day is classified into one of the six weather regime patterns. The other two files, GFS_ERA_WRClass_240000L_MCTS.stat and GFS_ERA_WRClass_240000L_MCTS.stat, contain output from stat analysis comparing the model and observation weather regime classification and time frequencies.