| @@ 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. |
|