ConnectTool
 All Classes Namespaces Files Functions Variables Pages
Classes | Namespaces | Variables
job_scheduler.py File Reference

Classes

class  job_scheduler.IDSimu
 

Namespaces

 job_scheduler
 

Variables

tuple job_scheduler.job_scheduler_file = os.path.join('dir.output','job_scheduler.out')
 
tuple job_scheduler.log_id = module_toolbox_file.open_log('logs','jobs',__file__,'CONNECTIVITY TOOL V3',module_common.utc_today)
 
int job_scheduler.npast_days = 3
 
int job_scheduler.nupdate_days = 3
 
int job_scheduler.nforecast_days = 3
 
list job_scheduler.mode = ['ALL']
 
list job_scheduler.dates_6h = [None]
 
tuple job_scheduler.nearest_date_6h = module_toolbox_num.nearest(dates_6h,module_common.utc_today)
 
list job_scheduler.hmodels = ['PARKER']
 
list job_scheduler.cmodels = ['PFSS']
 
list job_scheduler.reftimes = ['SCTIME','SUNTIME']
 
list job_scheduler.magtypes = ['NSO','ADAPT']
 
list job_scheduler.scrafts = ['PSP','EARTH','STA','ALL']
 
dictionary job_scheduler.dates = {}
 
list job_scheduler.missing_simus_past = []
 
tuple job_scheduler.date_begin = nearest_date_6h-datetime.timedelta(days=npast_days)
 
 job_scheduler.date_end = nearest_date_6h
 
 job_scheduler.delta = date_end-date_begin
 
int job_scheduler.step = 6
 
tuple job_scheduler.nstep = int(delta.days*24/step)
 
tuple job_scheduler.id_simu = IDSimu(date=date_in,hmodel=hmodel,cmodel=cmodel,reftime=reftime,magtype=magtype,scrafts=[])
 
tuple job_scheduler.results
 
list job_scheduler.missing_simus_udpate_ts = []
 
tuple job_scheduler.path_param = os.path.join(results[0]['dirname'],results[0]['file_parameter'])
 
tuple job_scheduler.stream = open(path_param,'r')
 
tuple job_scheduler.data_param = yaml.load(stream,Loader=yaml.FullLoader)
 
tuple job_scheduler.time_surf = datetime.datetime.strptime(data_param[scraft]['time_surf'],'%Y-%b-%d %H:%M:%S')
 
tuple job_scheduler.db_element = database_timeserie.datetime2file(table_name,date_in,h_accuracy = 1)
 
list job_scheduler.missing_simus_udpate_mag = []
 
tuple job_scheduler.time_in = module_timespace.Time()
 
list job_scheduler.missing_simus_udpate_euv171 = []
 
list job_scheduler.euv171_table_names = ['OBS_MAPS_EUV2CARMAP_SDOSTA_171','OBS_MAPS_SDO_AIA_171']
 
list job_scheduler.missing_simus_forecast = []
 
tuple job_scheduler.missing_simus = np.array(missing_simus_past + missing_simus_forecast + missing_simus_udpate_ts + missing_simus_udpate_mag + missing_simus_udpate_euv171)
 DB table name if magtype == 'ADAPT' : table_name = 'OBS_MAPS_ADAPT40' elif magtype == 'NSO' : table_name = 'OBS_MAPS_NSO' elif magtype == 'WSO' : table_name = 'OBS_MAPS_WSO_ORIGIN' else: continue id_simu = IDSimu(date=date_in,hmodel=hmodel,cmodel=cmodel,reftime=reftime,magtype=magtype,scrafts=[]) for scraft in scrafts: #Find corresponding simulation in Output DB results = module_db.datetime2output(module_db.database_table,connector,cursor,\ scraft = scraft,\ heliospheric_model = hmodel,\ coronal_model = cmodel,\ reference_time = reftime,\ magnetogram_type = magtype,\ date = date_in.strftime('Y-m-d H:M:S'),\ orderby='ASC',ordercol='operation_mode_id') #If simulation does not exist, launch it if len(results) == 0: id_simu.scrafts.append(scraft) #Else, launch it if newest magnetogram in SWD is newer than the one used in previous connectivity simulation else: #Read parameter file path_param = os.path.join(results[0]['dirname'],results[0]['file_parameter']) if not os.path.isfile(path_param): log_id.write('Error: No param file in this simulation s. More...
 
list job_scheduler.remove_index = []
 
tuple job_scheduler.duplicated = np.where(missing_simus[i+1:] == simu_id)
 
int job_scheduler.index = j+i+1
 
list job_scheduler.unic_simus = []
 
list job_scheduler.duplicated_simus = []
 
tuple job_scheduler.ifile = open(job_scheduler_file,'w')
 
string job_scheduler.command = 'cat %s'