import os
from e3sm_diags.parameter.core_parameter import CoreParameter
from e3sm_diags.run import runner


param = CoreParameter()


# 'mpl' and 'vcs' are for matplotlib or vcs plots respectively.
#run_type= 'model_vs_obs'



multiprocessing = True
num_workers= 32

# Name of folder where all results will be stored.



#param.reference_data_path = '/global/cscratch1/sd/beydoun/default.default.run_without_SPA_meyers_IN.ne30pg2_r0125_oRRS18to6v3/run/climo/rgr'
#param.reference_name = 'default.default.run_without_SPA_meyers_IN.ne30pg2_r0125_oRRS18to6v3'
#param.reference_data_path = '/global/cscratch1/sd/beydoun/default.default.spa_tests_with_PA_and_meyers_spa_optics.ne30pg2_r0125_oRRS18to6v3/run/climo/rgr'
#param.reference_data_path = '/global/cscratch1/sd/beydoun/default.default.spa_tests_with_PA_and_meyers.ne30pg2_r0125_oRRS18to6v3/run/climo/rgr'
#param.reference_name = 'default.default.spa_tests_with_PA_and_meyers_new_aero_files_full_repeat.ne30pg2_r0125_oRRS18to6v3'
#param.ref_name ='default.default.F2010_p3_rrtmgp_cooper.ne30pg2_oECv3'
#param.ref_name = 'default.default.F2010_spa_optics_and_ccn.ne30pg2_oECv3'
param.ref_name = 'default.default.F2010_p3_rrtmgp_cooper_redo_without_d1.ne30pg2_oECv3'
param.ref_name = 'default.default.v2_F1850.ne30pg2_oECv3'
#param.ref_name = 'default.default.F2010_spa_optics_and_ccn_with_S_dependence_and_d1.ne30pg2_oECv3'
param.reference_data_path = '/global/cscratch1/sd/beydoun/'+param.ref_name+'/run/climo/rgr'
#param.reference_name = 'default.default.spa_tests_with_PA_and_meyers_spa_optics.ne30pg2_r0125_oRRS18to6v3'
#param.reference_name = 'default.default.spa_tests_with_PA_and_meyers.ne30pg2_r0125_oRRS18to6v3'
param.short_ref_name = 'control'
param.diff_title ='control vs PD aerosol'
#param.test_data_path = '/global/cscratch1/sd/beydoun/default.default.run_with_SPA_fix_ncincloud_full.ne30pg2_r0125_oRRS18to6v3/run/climo/rgr'
#param.test_name = 'default.default.run_with_SPA_fix_ncincloud_full.ne30pg2_r0125_oRRS18to6v3'
#param.test_name = 'default.default.run_with_SPA_fix_ncincloud_verify_full.ne30pg2_r0125_oRRS18to6v3'
#param.test_name = 'default.default.F2010_spa_optics_and_ccn_with_S_dependence.ne30pg2_oECv3'
#param.test_name = 'default.default.F2010_pi_spa.ne30pg2_oECv3'
param.test_name = 'default.default.v2_F1850_PD_aerosol.ne30pg2_oECv3'
param.test_data_path = '/global/cscratch1/sd/beydoun/'+param.test_name+'/run/climo/rgr'
param.short_test_name = 'PD aerosol'

param.seasons = ["ANN","DJF","JJA","MAM","SON"]

param.run_type = 'model_vs_model'
param.backend = 'mpl'


#prefix = '/global/cfs/cdirs/e3sm/www/terai/E3SMv2_P3v4_tuned/'
prefix = '/global/cfs/cdirs/e3sm/www/beydoun'
param.results_dir = os.path.join(prefix, 'control1850_vs_PD_aerosol')
#prefix = '/var/www/acme/acme-diags/zhang40/tests/'
#param.results_dir = os.path.join(prefix, 'lat_lon_demo')
param.multiprocessing = True
param.num_workers = 32
#use below to run all core sets of diags:
#runner.sets_to_run = ['lat_lon','zonal_mean_xy', 'zonal_mean_2d', 'polar', 'cosp_histogram', 'meridional_mean_2d']
runner.sets_to_run = ['lat_lon','zonal_mean_xy', 'zonal_mean_2d', 'polar', 'meridional_mean_2d']
#runner.sets_to_run = ['lat_lon']
runner.run_diags([param])
