From 9383bb0cee75e2791da4d553a1ba7a2014405138 Mon Sep 17 00:00:00 2001 From: "Paul J. Durack" Date: Tue, 13 Jan 2015 15:37:40 -0800 Subject: [PATCH 1/3] Update install_metrics.bash to build VTK/VCS and setup_runtime. shell specific --- install_metrics.bash | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/install_metrics.bash b/install_metrics.bash index e7e509c79..0e74d1ef6 100755 --- a/install_metrics.bash +++ b/install_metrics.bash @@ -13,7 +13,7 @@ num_cpus=4 #### BUILD OPTIONS ##### ## Do we want to build with graphics capabilities -build_graphics=false +build_graphics=true ## Do we want to build with CMOR build_cmor=false @@ -428,7 +428,7 @@ main() { echo "Metrics - ${metrics_checkout} - Install Success" echo "*******************************" echo "Please test as follows:" - echo "source ${install_prefix}/bin/setup_runtime.sh" + echo "source ${install_prefix}/bin/setup_runtime.sh or .csh" echo "python ${metrics_build_directory}/test/test_suite.py" echo "*******************************" echo "Create your customized input_parameters.py (inspire yourself from examples in ${install_prefix}/doc/pcmdi_input_parameters_sample.py" From e119ee9cf8ac36b3549db06eea1a415ab4b52721 Mon Sep 17 00:00:00 2001 From: "Paul J. Durack" Date: Tue, 13 Jan 2015 16:11:16 -0800 Subject: [PATCH 2/3] Updated install_metrics.bash to turn VTK/VCS building back off by default --- install_metrics.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install_metrics.bash b/install_metrics.bash index 0e74d1ef6..e61f48e8d 100755 --- a/install_metrics.bash +++ b/install_metrics.bash @@ -13,7 +13,7 @@ num_cpus=4 #### BUILD OPTIONS ##### ## Do we want to build with graphics capabilities -build_graphics=true +build_graphics=false ## Do we want to build with CMOR build_cmor=false From 6de9d8b53f694f1efc026b5365052353e7f52294 Mon Sep 17 00:00:00 2001 From: "Paul J. Durack" Date: Tue, 13 Jan 2015 16:51:44 -0800 Subject: [PATCH 3/3] Updated all GFDL demo files from 150113_metrics test dir on public1 --- demo/GFDL/createXmlAndNcs.py | 50 +++++++++++++++--------- demo/GFDL/gfdl_input_parameters_test.py | 28 +++++++------ demo/GFDL/portrait-3obs.py | 10 ++--- demo/GFDL/portrait-4seas.py | 8 ++-- demo/GFDL/test_3obsRMS.png | Bin 35064 -> 35066 bytes demo/GFDL/test_4seasRMS.png | Bin 40917 -> 40919 bytes 6 files changed, 55 insertions(+), 41 deletions(-) mode change 100755 => 100644 demo/GFDL/portrait-4seas.py diff --git a/demo/GFDL/createXmlAndNcs.py b/demo/GFDL/createXmlAndNcs.py index 8e4266e55..87a2e05f6 100755 --- a/demo/GFDL/createXmlAndNcs.py +++ b/demo/GFDL/createXmlAndNcs.py @@ -1,4 +1,4 @@ -#!/home/p1d/140922_metrics/PCMDI_METRICS/bin/python +#!/home/p1d/150113_metrics/PCMDI_METRICS/bin/python """ Created on Tue Jan 28 14:07:12 2014 @@ -26,6 +26,10 @@ PJD 2 Sep 2014 - Updated to latest build (UV-CDAT v2.0 beta default/metrics devel branch) PJD 22 Sep 2014 - Updated to latest build (including VCS/portraits) PJD 24 Sep 2014 - Updated to include GFDL-CM4 data +PJD 11 Dec 2014 - Updated to latest build (including jsons) +PJD 31 Dec 2014 - Updated to latest build (jsons, and test cases) +PJD 7 Jan 2015 - Added sftlf creation +PJD 13 Jan 2015 - Updated to latest build @author: durack1 """ @@ -45,44 +49,52 @@ #cdm.setAutoBounds(1) ; # Use with caution # Set build info once -buildDate = '140922' +buildDate = '150113' # Create input variable lists uvcdatInstall = ''.join(['/home/p1d/',buildDate,'_metrics/PCMDI_METRICS/bin/']) data = [ - ['ocean','GFDL-ESM2G','*0001-0100*','/archive/esm2g/fre/postriga_esm_20110506/ESM2G/ESM2G_pi-control_C2/gfdl.default-prod/pp/ocean_z/av/monthly_100yr/'], - ['ocean','GFDL-CM4','*0001-0005*','/archive/jpk/mdt/20140829/tikal_201403_awgUpdates_mom6_2014.08.29/CM4i_c96L48_am4a1r1_1860forc/gfdl.ncrc2-default-prod-openmp/pp/ocean_z/av/monthly_5yr/'], - ['atmos','GFDL-ESM2G','*0001-0100*','/archive/esm2g/fre/postriga_esm_20110506/ESM2G/ESM2G_pi-control_C2/gfdl.default-prod/pp/atmos/av/monthly_100yr/'], - ['atmos','GFDL-CM4','*0001-0005*','/archive/jpk/mdt/20140829/tikal_201403_awgUpdates_mom6_2014.08.29/CM4i_c96L48_am4a1r1_1860forc/gfdl.ncrc2-default-prod-openmp/pp/atmos/av/monthly_5yr/'] + ['ocean','GFDL-ESM2G','experiment','*0001-0100*','/archive/esm2g/fre/postriga_esm_20110506/ESM2G/ESM2G_pi-control_C2/gfdl.default-prod/pp/ocean_z/av/monthly_100yr/'], + ['ocean','GFDL-CM4','experiment','*0001-0005*','/archive/jpk/mdt/20140829/tikal_201403_awgUpdates_mom6_2014.08.29/CM4i_c96L48_am4a1r1_1860forc/gfdl.ncrc2-default-prod-openmp/pp/ocean_z/av/monthly_5yr/'], + ['atmos','GFDL-ESM2G','experiment','*0001-0100*','/archive/esm2g/fre/postriga_esm_20110506/ESM2G/ESM2G_pi-control_C2/gfdl.default-prod/pp/atmos/av/monthly_100yr/'], + ['atmos','GFDL-CM4','experiment','*0001-0005*','/archive/jpk/mdt/20140829/tikal_201403_awgUpdates_mom6_2014.08.29/CM4i_c96L48_am4a1r1_1860forc/gfdl.ncrc2-default-prod-openmp/pp/atmos/av/monthly_5yr/'], + ['fx','GFDL-ESM2G','experiment','*0001-0100*','/archive/esm2g/fre/postriga_esm_20110506/ESM2G/ESM2G_pi-control_C2/gfdl.default-prod/pp/atmos/'], + ['fx','GFDL-CM4','experiment','*0001-0005*','/archive/Charles.Seman/tikal_201409_awgUpdates_mom6_2014.08.29/CM4_c96L48_am4b2r1_2000climo/gfdl.ncrc2-intel-prod-openmp/pp/atmos/'] ] -inVars = [['temp'],['hght','olr','olr_clr','precip','slp','swup_toa','swup_toa_clr','t_ref','temp','u_ref','ucomp','v_ref','vcomp']] -outVars = [['tos'],['zg','rlut','rlutcs','pr','psl','rsut','rsutcs','tas','ta','uas','ua','vas','va']] +inVars = [['temp'],['hght','olr','olr_clr','precip','slp','swup_toa','swup_toa_clr','t_ref','temp','u_ref','ucomp','v_ref','vcomp'],['land_mask']] +outVars = [['tos'],['zg','rlut','rlutcs','pr','psl','rsut','rsutcs','tas','ta','uas','ua','vas','va'],['sftlf']] for count1,realm in enumerate(data): realmId = realm[0] modelId = realm[1] - timeAve = realm[2] - dataPath = realm[3] + experimentId = realm[2] + timeAve = realm[3] + dataPath = realm[4] #print realmId,modelId,dataPath - # Create input xml file - command = "".join([uvcdatInstall,'cdscan -x test_',modelId,'_',realmId,'.xml ',dataPath,timeAve,'.nc']) + # Create input xml file conditional on realm + if realmId == 'fx': + command = "".join([uvcdatInstall,'cdscan -x test_',modelId,'_',experimentId,'_',realmId,'.xml ',dataPath,'atmos.static.nc']) + else: + command = "".join([uvcdatInstall,'cdscan -x test_',modelId,'_',experimentId,'_',realmId,'.xml ',dataPath,timeAve,'.nc']) #print command fnull = open(os.devnull,'w') ; # Create dummy to write stdout output p = subprocess.call(command,stdout=fnull,shell=True) fnull.close() ; # Close dummy - print 'XML spanning file created for model/realm:',modelId,realmId + print 'XML spanning file created for model/experiment/realm:',modelId,experimentId,realmId #sys.exit() # Open xml file to read - infile = ''.join(['test_',modelId,'_',realmId,'.xml']) + infile = ''.join(['test_',modelId,'_',experimentId,'_',realmId,'.xml']) #print infile fIn = cdm.open(infile) # Deal with variables - if count1<2: + if count1 < 2: realmIndex = 0 - else: + elif count1 < 4: realmIndex = 1 + else: + realmIndex = 2 inVarList = inVars[realmIndex] outVarList = outVars[realmIndex] @@ -94,13 +106,15 @@ #print varRead,varWrite if realmId == 'atmos': tableId = 'Amon' + elif realmId == 'fx': + tableId = 'fx' else: tableId = 'Omon' data = fIn(varRead) data.id = varWrite print "".join(['** Writing variable: ',varRead,' to ',varWrite,' **']) #outfile = ".".join(['cmip5.GFDL-ESM2G.piControl.r1i1p1.mo',tableId,varWrite,'ver-1.latestX.000101-010012.AC.nc']) - outfile = "_".join([varWrite,modelId,tableId,'historical_r1i1p1_01-12-clim.nc']) + outfile = "_".join([varWrite,modelId,experimentId,tableId,'r1i1p1_01-12-clim.nc']) print "".join(['** Writing file: ',outfile]) if os.path.isfile(outfile): os.remove(outfile) ; # purge existing file @@ -120,5 +134,5 @@ fIn.close() # Execute shell command -# source /home/p1d/140922_metrics/PCMDI_METRICS/bin/setup_runtime.csh +# source /home/p1d/150113_metrics/PCMDI_METRICS/bin/setup_runtime.csh # > pcmdi_metrics_driver.py -p gfdl_input_parameters_test.py diff --git a/demo/GFDL/gfdl_input_parameters_test.py b/demo/GFDL/gfdl_input_parameters_test.py index 40f892c63..d2828f70e 100644 --- a/demo/GFDL/gfdl_input_parameters_test.py +++ b/demo/GFDL/gfdl_input_parameters_test.py @@ -1,6 +1,6 @@ import getpass -buildDate = '140922' ; # Must be set to allow correct metrics install to be picked up +buildDate = '150113' ; # Must be set to allow correct metrics install to be picked up ################################################################################ # OPTIONS ARE SET BY USER IN THIS FILE AS INDICATED BELOW BY: @@ -14,13 +14,17 @@ model_versions = ['GFDL-CM4','GFDL-ESM2G',] ### VARIABLES AND OBSERVATIONS TO USE -vars = ['pr','tos'] -#vars = ['pr','tas','rlut','rsut','hus_850'] -#vars = ['ta_850','ta_200','ua_850','ua_200','va_850','va_200','zg_500','rlut','rsut','rlutcs','rsutcs','tas'] -#vars = ['pr','psl','rlut','rlutcs','rsut','rsutcs','ta_200','ta_850','tas','tauu','tauv','ua_200','ua_850','va_200','va_850','vas','zg_500'] +# Variable acronyms are described in the CMIP5 standard output document - http://cmip-pcmdi.llnl.gov/cmip5/docs/standard_output.pdf +#vars = ['pr','psl','rlut','rlutcs','rsut','rsutcs','ta_200','ta_850','tas','ua_200','ua_850','va_200','va_850','zg_500'] ; # GFDL atmos test suite +#vars = ['clt','hfss','pr','prw','psl','rlut','rlutcs','rsdt','rsut','rsutcs','tas','tauu','tauv','ts','uas','vas'] ; # 2d atmos variables +#vars = ['hur','hus','huss','ta','ua','va','zg'] ; # 3d atmos variables +#vars = ['hus_850','ta_850','ta_200','ua_850','ua_200','va_850','va_200','zg_500'] ; # 3d atmos variables - example heights +#vars = ['sos','tos','zos'] ; # 2d ocean variables +#vars = ['rlwcrf','rswcrf'] ; # Non-standard CMIP5 variables (available from obs output) +vars = ['tos','zg_500','rlut','rlutcs','pr','psl','rsut','rsutcs','tas','ta_850','uas','ua_200','ua_850','vas','va_200','va_850'] ; # Full GFDL test suite -# Observations to use at the moment "default" or "alternate" -ref = 'default' #'all' +# Observations to use "default", "alternate" or "all" or a specific obs reference e.g. "ref3" +ref = 'all' ; # 'default' ; 'all' ; # Selecting 'default' uses a single obs dataset, 'all' processes against all available datasets ext = '.nc' ; # '.xml' # INTERPOLATION OPTIONS @@ -40,8 +44,8 @@ ## DATA LOCATION: MODELS, OBS AND METRICS OUTPUT ## Templates for climatology files -## TEMPLATE EXAMPLE: cmip5.GFDL-ESM2G.historical.r1i1p1.mo.atm.Amon.rlut.ver-1.1980-1999.AC.nc -filename_template = "%(variable)_%(model_version)_%(table)_historical_%(realization)_%(period)-clim.nc" +## TEMPLATE EXAMPLE: tas_GFDL-ESM2G_experiment_Amon_r1i1p1_198001-199912-clim.nc +filename_template = "%(variable)_%(model_version)_experiment_%(table)_%(realization)_%(period)-clim.nc" ## dictionary for custom %(keyword) designed by user # Driver will match each key to its value defined by a variable name OR all if variable name is not present, OR "" if "all" is not defined @@ -54,9 +58,9 @@ ## ROOT PATH FOR OBSERVATIONS #obs_data_path = '/home/p1d/obs/' obs_data_path = ''.join(['/home/',getpass.getuser(),'/obs/']) -## DIRECTORY WHERE TO PUT RESULTS +## DIRECTORY WHERE TO PUT RESULTS - case_id will be appended to this path metrics_output_path = './metrics_output_path' -## DIRECTORY WHERE TO PUT INTERPOLATED MODELS' CLIMATOLOGIES +## DIRECTORY WHERE TO PUT INTERPOLATED MODELS' CLIMATOLOGIES - case_id will be appended to this path model_clims_interpolated_output = './metrics_output_path/Interpolation_Output' ## FILENAME FOR INTERPOLATED CLIMATOLOGIES OUTPUT -filename_output_template = "%(model_version).historical.r1i1p1.mo.%(table_realm).%(variable)%(level).ver-1.%(period).interpolated.%(regridMethod).%(targetGridName).AC%(ext)" +filename_output_template = "%(model_version)_experiment_%(table)_%(realization)_%(variable)%(level)_%(period)_interpolated_%(regridMethod)_%(targetGridName)-AC%(ext)" diff --git a/demo/GFDL/portrait-3obs.py b/demo/GFDL/portrait-3obs.py index 94b8482c6..523ae465d 100644 --- a/demo/GFDL/portrait-3obs.py +++ b/demo/GFDL/portrait-3obs.py @@ -14,8 +14,8 @@ except: raise RuntimeError("Sorry your python is not build with VCS support and cannot generate portrait plots") -# PATH WHERE METRICS RESULTS FOR GFDL SIT -gfdl_pth="/work/durack1/Shared/140808_metrics-gfdl/metrics_output_path/sampletest" +# GFDL PATH FOR METRICS RESULTS +gfdl_pth = "./metrics_output_path/sampletest" # STANDARD PYTHON MODULES import glob,json,os,sys @@ -23,7 +23,6 @@ # CDAT MODULES import pcmdi_metrics.graphics.portraits import MV2 -from genutil import statistics # CREATE VCS OBJECT AS A PORTAIT PLOT AND LOAD PLOT SETTINGS FOR TEST CASE x=vcs.init() @@ -69,8 +68,7 @@ # CMIP5 METRICS RESULTS - CURRENTLY USING FOR CONTROL SIMULATIONS json_files = glob.glob(os.path.join(sys.prefix,"share","CMIP_metrics_results","CMIP5","piControl","*.json")) -# ADD GFDL JSON FILES... -# This is pretty hard coded might want to consider more magic +# ADD GFDL JSON FILES... This is hard coded might want to consider more magic json_files += glob.glob(os.path.join(gfdl_pth,'*.json')) # CONSTRUCT PYTHON DICTIONARY WITH RESULTS METRICS USED IN PORTRAIT @@ -96,8 +94,8 @@ # ORGANIZE METRICS INTO A VARIABLES X MODELS MATRIX out1_rel,out2_rel,out3_rel = [np.ma.masked_all((len(vars),len(mods)),np.float32) for _ in range(3)] ; # Define arrays to fill +# LOOP OVER VARIABLE for vn, var in enumerate(vars): - # LOOP OVER VARIABLE # LOOP OVER MODEL for mn,mod in enumerate(mods): try: diff --git a/demo/GFDL/portrait-4seas.py b/demo/GFDL/portrait-4seas.py old mode 100755 new mode 100644 index 3c6bf0709..3da4104b1 --- a/demo/GFDL/portrait-4seas.py +++ b/demo/GFDL/portrait-4seas.py @@ -14,8 +14,8 @@ except: raise RuntimeError("Sorry your python is not build with VCS support and cannot generate portrait plots") -# PATH WHERE METRICS RESULTS FOR GFDL SIT -gfdl_pth="/work/durack1/Shared/140808_metrics-gfdl/metrics_output_path/sampletest" +# GFDL PATH FOR METRICS RESULTS +gfdl_pth = "./metrics_output_path/sampletest" # STANDARD PYTHON MODULES import glob,json,os,sys @@ -23,7 +23,6 @@ # CDAT MODULES import pcmdi_metrics.graphics.portraits import MV2 -from genutil import statistics # CREATE VCS OBJECT AS A PORTAIT PLOT AND LOAD PLOT SETTINGS FOR TEST CASE x=vcs.init() @@ -96,10 +95,9 @@ # ORGANIZE METRICS INTO A VARIABLES X MODELS MATRIX out1_rel,out2_rel,out3_rel,out4_rel = [np.ma.masked_all((len(vars),len(mods)),np.float32) for _ in range(4)] ; # Define arrays to fill +# LOOP OVER VARIABLE for vn, var in enumerate(vars): - # LOOP OVER VARIABLE vals1,vals2,vals3,vals4 = [[] for _ in range(4)] - # LOOP OVER MODEL for mn,mod in enumerate(mods): try: diff --git a/demo/GFDL/test_3obsRMS.png b/demo/GFDL/test_3obsRMS.png index a37a51bbf41316b3e20e33f23f7c91e86e24604e..a0579397cd5ad2a59728d108298587f5e8dc10cf 100644 GIT binary patch delta 13026 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 delta 13597 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 JBx&mRKLC