Description Usage Format Details Author(s) References Examples
Demographic data of Hypericum cumulicola in "Florida rosemary scrub at" Archbold Biological Station (FL, USA). Life cycle, experimental design and data are described in Quintana-Ascencio & Menges (2003). Data contains a subset of individuals from population "bald 1" and annual period "1997-1998". Full dataset can be obtained upon request to the authors (pedro.quintana-ascencio@ucf.edu).
1 |
The format is: chr "dataIPMpackHypericum"
data-frame with headings:
- id: unique plant id (this file contains only a subset of all individuals)
- bald: population (this subset contains only one population)
- year: transition from t to t+1 (this subset contains only data for 1997-1998)
- size: length of longest stem in individual (cm) in time t
- ontogeny: recruits vs established individuals in time t (1 = individual was recruited in time t, 0 = already established individual prior to time t, NA = individual not yet recruited in time t)
- fec0: probability of reproduction (0= no flowering, 1 = individual was flowering in time t, NA = individual not alive in year t)
- fec1: number of fruits per plant (NA if fec0 = 0)
- surv: survival (0 = dead, 1= alive, NAs if not yet recruited or past dead)
- sizeNext: length of longest stem in individual (cm) in time t+1
- ontogenyNext: recruits vs established individuals in time t+1 (1 = individual was recruited in time t+1, 0 = already established individual prior to time t+1, NA = individual not yet recruited or dead in t+1)
Pedro Quintana Ascencio & Eric Menges
Quintana-Ascencio, Menges & Weekley. 2003. A fire-explicit population viability analyses of Hypericum cumulicola in Florida Rosemary scrub. Conservation Biology 17, p433-449.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 | #Access data from the long-term censuses on Hypericum cumulicula
# carried out by Eric Menges, Pedro Quintana-Ascencio and coworkers
# at Archbold Biological Station. Here only a subset of individuals
# from population 'bald 1' and for the annual transition '1997-1998' are shown.
data("dataIPMpackHypericum")
d<-dataIPMpackHypericum
#Variables are:
#id: unique identifier for each individual
#bald: population. Here only bald 1
#year: annual transition of the long-term data. Here only 1997-1998
#surv: survival (1) or not (0) of individuals between 1997 and 1998
#size: maximum height of the stems of each individual
#ontogeny: because the demography of Hypericum is very dynamic
# (turnover is very high) the experimental design described
# in Quintana-Ascencio et al. (2003) consists on establishing
# new permanent plots every year at each population,
# in addition to censusing old plots. Here we differentiate
# between individuals that appear for the first time in time t
# because they were recruits (1) and those that, not being new
# recruits, where measured for the first time in t because they
# were in a new permanent plot.
#fec0: probability of flowering (1) or not (0)
#fec1: number of fruits per individual
#sizeNext: same as "size" above, for t+1
#stageNext: same as "stage" above, for t+1
#Due to the sampling design described above, here we consider only
# individual with a certain recruit origin:
d <- subset(d,is.na(d$size)==FALSE | d$ontogenyNext==1)
#Side-experiments revealed that the following vital rates are size-independent
# and equal to:
#Number of seeds produced per fruit
fec2<-13.78
#Probability of seedling establishment
fec3<-0.001336
#Probability of seedling survival half a year after germinating,
# corresponding to the next annual census
fec4<-0.14
#Probability of a seed going into the seed bank
goSB<-0.08234528
#Probability of a seed staying in the seed bank
staySB<-0.672
#Note that the aforementioned vital rates are function of time since last fire,
#but because here we are only dealing with one population and one year
#transition, we treat them as constants. See Quintana-Ascencio et al (2003)
#for more information.
#A simple re-organization of the data, getting rid of non-critical information
d<-d[,c("surv","size","sizeNext","fec0","fec1")]
#The following states the continuous (max height of individual plant)
#part of the IPM. Note that the IPM to be constructed here contains a
#discrete stage: seedbank.
d$stageNext<-d$stage<-"continuous"
d$stage[is.na(d$size)]<-NA
#If individual did not survive, it is labelled as dead to t+1.
d$stageNext[d$surv==0]<-"dead"
#Adds probability of seeds going into (continuous -> seedbank),
#staying (seedbank -> seedbank) and leaving (continuous -> seedbank)
#the discrete stage.
d$number<-1
d$stage<-as.factor(d$stage)
d$stageNext<-as.factor(d$stageNext)
#Carry out comparisons to establish the best survival model
testSurv <- survModelComp(d, expVars = c(surv~1, surv~size,
surv~size + size2), testType = "AIC",makePlot = TRUE,legendPos = "bottomleft")
#Carry out comparisons to establish the best growth model
testGrow <- growthModelComp(d,expVars = c(sizeNext~1, sizeNext~size,
sizeNext~size + size2), regressionType = "constantVar",
testType = "AIC", makePlot = TRUE, legendPos = "bottomright")
#Create survival object using regression model indicated by testSurv
so <- makeSurvObj(d, Formula = surv~size + size2)
picSurv(d,so)
#Create growth object using regression model indicated by testGrown
go<-makeGrowthObj(d, Formula = sizeNext~size)
picGrow(d,go)
abline(a=0,b=1,lty=2)
#Create fecundity object using regression models
fo <- makeFecObj(d, Formula=c(fec0~size, fec1~size),
Family=c("binomial","poisson"),
Transform=c("none", "none"),
meanOffspringSize=mean(d[is.na(d$size)==TRUE &
is.na(d$sizeNext)==FALSE,"sizeNext"]),
sdOffspringSize=sd(d[is.na(d$size)==TRUE &
is.na(d$sizeNext)==FALSE,"sizeNext"]),
fecConstants=data.frame(fec2=fec2,fec3=fec3,fec4=fec4),
offspringSplitter=data.frame(seedbank=goSB,
continuous=(1-goSB)),
vitalRatesPerOffspringType=data.frame(seedbank=c(1,1,1,0,0),
continuous=c(1,1,1,1,1),
row.names=c("fec0","fec1",
"fec2","fec3","fec4")))
#Define discrete transition matrix
dto<-makeDiscreteTrans(d,
discreteTrans = matrix(c(staySB,(1-staySB)*fec3*fec4,
(1-staySB)*(1-fec3*fec4),0,
sum(d$number[d$stage=="continuous"&d$stageNext=="continuous"],
na.rm=TRUE),sum(d$number[d$stage=="continuous"&d$stageNext=="dead"],
na.rm=TRUE)),ncol=2,nrow=3,
dimnames=list(c("seedbank","continuous","dead"),
c("seedbank","continuous"))),
meanToCont = matrix(mean(d$sizeNext[is.na(d$stage)&
d$stageNext=="continuous"]),ncol=1,nrow=1,dimnames=list(c("mean"),
c("seedbank"))),
sdToCont = matrix(sd(d$sizeNext[is.na(d$stage)&
d$stageNext=="continuous"]),ncol=1,nrow=1,dimnames=list(c(""),
c("seedbank"))))
#choose number of bins for discretization in the IPM
nBigMatrix <- 100
#Create the P matrix describing growth-survival transitions
# The argument correction="discretizeExtremes" places parts of the
# growth distribution that fall
# below minSize or above maxSize into the first and last bin
#
Pmatrix<-makeIPMPmatrix(growObj=go,survObj=so,discreteTrans=dto,
minSize=0,maxSize=80,nBigMatrix=nBigMatrix,
correction="discretizeExtremes")
#Create the F matrix descributing fecundity transitions
# The argument correction="discretizeExtremes" places parts of the
# continuous offspring distribution that fall
# below minSize or above maxSize into the first and last bin
#
Fmatrix<-makeIPMFmatrix(fecObj=fo,
minSize=0,maxSize=80,nBigMatrix=nBigMatrix,
correction="discretizeExtremes")
#Build a P matrix reflecting only the continuous part of the model
# and check that binning, etc is adequate
PmatrixContinuousOnly <- makeIPMPmatrix(growObj=go,
survObj=so,minSize=0,maxSize=70,nBigMatrix=nBigMatrix,
correction="discretizeExtremes")
diagnosticsPmatrix(PmatrixContinuousOnly,growObj=go,
survObj=so,dff=d, correction="discretizeExtremes")
#Form the IPM as a result of adding the P and F matrices
IPM <- Pmatrix + Fmatrix
#Population growth rate for the whole life cycle of Hypericum is
eigen(IPM)$value[1]
#Population growth rate excluding the seed bank stage is
eigen(IPM[2:(nBigMatrix+1),2:(nBigMatrix+1)])$value[1]
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.