The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.

Load Packages

library(plantecowrap)

Fit ACi Curves then fit temperature responses

#Read in data from package
data <- read.csv(system.file("extdata", "example_1.csv",
                             package = "plantecowrap"),
                 stringsAsFactors = FALSE)
#Fit ACi curves
fits <- fitacis2(data = data,
                 varnames = list(ALEAF = "A",
                                 Tleaf = "Tleaf",
                                 Ci = "Ci",
                                 PPFD = "PPFD",
                                 Rd = "Rd",
                                 Press = "Press"),
                 group1 = "Treat",
                 fitTPU = FALSE,
                 fitmethod = "bilinear",
                 gm25 = 10000, #Allows fitting on an ACi rather than ACc-basis
                 Egm = 0)

#Get ACi outputs
outputs <- acisummary(data, group1 = "Treat", fits = fits)

#Fit temperature response
#Note that this will return NA warnings because it runs through
#1000 sets of starting parameters for Vcmax and Jmax
tresp <- fit_topt_VJ(outputs)
## Warning in fit_topt_VJ(outputs): NAs introduced by coercion

## Warning in fit_topt_VJ(outputs): NAs introduced by coercion

## Warning in fit_topt_VJ(outputs): NAs introduced by coercion

## Warning in fit_topt_VJ(outputs): NAs introduced by coercion

## Warning in fit_topt_VJ(outputs): NAs introduced by coercion

## Warning in fit_topt_VJ(outputs): NAs introduced by coercion
## Warning in nls.lm(par = start, fn = FCT, jac = jac, control = control, lower = lower, : lmdif: info = -1. Number of iterations has reached `maxiter' == 100.
## Warning in fit_topt_VJ(outputs): NAs introduced by coercion

## Warning in fit_topt_VJ(outputs): NAs introduced by coercion

## Warning in fit_topt_VJ(outputs): NAs introduced by coercion

## Warning in fit_topt_VJ(outputs): NAs introduced by coercion

## Warning in fit_topt_VJ(outputs): NAs introduced by coercion

## Warning in fit_topt_VJ(outputs): NAs introduced by coercion
#See parameters
tresp[[2]]
##   Parameter      k25       Ea Residual      BIC
## 1     Vcmax  75.1461 53.45129 73.99293 53.18597
## 2      Jmax 148.6158 78.94620 60.95280 52.36863
#See plot
tresp[[3]]

#Fitting of multiple temperature responses

#Read in data from package
data2 <- read.csv(system.file("extdata", "example_2.csv",
                             package = "plantecowrap"),
                 stringsAsFactors = FALSE)
#Fit ACi curves
fits2 <- fitacis2(data = data2,
                 varnames = list(ALEAF = "A",
                                 Tleaf = "Tleaf",
                                 Ci = "Ci",
                                 PPFD = "PPFD",
                                 Rd = "Rd",
                                 Press = "Press"),
                 group1 = "Grouping",
                 fitTPU = FALSE,
                 fitmethod = "bilinear",
                 gm25 = 10000,
                 Egm = 0)

#Get ACi outputs
outputs <- acisummary(data2, group1 = "Grouping", fits = fits2)
#NOTE: if fitacis2 fails to fit a curve, some output elements will be "Failed"
#and need to be removed before acisummary() is run

#Split grouping variable
outputs <- separate(outputs, col = "ID", into = c("Treat", "Block"), sep = "_")

#Note that this will return NA warnings because it runs through
#1000 sets of starting parameters for Vcmax and Jmax. Some of
#these sets will not work and return the NA warning.
tresps <- fit_topt_VJs(data = outputs,
                       group = "Block")
## Warning in fit_topt_VJ(data = data[[i]], varnames = varnames, title =
## names(data[i]), : NAs introduced by coercion

## Warning in fit_topt_VJ(data = data[[i]], varnames = varnames, title =
## names(data[i]), : NAs introduced by coercion

## Warning in fit_topt_VJ(data = data[[i]], varnames = varnames, title =
## names(data[i]), : NAs introduced by coercion

