Learn R Programming

medfate (version 2.8.0)

spwb_day: Single day simulation

Description

Function spwb_day performs water balance for a single day and growth_day performs water and carbon balance for a single day.

Usage

spwb_day(x, date, tmin, tmax, rhmin, rhmax, rad, wind, 
         latitude, elevation, slope, aspect, prec, CO2 = NA, 
         runon = 0.0, modifyInput = TRUE)
growth_day(x, date, tmin, tmax, rhmin, rhmax, rad, wind, 
           latitude, elevation, slope, aspect, prec, CO2 = NA,
           runon = 0.0, modifyInput = TRUE)

Value

Function spwb_day() returns a list of class spwb_day with the following elements:

  • "cohorts": A data frame with cohort information, copied from spwbInput.

  • "topography": Vector with elevation, slope and aspect given as input.

  • "weather": A vector with the input weather.

  • "WaterBalance": A vector of water balance components (rain, snow, net rain, infiltration, ...) for the simulated day, equivalent to one row of 'WaterBalance' object given in spwb.

  • "Soil": A data frame with results for each soil layer:

    • "SoilEvaporation": Water evaporated from the soil surface (in mm).

    • "HydraulicInput": Water entering each soil layer from other layers, transported via plant hydraulic network (in mm) (only for transpirationMode = "Sperry").

    • "HydraulicOutput": Water leaving each soil layer (going to other layers or the transpiration stream) (in mm) (only for transpirationMode = "Sperry").

    • "PlantExtraction": Water extracted by plants from each soil layer (in mm).

    • "psi": Soil water potential (in MPa).

  • "Stand": A named vector with with stand values for the simulated day, equivalent to one row of 'Stand' object returned by spwb.

  • "Plants": A data frame of results for each plant cohort (see transp_transpirationGranier or transp_transpirationSperry).

The following items are only returned when transpirationMode = "Sperry":

  • "EnergyBalance": Energy balance of the stand (see transp_transpirationSperry).

  • "RhizoPsi": Minimum water potential (in MPa) inside roots, after crossing rhizosphere, per cohort and soil layer.

  • "SunlitLeaves" and "ShadeLeaves": For each leaf type, a data frame with values of LAI, Vmax298 and Jmax298 for leaves of this type in each plant cohort.

  • "ExtractionInst": Water extracted by each plant cohort during each time step.

  • "PlantsInst": A list with instantaneous (per time step) results for each plant cohort (see transp_transpirationSperry).

  • "LightExtinction": A list of information regarding radiation balance through the canopy, as returned by function light_instantaneousLightExtinctionAbsortion.

  • "CanopyTurbulence": Canopy turbulence (see wind_canopyTurbulence).

Arguments

x

An object of class spwbInput or growthInput.

date

Date as string "yyyy-mm-dd".

tmin, tmax

Minimum and maximum temperature (in degrees Celsius).

rhmin, rhmax

Minimum and maximum relative humidity (in percent).

rad

Solar radiation (in MJ/m2/day).

wind

Wind speed (in m/s).

prec

Precipitation (in mm).

latitude

Latitude (in degrees). Required when using the 'Sperry' transpiration mode.

elevation, slope, aspect

Elevation above sea level (in m), slope (in degrees) and aspect (in degrees from North). Required when using the 'Sperry' transpiration mode.

CO2

Atmospheric CO2 concentration (in ppm). If missing, default value is drawn from control parameter 'defaultCO2' in x.

runon

Surface water amount running on the target area from upslope (in mm).

modifyInput

Boolean flag to indicate that the input x object is allowed to be modified during the simulation.

Author

Miquel De Cáceres Ainsa, CREAF

Details

Detailed model description is available in the vignettes section. The model using 'Granier' transpiration mode is described in De Caceres et al. (2015). Simulations using the 'Sperry' transpiration mode are computationally much more expensive, are described in De Cáceres et al. (2021) and are illustrated by function transp_transpirationSperry.

References

De Cáceres M, Martínez-Vilalta J, Coll L, Llorens P, Casals P, Poyatos R, Pausas JG, Brotons L. (2015) Coupling a water balance model with forest inventory data to predict drought stress: the role of forest structural changes vs. climate changes. Agricultural and Forest Meteorology (doi:10.1016/j.agrformet.2015.06.012).

De Cáceres M, Mencuccini M, Martin-StPaul N, Limousin JM, Coll L, Poyatos R, Cabon A, Granda V, Forner A, Valladares F, Martínez-Vilalta J (2021) Unravelling the effect of species mixing on water use and drought stress in holm oak forests: a modelling approach. Agricultural and Forest Meteorology 296 (doi: 10.1016/j.agrformet.2020.108233).

See Also

spwbInput, spwb, plot.spwb_day, growthInput, growth, plot.growth_day

Examples

Run this code
#Load example daily meteorological data
data(examplemeteo)

#Load example plot plant data
data(exampleforestMED)

#Default species parameterization
data(SpParamsMED)

#Initialize control parameters
control = defaultControl("Granier")

# Day to be simulated
d = 100


#Simulate water balance one day only (Granier)
examplesoil = soil(defaultSoilParams(4))
x1 = forest2spwbInput(exampleforestMED,examplesoil, SpParamsMED, control)
sd1<-spwb_day(x1, rownames(examplemeteo)[d],  
             examplemeteo$MinTemperature[d], examplemeteo$MaxTemperature[d], 
             examplemeteo$MinRelativeHumidity[d], examplemeteo$MaxRelativeHumidity[d], 
             examplemeteo$Radiation[d], examplemeteo$WindSpeed[d], 
             latitude = 41.82592, elevation = 100, slope=0, aspect=0,
             prec = examplemeteo$Precipitation[d])


#Simulate water balance for one day only (Sperry's mode)
control = defaultControl("Sperry")
x2 = forest2spwbInput(exampleforestMED,examplesoil, SpParamsMED, control)
sd2<-spwb_day(x2, rownames(examplemeteo)[d],
             examplemeteo$MinTemperature[d], examplemeteo$MaxTemperature[d], 
             examplemeteo$MinRelativeHumidity[d], examplemeteo$MaxRelativeHumidity[d], 
             examplemeteo$Radiation[d], examplemeteo$WindSpeed[d], 
             latitude = 41.82592, elevation = 100, slope=0, aspect=0,
             prec = examplemeteo$Precipitation[d])

#Plot plant transpiration (see function 'plot.swb.day()')
plot(sd2)


#Simulate water and carbon balance for one day only
x3 = forest2growthInput(exampleforestMED,examplesoil, SpParamsMED, control)
sd3<-growth_day(x3, rownames(examplemeteo)[d],
             examplemeteo$MinTemperature[d], examplemeteo$MaxTemperature[d], 
             examplemeteo$MinRelativeHumidity[d], examplemeteo$MaxRelativeHumidity[d], 
             examplemeteo$Radiation[d], examplemeteo$WindSpeed[d], 
             latitude = 41.82592, elevation = 100, slope=0, aspect=0,
             prec = examplemeteo$Precipitation[d])

Run the code above in your browser using DataLab