def get_lat_lon_avhrr(satscene, options, positions): """Read lat and lon. """ import pyaapp import datetime one_minute = datetime.timedelta(minuts=1) t_start = satscene.time_slot t_end = t_start + one_minute epoch = datetime.datetime(1950, 1, 1) t50_start = (t_start - epoch) t50_end = (t_end - epoch) jday_start = t50_start.seconds / (3600.0 *24) + t50_start.days jday_end = t50_end.seconds / (3600.0 *24) + t50_end.days pyaapp.read_satpos_file(jday_start, jday_end, satscene.satname+" "+satscene.number, ("/data/24/saf/pps/import/ANC_data/source/satpos_"+ satscene.fullname+"_"+ satscene.time_slot.strptime("%H%M%S")+".txt")) att = pyaapp.prepare_attitude(int(satscene.number), 0, 0, 0) nlines = int((t_end - t_start).seconds / T_STEP_L) return (pyaapp.linepixel2lonlat(int(satscene.number)[1:3], 0, 0, att, jday_start, jday_end) for (line, col) in positions)
def get_lonlat_avhrr(satscene, row, col): """Read longitude and latitude for a given pixel. """ # Needs the SATID AAPP env variable to be set to find satid.txt... import pyaapp import math import datetime t_start = satscene.time_slot epoch = datetime.datetime(1950, 1, 1) t50_start = (t_start - epoch) jday_start = t50_start.seconds / (3600.0 *24) + t50_start.days jday_end = jday_start if(satscene.satname == "metop"): satname = "M02" else: satname = satscene.satname + satscene.number if satscene.time_slot.hour == 0 and satscene.time_slot.minute == 0: satpos_time = satscene.time_slot - datetime.timedelta(minutes=1) else: satpos_time = satscene.time_slot satpos_file = ("/data/24/saf/pps/import/ANC_data/source/satpos_"+ satname+"_"+ satpos_time.strftime("%Y%m%d")+".txt") pyaapp.read_satpos_file(jday_start, jday_end, satscene.satname+" "+str(int(satscene.number)), satpos_file) att = pyaapp.prepare_attitude(int(satscene.number), 0, 0, 0) lonlat = pyaapp.linepixel2lonlat(int(satscene.number), row, col, att, jday_start, jday_end)[1:3] return (lonlat[0] * 180.0 / math.pi, lonlat[1] * 180.0 / math.pi)
def get_lonlat_avhrr(satscene, row, col): """Read longitude and latitude for a given pixel. """ # Needs the SATID AAPP env variable to be set to find satid.txt... import pyaapp import math t_start = satscene.time_slot epoch = datetime.datetime(1950, 1, 1) t50_start = (t_start - epoch) jday_start = t50_start.seconds / (3600.0 * 24) + t50_start.days jday_end = jday_start if (satscene.satname == "metop"): satname = "M02" else: satname = satscene.satname + satscene.number satpos_file = get_satpos_file(satscene.time_slot, satname) pyaapp.read_satpos_file(jday_start, jday_end, satscene.satname + " " + str(int(satscene.number)), satpos_file) att = pyaapp.prepare_attitude(int(satscene.number), 0, 0, 0) lonlat = pyaapp.linepixel2lonlat(int(satscene.number), row, col, att, jday_start, jday_end)[1:3] return (lonlat[0] * 180.0 / math.pi, lonlat[1] * 180.0 / math.pi)
def get_lonlat_avhrr(satscene, row, col): """Read longitude and latitude for a given pixel. """ # Needs the SATID AAPP env variable to be set to find satid.txt... import pyaapp import math t_start = satscene.time_slot epoch = datetime.datetime(1950, 1, 1) t50_start = (t_start - epoch) jday_start = t50_start.seconds / (3600.0 *24) + t50_start.days jday_end = jday_start if(satscene.satname == "metop"): satname = "M02" else: satname = satscene.satname + satscene.number satpos_file = get_satpos_file(satscene.time_slot, satname) pyaapp.read_satpos_file(jday_start, jday_end, satscene.satname+" "+str(int(satscene.number)), satpos_file) att = pyaapp.prepare_attitude(int(satscene.number), 0, 0, 0) lonlat = pyaapp.linepixel2lonlat(int(satscene.number), row, col, att, jday_start, jday_end)[1:3] return (lonlat[0] * 180.0 / math.pi, lonlat[1] * 180.0 / math.pi)