DEATH_CLIMATOLOGY_TYPE = 'death' PASSAGE_CLIMATOLOGY_TYPE = 'passage' if __name__ == '__main__': spc_date_strings = time_conversion.get_spc_dates_in_range( first_spc_date_string=FIRST_SPC_DATE_STRING, last_spc_date_string=LAST_SPC_DATE_STRING) num_spc_dates = len(spc_date_strings) storm_object_table_by_spc_date = [None] * num_spc_dates num_storm_objects_by_hour = numpy.full(NUM_HOURS_PER_DAY, 0, dtype=int) speeds = [] for working_date_index in range(num_spc_dates): date_in_memory_indices = utils._get_dates_needed( working_date_index=working_date_index, num_dates=num_spc_dates, climatology_type=PASSAGE_CLIMATOLOGY_TYPE) for i in range(num_spc_dates): if i in date_in_memory_indices: if storm_object_table_by_spc_date[i] is None: # Find tracking files for [i]th date. these_tracking_file_names = ( tracking_io.find_processed_files_one_spc_date( spc_date_string=spc_date_strings[i], data_source='segmotion', top_processed_dir_name=TOP_PROCESSED_DIR_NAME, tracking_scale_metres2=TRACKING_SCALE_METRES2)) # Read tracking files for [i]th date.
date_needed_indices.append(working_date_index) return numpy.array(date_needed_indices, dtype=int) if __name__ == '__main__': spc_date_strings = time_conversion.get_spc_dates_in_range( first_spc_date_string=FIRST_SPC_DATE_STRING, last_spc_date_string=LAST_SPC_DATE_STRING) num_spc_dates = len(spc_date_strings) storm_object_table_by_spc_date = [None] * num_spc_dates storm_ages = [] for working_date_index in range(num_spc_dates): date_in_memory_indices = utils._get_dates_needed( working_date_index=working_date_index, num_dates=num_spc_dates) for i in range(num_spc_dates): if i in date_in_memory_indices: if storm_object_table_by_spc_date[i] is None: these_tracking_file_names = ( tracking_io.find_processed_files_one_spc_date( spc_date_string=spc_date_strings[i], data_source='segmotion', top_processed_dir_name=TOP_PROCESSED_DIR_NAME, tracking_scale_metres2=TRACKING_SCALE_METRES2)) storm_object_table_by_spc_date[i] = ( tracking_io.read_many_processed_files( these_tracking_file_names))