Index: wflow-py/wflow/wflow_sbm.py =================================================================== diff -u -r58bc7deccc76d943b9af6df97fafb2574554a6b4 -r6d5806cc85b89b7449a13ae676eef3a205b05f61 --- wflow-py/wflow/wflow_sbm.py (.../wflow_sbm.py) (revision 58bc7deccc76d943b9af6df97fafb2574554a6b4) +++ wflow-py/wflow/wflow_sbm.py (.../wflow_sbm.py) (revision 6d5806cc85b89b7449a13ae676eef3a205b05f61) @@ -504,7 +504,7 @@ self.Cmax = self.Sl * self.LAI + self.Swood self.CanopyGapFraction = exp(-self.Kext * self.LAI) - + # TODO: Add MAXLAI and CWf lookup else: self.Cmax = self.readtblDefault(self.Dir + "/" + self.intbl + "/MaxCanopyStorage.tbl", self.LandUse, subcatch, self.Soil, 1.0) @@ -900,12 +900,18 @@ if hasattr(self,"LAI"): # Sl must also be defined + ##TODO: add MAXLAI and CWf self.Cmax = self.Sl * self.LAI + self.Swood self.CanopyGapFraction = exp(-self.Kext * self.LAI) self.Ewet = (1 - exp(-self.Kext * self.LAI)) * self.PotenEvap self.EoverR = ifthenelse(self.Precipitation > 0.0, \ min(0.25,cover(self.Ewet/max(0.0001,self.Precipitation),0.0)), 0.0) + if hasattr(self,'MAXLAI') and hasattr(self,'CWf'): + # Adjust rootinggdepth + self.ActRootingDept = self.CWf * (self.RootingDepth * self.LAI/self.MAXLAI) + ((1- self.CWf) * self.RootingDepth) + + #Apply forcing data corrections self.PotenEvap = self.PotenEvap * self.et_RefToPot if self.modelSnow: @@ -1027,7 +1033,8 @@ # Determine transpiration # Split between bare soil and vegetation self.potsoilevap = (1.0 - self.CanopyGapFraction) * self.PotTransSoil - self.PotTrans = self.CanopyGapFraction * self.PotTransSoil + + self.SaturationDeficit = self.FirstZoneCapacity - self.FirstZoneDepth # Linear reduction of soil moisture evaporation based on deficit self.soilevap = self.potsoilevap * min(1.0, self.SaturationDeficit/self.FirstZoneCapacity)