add zfd in results

This commit is contained in:
Theophile Terraz committed 2026-04-03 12:30:58 +02:00
1 parent 3277cf551b
commit 9670bde56f
5 files changed
+94 -71

No files matched your search

+35
View File
@@ -19,6 +19,7 @@
import os
import logging
import numpy as np
from functools import reduce
from tools import timer, trace, logger_exception
@@ -1276,6 +1277,40 @@ class Mage8(Mage):
)
end = newline().size <= 0
ts_list = sorted(ts)
logger.info(f"compute river bed elevation...")
for r in reachs:
z_min = reach.geometry.get_z_min()
sls = list(map(
lambda p: p.get_ts_key(ts_list[0], "sl")[0],
r.profiles
))
z_br = list(map(
lambda z, sl: reduce(
lambda z, h: z - h[0],
sl, z
),
z_min, # Original geometry
sls # Original sediment layers
))
for t in ts_list:
sls = list(map(
lambda p: p.get_ts_key(t, "sl")[0],
r.profiles
))
zfd = list(map(
lambda z, sl: reduce(
lambda z, h: z + h[0],
sl, z
),
z_br, # bedrock
sls # Original sediment layers
))
for i, p in enumerate(r.profiles):
r.set(i, t, "zfd", zfd[i])
results.set("sediment_timestamps", ts)
logger.info(f"read_gra: ... end with {len(ts)} timestamp read")