#!/usr/bin/env python # encoding: utf-8 """ configuration file for CSPP ATMS SDR export A='truth/GATMO_npp_d20111108_t2111516_e2119513_b00163_c20111109031951217277_noaa_ops.h5' export ASLICE='0 12' export B='work/GATMO_npp_d20111108_t2111516_e2112233_b00163_c20111117005333460964_ssec_dev.h5' export BSLICE='12 24' COLLECTION=GATMO glance -d -p report -c glance_atms_sdr_cfg.py reportGen $A $B A='truth/SATMS_npp_d20111108_t2111516_e2119513_b00163_c20111109031951217643_noaa_ops.h5' B='work/SATMS_npp_d20111108_t2111516_e2112233_b00163_c20111117005333406835_ssec_dev.h5' COLLECTION=SATMS glance -d -p report -c glance_atms_sdr_cfg.py reportGen $A $B """ import os import glance.filters as filters # general settings to control how reports are created settings = {} settings['useThreadsToControlMemory'] = True settings['shouldIncludeImages'] = True #settings['useSharedRangeForOriginal'] = True settings['doFork'] = False # info on the latitude and longitude variables that will be used lat_lon_info = {} lat_lon_info['lon_lat_epsilon'] = 0.0001 truthslice = lambda data: data[:12] def abslice(data, env_name): start,end = [int(x) for x in os.environ[env_name].split()] return data[start:end] aslice = lambda data: abslice(data, 'ASLICE') bslice = lambda data: abslice(data, 'BSLICE') # per variable defaults defaultValues = {'data_filter_function_a': aslice, 'data_filter_function_b': bslice} def varmint(path): variable_name = path.split('/')[-1] return variable_name, dict( variable_name = path ) h5GATMO = [ "All_Data/ATMS-SDR-GEO_All/BeamLatitude", "All_Data/ATMS-SDR-GEO_All/BeamLongitude", "All_Data/ATMS-SDR-GEO_All/Height", "All_Data/ATMS-SDR-GEO_All/Latitude", "All_Data/ATMS-SDR-GEO_All/Longitude", "All_Data/ATMS-SDR-GEO_All/MidTime", "All_Data/ATMS-SDR-GEO_All/QF1_ATMSSDRGEO", "All_Data/ATMS-SDR-GEO_All/SCAttitude", "All_Data/ATMS-SDR-GEO_All/SCPosition", "All_Data/ATMS-SDR-GEO_All/SCVelocity", "All_Data/ATMS-SDR-GEO_All/SatelliteAzimuthAngle", "All_Data/ATMS-SDR-GEO_All/SatelliteRange", "All_Data/ATMS-SDR-GEO_All/SatelliteZenithAngle", "All_Data/ATMS-SDR-GEO_All/SolarAzimuthAngle", "All_Data/ATMS-SDR-GEO_All/SolarZenithAngle", "All_Data/ATMS-SDR-GEO_All/StartTime" ] h5SATMS = [ 'All_Data/ATMS-SDR_All/BeamTime', 'All_Data/ATMS-SDR_All/BrightnessTemperature', 'All_Data/ATMS-SDR_All/BrightnessTemperatureFactors', 'All_Data/ATMS-SDR_All/GainCalibration', 'All_Data/ATMS-SDR_All/InstrumentMode', 'All_Data/ATMS-SDR_All/NEdTCold', 'All_Data/ATMS-SDR_All/NEdTWarm', 'All_Data/ATMS-SDR_All/QF10_GRAN_HEALTHSTATUS', 'All_Data/ATMS-SDR_All/QF11_GRAN_QUADRATICCORRECTION', 'All_Data/ATMS-SDR_All/QF12_SCAN_KAVPRTCONVERR', 'All_Data/ATMS-SDR_All/QF13_SCAN_WGPRTCONVERR', 'All_Data/ATMS-SDR_All/QF14_SCAN_SHELFPRTCONVERR', 'All_Data/ATMS-SDR_All/QF15_SCAN_KAVPRTTEMPLIMIT', 'All_Data/ATMS-SDR_All/QF16_SCAN_WGPRTTEMPLIMIT', 'All_Data/ATMS-SDR_All/QF17_SCAN_KAVPRTTEMPCONSISTENCY', 'All_Data/ATMS-SDR_All/QF18_SCAN_WGPRTTEMPCONSISTENCY', 'All_Data/ATMS-SDR_All/QF19_SCAN_ATMSSDR', 'All_Data/ATMS-SDR_All/QF1_GRAN_HEALTHSTATUS', 'All_Data/ATMS-SDR_All/QF20_ATMSSDR', 'All_Data/ATMS-SDR_All/QF21_ATMSSDR', 'All_Data/ATMS-SDR_All/QF22_ATMSSDR', 'All_Data/ATMS-SDR_All/QF2_GRAN_HEALTHSTATUS', 'All_Data/ATMS-SDR_All/QF3_GRAN_HEALTHSTATUS', 'All_Data/ATMS-SDR_All/QF4_GRAN_HEALTHSTATUS', 'All_Data/ATMS-SDR_All/QF5_GRAN_HEALTHSTATUS', 'All_Data/ATMS-SDR_All/QF6_GRAN_HEALTHSTATUS', 'All_Data/ATMS-SDR_All/QF7_GRAN_HEALTHSTATUS', 'All_Data/ATMS-SDR_All/QF8_GRAN_HEALTHSTATUS', 'All_Data/ATMS-SDR_All/QF9_GRAN_HEALTHSTATUS' ] h5SCRIS = """All_Data/CrIS-SDR_All/DS_SpectralStability All_Data/CrIS-SDR_All/DS_Symmetry All_Data/CrIS-SDR_All/DS_WindowSize All_Data/CrIS-SDR_All/ES_ImaginaryLW All_Data/CrIS-SDR_All/ES_ImaginaryMW All_Data/CrIS-SDR_All/ES_ImaginarySW All_Data/CrIS-SDR_All/ES_NEdNLW All_Data/CrIS-SDR_All/ES_NEdNMW All_Data/CrIS-SDR_All/ES_NEdNSW All_Data/CrIS-SDR_All/ES_RDRImpulseNoise All_Data/CrIS-SDR_All/ES_RealLW All_Data/CrIS-SDR_All/ES_RealMW All_Data/CrIS-SDR_All/ES_RealSW All_Data/CrIS-SDR_All/ES_ZPDFringeCount All_Data/CrIS-SDR_All/ES_ZPDMagnitude All_Data/CrIS-SDR_All/ICT_SpectralStability All_Data/CrIS-SDR_All/ICT_TemperatureConsistency All_Data/CrIS-SDR_All/ICT_TemperatureStability All_Data/CrIS-SDR_All/ICT_WindowSize All_Data/CrIS-SDR_All/MeasuredLaserWavelength All_Data/CrIS-SDR_All/MonitoredLaserWavelength All_Data/CrIS-SDR_All/NumberOfValidPRTTemps All_Data/CrIS-SDR_All/QF1_SCAN_CRISSDR All_Data/CrIS-SDR_All/QF2_CRISSDR All_Data/CrIS-SDR_All/QF3_CRISSDR All_Data/CrIS-SDR_All/QF4_CRISSDR All_Data/CrIS-SDR_All/ResamplingLaserWavelength All_Data/CrIS-SDR_All/SDRFringeCount""".split('\n') h5GCRSO = """All_Data/CrIS-SDR-GEO_All All_Data/CrIS-SDR-GEO_All/FORTime All_Data/CrIS-SDR-GEO_All/Height All_Data/CrIS-SDR-GEO_All/Latitude All_Data/CrIS-SDR-GEO_All/Longitude All_Data/CrIS-SDR-GEO_All/MidTime All_Data/CrIS-SDR-GEO_All/PadByte1 All_Data/CrIS-SDR-GEO_All/QF1_CRISSDRGEO All_Data/CrIS-SDR-GEO_All/SCAttitude All_Data/CrIS-SDR-GEO_All/SCPosition All_Data/CrIS-SDR-GEO_All/SCVelocity All_Data/CrIS-SDR-GEO_All/SatelliteAzimuthAngle All_Data/CrIS-SDR-GEO_All/SatelliteRange All_Data/CrIS-SDR-GEO_All/SatelliteZenithAngle All_Data/CrIS-SDR-GEO_All/SolarAzimuthAngle All_Data/CrIS-SDR-GEO_All/SolarZenithAngle All_Data/CrIS-SDR-GEO_All/StartTime""".split('\n') COLL = 'h5%s' % os.environ.get('COLLECTION', None) if COLL is not None: listOfVariables = globals()[COLL] else: listOfVariables = os.environ.get('VARIABLES').split() setOfVariables = dict( varmint(path) for path in listOfVariables )