STRN | R Documentation |
Estimate the parameters that best describe the sexualisation thermal reaction norm within the TSP.
The sexratio parameter is a character string which can be:
TSP.TimeWeighted.sexratio.mean
Sex ratio based on average temperature during the TSP
TSP.GrowthWeighted.sexratio.mean
Sex ratio based on average temperature weighted by the actual growth during the TSP
TSP.TimeWeighted.GrowthRateWeighted.sexratio.mean
Sex ratio based on average temperature weighted by the growth rate during the TSP
TSP.TimeWeighted.STRNWeighted.sexratio.mean
Sex ratio based on average temperature weighted by the thermal reaction norm of sexualization during the TSP
TSP.GrowthWeighted.STRNWeighted.sexratio.mean
Sex ratio based on average temperature weighted by the actual growth and thermal reaction norm of sexualization during the TSP
TSP.TimeWeighted.GrowthRateWeighted.STRNWeighted.sexratio.mean
Sex ratio based on average temperature weighted by the growth rate and the thermal reaction norm of sexualization during the TSP
MiddleThird.TimeWeighted.sexratio.mean
Sex ratio based on average temperature during the middle third incubation
MiddleThird.GrowthWeighted.sexratio.mean
Sex ratio based on average temperature weighted by actual growth during the middle third incubation
MiddleThird.TimeWeighted.GrowthRateWeighted.sexratio.mean
Sex ratio based on average temperature weighted by growth rate during the middle third incubation
TimeWeighted.sexratio.mean
Sex ratio based on average temperature during all incubation
GrowthWeighted.sexratio.mean
Sex ratio based on average temperature weighted by actual growth during all incubation
TimeWeighted.GrowthRateWeighted.sexratio.mean
Sex ratio based on average temperature weighted by growth rate during all incubation
TSP.PM.TimeWeighted.mean
Average sex ratio based on temperature during the TSP
TSP.PM.GrowthWeighted.mean
Average sex ratio based on temperature weighted by the actual growth during the TSP
TSP.PM.TimeWeighted.GrowthRateWeighted.mean
Average sex ratio based on temperature weighted by the growth rate during the TSP
If information for sex is not known for some timeseries, set NA for Sexed.
Sexed, Males and Females must be vectors with names. The names must be the same as
the names of timeseries of temperatures in EmbryoGrowthTRN.
Only two of these 3 parameters are required: Males, Females and Sexed
Note: four species have predefined embryo stages. embryo.stages parameter can take the values:
Caretta caretta.SCL
Chelonia mydas.SCL
Emys orbicularis.SCL
Emys orbicularis.mass
Podocnemis expansa.SCL
Lepidochelys olivacea.SCL
Generic.ProportionDevelopment
A fifth name fitted
must be used when limits of TSP are fitted using BeginTSP
and EndTSP
parameters.
The parameters that can be used in STRN are:
BeginTSP
, EndTSP
are the logit of the proportion of development;
To ensure that BeginTSP
< EndTSP
, it is better to use:
BeginTSP
, LengthTSP
and then EndTSP
is estimated using BeginTSP
+ abs(LengthTSP)
DHA
, DHH
, T12H
are the SSM parameters of sexualisation thermal reaction norm;
dbeta_mu
, dbeta_v
are the beta mean and variance of the impact of sexualisation according to TSP progress.
Or any parameter that can be used in a TSD model.
STRN(
EmbryoGrowthTRN = stop("Embryo Growth Thermal Reaction Norm must be provided"),
Initial_STRN = NULL,
fixed.parameters = NULL,
TSP.borders = NULL,
embryo.stages = NULL,
TSP.begin = 0,
TSP.end = 0.5,
tsd = NULL,
equation = "logistic",
Sexed = NULL,
Males = NULL,
Females = NULL,
sexratio = "TSP.TimeWeighted.GrowthRateWeighted.STRNWeighted.sexratio.mean",
fill = 60,
parallel = TRUE,
itnmax = 1000,
method = c("Nelder-Mead", "BFGS"),
control = list(trace = 1, REPORT = 10),
zero = 1e-09,
verbose = FALSE,
hessian = TRUE
)
EmbryoGrowthTRN |
The Embryo Growth Thermal Reaction Norm obtained with searchR() |
Initial_STRN |
Values for initial model of Sexualisation Thermal Reaction Norm or tsd model |
fixed.parameters |
Value for Sexualisation Thermal Reaction Norm or tsd model that will not be changed |
TSP.borders |
The limits of TSP in stages. See embryo.stages parameter. |
embryo.stages |
The embryo stages. At least TSP.borders stages must be provided to estimate TSP borders. See note. |
TSP.begin |
Where TSP begin during the stage of beginning? In relative proportion of the stage. |
TSP.end |
Where TSP begin during the stage of ending? In relative proportion of the stage. |
tsd |
The model used to predict sex ratio, obtained from tsd() |
equation |
If tsd parameter is not provided, equation and parameters in Initial_STRN for tsd model must be provided. |
Sexed |
The number of sexed embryos with names identifying timeseries |
Males |
The number of males embryos with names identifying timeseries |
Females |
The number of females embryos with names identifying timeseries |
sexratio |
The sex ratio to be used |
fill |
See info.nests() |
parallel |
Should parallel computing for info.nests() be used |
itnmax |
Maximum number of iterations for each method; if 0, just return the likelihood |
method |
Methods to be used with optimx |
control |
List for control parameters for optimx |
zero |
The value to replace a null sex ratio |
verbose |
If TRUE, will show all intermediate parameters during fit |
hessian |
If TRUE, the Hessian approximation is estimated atthe end of the fit. |
STRN estimates the parameters that best describe the sexualisation thermal reaction norm within the TSP
The list with object return by optim()
Marc Girondot marc.girondot@gmail.com
## Not run:
library(embryogrowth)
MedIncubation_Cc <- subset(DatabaseTSD, Species=="Caretta caretta" &
RMU=="Mediterranean" & Sexed!=0)
Med_Cc <- tsd(males=MedIncubation_Cc$Males,
females=MedIncubation_Cc$Females,
temperatures=MedIncubation_Cc$Incubation.temperature,
par=c(P=29.5, S=-0.1))
plot(Med_Cc, xlim=c(25, 35))
males <- c(7, 0, 0, 0, 0, 5, 6, 3, 5, 3, 2, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0)
names(males) <- rev(rev(names(resultNest_4p_SSM$data))[-(1:2)])
sexed <- rep(10, length(males))
names(sexed) <- rev(rev(names(resultNest_4p_SSM$data))[-(1:2)])
Initial_STRN <- c('DHA' = 1174.6461503413307,
'DHH' = 2001.0619192107047,
'T12H' = 3731.353104743393)
fp <- c(Rho25=100)
fitSTRN <- STRN(Initial_STRN=Initial_STRN,
EmbryoGrowthTRN=resultNest_4p_SSM,
tsd=Med_Cc,
embryo.stages="Caretta caretta.SCL",
Sexed=sexed, Males=males,
fixed.parameters=fp,
sexratio="TSP.GrowthWeighted.STRNWeighted.sexratio.mean")
plotR(fitSTRN, curve ="ML", ylim=c(0,2))
plotR(fitSTRN)
out <- info.nests(NestsResult=resultNest_4p_SSM,
SexualisationTRN=fitSTRN,
SexualisationTRN.CI="Hessian",
embryo.stages="Caretta caretta.SCL",
GTRN.CI="Hessian",
tsd=Med_Cc,
tsd.CI="Hessian",
replicate.CI=100,
progressbar=TRUE,
warnings=TRUE,
out="summary")$summary
# CTE with growth-weighted temperature average
plot(Med_Cc, xlim=c(25, 35))
points(x=out[, "TSP.GrowthWeighted.STRNWeighted.temperature.mean"], y=males/sexed,
col="red", pch=19)
legend("topright", legend=c("CTE with growth-weighted and Sexualization TRN"),
pch=19, col=c("red"))
# Fit the beginning and end of TSP
Initial_STRN <- c('BeginTSP' = invlogit(0.33),
'EndTSP' = invlogit(0.66))
fp <- NULL
fitSTRN <- STRN(Initial_STRN=Initial_STRN,
EmbryoGrowthTRN=resultNest_4p_SSM,
tsd=Med_Cc,
embryo.stages="fitted",
Sexed=sexed, Males=males,
fixed.parameters=fp,
sexratio="TSP.TimeWeighted.GrowthRateWeighted.STRNWeighted.sexratio.mean")
invlogit(fitSTRN$par)
invlogit(fitSTRN$par-2*fitSTRN$SE)
invlogit(fitSTRN$par+2*fitSTRN$SE)
Initial_STRN <- c('dbeta_mu' = logit(0.5),
'dbeta_v' = 1/12)
fp <- NULL
fitSTRN <- STRN(Initial_STRN=Initial_STRN,
EmbryoGrowthTRN=resultNest_4p_SSM,
tsd=Med_Cc,
embryo.stages="Caretta caretta.SCL",
Sexed=sexed, Males=males,
fixed.parameters=fp,
sexratio="TSP.TimeWeighted.GrowthRateWeighted.STRNWeighted.sexratio.mean")
mu <- invlogit(fitSTRN$par["dbeta_mu"]),
v <- abs(fitSTRN$par["dbeta_v"])
shape1 <- mu * (((mu * (1 - mu))/v) - 1)
shape2 <- shape1 * (1 - mu)/mu
plot(seq(from=0, to=1, length.out=100),
dbeta(seq(from=0, to=1, length.out=100),
shape1=shape1, shape2=shape2),
type="l", xlab="Progress of TSP",
ylab="Force of sexualisation", bty="n", ylim=c(0, 6), las=1)
Initial_STRN <- c('dbeta_mu' = 7.2194053298953236,
'dbeta_v' = 0.00050390986089928467)
fp <- NULL
fitSTRN <- STRN(Initial_STRN=Initial_STRN ,
EmbryoGrowthTRN=resultNest_4p_SSM ,
tsd=Med_Cc ,
embryo.stages="Caretta caretta.SCL" ,
Sexed=sexed ,
Males=males ,
fixed.parameters=fp ,
sexratio="TSP.TimeWeighted.GrowthRateWeighted.STRNWeighted.sexratio.mean" )
mu <- invlogit(fitSTRN$par["dbeta_mu"]),
v <- abs(fitSTRN$par["dbeta_v"])
shape1 <- mu * (((mu * (1 - mu))/v) - 1)
shape2 <- shape1 * (1 - mu)/mu
plot(seq(from=0, to=1, length.out=100),
dbeta(seq(from=0, to=1, length.out=100),
shape1=shape1, shape2=shape2),
type="l", xlab="Progress of TSP",
ylab="Force of sexualisation", bty="n", ylim=c(0, 0.04), las=1)
Initial_STRN <- c('dbeta_mu' = logit(0.5),
'dbeta_v' = 1/12)
L <- STRN(Initial_STRN=NULL ,
fixed.parameters=Initial_STRN ,
EmbryoGrowthTRN=resultNest_4p_SSM ,
tsd=Med_Cc ,
embryo.stages="Caretta caretta.SCL" ,
Sexed=sexed ,
Males=males ,
sexratio="TSP.TimeWeighted.GrowthRateWeighted.STRNWeighted.sexratio.mean")
Initial_STRN <- c('dbeta_mu' = logit(0.6),
'dbeta_v' = 1/12)
L <- STRN(Initial_STRN=NULL ,
fixed.parameters=Initial_STRN ,
EmbryoGrowthTRN=resultNest_4p_SSM ,
tsd=Med_Cc ,
embryo.stages="Caretta caretta.SCL" ,
Sexed=sexed ,
Males=males ,
sexratio="TSP.TimeWeighted.GrowthRateWeighted.STRNWeighted.sexratio.mean")
Initial_STRN <- c('dbeta_mu' = 7.2192972077000004,
'dbeta_v' = 0.00050396969999999997)
L <- STRN(Initial_STRN=NULL ,
fixed.parameters=Initial_STRN ,
EmbryoGrowthTRN=resultNest_4p_SSM ,
tsd=Med_Cc ,
embryo.stages="Caretta caretta.SCL" ,
Sexed=sexed ,
Males=males ,
sexratio="TSP.TimeWeighted.GrowthRateWeighted.STRNWeighted.sexratio.mean")
mu <- invlogit(fitSTRN$par["dbeta_mu"]),
v <- abs(fitSTRN$par["dbeta_v"])
shape1 <- mu * (((mu * (1 - mu))/v) - 1)
shape2 <- shape1 * (1 - mu)/mu
tsp_progress <- seq(from=0, to=1, length.out=100)
plot(tsp_progress,
dbeta(tsp_progress,
shape1=shape1, shape2=shape2),
type="l", xlab="Progress of TSP",
ylab="Force of sexualisation", bty="n", ylim=c(0, 0.04), las=1)
segments(x0=0, x1=1, y0=0, y1=0, lty=2)
## End(Not run)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.