stomatal.slope {bigleaf} | R Documentation |

Estimation of the intrinsic WUE metric "g1" (stomatal slope) from nonlinear regression.

```
stomatal.slope(
data,
Tair = "Tair",
pressure = "pressure",
GPP = "GPP",
Gs = "Gs_mol",
VPD = "VPD",
Ca = "Ca",
Rleaf = NULL,
model = c("USO", "Ball&Berry", "Leuning"),
robust.nls = FALSE,
nmin = 40,
fitg0 = FALSE,
g0 = 0,
fitD0 = FALSE,
D0 = 1.5,
Gamma = 50,
missing.Rleaf.as.NA = FALSE,
constants = bigleaf.constants(),
...
)
```

`data` |
Data.frame or matrix containing all required columns |

`Tair` |
Air (or surface) temperature (deg C) |

`pressure` |
Atmospheric pressure (kPa) |

`GPP` |
Gross primary productivity (umol CO2 m-2 s-1) |

`Gs` |
Surface conductance to water vapor (mol m-2 s-1) |

`VPD` |
Vapor pressure deficit (kPa) |

`Ca` |
Atmospheric CO2 concentration (air or surface) (umol mol-1) |

`Rleaf` |
Ecosystem respiration stemming from leaves (umol CO2 m-2 s-1); defaults to 0 |

`model` |
Stomatal model used. One of |

`robust.nls` |
Use robust nonlinear regression ( |

`nmin` |
Minimum number of data required to perform the fit; defaults to 40. |

`fitg0` |
Should g0 and g1 be fitted simultaneously? |

`g0` |
Minimum stomatal conductance (mol m-2 s-1); ignored if |

`fitD0` |
Should D0 be fitted along with g1 (and g0 if |

`D0` |
Stomatal sensitivity parameter to VPD; only used if |

`Gamma` |
Canopy CO2 compensation point (umol mol-1); only used if |

`missing.Rleaf.as.NA` |
if Rleaf is provided, should missing values be treated as |

`constants` |
Kelvin - conversion degree Celsius to Kelvin |

`...` |

All stomatal models were developed at leaf-level, but its parameters can also be estimated at ecosystem level (but be aware of caveats).

The unified stomatal optimization (USO) model is given by (Medlyn et al. 2011):

`gs = g0 + 1.6*(1.0 + g1/sqrt(VPD)) * An/ca`

The semi-empirical model by Ball et al. 1987 is defined as:

`gs = g0 + g1* ((An * rH) / ca)`

Leuning 1995 suggested a revised version of the Ball&Berry model:

`gs = g0 + g1*An / ((ca - \Gamma) * (1 + VPD/D0))`

where `\Gamma`

is by default assumed to be constant, but likely varies with temperature and among
plant species.
The equations above are valid at leaf-level. At ecosystem level, An is replaced by GPP (or GPP - Rleaf,
where Rleaf is leaf respiration), and gs (stomatal conductance) by Gs (surface conductance).
The parameters in the models are estimated using nonlinear regression (`nls`

) if
`robust.nls = FALSE`

and weighted nonlinear regression if `robust.nls = TRUE`

.
The weights are calculated from `nlrob`

, and `nls`

is used for the actual fitting.
Alternatively to measured VPD and Ca (i.e. conditions at instrument height), conditions at
the big-leaf surface can be provided. Those can be calculated using `surface.conditions`

.

A `nls`

model object, containing information on the fitted parameters, their uncertainty range,
model fit, etc.

Medlyn B.E., et al., 2011: Reconciling the optimal and empirical approaches to modelling stomatal conductance. Global Change Biology 17, 2134-2144.

Ball T.J., Woodrow I.E., Berry J.A. 1987: A model predicting stomatal conductance and its contribution to the control of photosynthesis under different environmental conditions. In: Progress in Photosynthesis Research, edited by J.Biggins, pp. 221-224, Martinus Nijhoff Publishers, Dordrecht, Netherlands.

Leuning R., 1995: A critical appraisal of a combined stomatal-photosynthesis model for C3 plants. Plant, Cell and Environment 18, 339-355.

Knauer, J. et al., 2018: Towards physiologically meaningful water-use efficiency estimates from eddy covariance data. Global Change Biology 24, 694-710.

```
## filter data to ensure that Gs is a meaningful proxy to canopy conductance (Gc)
DE_Tha_Jun_2014_2 <- filter.data(DE_Tha_Jun_2014,quality.control=FALSE,
vars.qc=c("Tair","precip","VPD","H","LE"),
filter.growseas=FALSE,filter.precip=TRUE,
filter.vars=c("Tair","PPFD","ustar","LE"),
filter.vals.min=c(5,200,0.2,0),
filter.vals.max=c(NA,NA,NA,NA),NA.as.invalid=TRUE,
quality.ext="_qc",good.quality=c(0,1),
missing.qc.as.bad=TRUE,GPP="GPP",doy="doy",
year="year",tGPP=0.5,ws=15,min.int=5,precip="precip",
tprecip=0.1,precip.hours=24,records.per.hour=2)
# calculate Gs from the the inverted PM equation
Ga <- aerodynamic.conductance(DE_Tha_Jun_2014_2,Rb_model="Thom_1972")[,"Ga_h"]
# if G and/or S are available, don't forget to indicate (they are ignored by default).
Gs_PM <- surface.conductance(DE_Tha_Jun_2014_2,Tair="Tair",pressure="pressure",
Rn="Rn",G="G",S=NULL,VPD="VPD",Ga=Ga,
formulation="Penman-Monteith")[,"Gs_mol"]
### Estimate the stomatal slope parameter g1 using the USO model
mod_USO <- stomatal.slope(DE_Tha_Jun_2014_2,model="USO",GPP="GPP",Gs=Gs_PM,
robust.nls=FALSE,nmin=40,fitg0=FALSE)
### Use robust regression to minimize influence of outliers in Gs
mod_USO <- stomatal.slope(DE_Tha_Jun_2014_2,model="USO",GPP="GPP",Gs=Gs_PM,
robust.nls=TRUE,nmin=40,fitg0=FALSE)
### Estimate the same parameter from the Ball&Berry model and prescribe g0
mod_BB <- stomatal.slope(DE_Tha_Jun_2014_2,model="Ball&Berry",GPP="GPP",
robust.nls=FALSE,Gs=Gs_PM,g0=0.01,nmin=40,fitg0=FALSE)
## same for the Leuning model, but this time estimate both g1 and g0 (but fix D0)
mod_Leu <- stomatal.slope(DE_Tha_Jun_2014_2,model="Leuning",GPP="GPP",Gs=Gs_PM,
robust.nls=FALSE,nmin=40,fitg0=FALSE,D0=1.5,fitD0=FALSE)
```

[Package *bigleaf* version 0.8.2 Index]