## Warning in fit_topt_VJ(data = data[[i]], varnames = varnames, title =
## names(data[i]), : NAs introduced by coercion

## Warning in fit_topt_VJ(data = data[[i]], varnames = varnames, title =
## names(data[i]), : NAs introduced by coercion

## Warning in fit_topt_VJ(data = data[[i]], varnames = varnames, title =
## names(data[i]), : NAs introduced by coercion
## Warning in nls.lm(par = start, fn = FCT, jac = jac, control = control, lower = lower, : lmdif: info = -1. Number of iterations has reached `maxiter' == 100.
## Warning in fit_topt_VJ(data = data[[i]], varnames = varnames, title =
## names(data[i]), : NAs introduced by coercion

## Warning in fit_topt_VJ(data = data[[i]], varnames = varnames, title =
## names(data[i]), : NAs introduced by coercion

## Warning in fit_topt_VJ(data = data[[i]], varnames = varnames, title =
## names(data[i]), : NAs introduced by coercion

## Warning in fit_topt_VJ(data = data[[i]], varnames = varnames, title =
## names(data[i]), : NAs introduced by coercion

## Warning in fit_topt_VJ(data = data[[i]], varnames = varnames, title =
## names(data[i]), : NAs introduced by coercion

## Warning in fit_topt_VJ(data = data[[i]], varnames = varnames, title =
## names(data[i]), : NAs introduced by coercion

## Warning in fit_topt_VJ(data = data[[i]], varnames = varnames, title =
## names(data[i]), : NAs introduced by coercion

## Warning in fit_topt_VJ(data = data[[i]], varnames = varnames, title =
## names(data[i]), : NAs introduced by coercion

## Warning in fit_topt_VJ(data = data[[i]], varnames = varnames, title =
## names(data[i]), : NAs introduced by coercion

## Warning in fit_topt_VJ(data = data[[i]], varnames = varnames, title =
## names(data[i]), : NAs introduced by coercion

## Warning in fit_topt_VJ(data = data[[i]], varnames = varnames, title =
## names(data[i]), : NAs introduced by coercion

## Warning in fit_topt_VJ(data = data[[i]], varnames = varnames, title =
## names(data[i]), : NAs introduced by coercion

## Warning in fit_topt_VJ(data = data[[i]], varnames = varnames, title =
## names(data[i]), : NAs introduced by coercion

## Warning in fit_topt_VJ(data = data[[i]], varnames = varnames, title =
## names(data[i]), : NAs introduced by coercion

## Warning in fit_topt_VJ(data = data[[i]], varnames = varnames, title =
## names(data[i]), : NAs introduced by coercion

## Warning in fit_topt_VJ(data = data[[i]], varnames = varnames, title =
## names(data[i]), : NAs introduced by coercion

## Warning in fit_topt_VJ(data = data[[i]], varnames = varnames, title =
## names(data[i]), : NAs introduced by coercion

## Warning in fit_topt_VJ(data = data[[i]], varnames = varnames, title =
## names(data[i]), : NAs introduced by coercion
#Get parameters
pars <- get_t_pars(tresps)

#Get graphs
graphs <- get_t_graphs(tresps)

#Print graphs
#To print to current working directory, set path = "./".
print_graphs(graphs,
             path = tempdir())
## $a
## 
## $b
#View parameters
pars
##            Ea       Hd       kopt     Topt   residual      BIC Parameter ID
## 826 106.75701 142.7305   143.3115 36.00000  37.035038 50.24750     Vcmax  a
## 635  95.19201 382.7120   408.6462 35.41034   7.328159 31.74101      Jmax  a
## 657 107.91985 142.5541   285.6264 36.00000  71.942181 58.42544     Vcmax  b
## 679 942.06739 997.3328 11123.9346 30.07649 279.263391 77.94101      Jmax  b
#View graphs
#Note that the second graph is strange because A was simply multiplied by
#2 for the sample dataset
graphs[[1]]
## $a

graphs[[2]]
## $b

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.