Fluxes L0 checks (IRGA75, 2004-2017, 2019)

Fluxes L0 checks (IRGA75, 2004-2017, 2019)#

import diive as dv
import matplotlib.pyplot as plt
import matplotlib.gridspec as gridspec
from datetime import datetime
from diive.core.io.files import load_parquet
SOURCEFILE = r"12_OPENLAG_EDDYPRO_FLUXNET_OUTPUT_IRGA75_2004-2017_2019.parquet"
df = load_parquet(filepath=SOURCEFILE)
# locs = df.index.year == 2019
# df = df[locs].copy()
df
Loaded .parquet file 12_OPENLAG_EDDYPRO_FLUXNET_OUTPUT_IRGA75_2004-2017_2019.parquet (0.420 seconds).
    --> Detected time resolution of <30 * Minutes> / 30min 
AIR_CP AIR_DENSITY AIR_MV AIR_RHO_CP AOA_METHOD AXES_ROTATION_METHOD BADM_HEIGHTC BADM_INSTPAIR_EASTWARD_SEP_GA_CH4 BADM_INSTPAIR_EASTWARD_SEP_GA_CO2 BADM_INSTPAIR_EASTWARD_SEP_GA_H2O BADM_INSTPAIR_EASTWARD_SEP_GA_NONE BADM_INSTPAIR_HEIGHT_SEP_GA_CH4 BADM_INSTPAIR_HEIGHT_SEP_GA_CO2 BADM_INSTPAIR_HEIGHT_SEP_GA_H2O BADM_INSTPAIR_HEIGHT_SEP_GA_NONE ... W_T_SONIC_COV_IBROM_N0004 W_T_SONIC_COV_IBROM_N0008 W_T_SONIC_COV_IBROM_N0016 W_T_SONIC_COV_IBROM_N0032 W_T_SONIC_COV_IBROM_N0065 W_T_SONIC_COV_IBROM_N0133 W_T_SONIC_COV_IBROM_N0277 W_T_SONIC_COV_IBROM_N0614 W_T_SONIC_COV_IBROM_N1626 W_UNROT W_U_COV W_VM97_TEST W_ZCD ZL ZL_UNCORR
TIMESTAMP_MIDDLE
2004-03-30 14:15:00 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
2004-03-30 14:45:00 1005.42 1.12844 0.025668 1134.55 0.0 1.0 37.0 NaN NaN NaN NaN NaN NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN -0.227060 -0.209191 800000001.0 14.0 -1.260300 -1.311810
2004-03-30 15:15:00 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
2004-03-30 15:45:00 1005.43 1.12663 0.025709 1132.74 0.0 1.0 37.0 NaN NaN NaN NaN NaN NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN -0.063026 0.002830 800000001.0 39.0 -0.350350 -0.361224
2004-03-30 16:15:00 1005.43 1.12587 0.025726 1131.98 0.0 1.0 37.0 NaN NaN NaN NaN NaN NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN -0.028456 -0.034904 800000000.0 76.0 -0.295733 -0.304238
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
2019-03-20 16:45:00 1005.38 1.13522 0.025515 1141.33 0.0 1.0 37.0 NaN NaN NaN NaN NaN NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN 0.383872 -0.350438 800000000.0 20.0 -0.143543 -0.147249
2019-03-20 17:15:00 1005.38 1.13469 0.025527 1140.80 0.0 1.0 37.0 NaN NaN NaN NaN NaN NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN 0.431124 -0.339284 800000000.0 13.0 -0.120186 -0.122775
2019-03-20 17:45:00 1005.39 1.13422 0.025537 1140.33 0.0 1.0 37.0 NaN NaN NaN NaN NaN NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN 0.197926 -0.251053 800010000.0 17.0 -0.029753 -0.030451
2019-03-20 18:15:00 1005.39 1.13262 0.025573 1138.73 0.0 1.0 37.0 NaN NaN NaN NaN NaN NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN -0.061639 -0.101834 800000000.0 29.0 0.088462 0.089222
2019-03-20 18:45:00 1005.40 1.13146 0.025599 1137.57 0.0 1.0 37.0 NaN NaN NaN NaN NaN NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN -0.079800 -0.104907 800000000.0 39.0 0.074985 0.075608

262474 rows × 494 columns

fig = plt.figure(figsize=(16, 9), dpi=72)
fig.suptitle(f"Level-0 fluxes")
gs = gridspec.GridSpec(1, 3)  # rows, cols
gs.update(wspace=0.5, hspace=1, left=.1, right=.9, top=.85, bottom=.1)
ax_fc = fig.add_subplot(gs[0, 0])
ax_le = fig.add_subplot(gs[0, 1])
ax_h = fig.add_subplot(gs[0, 2])
dv.heatmapdatetime(series=df['FC'], ax=ax_fc, title="FC", vmin=-50, vmax=50).plot()
dv.heatmapdatetime(series=df['LE'], ax=ax_le, title="LE", vmin=-50, vmax=800).plot()
dv.heatmapdatetime(series=df['H'], ax=ax_h, title="H", vmin=-50, vmax=800).plot()
../../_images/b0a4f324758a9f68517ae1206e3620531a4bdbf641c460a54eb81c612a346d6e.png

End of notebook.#

dt_string = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
print(f"Finished. {dt_string}")
Finished. 2025-07-21 16:57:58