Skip to content

Commit df76ba1

Browse files
for PR664 comments NOAA-EMC#1
1 parent 33fff24 commit df76ba1

File tree

1 file changed

+0
-224
lines changed

1 file changed

+0
-224
lines changed

ush/global_ens/global_ens_chem_plots.py

-224
Original file line numberDiff line numberDiff line change
@@ -600,230 +600,6 @@
600600
+f"{job_COMOUT_image_name}")
601601
gda_util.copy_file(job_work_image_name,
602602
job_COMOUT_image_name)
603-
elif plot == 'lead_by_date':
604-
import global_ens_chem_plots_lead_by_date as gdap_lbd
605-
for lbd_info in list(itertools.product(valid_hrs, var_info)):
606-
date_info_dict['valid_hr_start'] = str(lbd_info[0])
607-
date_info_dict['valid_hr_end'] = str(lbd_info[0])
608-
date_info_dict['valid_hr_inc'] = '24'
609-
date_info_dict['forecast_hours'] = fhrs
610-
plot_info_dict['fcst_var_name'] = lbd_info[1][0][0]
611-
plot_info_dict['fcst_var_level'] = lbd_info[1][0][1]
612-
plot_info_dict['fcst_var_thresh'] = lbd_info[1][0][2]
613-
plot_info_dict['obs_var_name'] = lbd_info[1][1][0]
614-
plot_info_dict['obs_var_level'] = lbd_info[1][1][1]
615-
plot_info_dict['obs_var_thresh'] = lbd_info[1][1][2]
616-
job_work_image_name = plot_specs.get_savefig_name(
617-
job_work_dir, plot_info_dict, date_info_dict
618-
)
619-
job_COMOUT_image_name = job_work_image_name.replace(
620-
job_work_dir, job_COMOUT_dir
621-
)
622-
job_DATA_image_name = job_work_image_name.replace(
623-
job_work_dir, job_DATA_dir
624-
)
625-
if SENDCOM == 'YES':
626-
check_job_image_name = job_COMOUT_image_name
627-
job_input_dir = job_COMOUT_dir
628-
else:
629-
check_job_image_name = job_DATA_image_name
630-
job_input_dir = job_DATA_dir
631-
if not os.path.exists(job_work_image_name) \
632-
and plot_info_dict['stat'] != 'FBAR_OBAR':
633-
if len(date_info_dict['forecast_hours']) <= 1:
634-
logger.warning("No span of forecast hours to plot, "
635-
+"given 1 forecast hour, skipping "
636-
+"lead_by_date plots")
637-
make_lbd = False
638-
else:
639-
make_lbd = True
640-
else:
641-
make_lbd = False
642-
if make_lbd:
643-
plot_lbd = gdap_lbd.LeadByDate(logger, job_input_dir+'/..',
644-
job_work_dir, model_info_dict,
645-
date_info_dict, plot_info_dict,
646-
met_info_dict, logo_dir)
647-
plot_lbd.make_lead_by_date()
648-
if SENDCOM == 'YES' and os.path.exists(job_work_image_name):
649-
logger.info(f"Copying {job_work_image_name} to "
650-
+f"{job_COMOUT_image_name}")
651-
gda_util.copy_file(job_work_image_name,
652-
job_COMOUT_image_name)
653-
elif plot == 'stat_by_level':
654-
import global_ens_chem_plots_stat_by_level as gdap_sbl
655-
vert_profiles = [os.environ['vert_profile']]
656-
for sbl_info in \
657-
list(itertools.product(valid_hrs, fhrs, vert_profiles)):
658-
date_info_dict['valid_hr_start'] = str(sbl_info[0])
659-
date_info_dict['valid_hr_end'] = str(sbl_info[0])
660-
date_info_dict['valid_hr_inc'] = '24'
661-
date_info_dict['forecast_hour'] = str(sbl_info[1])
662-
plot_info_dict['fcst_var_name'] = fcst_var_name
663-
plot_info_dict['obs_var_name'] = obs_var_name
664-
plot_info_dict['vert_profile'] = sbl_info[2]
665-
plot_info_dict['fcst_var_level'] = sbl_info[2]
666-
plot_info_dict['obs_var_level'] = sbl_info[2]
667-
init_hr = gda_util.get_init_hour(
668-
int(date_info_dict['valid_hr_start']),
669-
int(date_info_dict['forecast_hour'])
670-
)
671-
for t in range(len(fcst_var_thresh_list)):
672-
plot_info_dict['fcst_var_thresh'] = fcst_var_thresh_list[t]
673-
plot_info_dict['obs_var_thresh'] = obs_var_thresh_list[t]
674-
job_work_image_name = plot_specs.get_savefig_name(
675-
job_work_dir, plot_info_dict, date_info_dict
676-
)
677-
job_COMOUT_image_name = job_work_image_name.replace(
678-
job_work_dir, job_COMOUT_dir
679-
)
680-
job_DATA_image_name = job_work_image_name.replace(
681-
job_work_dir, job_DATA_dir
682-
)
683-
if SENDCOM == 'YES':
684-
check_job_image_name = job_COMOUT_image_name
685-
job_input_dir = job_COMOUT_dir
686-
else:
687-
check_job_image_name = job_DATA_image_name
688-
job_input_dir = job_DATA_dir
689-
if init_hr in init_hrs \
690-
and not os.path.exists(check_job_image_name) \
691-
and plot_info_dict['stat'] != 'FBAR_OBAR':
692-
make_sbl = True
693-
else:
694-
make_sbl = False
695-
del plot_info_dict['fcst_var_level']
696-
del plot_info_dict['obs_var_level']
697-
if make_sbl:
698-
plot_sbl = gdap_sbl.StatByLevel(logger,
699-
job_input_dir+'/..',
700-
job_work_dir,
701-
model_info_dict,
702-
date_info_dict,
703-
plot_info_dict,
704-
met_info_dict, logo_dir)
705-
plot_sbl.make_stat_by_level()
706-
if SENDCOM == 'YES' \
707-
and os.path.exists(job_work_image_name):
708-
logger.info(f"Copying {job_work_image_name} to "
709-
+f"{job_COMOUT_image_name}")
710-
gda_util.copy_file(job_work_image_name,
711-
job_COMOUT_image_name)
712-
elif plot == 'lead_by_level':
713-
import global_ens_chem_plots_lead_by_level as gdap_lbl
714-
if evs_run_mode == 'production':
715-
fhrs_lbl = []
716-
for fhr in fhrs:
717-
if fhr % 24 == 0:
718-
fhrs_lbl.append(fhr)
719-
else:
720-
fhrs_lbl = fhrs
721-
vert_profiles = [os.environ['vert_profile']]
722-
for lbl_info in list(itertools.product(valid_hrs, vert_profiles)):
723-
date_info_dict['valid_hr_start'] = str(lbl_info[0])
724-
date_info_dict['valid_hr_end'] = str(lbl_info[0])
725-
date_info_dict['valid_hr_inc'] = '24'
726-
date_info_dict['forecast_hours'] = fhrs_lbl
727-
plot_info_dict['fcst_var_name'] = fcst_var_name
728-
plot_info_dict['obs_var_name'] = obs_var_name
729-
plot_info_dict['vert_profile'] = lbl_info[1]
730-
plot_info_dict['fcst_var_level'] = lbl_info[1]
731-
plot_info_dict['obs_var_level'] = lbl_info[1]
732-
for t in range(len(fcst_var_thresh_list)):
733-
plot_info_dict['fcst_var_thresh'] = fcst_var_thresh_list[t]
734-
plot_info_dict['obs_var_thresh'] = obs_var_thresh_list[t]
735-
job_work_image_name = plot_specs.get_savefig_name(
736-
job_work_dir, plot_info_dict, date_info_dict
737-
)
738-
job_COMOUT_image_name = job_work_image_name.replace(
739-
job_work_dir, job_COMOUT_dir
740-
)
741-
job_DATA_image_name = job_work_image_name.replace(
742-
job_work_dir, job_DATA_dir
743-
)
744-
if SENDCOM == 'YES':
745-
check_job_image_name = job_COMOUT_image_name
746-
job_input_dir = job_COMOUT_dir
747-
else:
748-
check_job_image_name = job_DATA_image_name
749-
job_input_dir = job_DATA_dir
750-
if not os.path.exists(check_job_image_name) \
751-
and plot_info_dict['stat'] != 'FBAR_OBAR':
752-
if len(date_info_dict['forecast_hours']) <= 1:
753-
logger.warning("No span of forecast hours to plot, "
754-
+"given 1 forecast hour, skipping "
755-
+"lead_by_level plots")
756-
make_lbl = False
757-
else:
758-
make_lbl = True
759-
else:
760-
make_lbl = False
761-
del plot_info_dict['fcst_var_level']
762-
del plot_info_dict['obs_var_level']
763-
if make_lbl:
764-
plot_lbl = gdap_lbl.LeadByLevel(logger,
765-
job_input_dir+'/..',
766-
job_work_dir,
767-
model_info_dict,
768-
date_info_dict,
769-
plot_info_dict,
770-
met_info_dict, logo_dir)
771-
plot_lbl.make_lead_by_level()
772-
if SENDCOM == 'YES' \
773-
and os.path.exists(job_work_image_name):
774-
logger.info(f"Copying {job_work_image_name} to "
775-
+f"{job_COMOUT_image_name}")
776-
gda_util.copy_file(job_work_image_name,
777-
job_COMOUT_image_name)
778-
elif plot == 'nohrsc_spatial_map':
779-
import global_ens_chem_plots_nohrsc_spatial_map as gdap_nsm
780-
nohrsc_data_dir = os.path.join(VERIF_CASE_STEP_dir, 'data', 'nohrsc')
781-
date_info_dict['valid_hr_start'] = str(valid_hrs[0])
782-
date_info_dict['valid_hr_end'] = str(valid_hrs[0])
783-
date_info_dict['valid_hr_inc'] = '24'
784-
plot_info_dict['obs_var_name'] = obs_var_name
785-
plot_info_dict['obs_var_level'] = obs_var_level_list[0]
786-
if SENDCOM == 'YES':
787-
job_final_output_dir = job_COMOUT_dir
788-
else:
789-
job_final_output_dir = job_DATA_dir
790-
plot_nsm = gdap_nsm.NOHRSCSpatialMap(logger, nohrsc_data_dir,
791-
job_work_dir,
792-
job_final_output_dir,
793-
date_info_dict, plot_info_dict,
794-
logo_dir)
795-
plot_nsm.make_nohrsc_spatial_map()
796-
elif plot == 'precip_spatial_map':
797-
model_info_dict['obs'] = {'name': 'ccpa',
798-
'plot_name': 'ccpa',
799-
'obs_name': '24hrCCPA'}
800-
pcp_combine_base_dir = os.path.join(VERIF_CASE_STEP_dir, 'data')
801-
import global_ens_chem_plots_precip_spatial_map as gdap_psm
802-
for psm_info in \
803-
list(itertools.product(valid_hrs, fhrs)):
804-
date_info_dict['valid_hr_start'] = str(psm_info[0])
805-
date_info_dict['valid_hr_end'] = str(psm_info[0])
806-
date_info_dict['valid_hr_inc'] = '24'
807-
date_info_dict['forecast_hour'] = str(psm_info[1])
808-
plot_info_dict['fcst_var_name'] = fcst_var_name
809-
plot_info_dict['fcst_var_level'] = fcst_var_level_list[0]
810-
plot_info_dict['fcst_var_thresh'] = 'NA'
811-
plot_info_dict['obs_var_name'] = obs_var_name
812-
plot_info_dict['obs_var_level'] = obs_var_level_list[0]
813-
plot_info_dict['obs_var_thresh'] = 'NA'
814-
plot_info_dict['interp_points'] = 'NA'
815-
if SENDCOM == 'YES':
816-
job_final_output_dir = job_COMOUT_dir
817-
else:
818-
job_final_output_dir = job_DATA_dir
819-
plot_psm = gdap_psm.PrecipSpatialMap(logger, pcp_combine_base_dir,
820-
job_work_dir,
821-
job_final_output_dir,
822-
model_info_dict,
823-
date_info_dict,
824-
plot_info_dict,
825-
met_info_dict, logo_dir)
826-
plot_psm.make_precip_spatial_map()
827603
elif plot == 'performance_diagram':
828604
import global_ens_chem_plots_performance_diagram as gdap_pd
829605
for pd_info in list(itertools.product(valid_hrs, fhrs)):

0 commit comments

Comments
 (0)