Skip to content

Commit

Permalink
Apply overrides in Land
Browse files Browse the repository at this point in the history
  • Loading branch information
liuly12 committed Mar 5, 2024
1 parent 60e4b20 commit 5c0f623
Showing 1 changed file with 25 additions and 0 deletions.
25 changes: 25 additions & 0 deletions wsimod/nodes/land.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
from wsimod.nodes.nodes import DecayTank, Node, ResidenceTank
from wsimod.nodes.nutrient_pool import NutrientPool

from typing import Any, Dict

class Land(Node):
""""""
Expand Down Expand Up @@ -158,7 +159,31 @@ def __init__(
self.mass_balance_ds.append(self.surface_runoff.ds)
self.mass_balance_ds.append(self.subsurface_runoff.ds)
self.mass_balance_ds.append(self.percolation.ds)

def apply_overrides(self, overrides=Dict[str, Any]):
"""Apply overrides to the Land.
Enables a user to override any parameter of the residence_time and update
the residence_tank accordingly.
Args:
overrides (Dict[str, Any]): Dict describing which parameters should
be overridden (keys) and new values (values). Defaults to {}.
"""
self.surface_residence_time = overrides.pop(
"surface_residence_time",
self.surface_residence_time)
self.subsurface_residence_time = overrides.pop(
"subsurface_residence_time",
self.subsurface_residence_time)
self.percolation_residence_time = overrides.pop(
"percolation_residence_time",
self.percolation_residence_time)
self.surface_runoff.residence_time = self.surface_residence_time
self.subsurface_runoff.residence_time = self.subsurface_residence_time
self.percolation.residence_time = self.percolation_residence_time
super().apply_overrides(overrides)

def apply_irrigation(self):
"""Iterate over any irrigation functions (needs further testing..
Expand Down

0 comments on commit 5c0f623

Please sign in to comment.