@@ 331-351 (lines=21) @@ | ||
328 | sdd["utc_hour"] = ("lats", (time_intpf(sdd.lats) * 12. / np.pi) % 24.) |
|
329 | sdd["utc_days"] = ("lats", dts_retr_interpf(sdd.lats)) |
|
330 | ||
331 | if "lons" not in sdd.data_vars: |
|
332 | # recalculate the longitudes |
|
333 | # estimate the equatorial longitude from the |
|
334 | # limb scan latitudes and longitudes |
|
335 | lon0s_tp = lons - PHI_FAC * np.tan(np.radians(lats)) |
|
336 | clon0s_tp = np.cos(np.radians(lon0s_tp)) |
|
337 | slon0s_tp = np.sin(np.radians(lon0s_tp)) |
|
338 | lon0_tp = np.arctan2(np.sum(slon0s_tp[1:-1]), np.sum(clon0s_tp[1:-1])) |
|
339 | lon0_tp = np.degrees((lon0_tp + 2. * np.pi) % (2. * np.pi)) |
|
340 | logging.info("lon0: %s", lon0) |
|
341 | logging.info("lon0 tp: %s", lon0_tp) |
|
342 | # interpolate to the retrieval latitudes |
|
343 | tg_retr_lats = np.tan(np.radians(sdd.lats)) |
|
344 | calc_lons = (tg_retr_lats * PHI_FAC + lon0) % 360. |
|
345 | calc_lons_tp = (tg_retr_lats * PHI_FAC + lon0_tp) % 360. |
|
346 | sdd["lons"] = calc_lons_tp |
|
347 | logging.debug("(calculated) retrieval lons: %s, %s", |
|
348 | calc_lons, calc_lons_tp) |
|
349 | else: |
|
350 | # sdd.lons = sdd.lons % 360. |
|
351 | logging.debug("(original) retrieval lons: %s", sdd.lons) |
|
352 | ||
353 | sdd["mst"] = (sdd.utc_hour + sdd.lons / 15.) % 24. |
|
354 | sdd["lst"] = sdd.mst + eotcorr / 60. |
@@ 295-315 (lines=21) @@ | ||
292 | sdd.utchour = (time_intpf(sdd.lats) * 12. / np.pi) % 24. |
|
293 | sdd.utcdays = dts_retr_interpf(sdd.lats) |
|
294 | ||
295 | if sdd.lons is None: |
|
296 | # recalculate the longitudes |
|
297 | # estimate the equatorial longitude from the |
|
298 | # limb scan latitudes and longitudes |
|
299 | lon0s_tp = lons - PHI_FAC * np.tan(np.radians(lats)) |
|
300 | clon0s_tp = np.cos(np.radians(lon0s_tp)) |
|
301 | slon0s_tp = np.sin(np.radians(lon0s_tp)) |
|
302 | lon0_tp = np.arctan2(np.sum(slon0s_tp[1:-1]), np.sum(clon0s_tp[1:-1])) |
|
303 | lon0_tp = np.degrees((lon0_tp + 2. * np.pi) % (2. * np.pi)) |
|
304 | logging.info("lon0: %s", lon0) |
|
305 | logging.info("lon0 tp: %s", lon0_tp) |
|
306 | # interpolate to the retrieval latitudes |
|
307 | tg_retr_lats = np.tan(np.radians(sdd.lats)) |
|
308 | calc_lons = (tg_retr_lats * PHI_FAC + lon0) % 360. |
|
309 | calc_lons_tp = (tg_retr_lats * PHI_FAC + lon0_tp) % 360. |
|
310 | sdd.lons = calc_lons_tp |
|
311 | logging.debug("(calculated) retrieval lons: %s, %s", |
|
312 | calc_lons, calc_lons_tp) |
|
313 | else: |
|
314 | # sdd.lons = sdd.lons % 360. |
|
315 | logging.debug("(original) retrieval lons: %s", sdd.lons) |
|
316 | ||
317 | sdd.mst = (sdd.utchour + sdd.lons / 15.) % 24. |
|
318 | sdd.lst = sdd.mst + eotcorr / 60. |