diff --git a/.travis.yml b/.travis.yml index 3eda883e39..3bc4b45cbb 100644 --- a/.travis.yml +++ b/.travis.yml @@ -10,7 +10,5 @@ branches: - develop script: -# do nothing -cd ../ -python METplus/internal_tests/stand_alone/test_produtil_for_metplus.py -c METplus/internal_tests/stand_alone/produtil_for_METplus.conf + - pytest ./METplus/internal_tests/pytests/produtil/regress_test_produtil.py ./METplus/internal_tests/pytests/produtil/produtil_test.conf diff --git a/internal_tests/test_point_stat_wrapper.py b/internal_tests/test_point_stat_wrapper.py deleted file mode 100755 index 6c7acf6ad4..0000000000 --- a/internal_tests/test_point_stat_wrapper.py +++ /dev/null @@ -1,35 +0,0 @@ -#!/usr/bin/env python - -from __future__ import print_function - -import unittest -import os -import config_metplus -from tc_pairs_wrapper import TcPairsWrapper -import csv -import re -import shutil -import met_util as util -import produtil.setup -import sys - -# -# These are tests (not necessarily unit tests) for test-driven design for the -# MET Point-Stat Wrapper, PointStatWrapper.py -# - - -class TestPointStatWrapper(unittest.TestCase): - def __init__(self, *args): - pass - - def setUp(self): - pass - - def test_read_use_case_config(self): - self.assertFalse() - - -if __name__ == "__main__": - #unittest.main(exit=False) - unittest.main() diff --git a/parm/use_cases/hwt/grid2grid_hwt_env.conf b/parm/use_cases/hwt/grid2grid_hwt_env.conf new file mode 100644 index 0000000000..4e575d0111 --- /dev/null +++ b/parm/use_cases/hwt/grid2grid_hwt_env.conf @@ -0,0 +1,57 @@ +# HREF Mean vs. StageIV Gempak Configurations + +[config] +LOOP_BY_INIT = false +# Format of VALID_BEG and VALID_END +VALID_TIME_FMT = %Y%m%d%H +# Start time for MET+ run +VALID_BEG = 2018040500 +# End time for MET+ run +VALID_END = 2018040506 +# Increment between MET+ runs in seconds. Must be > 60 +VALID_INC = 3600 + +# TODO: Add -- see Minna's description in another file +LOOP_METHOD = times +# List of applications to run +PROCESS_LIST = GridStat + +# list of variables to compare +FCST_VAR1_NAME = {ENV[FCST_VAR_IN]} +FCST_VAR1_LEVELS = {ENV[FCST_LVL_IN]} + +# list of forecast leads to process +LEAD_SEQ = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23 + +MODEL_TYPE = {ENV[MODEL_TYPE_IN]} +OB_TYPE = {ENV[OB_TYPE_IN]} + +GRID_STAT_CONFIG = /home/christina.kalb/METplus/parm/met_config/GridStatConfig_hwt +GRID_STAT_OUT_DIR = {ENV[OUT_DIR_IN]} + +# HRRRe Model Options: +FCST_GRID_STAT_INPUT_DIR = {ENV[FCST_INPUT_DIR_IN]} + +FCST_REFC_0_THRESH = 25, 30, 35, 40, 45, 50 +#FCST_APCP_level_THRESH = 0.25, 0.5, 1, 2 +#FCST_MXUPHL_level_THRESH = 50, 75, 100, 125 + +FCST_NATIVE_DATA_TYPE = GRIB2 +FCST_MAX_FORECAST = {ENV[FCST_MAX_FCST_IN]} +FCST_INIT_INTERVAL = 1 +FCST_IS_PROB = false + +# MRMS REFC Observation Data Parameters +OBS_NATIVE_DATA_TYPE = GRIB2 +OBS_GRID_STAT_INPUT_DIR = {ENV[OBS_INPUT_DIR]} + +OBS_REFC_0_THRESH = 25, 30, 35, 40, 45, 50 +#OBS_APCP_level_THRESH = 0.25, 0.5, 1, 2 +#OBS_MXUPHL_level_THRESH = 50, 75, 100, 125 + +[filename_templates] +# HRRRe +FCST_GRID_STAT_INPUT_TEMPLATE = {ENV[FCST_INPUT_TEMPLATE_IN]} + +# MRMS REFC +OBS_GRID_STAT_INPUT_TEMPLATE = {ENV[OBS_INPUT_TEMPLATE_IN]} diff --git a/parm/use_cases/hwt/run_metplus_hwt.py b/parm/use_cases/hwt/run_metplus_hwt.py new file mode 100644 index 0000000000..71ef4f9b5d --- /dev/null +++ b/parm/use_cases/hwt/run_metplus_hwt.py @@ -0,0 +1,19 @@ +#!/usr/bin/env python + +import os + +os.environ["FCST_INPUT_DIR_IN"] = "/raid/efp/se2018/ftp/gsd" +os.environ["OBS_INPUT_DIR_IN"] = "/raid/efp/se2018/ftp/gsd" + +os.environ["FCST_INPUT_TEMPLATE_IN"] = "{init?fmt=%Y%m%d%H}/hrrre01_{init?fmt=%Y%m%d%H}f{lead?fmt=%HHH}.grib2" +os.environ["OBS_INPUT_TEMPLATE_IN"] = "{valid?fmt=%m}/{valid?fmt=%d}/hrrre01_{valid?fmt=%Y%m%d%H}f000.grib2" + +os.environ["MODEL_TYPE_IN"] = "HRRRe01" +os.environ["OB_TYPE_IN"] = "MRMS" + +os.environ["FCST_VAR_IN"] = "REFC" +os.environ["FCST_LVL_IN"] = "L0" + +os.environ["FCST_MAX_FCST_IN"] = "48" + +os.environ["OUT_DIR_IN"] = "/home/christina.kalb/metout" diff --git a/requirements.txt b/requirements.txt index a736c502e1..da55f8e938 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,52 +1,24 @@ -asn1crypto==0.24.0 -astroid==1.6.3 +asn1crypto==0.22.0 attrs==17.4.0 -backports-abc==0.5 -backports.functools-lru-cache==1.5 -certifi==2018.1.18 -cffi==1.11.5 +certifi==2017.7.27.1 +cffi==1.10.0 chardet==3.0.4 -configparser==3.5.0 -cryptography==2.2.1 -cycler==0.10.0 +cryptography==2.0.3 enum34==1.1.6 funcsigs==1.0.2 -functools32==3.2.3.post2 -futures==3.2.0 idna==2.6 ipaddress==1.0.18 -isort==4.3.4 -kiwisolver==1.0.1 -lazy-object-proxy==1.3.1 -lxml==4.2.1 -matplotlib==2.2.2 -mccabe==0.6.1 more-itertools==4.1.0 -numpy==1.14.2 -olefile==0.45.1 -OWSLib==0.16.0 -Pillow==5.1.0 pluggy==0.6.0 -py==1.5.3 -pycodestyle==2.3.1 +py==1.5.2 +pycosat==0.6.3 pycparser==2.18 -pyepsg==0.3.2 -pylint==1.8.4 -pyOpenSSL==17.5.0 -pyparsing==2.2.0 -pyproj==1.9.5.1 -pyshp==1.2.12 -PySocks==1.6.8 +pyOpenSSL==17.2.0 +PySocks==1.6.7 pytest==3.5.0 pytest-regtest==1.0.14 -python-dateutil==2.7.2 -pytz==2018.3 requests==2.18.4 -scipy==1.0.1 -Shapely==1.6.4.post1 -singledispatch==3.4.0.3 -six==1.11.0 -subprocess32==3.2.7 -tornado==5.0.2 +ruamel-yaml==0.11.14 +six==1.10.0 urllib3==1.22 -wrapt==1.10.11 +scipy==0.17.0