xldeltares / hybridurb

HybridUrb: a Python package to perform hybrid urban flood modelling
https://xldeltares.github.io/hybridurb/
MIT License
1 stars 1 forks source link

Construct the graph model from geometry files 👍 #14

Closed xldeltares closed 1 year ago

xldeltares commented 1 year ago

construct the graph with node and edges attributes representing the physical features of the network.

There might be need to update hydromt-delft3dfm to get necessary physical parameters, e.g. diameters, slope and friction of the pipes, size and depths of the manholes and area and slope of the subcatchments. There might be need to refactor previous scripts. See also https://github.com/xldeltares/hydrolib-nowcasting/tree/master

xldeltares commented 1 year ago

model configuration (ref: neural hydrology):

# --- Model configuration --------------------------------------------------------------------------

# base model type [lstm, ealstm, cudalstm, embcudalstm, mtslstm]
# (has to match the if statement in modelzoo/__init__.py)
model: cudalstm

# prediction head [regression]. Define the head specific parameters below
head: regression

# ----> Regression settings <----
output_activation: linear

# ----> General settings <----

# Number of cell states of the LSTM
hidden_size: 20

# Initial bias value of the forget gate
initial_forget_bias: 3

# Dropout applied to the output of the LSTM
output_dropout: 0.4
xldeltares commented 1 year ago
# --- Network configurations --------------------------------------------------------------------------

# which data set to use [delft3dfm, infoworks]
source: delft3dfm

# Path to data set root
source_dir: ../../network/Eindhoven

# network component [edges, nodes]
# can be either a list or a single
edges: 
  - pipe
  - pump

nodes: 
  - manholes
  - weirs

# which columns to compute
target_variables:
  - Q(mm/d)
  - depth(m)
  - T(/yr)

# clip negative values to zero for all variables listed below. Should be a list, even for single variables.
clip_targets_to_zero:
  - Q
xldeltares commented 1 year ago

Currently using hydrolib-nowcasting. So far it works. but requires refactoring. try to remove the dependencies on different workflows and call from hydromt-delft3dfm directly. maybe a todo for later: maintain of network module to latest hydromt --> maybe good to do that in global vector roads work.