#For compy machine_path_prefix = '/compyfs/e3sm_diags_data/' #For cori #machine_path_prefix = '/global/project/projectdirs/acme/acme_diags' param.reference_data_path = os.path.join(machine_path_prefix, 'obs_for_e3sm_diags/time-series/') param.test_data_path = os.path.join( machine_path_prefix, 'test_model_data_for_acme_diags/time-series/E3SM_v1/') param.test_name = 'e3sm_v1' param.output_format = ['png', 'pdf', 'svg'] #prefix = '/compyfs/www/zhan429/examples/' prefix = '/compyfs/www/zhan429/tests/' param.results_dir = os.path.join(prefix, 'area_mean_with_obs') #param.multiprocessing = True #param.num_workers = 40 # We're passing in this new object as well, in # addtion to the CoreParameter object. ts_param = AreaMeanTimeSeriesParameter() #ts_param.ref_names = ['none'] #This setting plot model data only ts_param.start_yr = '2002' ts_param.end_yr = '2008' runner.sets_to_run = ['area_mean_time_series'] runner.run_diags([param, ts_param])
#For cori #machine_path_prefix = '/global/project/projectdirs/acme/acme_diags' param.test_data_path = os.path.join( machine_path_prefix, 'test_model_data_for_acme_diags/time-series/E3SM_v1_historical_r1/') #param.reference_data_path = os.path.join(machine_path_prefix, 'obs_for_e3sm_diags/time-series/') param.reference_data_path = os.path.join( machine_path_prefix, 'test_model_data_for_acme_diags/time-series/') param.test_name = 'e3sm_v1' param.rune_type = 'model-vs-model' prefix = '/compyfs/www/zhan429/examples/' param.results_dir = os.path.join(prefix, 'area_mean_with_models') param.multiprocessing = True param.num_workers = 40 # We're passing in this new object as well, in # addtion to the CoreParameter object. ts_param = AreaMeanTimeSeriesParameter() ts_param.ref_names = [ 'E3SM_v1_historical_r2', 'E3SM_v1_historical_r3', 'E3SM_v1_historical_r4', 'E3SM_v1_historical_r5' ] #This setting plot model data only ts_param.start_yr = '1850' ts_param.end_yr = '2014' runner.sets_to_run = ['area_mean_time_series'] runner.run_diags([param, ts_param])
# Running the software with the API: # python all_sets.py -d all_sets.py from acme_diags.parameter.area_mean_time_series_parameter import ( AreaMeanTimeSeriesParameter, ) from acme_diags.parameter.core_parameter import CoreParameter from acme_diags.parameter.enso_diags_parameter import EnsoDiagsParameter from acme_diags.parameter.meridional_mean_2d_parameter import MeridionalMean2dParameter from acme_diags.parameter.zonal_mean_2d_parameter import ZonalMean2dParameter from acme_diags.run import Run run_object = Run() param = CoreParameter() ts_param = AreaMeanTimeSeriesParameter() m2d_param = MeridionalMean2dParameter() m2d_param.plevs = [ 200.0, 500.0, ] z2d_param = ZonalMean2dParameter() z2d_param.plevs = [ 200.0, 300.0, ] enso_param = EnsoDiagsParameter() enso_param.test_name = "e3sm_v1" run_object.run_diags([param, ts_param, m2d_param, z2d_param, enso_param])
#machine_path_prefix = '/global/project/projectdirs/acme/acme_diags' #for acme1 machine_path_prefix = '/p/user_pub/e3sm/e3sm_diags_data/' #param.reference_data_path = os.path.join(machine_path_prefix, 'obs_for_e3sm_diags/time-series/') #param.test_data_path = os.path.join(machine_path_prefix, 'test_model_data_for_acme_diags/time-series/CESM1-CAM5_cmip/') param.reference_data_path = '/p/user_pub/e3sm/zhang40/e3sm_cmip6_xmls/v1_water_cycle/abrupt-4xCO2/' param.test_data_path = '/p/user_pub/e3sm/zhang40/e3sm_cmip6_xmls/v1_water_cycle/piControl/r1i1p1f1' param.test_name = 'e3sm_v1_piControl' #For compy #prefix = '/compyfs/www/zhan429/doc_examples/' #For cori #prefix = '/global/project/projectdirs/acme/www/zhang40/' #For acme1 #prefix = '/var/www/acme/acme-diags/zhang40/tests/' #param.results_dir = os.path.join(prefix, 'area_mean_picontrol_r1') param.multiprocessing = True param.num_workers = 25 # We're passing in this new object as well, in # addition to the CoreParameter object. ts_param = AreaMeanTimeSeriesParameter() ts_param.ref_names = [] #This setting plot model data only ts_param.start_yr = '0001' ts_param.end_yr = '0500' runner.sets_to_run = ['area_mean_time_series'] runner.run_diags([param, ts_param])
enso_param.test_data_path = os.path.join( data_prefix, "test_model_data_for_acme_diags/time-series/E3SM_v1/") enso_param.test_name = "e3sm_v1" enso_param.start_yr = "1990" enso_param.end_yr = "1999" qbo_param = QboParameter() qbo_param.reference_data_path = os.path.join( data_prefix, "obs_for_e3sm_diags/time-series/") qbo_param.test_data_path = os.path.join( data_prefix, "test_model_data_for_acme_diags/time-series/E3SM_v1/") qbo_param.test_name = "e3sm_v1" qbo_param.start_yr = "1990" qbo_param.end_yr = "1999" ts_param = AreaMeanTimeSeriesParameter() ts_param.reference_data_path = os.path.join(data_prefix, "obs_for_e3sm_diags/time-series/") ts_param.test_data_path = os.path.join( data_prefix, "test_model_data_for_acme_diags/time-series/E3SM_v1/") ts_param.test_name = "e3sm_v1" ts_param.start_yr = "1990" ts_param.end_yr = "1999" runner.sets_to_run = [ "lat_lon", "zonal_mean_xy", "zonal_mean_2d", "polar", "cosp_histogram", "meridional_mean_2d",
#machine_path_prefix = '/global/project/projectdirs/acme/acme_diags' #for acme1 machine_path_prefix = '/p/user_pub/e3sm/e3sm_diags_data/' param.reference_data_path = os.path.join(machine_path_prefix, 'obs_for_e3sm_diags/time-series/') #param.test_data_path = os.path.join(machine_path_prefix, 'test_model_data_for_acme_diags/time-series/CESM1-CAM5_cmip/') param.test_data_path = '/p/user_pub/e3sm/zhang40/e3sm_cmip6_xmls/v1_water_cycle/historical/r1i1p1f1' param.test_name = 'e3sm_v1_hist_r1' #For compy #prefix = '/compyfs/www/zhan429/doc_examples/' #For cori #prefix = '/global/project/projectdirs/acme/www/zhang40/' #For acme1 prefix = '/var/www/acme/acme-diags/zhang40/tests/' param.results_dir = os.path.join(prefix, 'area_mean_with_no_obs_hist_r1') param.multiprocessing = True param.num_workers = 50 # We're passing in this new object as well, in # addition to the CoreParameter object. ts_param = AreaMeanTimeSeriesParameter() #ts_param.ref_names = ['none'] #This setting plot model data only ts_param.start_yr = '1850' ts_param.end_yr = '2014' runner.sets_to_run = ['area_mean_time_series'] runner.run_diags([param, ts_param])
"ANN" ] #seasons shouldn't be a parameter for area_mean_time_series, need to investigate while uncomment this line won't work #param.seasons = [] #seasons shouldn't be a parameter for area_mean_time_series, need to investigate while uncomment this line won't work param.test_timeseries_input = True param.test_start_yr = '1998' param.test_end_yr = '2004' param.ref_timeseries_input = True param.ref_start_yr = '1998' param.ref_end_yr = '2004' param.multiprocessing = True param.num_workers = 40 prefix = '/compyfs/www/zhan429/tests' param.results_dir = os.path.join(prefix, 'multiple_sets_2ts') # Set specific parameters for new sets ts_param = AreaMeanTimeSeriesParameter() ts_param.reference_data_path = '/compyfs/e3sm_diags_data/obs_for_e3sm_diags/time-series/' ts_param.test_data_path = '/compyfs/e3sm_diags_data/test_model_data_for_acme_diags/time-series/E3SM_v1/' ts_param.test_name = 'e3sm_v1' #ts_param.ref_names = ['none'] ts_param.start_yr = '1998' ts_param.end_yr = '2008' # We're passing in this new object as well, in # addtion to the CoreParameter object. # runner.sets_to_run = ['lat_lon', 'area_mean_time_series'] # runner.run_diags([param, ts_param]) runner.sets_to_run = ['lat_lon', 'area_mean_time_series'] runner.run_diags([param, ts_param])
dc_param = DiurnalCycleParameter() dc_param.reference_data_path = obs_climo dc_param.test_data_path = dc_climo_path dc_param.test_name = case dc_param.short_test_name = casename # Plotting diurnal cycle amplitude on different scales. Default is True dc_param.normalize_test_amp = False enso_param = EnsoDiagsParameter() enso_param.reference_data_path = obs_ts enso_param.test_data_path = ts_path enso_param.test_name = casename enso_param.start_yr = "1980" enso_param.end_yr = "2014" ts_param = AreaMeanTimeSeriesParameter() ts_param.reference_data_path = obs_ts ts_param.test_data_path = ts_path ts_param.test_name = casename ts_param.start_yr = "1980" ts_param.end_yr = "2014" streamflow_param = StreamflowParameter() streamflow_param.reference_data_path = obs_ts streamflow_param.test_data_path = ts_path streamflow_param.test_start_yr = "1980" streamflow_param.test_end_yr = "2014" # Streamflow gauge station data range from year 1986 to 1995 streamflow_param.ref_start_yr = "1986" streamflow_param.ref_end_yr = "1995" #
def run_all_sets(html_prefix, d): param = CoreParameter() param.reference_data_path = d["obs_climo"] param.test_data_path = d["test_climo"] param.test_name = "20161118.beta0.FC5COSP.ne30_ne30.edison" param.seasons = [ "ANN", "JJA", ] # Default setting: seasons = ["ANN", "DJF", "MAM", "JJA", "SON"] param.results_dir = os.path.join(html_prefix, "v2_4_0_all_sets") param.multiprocessing = True param.num_workers = 30 # Set specific parameters for new sets enso_param = EnsoDiagsParameter() enso_param.reference_data_path = d["obs_ts"] enso_param.test_data_path = d["test_ts"] enso_param.test_name = "e3sm_v1" enso_param.start_yr = "1990" enso_param.end_yr = "1999" qbo_param = QboParameter() qbo_param.reference_data_path = d["obs_ts"] qbo_param.test_data_path = d["test_ts"] qbo_param.test_name = "e3sm_v1" qbo_param.start_yr = "1990" qbo_param.end_yr = "1999" ts_param = AreaMeanTimeSeriesParameter() ts_param.reference_data_path = d["obs_ts"] ts_param.test_data_path = d["test_ts"] ts_param.test_name = "e3sm_v1" ts_param.start_yr = "1990" ts_param.end_yr = "1999" dc_param = DiurnalCycleParameter() dc_param.reference_data_path = d["dc_obs_climo"] dc_param.test_data_path = d["dc_test_climo"] dc_param.test_name = "20180215.DECKv1b_H1.ne30_oEC.edison" dc_param.short_test_name = "DECKv1b_H1.ne30_oEC" # Plotting diurnal cycle amplitude on different scales. Default is True dc_param.normalize_test_amp = False streamflow_param = StreamflowParameter() streamflow_param.reference_data_path = d["streamflow_obs_ts"] streamflow_param.test_data_path = d["streamflow_test_ts"] streamflow_param.test_name = "20180215.DECKv1b_H1.ne30_oEC.edison" streamflow_param.test_start_yr = "1980" streamflow_param.test_end_yr = "2014" # Streamflow gauge station data range from year 1986 to 1995 streamflow_param.ref_start_yr = "1986" streamflow_param.ref_end_yr = "1995" arm_param = ARMDiagsParameter() arm_param.reference_data_path = d["arm_obs"] arm_param.ref_name = "armdiags" arm_param.test_data_path = d["arm_test"] arm_param.test_name = "20210122.F2010.armsites" arm_param.run_type = "model_vs_obs" arm_param.test_start_yr = "0001" arm_param.test_end_yr = "0001" arm_param.ref_start_yr = "0001" arm_param.ref_end_yr = "0001" runner.sets_to_run = [ "lat_lon", "zonal_mean_xy", "zonal_mean_2d", "polar", "cosp_histogram", "meridional_mean_2d", "enso_diags", "qbo", "area_mean_time_series", "diurnal_cycle", "streamflow", "arm_diags", ] runner.run_diags([ param, enso_param, qbo_param, ts_param, dc_param, streamflow_param, arm_param ]) return param.results_dir