Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ENH: Add hybrid models for gr and loieau structures #327

Merged
Merged
Show file tree
Hide file tree
Changes from 158 commits
Commits
Show all changes
160 commits
Select commit Hold shift + click to select a range
b58ec06
Merge remote-tracking branch 'upstream/main' into enh-combine-optimizers
nghi-truyen Jul 19, 2024
233a8cc
initalize branch combine optimizers
nghi-truyen Jul 20, 2024
90afd60
Merge branch 'enh-hybrid-models' into enh-combine-optimizers
nghi-truyen Jul 20, 2024
c70db0c
Merge remote-tracking branch 'upstream/enh-cnn-regionalization' into …
nghi-truyen Jul 21, 2024
30eb4c5
ENH: add set, get and forward_pass methods for Net
nghi-truyen Jul 22, 2024
e4b06e8
ENH: add test net forward pass + fix doc net
nghi-truyen Jul 22, 2024
75a847c
Merge branch 'enh-hybrid-models' into enh-combine-optimizers
nghi-truyen Jul 22, 2024
91bed2f
Merge branch 'enh-net-forward-pass' into enh-combine-optimizers
nghi-truyen Jul 22, 2024
3d71aec
Fix indent docstring net
nghi-truyen Jul 22, 2024
b8dc977
Merge branch 'enh-net-forward-pass' into enh-combine-optimizers
nghi-truyen Jul 22, 2024
63a49b7
Merge branch 'enh-hybrid-models' into enh-net-forward-pass
nghi-truyen Jul 23, 2024
b4c5dfc
add weight/bias_shape into trainable layer
nghi-truyen Jul 24, 2024
ee7824d
add weight/bias_shape into trainable layer
nghi-truyen Jul 24, 2024
0ffd8ad
Remove redundant in Python function sbs_optimize
nghi-truyen Jul 24, 2024
7f5f9ec
Merge remote-tracking branch 'upstream/enh-cnn-regionalization' into …
nghi-truyen Jul 24, 2024
41a7aa6
Merge branch 'enh-hybrid-models' into enh-net-forward-pass
nghi-truyen Jul 24, 2024
91429b2
adaptive optimizers for all mappings
nghi-truyen Jul 24, 2024
e1a5a64
Merge remote-tracking branch 'upstream/move-optimizers-to-Python' int…
nghi-truyen Jul 24, 2024
7b5b069
finalize optimizer combination
nghi-truyen Jul 25, 2024
268fe5e
Fix parameter update when using early stopping + dic api doc optimize
nghi-truyen Jul 25, 2024
b14c4af
Correct comment typo
nghi-truyen Jul 25, 2024
3b60a04
Fix comment
nghi-truyen Jul 25, 2024
9fc544b
Merge branch 'enh-net-forward-pass' into enh-adaptive-opt-for-all-map…
nghi-truyen Jul 25, 2024
873302c
Merge branch 'enh-hybrid-models' into enh-net-forward-pass
nghi-truyen Jul 25, 2024
a371562
Merge branch 'enh-net-forward-pass' into enh-adaptive-opt-for-all-map…
nghi-truyen Jul 25, 2024
a189bc3
Merge branch 'enh-hybrid-models' into enh-net-forward-pass
nghi-truyen Jul 25, 2024
a577e2b
Merge branch 'enh-net-forward-pass' into enh-adaptive-opt-for-all-map…
nghi-truyen Jul 25, 2024
47bda59
Change x_train name to x in net
nghi-truyen Jul 25, 2024
d007323
Merge branch 'enh-net-forward-pass' into enh-adaptive-opt-for-all-map…
nghi-truyen Jul 25, 2024
834fa73
retrieve key x in control_info + fix api doc for control prior name
nghi-truyen Jul 25, 2024
68df6a3
Fix dtype for control_info which is applied a finalization Python fun…
nghi-truyen Jul 25, 2024
71b3148
Merge branch 'enh-hybrid-models' into enh-net-forward-pass
nghi-truyen Jul 25, 2024
fed6fe7
Merge branch 'enh-net-forward-pass' into enh-adaptive-opt-for-all-map…
nghi-truyen Jul 25, 2024
d0d2fe3
improve unbounded check for finalize_get_control_info function
nghi-truyen Jul 26, 2024
4951e29
Merge branch 'enh-hybrid-models' into enh-net-forward-pass
nghi-truyen Jul 29, 2024
016e853
Generate baseline
nghi-truyen Jul 29, 2024
0d66bb2
Merge branch 'enh-net-forward-pass' into enh-adaptive-opt-for-all-map…
nghi-truyen Jul 29, 2024
812a4d2
Fix errors occured when merging branch
nghi-truyen Jul 29, 2024
bbc73cf
Fix callback argument in _gradient_based_optimize_problem
nghi-truyen Jul 29, 2024
4eae8e6
Merge branch 'enh-hybrid-models' into enh-net-forward-pass
nghi-truyen Jul 30, 2024
50b9fd8
Merge branch 'enh-net-forward-pass' into enh-adaptive-opt-for-all-map…
nghi-truyen Jul 30, 2024
bb207ff
Fix doc net
nghi-truyen Jul 31, 2024
4133580
Merge branch 'enh-hybrid-models' into enh-net-forward-pass
nghi-truyen Jul 31, 2024
7af47fd
Merge branch 'enh-net-forward-pass' into enh-adaptive-opt-for-all-map…
nghi-truyen Jul 31, 2024
7b297cb
Fix raise message net.set_weight_bias
nghi-truyen Jul 31, 2024
c0ff623
Merge branch 'enh-net-forward-pass' into enh-adaptive-opt-for-all-map…
nghi-truyen Jul 31, 2024
3221a1d
Fix error in previous merge
nghi-truyen Jul 31, 2024
6098461
Add choices to raise error when using sbs optimizer for hybrid struct…
nghi-truyen Jul 31, 2024
56855c6
Merge branch 'enh-hybrid-models' into enh-net-forward-pass:
nghi-truyen Aug 2, 2024
b2890e1
Merge branch 'enh-net-forward-pass' into enh-adaptive-opt-for-all-map…
nghi-truyen Aug 2, 2024
1bce0fc
Merge branch 'enh-hybrid-models' into enh-net-forward-pass:
nghi-truyen Aug 2, 2024
b40ca7a
Merge branch 'enh-net-forward-pass' into enh-adaptive-opt-for-all-map…
nghi-truyen Aug 2, 2024
217f05d
Merge branch 'enh-hybrid-models' into enh-net-forward-pass
nghi-truyen Aug 2, 2024
3cbaacb
Merge branch 'enh-net-forward-pass' into enh-adaptive-opt-for-all-map…
nghi-truyen Aug 2, 2024
8c6c0f0
Merge branch 'enh-hybrid-models' into enh-net-forward-pass
nghi-truyen Aug 3, 2024
af24e13
Merge branch 'enh-net-forward-pass' into enh-adaptive-opt-for-all-map…
nghi-truyen Aug 3, 2024
78c85ce
Generic check optimizer in case of hybrid models
nghi-truyen Aug 3, 2024
0ed8ecc
ENH: add random_state to set_weight and set_bias methods
nghi-truyen Aug 3, 2024
d0bbb22
Minor fix typos
nghi-truyen Aug 3, 2024
42cfe15
Merge branch 'enh-net-forward-pass' into enh-adaptive-opt-for-all-map…
nghi-truyen Aug 3, 2024
fac74cf
DOC: fix optimize_options documentation
nghi-truyen Aug 3, 2024
a04d2e5
MAINT: remove lbfgsb fortran external file + fix verbose
nghi-truyen Aug 4, 2024
e93333b
MAINT: change to g format to display cost values optimize verbose
nghi-truyen Aug 4, 2024
35e4096
MAINT: change display format verbose smash.optmize
nghi-truyen Aug 5, 2024
685aab5
FIX: update verbose api documentation
nghi-truyen Aug 5, 2024
39627d3
FIX: fix float format verbose ann optimize
nghi-truyen Aug 5, 2024
b397bc5
FIX: remove duplicated function due to merging error
nghi-truyen Aug 5, 2024
c255963
MAINT: handle return options + fix verbose optimize:
nghi-truyen Aug 6, 2024
700d582
Fix api doc cance
nghi-truyen Aug 6, 2024
c1e1bca
FIX: make check
nghi-truyen Aug 6, 2024
775138c
ENH: add callback method for optimization functions
nghi-truyen Aug 6, 2024
4166e0e
FIX/ENH: fix doc default_optimize + generic doc for mapping and optim…
nghi-truyen Aug 7, 2024
72c2944
Merge branch 'enh-adaptive-opt-for-all-mappings' into enh-add-callbac…
nghi-truyen Aug 7, 2024
b25b168
DOC: add example for callback optimize doc
nghi-truyen Aug 7, 2024
365691f
DOC: enhance description of callback optimize doc
nghi-truyen Aug 7, 2024
b635084
FIX: net key callback was missing for ann optimize
nghi-truyen Aug 7, 2024
14c6cd2
MAINT: remove see also default_optimize doc
nghi-truyen Aug 8, 2024
d15d4f3
Merge branch 'enh-adaptive-opt-for-all-mappings' into enh-add-callbac…
nghi-truyen Aug 8, 2024
26a28d3
ENH: add hybrid models for all gr and loieau structures
nghi-truyen Aug 8, 2024
abf32fa
FIX: typos API documentation
nghi-truyen Aug 8, 2024
84ea17b
FIX: typos API documentation
nghi-truyen Aug 8, 2024
23a35f1
MAINT: remove cost_options from optimize_control_info method
nghi-truyen Aug 9, 2024
a9edd3b
Fix standardize_optimize_args calling
nghi-truyen Aug 9, 2024
9962682
Fix standardize_optimize_args calling
nghi-truyen Aug 9, 2024
d8bed94
MAINT: return a copy of intermediate control value for lbfgsb optimzie
nghi-truyen Aug 9, 2024
85a8e04
ENH: add methods to retrieve the model parameters from contorl vector:
nghi-truyen Aug 9, 2024
7a33fd2
MAINT: return a copy of intermediate control value for lbfgsb optimzie
nghi-truyen Aug 9, 2024
de15ad3
MAINT: return a copy of intermediate control value for lbfgsb optimzie
nghi-truyen Aug 9, 2024
c504046
MAINT: return a copy of intermediate control value for lbfgsb optimzie
nghi-truyen Aug 9, 2024
c993de7
Merge branch 'enh-add-callback-optimize' into maint-remove-cost-optio…
nghi-truyen Aug 9, 2024
3824a6a
Merge branch 'enh-add-callback-optimize' into enh-retrieve-model-from…
nghi-truyen Aug 9, 2024
906a6dc
Merge branch 'maint-remove-cost-options-control-info' into enh-retrie…
nghi-truyen Aug 9, 2024
b0239d5
Merge branch 'enh-retrieve-model-from-control' into enh-hybrid-models…
nghi-truyen Aug 9, 2024
6fdad5a
FIX: fix generating api doc:
nghi-truyen Aug 9, 2024
4ab3cc6
Merge branch 'enh-retrieve-model-from-control' into enh-hybrid-models…
nghi-truyen Aug 9, 2024
4ffb84c
DOC: complete API documentation for set_control methods
nghi-truyen Aug 14, 2024
b823e91
Merge branch 'enh-retrieve-model-from-control' into enh-hybrid-models…
nghi-truyen Aug 14, 2024
23df534
FIX: returns control with random values depending on random_state ins…
nghi-truyen Aug 14, 2024
5864ae9
Merge branch 'enh-adaptive-opt-for-all-mappings' into enh-add-callbac…
nghi-truyen Aug 14, 2024
ecd3d62
Merge branch 'enh-add-callback-optimize' into maint-remove-cost-optio…
nghi-truyen Aug 14, 2024
405145a
Merge branch 'maint-remove-cost-options-control-info' into enh-retrie…
nghi-truyen Aug 14, 2024
634ab8f
MAINT: refactorize net initialization + fix api doc for set_control m…
nghi-truyen Aug 14, 2024
61191af
Merge branch 'enh-retrieve-model-from-control' into enh-hybrid-models…
nghi-truyen Aug 14, 2024
1b40d8d
Merge branch 'enh-hybrid-models' into enh-net-forward-pass
nghi-truyen Aug 14, 2024
fceee65
Merge branch 'enh-net-forward-pass' into enh-adaptive-opt-for-all-map…
nghi-truyen Aug 14, 2024
69d4483
Merge branch 'enh-adaptive-opt-for-all-mappings' into enh-add-callbac…
nghi-truyen Aug 14, 2024
d51c661
Merge branch 'enh-add-callback-optimize' into maint-remove-cost-optio…
nghi-truyen Aug 14, 2024
1fc025c
Merge branch 'maint-remove-cost-options-control-info' into enh-retrie…
nghi-truyen Aug 14, 2024
126039b
Fix API doc nn_parameters argument for set_control
nghi-truyen Aug 14, 2024
f98b8dd
Merge branch 'enh-retrieve-model-from-control' into enh-hybrid-models…
nghi-truyen Aug 14, 2024
c351f70
DOC: minor change on hydrological_module api doc
nghi-truyen Aug 14, 2024
4ad25c0
MAINT: change default network for optimization with ann mapping (#7)
nghi-truyen Aug 19, 2024
1699029
Merge branch 'maint-change-default-net' into enh-hybrid-models-gr-and…
nghi-truyen Aug 19, 2024
bf4f676
FIX: correct/update lez regionalization for ann mapping
nghi-truyen Aug 19, 2024
094c28c
Merge branch 'maint-change-default-net' into enh-hybrid-models-gr-and…
nghi-truyen Aug 19, 2024
04a4a02
Revert cost information user guide ann regionalization
nghi-truyen Aug 19, 2024
951cb15
Merge branch 'maint-change-default-net' into enh-hybrid-models-gr-and…
nghi-truyen Aug 19, 2024
ebe3275
MAINT: merge branch main into enh-adaptive-opt-for-all-mappings
nghi-truyen Sep 10, 2024
1f6798e
Merge pull request #8 from nghi-truyen/merge-adaptive-opt
nghi-truyen Sep 10, 2024
ab49571
Re-generate baseline and fix unittest
nghi-truyen Sep 10, 2024
dbcec34
Merge remote-tracking branch 'upstream/main' into enh-adaptive-optimi…
nghi-truyen Sep 10, 2024
5976ba9
FIX PR: re-generate baseline and Merge remote-tracking branch 'upstre…
nghi-truyen Sep 11, 2024
085cc1b
Resolve merge conflict remote-tracking branch 'upstream/main' into en…
nghi-truyen Sep 11, 2024
67cb10c
ENH: add hybrid structure grc_mlp for grc model
nghi-truyen Sep 11, 2024
73b7ffb
Apply suggestion changes from the first review of FC
nghi-truyen Sep 11, 2024
313378c
Merge branch 'enh-adaptive-optimizers' into enh-add-callback-optimize
nghi-truyen Sep 11, 2024
fcc61f7
MAINT/ENH: generate baseline + add tests for callback signature into …
nghi-truyen Sep 11, 2024
1bbb453
Apply suggestion changes from PAG and FC review
nghi-truyen Sep 12, 2024
c8e3910
Apply suggestion changes from FC second review
nghi-truyen Sep 12, 2024
ce38a16
Merge branch 'enh-adaptive-optimizers' into enh-add-callback-optimize
nghi-truyen Sep 12, 2024
2c5ee19
Merge remote-tracking branch 'upstream/main' into enh-add-callback-op…
nghi-truyen Sep 12, 2024
39ccb1d
Fix merge upstream/main into origin/enh-add-callback-optimize
nghi-truyen Sep 12, 2024
3a4c611
MAINT: remove cost_options from optimize_control_info method
nghi-truyen Sep 12, 2024
10b2e6d
MAINT: change default network for optimization with ann mapping
nghi-truyen Sep 12, 2024
2538113
Re-generate the baseline
nghi-truyen Sep 12, 2024
b2a7a1f
Merge branch 'maint-change-default-net' into enh-retrieve-model-from-…
nghi-truyen Sep 12, 2024
15150c5
Fix variable name api doc
nghi-truyen Sep 12, 2024
40449e6
Merge branch 'enh-retrieve-model-from-control' into enh-hybrid-models…
nghi-truyen Sep 12, 2024
0616934
Apply suggestion changes from FC review
nghi-truyen Sep 13, 2024
060bd9e
Apply suggestion change from PAG review
nghi-truyen Sep 13, 2024
328d804
Merge branch 'enh-add-callback-optimize' into maint-remove-cost-optio…
nghi-truyen Sep 13, 2024
18d653b
Merge remote-tracking branch 'upstream/main' into maint-remove-cost-o…
nghi-truyen Sep 13, 2024
ae15fe1
Merge branch 'enh-add-callback-optimize' into maint-change-default-net
nghi-truyen Sep 13, 2024
76ee294
Merge remote-tracking branch 'upstream/main' into maint-change-defaul…
nghi-truyen Sep 13, 2024
007454a
Merge branch 'maint-remove-cost-options-control-info' into enh-retrie…
nghi-truyen Sep 13, 2024
c905e83
Merge branch 'maint-change-default-net' into enh-retrieve-model-from-…
nghi-truyen Sep 13, 2024
7929854
Apply suggestion changes from PAG review
nghi-truyen Sep 13, 2024
7a6288b
Merge branch 'maint-change-default-net' into enh-retrieve-model-from-…
nghi-truyen Sep 13, 2024
7c816ba
Apply suggestion change from FC review
nghi-truyen Sep 14, 2024
59a39a7
Merge branch 'maint-change-default-net' into enh-retrieve-model-from-…
nghi-truyen Sep 14, 2024
520dd3d
Merge remote-tracking branch 'upstream/main' into enh-retrieve-model-…
nghi-truyen Sep 14, 2024
66599fb
Apply suggestion changes from FC review
nghi-truyen Sep 15, 2024
3eba900
Merge branch 'enh-retrieve-model-from-control' into enh-hybrid-models…
nghi-truyen Sep 17, 2024
70db3c1
Merge remote-tracking branch 'upstream/main' into enh-hybrid-models-g…
nghi-truyen Sep 17, 2024
0572fc6
MAINT: Update branch + merge from main
nghi-truyen Sep 18, 2024
c8a3d1d
Merge remote-tracking branch 'upstream/main' into enh-hybrid-models-g…
nghi-truyen Sep 18, 2024
5ed2a84
Revert _version.py
nghi-truyen Sep 18, 2024
ea64b28
FIX: wrong output size of the parameterization NN for grc_mlp structure
nghi-truyen Sep 19, 2024
281b52e
Merge remote-tracking branch 'upstream/main' into enh-hybrid-models-g…
nghi-truyen Sep 24, 2024
535c4c3
Apply suggestion changes from FC and PAG reviews
nghi-truyen Sep 24, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
139 changes: 77 additions & 62 deletions smash/_constant.py
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,21 @@ def get_neurons_from_hydrological_module(hydrological_module: str, hidden_neuron
elif hydrological_module == "gr4_ode_mlp":
# % fixed NN input size = 4 and fixed NN output size 5
n_in, n_out = (4, 5)
elif hydrological_module == "gr5_mlp":
# % fixed NN input size = 4 and fixed NN output size 4
n_in, n_out = (4, 4)
elif hydrological_module == "gr6_mlp":
# % fixed NN input size = 5 and fixed NN output size 5
n_in, n_out = (5, 5)
elif hydrological_module == "grc_mlp":
# % fixed NN input size = 5 and fixed NN output size 5
n_in, n_out = (5, 5)
elif hydrological_module == "grd_mlp":
# % fixed NN input size = 4 and fixed NN output size 2
n_in, n_out = (4, 2)
elif hydrological_module == "loieau_mlp":
# % fixed NN input size = 4 and fixed NN output size 3
n_in, n_out = (4, 3)
nghi-truyen marked this conversation as resolved.
Show resolved Hide resolved

neurons[0] = n_in
non_zero_hidden_neurons = [val for val in hidden_neuron if val > 0]
Expand All @@ -64,16 +79,21 @@ def get_neurons_from_hydrological_module(hydrological_module: str, hidden_neuron

HYDROLOGICAL_MODULE = [
"gr4",
"gr4_ri",
"gr4_mlp",
"gr4_ri",
"gr4_ode",
"gr4_ode_mlp",
"gr5",
"gr5_mlp",
"gr5_ri",
"gr6",
"gr6_mlp",
"grc",
"grc_mlp",
"grd",
"grd_mlp",
"loieau",
"loieau_mlp",
"vic3l",
]

Expand All @@ -97,20 +117,18 @@ def get_neurons_from_hydrological_module(hydrological_module: str, hidden_neuron
HYDROLOGICAL_MODULE_RR_PARAMETERS = dict(
zip(
HYDROLOGICAL_MODULE,
[
["ci", "cp", "ct", "kexc"], # % gr4
["ci", "cp", "ct", "alpha1", "alpha2", "kexc"], # % gr4_ri
["ci", "cp", "ct", "kexc"], # % gr4_mlp
["ci", "cp", "ct", "kexc"], # % gr4_ode
["ci", "cp", "ct", "kexc"], # % gr4_ode_mlp
["ci", "cp", "ct", "kexc", "aexc"], # % gr5
["ci", "cp", "ct", "alpha1", "alpha2", "kexc", "aexc"], # % gr5_ri
["ci", "cp", "ct", "be", "kexc", "aexc"], # % gr6
["ci", "cp", "ct", "cl", "kexc"], # % grc
["cp", "ct"], # % grd
["ca", "cc", "kb"], # % loieau
["b", "cusl", "cmsl", "cbsl", "ks", "pbc", "ds", "dsm", "ws"], # % vic3l
],
(
[["ci", "cp", "ct", "kexc"]] * 2 # % gr4, gr4_mlp,
+ [["ci", "cp", "ct", "alpha1", "alpha2", "kexc"]] # % gr4_ri
+ [["ci", "cp", "ct", "kexc"]] * 2 # % gr4_ode, gr4_ode_mlp
+ [["ci", "cp", "ct", "kexc", "aexc"]] * 2 # % gr5, gr5_mlp
+ [["ci", "cp", "ct", "alpha1", "alpha2", "kexc", "aexc"]] # % gr5_ri
+ [["ci", "cp", "ct", "be", "kexc", "aexc"]] * 2 # % gr6, gr6_mlp
+ [["ci", "cp", "ct", "cl", "kexc"]] * 2 # % grc, grc_mlp
+ [["cp", "ct"]] * 2 # % grd, grd_mlp
+ [["ca", "cc", "kb"]] * 2 # % loieau, loieau_mlp
+ [["b", "cusl", "cmsl", "cbsl", "ks", "pbc", "ds", "dsm", "ws"]] # % vic3l
),
)
)

Expand Down Expand Up @@ -141,20 +159,14 @@ def get_neurons_from_hydrological_module(hydrological_module: str, hidden_neuron
HYDROLOGICAL_MODULE_RR_STATES = dict(
zip(
HYDROLOGICAL_MODULE,
[
["hi", "hp", "ht"], # % gr4
["hi", "hp", "ht"], # % gr4_ri
["hi", "hp", "ht"], # % gr4_mlp
["hi", "hp", "ht"], # % gr4_ode
["hi", "hp", "ht"], # % gr4_ode_mlp
["hi", "hp", "ht"], # % gr5
["hi", "hp", "ht"], # % gr5_ri
["hi", "hp", "ht", "he"], # % gr6
["hi", "hp", "ht", "hl"], # % grc
["hp", "ht"], # % grd
["ha", "hc"], # % loieau
["hcl", "husl", "hmsl", "hbsl"], # % vic3l
],
(
[["hi", "hp", "ht"]] * 8 # % gr4, gr4_mlp, gr4_ri, gr4_ode, gr4_ode_mlp, gr5, gr5_mlp, gr5_ri
nghi-truyen marked this conversation as resolved.
Show resolved Hide resolved
+ [["hi", "hp", "ht", "he"]] * 2 # % gr6, gr6_mlp
+ [["hi", "hp", "ht", "hl"]] * 2 # % grc, grc_mlp
+ [["hp", "ht"]] * 2 # % grd, grd_mlp
+ [["ha", "hc"]] * 2 # % loieau, loieau_mlp
+ [["hcl", "husl", "hmsl", "hbsl"]] # % vic3l
),
)
)

Expand Down Expand Up @@ -187,20 +199,19 @@ def get_neurons_from_hydrological_module(hydrological_module: str, hidden_neuron
HYDROLOGICAL_MODULE_RR_INTERNAL_FLUXES = dict(
zip(
HYDROLOGICAL_MODULE,
[
["pn", "en", "pr", "perc", "lexc", "prr", "prd", "qr", "qd", "qt"], # % gr4
["pn", "en", "pr", "perc", "lexc", "prr", "prd", "qr", "qd", "qt"], # % gr4-ri
["pn", "en", "pr", "perc", "lexc", "prr", "prd", "qr", "qd", "qt"], # % gr4_mlp
["pn", "en", "lexc", "qt"], # % gr4_ode
["pn", "en", "lexc", "qt"], # % gr4_ode_mlp
["pn", "en", "pr", "perc", "lexc", "prr", "prd", "qr", "qd", "qt"], # % gr5
["pn", "en", "pr", "perc", "lexc", "prr", "prd", "qr", "qd", "qt"], # % gr5-ri
["pn", "en", "pr", "perc", "lexc", "prr", "prd", "pre", "qr", "qd", "qe", "qt"], # % gr6
["pn", "en", "pr", "perc", "lexc", "prr", "prd", "prl", "qr", "qd", "ql", "qt"], # % grc
["ei", "pn", "en", "pr", "perc", "prr", "qr", "qt"], # % grd
["ei", "pn", "en", "pr", "perc", "prr", "prd", "qr", "qd", "qt"], # % loieau
["pn", "en", "qr", "qb", "qt"], # % vic3l
],
(
[["pn", "en", "pr", "perc", "lexc", "prr", "prd", "qr", "qd", "qt"]] * 3 # % gr4, gr4_mlp, gr4_ri
+ [["pn", "en", "lexc", "qt"]] * 2 # % gr4_ode, gr4_ode_mlp
+ [["pn", "en", "pr", "perc", "lexc", "prr", "prd", "qr", "qd", "qt"]]
* 3 # % gr5, gr5_mlp, gr5_ri
+ [["pn", "en", "pr", "perc", "lexc", "prr", "prd", "pre", "qr", "qd", "qe", "qt"]]
* 2 # % gr6, gr6_mlp
+ [["pn", "en", "pr", "perc", "lexc", "prr", "prd", "prl", "qr", "qd", "ql", "qt"]]
* 2 # % grc, grc_mlp
+ [["ei", "pn", "en", "pr", "perc", "prr", "qr", "qt"]] * 2 # % grd, grd_mlp
+ [["ei", "pn", "en", "pr", "perc", "prr", "prd", "qr", "qd", "qt"]] * 2 # % loieau, loieau_mlp
+ [["pn", "en", "qr", "qb", "qt"]] # % vic3l
),
)
)

Expand Down Expand Up @@ -258,18 +269,20 @@ def get_neurons_from_hydrological_module(hydrological_module: str, hidden_neuron

RR_PARAMETERS = [
"kmlt", # % ssn
"ci", # % (gr4, gr4_ri, gr4_mlp, gr4_ode, gr4_ode_mlp, gr5, gr5_ri, grc, gr6)
"cp", # % (gr4, gr4_ri, gr4_mlp, gr4_ode, gr4_ode_mlp, gr5, gr5_ri, grc, gr6, grd)
"ct", # % (gr4, gr4_ri, gr4_mlp, gr4_ode, gr4_ode_mlp, gr5, gr5_ri, grc, gr6, grd)
"alpha1", # % (gr4_ri, gr5_ri)
"alpha2", # % (gr4_ri, gr5_ri)
"cl", # % grc
"be", # % (gr6)
"kexc", # % (gr4, gr4_ri, gr4_mlp, gr4_ode, gr4_ode_mlp, gr5, gr5_ri, grc, gr6)
"aexc", # % (gr5, gr5_ri, gr6)
"ca", # % loieau
"cc", # % loieau
"kb", # % loieau
"ci", # % gr4, gr4_mlp, gr4_ri, gr4_ode, gr4_ode_mlp, gr5, gr5_mlp, gr5_ri, gr6, gr6_mlp, grc, grc_mlp
"cp", # % gr4, gr4_mlp, gr4_ri, gr4_ode, gr4_ode_mlp, gr5, gr5_mlp, gr5_ri, gr6, gr6_mlp, grc, grc_mlp,
# % grd, grd_mlp
"ct", # % gr4, gr4_mlp, gr4_ri, gr4_ode, gr4_ode_mlp, gr5, gr5_mlp, gr5_ri, gr6, gr6_mlp, grc, grc_mlp,
# %grd, grd_mlp
"alpha1", # % gr4_ri, gr5_ri
"alpha2", # % gr4_ri, gr5_ri
"cl", # % grc, grc_mlp
"be", # % gr6, gr6_mlp
"kexc", # % gr4, gr4_mlp, gr4_ri, gr4_ode, gr4_ode_mlp, gr5, gr5_mlp, gr6, gr6_mlp, grc, grc_mlp
"aexc", # % gr5, gr5_mlp, gr5_ri, gr6, gr6_mlp
"ca", # % loieau, loieau_mlp
"cc", # % loieau, loieau_mlp
"kb", # % loieau, loieau_mlp
"b", # % vic3l
"cusl", # % vic3l
"cmsl", # % vic3l
Expand All @@ -286,13 +299,15 @@ def get_neurons_from_hydrological_module(hydrological_module: str, hidden_neuron

RR_STATES = [
"hs", # % ssn
"hi", # % (gr4, gr4_ri, gr4_mlp, gr4_ode, gr4_ode_mlp, gr5, gr5_ri, grc, gr6)
"hp", # % (gr4, gr4_ri, gr4_mlp, gr4_ode, gr4_ode_mlp, gr5, gr5_ri, grc, gr6, grd)
"ht", # % (gr4, gr4_ri, gr4_mlp, gr4_ode, gr4_ode_mlp, gr5, gr5_ri, grc, gr6, grd)
"hl", # % grc
"he", # % gr6
"ha", # % loieau
"hc", # % loieau
"hi", # % gr4, gr4_mlp, gr4_ri, gr4_ode, gr4_ode_mlp, gr5, gr5_mlp, gr5_ri, gr6, gr6_mlp, grc, grc_mlp
"hp", # % gr4, gr4_mlp, gr4_ri, gr4_ode, gr4_ode_mlp, gr5, gr5_mlp, gr5_ri, gr6, gr6_mlp, grc, grc_mlp,
# % grd, grd_mlp
"ht", # % gr4, gr4_mlp, gr4_ri, gr4_ode, gr4_ode_mlp, gr5, gr5_mlp, gr5_ri, gr6, gr6_mlp, grc, grc_mlp,
# % grd, grd_mlp
"hl", # % grc, grc_mlp
"he", # % gr6, gr6_mlp
"ha", # % loieau, loieau_mlp
"hc", # % loieau, loieau_mlp
"hcl", # % vic3l
"husl", # % vic3l
"hmsl", # % vic3l
Expand Down
15 changes: 6 additions & 9 deletions smash/core/model/model.py
Original file line number Diff line number Diff line change
Expand Up @@ -125,15 +125,12 @@ class Model:
hydrological_module : `str`, default 'gr4'
Name of hydrological module. Should be one of:

- ``'gr4'``
- ``'gr4_mlp'``
- ``'gr4_ode'``
- ``'gr4_ode_mlp'``
- ``'gr5'``
- ``'gr6'``
- ``'grc'``
- ``'grd'``
- ``'loieau'``
- ``'gr4'``, ``'gr4_mlp'``, ``'gr4_ri'``, ``'gr4_ode'``, ``'gr4_ode_mlp'``
- ``'gr5'``, ``'gr5_mlp'``, ``'gr5_ri'``
- ``'gr6'``, ``'gr6_mlp'``
- ``'grc'``, ``'grc_mlp'``
- ``'grd'``, ``'grd_mlp'``
- ``'loieau'``, ``'loieau_mlp'``
- ``'vic3l'``

.. hint::
Expand Down
Loading
Loading