<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <p dir="ltr" style="margin-top: 0pt;margin-bottom: 0pt;"
      id="internal-source-marker_0.7472336933730773"><span
style="font-size:15px;font-family:Arial;color:#0000ff;background-color:transparent;font-weight:normal;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;">Dear
        Kimmy,</span></p>
    <br>
    <span
style="font-size:15px;font-family:Arial;color:#0000ff;background-color:transparent;font-weight:normal;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"></span>
    <p dir="ltr" style="margin-top: 0pt;margin-bottom: 0pt;"><span
style="font-size:15px;font-family:Arial;color:#0000ff;background-color:transparent;font-weight:normal;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;">you

        asked why sensParams doesn’t work when all offspring go to
        discrete classes. We have found the bug (offspringRel (i.e. the
        relationship between offspring size and parent size) is, of
        course, not defined in such a case). Below you can find a fixed
        version of sensParams that will take this into account. It will
        also be in the next version of IPMpack.</span></p>
    <br>
    <span
style="font-size:15px;font-family:Arial;color:#0000ff;background-color:transparent;font-weight:normal;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"></span>
    <p dir="ltr" style="margin-top: 0pt;margin-bottom: 0pt;"><span
style="font-size:15px;font-family:Arial;color:#0000ff;background-color:transparent;font-weight:normal;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;">best
        wishes,</span></p>
    <span
style="font-size:15px;font-family:Arial;color:#0000ff;background-color:transparent;font-weight:normal;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;">Jess,
      Eelke</span><br>
    <br>
    -----------------------------------------<br>
    <pre>Hey all,
I am trying to use sensParams on my IPM, and am getting the error message
"Error in <a href="http://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/ipmpack-users">fecObj at offspringRel</a>$coeff :
  object of type 'S4' is not subsettable"

My fecObj is : fvS<-makeFecObj(SIPM,Formula=(fec2~size),Family="binomial",fecConstants
= data.frame(seedlingsPerRep=2.5),
                offspringSplitter=data.frame(continuous=0,Seedling=1),

)

and the offspringRE1 slot says:
Slot "offspringRel":
<S4 Type Object>
attr(,".S3Class")
[1] "lm"


Anyone know how to make it NOT an S4 type object?? Thanks!!

-Kimmy Kellett</pre>
    ------------------------------------------<br>
    <br>
    <br>
    ## Sensitivity of parameters - works for an IPM built out of<br>
    ## growth, survival, discreteTrans, fecundity and clonality objects.
    <br>
    ##<br>
    sensParams <- function (growObj, survObj, fecObj=NULL,
    clonalObj=NULL,<br>
            nBigMatrix, minSize, maxSize,<br>
            chosenCov = data.frame(covariate = 1), discreteTrans = 1,<br>
            integrateType = "midpoint", correction = "none", preCensus =
    TRUE,<br>
            delta = 1e-04, response="lambda", chosenBin=1) {<br>
        <br>
        if (response!="lambda" & response!="R0" & response
    !="lifeExpect")<br>
            stop("response must be one of lambda or R0 or lifeExpect")<br>
        <br>
        nmes <- elam <- slam <- c()<br>
        <br>
        # get the base<br>
        Pmatrix <- createIPMPmatrix(nBigMatrix = nBigMatrix, minSize
    = minSize,<br>
                chosenCov = chosenCov, maxSize = maxSize, growObj =
    growObj,<br>
                survObj = survObj, discreteTrans = discreteTrans,
    integrateType = integrateType,<br>
                correction = correction)<br>
        if (!is.null(fecObj)) {<br>
            Fmatrix <- createIPMFmatrix(nBigMatrix = nBigMatrix,
    minSize = minSize,<br>
                    chosenCov = chosenCov, maxSize = maxSize, fecObj =
    fecObj,<br>
                    integrateType = integrateType, correction =
    correction,<br>
                    preCensus = preCensus, survObj = survObj, growObj =
    growObj)<br>
        } else {Fmatrix <- Pmatrix*0 }<br>
        if (!is.null(clonalObj)) {<br>
            Cmatrix <- createIPMCmatrix(nBigMatrix = nBigMatrix,
    minSize = minSize,<br>
                    chosenCov = chosenCov, maxSize = maxSize, clonalObj
    = clonalObj,<br>
                    integrateType = integrateType, correction =
    correction,<br>
                    preCensus = preCensus, survObj = survObj, growObj =
    growObj)<br>
        } else {Cmatrix <- Pmatrix*0 }<br>
        <br>
        IPM <- Pmatrix + Fmatrix + Cmatrix<br>
        <br>
        if (response=="lambda") rc1 <- Re(eigen(IPM)$value[1])<br>
        if (response=="R0") rc1 <- R0Calc(Pmatrix, Fmatrix+Cmatrix)<br>
        if (response=="lifeExpect") rc1 <-
    meanLifeExpect(Pmatrix)[chosenBin]<br>
        <br>
        # 1. survival<br>
        for (j in 1:length(survObj@fit$coeff)) {<br>
            survObj@fit$coefficients[j] <-
    survObj@fit$coefficients[j] * (1 + delta)<br>
            Pmatrix <- createIPMPmatrix(nBigMatrix = nBigMatrix,<br>
                    minSize = minSize, maxSize = maxSize, growObj =
    growObj,<br>
                    survObj = survObj, discreteTrans = discreteTrans,<br>
                    chosenCov = chosenCov, integrateType =
    integrateType,<br>
                    correction = correction)<br>
            if (!is.null(fecObj)) {<br>
                Fmatrix <- createIPMFmatrix(nBigMatrix = nBigMatrix,<br>
                        minSize = minSize, maxSize = maxSize, fecObj =
    fecObj,<br>
                        integrateType = integrateType, correction =
    correction,<br>
                        chosenCov = chosenCov, preCensus = preCensus,
    survObj = survObj,<br>
                        growObj = growObj)<br>
            } <br>
            if (!is.null(clonalObj)) {<br>
                Cmatrix <- createIPMCmatrix(nBigMatrix = nBigMatrix,
    minSize = minSize,<br>
                        chosenCov = chosenCov, maxSize = maxSize,
    clonalObj = clonalObj,<br>
                        integrateType = integrateType, correction =
    correction,<br>
                        preCensus = preCensus, survObj = survObj,
    growObj = growObj)<br>
            } <br>
            <br>
            IPM <- Pmatrix + Fmatrix + Cmatrix<br>
            <br>
            if (response=="lambda") rc2 <- Re(eigen(IPM)$value[1])<br>
            if (response=="R0") rc2 <- R0Calc(Pmatrix,
    Fmatrix+Cmatrix)<br>
            if (response=="lifeExpect") rc2 <-
    meanLifeExpect(Pmatrix)[chosenBin]<br>
            <br>
            survObj@fit$coefficients[j] <-
    survObj@fit$coefficients[j]/(1 + delta)<br>
            <br>
            slam <- c(slam, (rc2 -
    rc1)/((as.numeric(survObj@fit$coefficients[j]))* delta))<br>
            elam <- c(elam, (rc2 - rc1)/(rc1 *delta))<br>
            nmes <- c(nmes,
    as.character(paste("survival:",names(survObj@fit$coeff)[j])))<br>
        }<br>
        <br>
        # 2 growth<br>
        for (j in 1:length(growObj@fit$coeff)) {<br>
            growObj@fit$coefficients[j] <-
    growObj@fit$coefficients[j] * (1 + delta)<br>
            Pmatrix <- createIPMPmatrix(nBigMatrix = nBigMatrix,<br>
                    minSize = minSize, maxSize = maxSize, growObj =
    growObj,<br>
                    chosenCov = chosenCov, survObj = survObj,
    discreteTrans = discreteTrans,<br>
                    integrateType = integrateType, correction =
    correction)<br>
            if (!is.null(fecObj)) {<br>
                Fmatrix <- createIPMFmatrix(nBigMatrix = nBigMatrix,<br>
                        minSize = minSize, maxSize = maxSize, fecObj =
    fecObj,<br>
                        chosenCov = chosenCov, integrateType =
    integrateType,<br>
                        correction = correction, preCensus = preCensus,
    survObj = survObj,<br>
                        growObj = growObj)<br>
            }<br>
            if (!is.null(clonalObj)) {<br>
                Cmatrix <- createIPMCmatrix(nBigMatrix = nBigMatrix,
    minSize = minSize,<br>
                        chosenCov = chosenCov, maxSize = maxSize,
    clonalObj = clonalObj,<br>
                        integrateType = integrateType, correction =
    correction,<br>
                        preCensus = preCensus, survObj = survObj,
    growObj = growObj)<br>
            }<br>
            <br>
            IPM <- Pmatrix + Fmatrix + Cmatrix<br>
            <br>
            if (response=="lambda") rc2 <- Re(eigen(IPM)$value[1])<br>
            if (response=="R0") rc2 <- R0Calc(Pmatrix,
    Fmatrix+Cmatrix)<br>
            if (response=="lifeExpect") rc2 <-
    meanLifeExpect(Pmatrix)[chosenBin]<br>
            <br>
            growObj@fit$coefficients[j] <-
    growObj@fit$coefficients[j]/(1 + delta)<br>
            <br>
            slam <- c(slam, (rc2 -
    rc1)/(as.numeric(growObj@fit$coefficients[j]) * delta))<br>
            elam <- c(elam, (rc2 - rc1)/(rc1 * delta))<br>
            nmes <- c(nmes,
    as.character(paste("growth:",names(growObj@fit$coeff)[j])))<br>
        }<br>
        <br>
        growObj@sd <- growObj@sd * (1 + delta)<br>
        Pmatrix <- createIPMPmatrix(nBigMatrix = nBigMatrix, minSize
    = minSize,<br>
                maxSize = maxSize, growObj = growObj, survObj = survObj,<br>
                chosenCov = chosenCov, discreteTrans = discreteTrans,<br>
                integrateType = integrateType, correction = correction)<br>
        if (!is.null(fecObj)) {<br>
            Fmatrix <- createIPMFmatrix(nBigMatrix = nBigMatrix,
    minSize = minSize,<br>
                    maxSize = maxSize, fecObj = fecObj, integrateType =
    integrateType,<br>
                    chosenCov = chosenCov, correction = correction,
    preCensus = preCensus,<br>
                    survObj = survObj, growObj = growObj)<br>
        }<br>
        if (!is.null(clonalObj)) {<br>
            Cmatrix <- createIPMCmatrix(nBigMatrix = nBigMatrix,
    minSize = minSize,<br>
                    chosenCov = chosenCov, maxSize = maxSize, clonalObj
    = clonalObj,<br>
                    integrateType = integrateType, correction =
    correction,<br>
                    preCensus = preCensus, survObj = survObj, growObj =
    growObj)<br>
        }<br>
        IPM <- Pmatrix + Fmatrix + Cmatrix<br>
        <br>
        if (response=="lambda") rc2 <- Re(eigen(IPM)$value[1])<br>
        if (response=="R0") rc2 <- R0Calc(Pmatrix, Fmatrix+Cmatrix)<br>
        if (response=="lifeExpect") rc2 <-
    meanLifeExpect(Pmatrix)[chosenBin]<br>
        <br>
        growObj@sd <- growObj@sd / (1 + delta)<br>
        <br>
        slam <- c(slam,(rc2 - rc1)/(growObj@sd * delta))<br>
        elam <- c(elam, (rc2 - rc1)/(rc1 * delta))<br>
        nmes <- c(nmes, "growth: sd")<br>
        <br>
        # 3. DiscreteTrans<br>
        if (class(discreteTrans)=="discreteTrans") {<br>
            for (j in 1:(ncol(discreteTrans@discreteTrans)-1)) {<br>
                for (i in 1:(nrow(discreteTrans@discreteTrans)-1)) {<br>
                   
    discreteTrans@discreteTrans[i,j]<-discreteTrans@discreteTrans[i,j]
    * (1 + delta)<br>
                    Pmatrix <- createIPMPmatrix(nBigMatrix =
    nBigMatrix, minSize = minSize,<br>
                            maxSize = maxSize, growObj = growObj,
    survObj = survObj,<br>
                            chosenCov = chosenCov, discreteTrans =
    discreteTrans,<br>
                            integrateType = integrateType, correction =
    correction)<br>
                    if (!is.null(fecObj)) {<br>
                        Fmatrix <- createIPMFmatrix(nBigMatrix =
    nBigMatrix, minSize = minSize,<br>
                                maxSize = maxSize, fecObj = fecObj,
    integrateType = integrateType,<br>
                                chosenCov = chosenCov, correction =
    correction, preCensus = preCensus,<br>
                                survObj = survObj, growObj = growObj)<br>
                    }<br>
                    if (!is.null(clonalObj)) {<br>
                        Cmatrix <- createIPMCmatrix(nBigMatrix =
    nBigMatrix, minSize = minSize,<br>
                                chosenCov = chosenCov, maxSize =
    maxSize, clonalObj = clonalObj,<br>
                                integrateType = integrateType,
    correction = correction,<br>
                                preCensus = preCensus, survObj =
    survObj, growObj = growObj)<br>
                    }<br>
                    IPM <- Pmatrix + Fmatrix + Cmatrix<br>
                    <br>
                    if (response=="lambda") rc2 <-
    Re(eigen(IPM)$value[1])<br>
                    if (response=="R0") rc2 <- R0Calc(Pmatrix,
    Fmatrix+Cmatrix)<br>
                    if (response=="lifeExpect") rc2 <-
    meanLifeExpect(Pmatrix)[chosenBin]<br>
                    <br>
                   
    discreteTrans@discreteTrans[i,j]<-discreteTrans@discreteTrans[i,j]
    / (1 + delta)<br>
                    <br>
                    slam <- c(slam,(rc2 -
    rc1)/(discreteTrans@discreteTrans[i,j] * delta))<br>
                    elam <- c(elam, (rc2 - rc1)/(rc1 * delta))<br>
                    nmes <- c(nmes,
as.character(paste("discrete:",dimnames(discreteTrans@discreteTrans)[[2]][j],"to",dimnames(discreteTrans@discreteTrans)[[1]][i])))<br>
                }<br>
            }<br>
            #if there is more than 2 discrete stages (beyond
    "continuous" "dead" and one discrete stage)<br>
            #then survToDiscrete tells you how many of surviving
    continuous individuals are going into <br>
            #discrete classes, but how they distributed also; which is
    the last column in discreteTrans <br>
            if (nrow(discreteTrans@discreteTrans)>3) {<br>
                for (i in 1:(nrow(discreteTrans@discreteTrans)-2)) {<br>
                   
    discreteTrans@discreteTrans[i,"continuous"]<-discreteTrans@discreteTrans[i,"continuous"]
    * (1 + delta)<br>
                    Pmatrix <- createIPMPmatrix(nBigMatrix =
    nBigMatrix, minSize = minSize,<br>
                            maxSize = maxSize, growObj = growObj,
    survObj = survObj,<br>
                            chosenCov = chosenCov, discreteTrans =
    discreteTrans,<br>
                            integrateType = integrateType, correction =
    correction)<br>
                    if (!is.null(fecObj)) {<br>
                        Fmatrix <- createIPMFmatrix(nBigMatrix =
    nBigMatrix, minSize = minSize,<br>
                                maxSize = maxSize, fecObj = fecObj,
    integrateType = integrateType,<br>
                                chosenCov = chosenCov, correction =
    correction, preCensus = preCensus,<br>
                                survObj = survObj, growObj = growObj)<br>
                    }<br>
                    if (!is.null(clonalObj)) {<br>
                        Cmatrix <- createIPMCmatrix(nBigMatrix =
    nBigMatrix, minSize = minSize,<br>
                                chosenCov = chosenCov, maxSize =
    maxSize, clonalObj = clonalObj,<br>
                                integrateType = integrateType,
    correction = correction,<br>
                                preCensus = preCensus, survObj =
    survObj, growObj = growObj)<br>
                    }<br>
                    IPM <- Pmatrix + Fmatrix + Cmatrix<br>
                    <br>
                    if (response=="lambda") rc2 <-
    Re(eigen(IPM)$value[1])<br>
                    if (response=="R0") rc2 <- R0Calc(Pmatrix,
    Fmatrix+Cmatrix)<br>
                    if (response=="lifeExpect") rc2 <-
    meanLifeExpect(Pmatrix)[chosenBin]<br>
                    <br>
                   
    discreteTrans@discreteTrans[i,"continuous"]<-discreteTrans@discreteTrans[i,"continuous"]
    / (1 + delta)<br>
                    <br>
                    slam <- c(slam,(rc2 -
    rc1)/(discreteTrans@discreteTrans[i,"continuous"] * delta))<br>
                    elam <- c(elam, (rc2 - rc1)/(rc1 * delta))<br>
                    nmes <- c(nmes, as.character(paste("discrete:
    Continuous to",dimnames(discreteTrans@discreteTrans)[[1]][i])))<br>
                }<br>
            }<br>
            <br>
            for (j in 1:length(discreteTrans@meanToCont)) {<br>
               
    discreteTrans@meanToCont[1,j]<-discreteTrans@meanToCont[1,j] * (1
    + delta)<br>
                Pmatrix <- createIPMPmatrix(nBigMatrix = nBigMatrix,
    minSize = minSize,<br>
                        maxSize = maxSize, growObj = growObj, survObj =
    survObj,<br>
                        chosenCov = chosenCov, discreteTrans =
    discreteTrans,<br>
                        integrateType = integrateType, correction =
    correction)<br>
                if (!is.null(fecObj)) {<br>
                    Fmatrix <- createIPMFmatrix(nBigMatrix =
    nBigMatrix, minSize = minSize,<br>
                            maxSize = maxSize, fecObj = fecObj,
    integrateType = integrateType,<br>
                            chosenCov = chosenCov, correction =
    correction, preCensus = preCensus,<br>
                            survObj = survObj, growObj = growObj)<br>
                }<br>
                if (!is.null(clonalObj)) {<br>
                    Cmatrix <- createIPMCmatrix(nBigMatrix =
    nBigMatrix, minSize = minSize,<br>
                            chosenCov = chosenCov, maxSize = maxSize,
    clonalObj = clonalObj,<br>
                            integrateType = integrateType, correction =
    correction,<br>
                            preCensus = preCensus, survObj = survObj,
    growObj = growObj)<br>
                }<br>
                IPM <- Pmatrix + Fmatrix + Cmatrix<br>
                <br>
                if (response=="lambda") rc2 <-
    Re(eigen(IPM)$value[1])<br>
                if (response=="R0") rc2 <- R0Calc(Pmatrix,
    Fmatrix+Cmatrix)<br>
                if (response=="lifeExpect") rc2 <-
    meanLifeExpect(Pmatrix)[chosenBin]<br>
                <br>
               
    discreteTrans@meanToCont[1,j]<-discreteTrans@meanToCont[1,j] / (1
    + delta)<br>
                <br>
                slam <- c(slam,(rc2 -
    rc1)/(discreteTrans@meanToCont[1,j] * delta))<br>
                elam <- c(elam, (rc2 - rc1)/(rc1 * delta))<br>
                nmes <- c(nmes, as.character(paste("discrete:
    meanToCont",dimnames(discreteTrans@meanToCont)[[2]][j])))<br>
            }<br>
            <br>
            for (j in 1:length(discreteTrans@sdToCont)) {<br>
               
    discreteTrans@sdToCont[1,j]<-discreteTrans@sdToCont[1,j] * (1 +
    delta)<br>
                Pmatrix <- createIPMPmatrix(nBigMatrix = nBigMatrix,
    minSize = minSize,<br>
                        maxSize = maxSize, growObj = growObj, survObj =
    survObj,<br>
                        chosenCov = chosenCov, discreteTrans =
    discreteTrans,<br>
                        integrateType = integrateType, correction =
    correction)<br>
                if (!is.null(fecObj)) {<br>
                    Fmatrix <- createIPMFmatrix(nBigMatrix =
    nBigMatrix, minSize = minSize,<br>
                            maxSize = maxSize, fecObj = fecObj,
    integrateType = integrateType,<br>
                            chosenCov = chosenCov, correction =
    correction, preCensus = preCensus,<br>
                            survObj = survObj, growObj = growObj)<br>
                }<br>
                if (!is.null(clonalObj)) {<br>
                    Cmatrix <- createIPMCmatrix(nBigMatrix =
    nBigMatrix, minSize = minSize,<br>
                            chosenCov = chosenCov, maxSize = maxSize,
    clonalObj = clonalObj,<br>
                            integrateType = integrateType, correction =
    correction,<br>
                            preCensus = preCensus, survObj = survObj,
    growObj = growObj)<br>
                }<br>
                IPM <- Pmatrix + Fmatrix + Cmatrix<br>
                <br>
                if (response=="lambda") rc2 <-
    Re(eigen(IPM)$value[1])<br>
                if (response=="R0") rc2 <- R0Calc(Pmatrix,
    Fmatrix+Cmatrix)<br>
                if (response=="lifeExpect") rc2 <-
    meanLifeExpect(Pmatrix)[chosenBin]<br>
                <br>
               
    discreteTrans@sdToCont[1,j]<-discreteTrans@sdToCont[1,j] / (1 +
    delta)<br>
                <br>
                slam <- c(slam,(rc2 -
    rc1)/(discreteTrans@sdToCont[1,j] * delta))<br>
                elam <- c(elam, (rc2 - rc1)/(rc1 * delta))<br>
                nmes <- c(nmes, as.character(paste("discrete:
    sdToCont",dimnames(discreteTrans@sdToCont)[[2]][j])))<br>
            }<br>
            <br>
            for (j in 1:length(discreteTrans@survToDiscrete$coef)) {<br>
               
    discreteTrans@survToDiscrete$coefficients[j]<-discreteTrans@survToDiscrete$coefficients[j]
    * (1 + delta)<br>
                Pmatrix <- createIPMPmatrix(nBigMatrix = nBigMatrix,
    minSize = minSize,<br>
                        maxSize = maxSize, growObj = growObj, survObj =
    survObj,<br>
                        chosenCov = chosenCov, discreteTrans =
    discreteTrans,<br>
                        integrateType = integrateType, correction =
    correction)<br>
                if (!is.null(fecObj)) {<br>
                    Fmatrix <- createIPMFmatrix(nBigMatrix =
    nBigMatrix, minSize = minSize,<br>
                            maxSize = maxSize, fecObj = fecObj,
    integrateType = integrateType,<br>
                            chosenCov = chosenCov, correction =
    correction, preCensus = preCensus,<br>
                            survObj = survObj, growObj = growObj)<br>
                }<br>
                if (!is.null(clonalObj)) {<br>
                    Cmatrix <- createIPMCmatrix(nBigMatrix =
    nBigMatrix, minSize = minSize,<br>
                            chosenCov = chosenCov, maxSize = maxSize,
    clonalObj = clonalObj,<br>
                            integrateType = integrateType, correction =
    correction,<br>
                            preCensus = preCensus, survObj = survObj,
    growObj = growObj)<br>
                }<br>
                IPM <- Pmatrix + Fmatrix + Cmatrix<br>
                <br>
                if (response=="lambda") rc2 <-
    Re(eigen(IPM)$value[1])<br>
                if (response=="R0") rc2 <- R0Calc(Pmatrix,
    Fmatrix+Cmatrix)<br>
                if (response=="lifeExpect") rc2 <-
    meanLifeExpect(Pmatrix)[chosenBin]<br>
                <br>
               
    discreteTrans@survToDiscrete$coefficients[j]<-discreteTrans@survToDiscrete$coefficients[j]
    / (1 + delta)<br>
                <br>
                slam <- c(slam,(rc2 -
    rc1)/(as.numeric(discreteTrans@survToDiscrete$coefficients[j]) *
    delta))<br>
                elam <- c(elam, (rc2 - rc1)/(rc1 * delta))<br>
                nmes <- c(nmes, as.character(paste("discrete:
    survToDiscrete",names(discreteTrans@survToDiscrete$coefficients)[j])))<br>
            }<br>
        }<br>
        <br>
        # 4. Fecundity<br>
        if (!is.null(fecObj)) {<br>
            for (i in 1:length(fecObj@fitFec)) {<br>
                for (j in 1:length(fecObj@fitFec[[i]]$coefficients)) {<br>
                    fecObj@fitFec[[i]]$coefficients[j] <-
    fecObj@fitFec[[i]]$coefficients[j] *<br>
                            (1 + delta)<br>
                    Pmatrix <- createIPMPmatrix(nBigMatrix =
    nBigMatrix,<br>
                            minSize = minSize, maxSize = maxSize,
    growObj = growObj,<br>
                            chosenCov = chosenCov, survObj = survObj,
    discreteTrans = discreteTrans,<br>
                            integrateType = integrateType, correction =
    correction)<br>
                    Fmatrix <- createIPMFmatrix(nBigMatrix =
    nBigMatrix,<br>
                            minSize = minSize, maxSize = maxSize, fecObj
    = fecObj,<br>
                            chosenCov = chosenCov, integrateType =
    integrateType,<br>
                            correction = correction, preCensus =
    preCensus,<br>
                            survObj = survObj, growObj = growObj)<br>
                    if (!is.null(clonalObj)) {<br>
                        Cmatrix <- createIPMCmatrix(nBigMatrix =
    nBigMatrix, minSize = minSize,<br>
                                chosenCov = chosenCov, maxSize =
    maxSize, clonalObj = clonalObj,<br>
                                integrateType = integrateType,
    correction = correction,<br>
                                preCensus = preCensus, survObj =
    survObj, growObj = growObj)<br>
                    }<br>
                    <br>
                    IPM <- Pmatrix + Fmatrix + Cmatrix<br>
                    <br>
                    if (response=="lambda") rc2 <-
    Re(eigen(IPM)$value[1])<br>
                    if (response=="R0") rc2 <- R0Calc(Pmatrix,
    Fmatrix+Cmatrix)<br>
                    if (response=="lifeExpect") rc2 <-
    meanLifeExpect(Pmatrix)[chosenBin]<br>
                    <br>
                    fecObj@fitFec[[i]]$coefficients[j] <-
    fecObj@fitFec[[i]]$coefficients[j]/(1 + delta)<br>
                    <br>
                    slam <- c(slam,(rc2 -
    rc1)/((as.numeric(fecObj@fitFec[[i]]$coefficients[j]) * delta)))<br>
                    elam <- c(elam,(rc2 - rc1)/(rc1 * delta))<br>
                    nmes <- c(nmes,paste("fecundity: func", i,
    names(fecObj@fitFec[[i]]$coefficients)[j]))<br>
                }<br>
            }<br>
            <br>
            chs <- which(!is.na(as.numeric(fecObj@fecConstants)),
    arr.ind = TRUE)<br>
            if (length(chs) > 0) {<br>
                for (j in 1:length(chs)) {<br>
                    fecObj@fecConstants[1,chs[j]] <-
    fecObj@fecConstants[1,chs[j]] * (1 + delta)<br>
                    Pmatrix <- createIPMPmatrix(nBigMatrix =
    nBigMatrix,<br>
                            minSize = minSize, maxSize = maxSize,
    growObj = growObj,<br>
                            chosenCov = chosenCov, survObj = survObj,
    discreteTrans = discreteTrans,<br>
                            integrateType = integrateType, correction =
    correction)<br>
                    Fmatrix <- createIPMFmatrix(nBigMatrix =
    nBigMatrix,<br>
                            minSize = minSize, maxSize = maxSize, fecObj
    = fecObj,<br>
                            chosenCov = chosenCov, integrateType =
    integrateType,<br>
                            correction = correction, preCensus =
    preCensus,<br>
                            survObj = survObj, growObj = growObj)<br>
                    if (!is.null(clonalObj)) {<br>
                        Cmatrix <- createIPMCmatrix(nBigMatrix =
    nBigMatrix, minSize = minSize,<br>
                                chosenCov = chosenCov, maxSize =
    maxSize, clonalObj = clonalObj,<br>
                                integrateType = integrateType,
    correction = correction,<br>
                                preCensus = preCensus, survObj =
    survObj, growObj = growObj)<br>
                    }<br>
                    <br>
                    IPM <- Pmatrix + Fmatrix + Cmatrix<br>
                    <br>
                    if (response=="lambda") rc2 <-
    Re(eigen(IPM)$value[1])<br>
                    if (response=="R0") rc2 <- R0Calc(Pmatrix,
    Fmatrix+Cmatrix)<br>
                    if (response=="lifeExpect") rc2 <-
    meanLifeExpect(Pmatrix)[chosenBin]<br>
                    <br>
                    fecObj@fecConstants[1, chs[j]] <-
    fecObj@fecConstants[1,chs[j]]/(1 + delta)<br>
                    <br>
                    slam <- c(slam,(rc2 -
    rc1)/(as.numeric(fecObj@fecConstants[1,chs[j]] * delta)))<br>
                    elam <- c(elam,(rc2 - rc1)/(rc1 * delta))<br>
                    nmes <- c(nmes,paste("fecundity:
    constant",names(fecObj@fecConstants)[chs[j]]))<br>
                }<br>
            }<br>
            <br>
            if (max(fecObj@offspringSplitter)<1) {<br>
                for (j in which(fecObj@offspringSplitter>0)) {<br>
                    fecObj@offspringSplitter[j] <-
    fecObj@offspringSplitter[j] * (1 + delta)<br>
                    Pmatrix <- createIPMPmatrix(nBigMatrix =
    nBigMatrix,<br>
                            minSize = minSize, maxSize = maxSize,
    growObj = growObj,<br>
                            chosenCov = chosenCov, survObj = survObj,
    discreteTrans = discreteTrans,<br>
                            integrateType = integrateType, correction =
    correction)<br>
                    Fmatrix <- createIPMFmatrix(nBigMatrix =
    nBigMatrix,<br>
                            minSize = minSize, maxSize = maxSize, fecObj
    = fecObj,<br>
                            chosenCov = chosenCov, integrateType =
    integrateType,<br>
                            correction = correction, preCensus =
    preCensus,<br>
                            survObj = survObj, growObj = growObj)<br>
                    if (!is.null(clonalObj)) {<br>
                        Cmatrix <- createIPMCmatrix(nBigMatrix =
    nBigMatrix, minSize = minSize,<br>
                                chosenCov = chosenCov, maxSize =
    maxSize, clonalObj = clonalObj,<br>
                                integrateType = integrateType,
    correction = correction,<br>
                                preCensus = preCensus, survObj =
    survObj, growObj = growObj)<br>
                    }<br>
                    <br>
                    IPM <- Pmatrix + Fmatrix + Cmatrix<br>
                    <br>
                    if (response=="lambda") rc2 <-
    Re(eigen(IPM)$value[1])<br>
                    if (response=="R0") rc2 <- R0Calc(Pmatrix,
    Fmatrix+Cmatrix)<br>
                    if (response=="lifeExpect") rc2 <-
    meanLifeExpect(Pmatrix)[chosenBin]<br>
                    <br>
                    fecObj@offspringSplitter[j] <-
    fecObj@offspringSplitter[j] / (1 + delta)<br>
                    <br>
                    slam <- c(slam,(rc2 -
    rc1)/(as.numeric(fecObj@offspringSplitter[j] * delta)))<br>
                    elam <- c(elam,(rc2 - rc1)/(rc1 * delta))<br>
                    nmes <- c(nmes,paste("fecundity:
    offspringSplitter",names(fecObj@offspringSplitter[j])))<br>
                }<br>
            }<br>
            <br>
            chs <- which(!is.na(as.numeric(fecObj@fecByDiscrete)),
    arr.ind = TRUE)<br>
            if (length(chs) > 0) {<br>
                for (j in 1:length(chs)) {<br>
                    fecObj@fecByDiscrete[1,chs[j]] <-
    fecObj@fecByDiscrete[1,chs[j]] * (1 + delta)<br>
                    Pmatrix <- createIPMPmatrix(nBigMatrix =
    nBigMatrix,<br>
                            minSize = minSize, maxSize = maxSize,
    growObj = growObj,<br>
                            chosenCov = chosenCov, survObj = survObj,
    discreteTrans = discreteTrans,<br>
                            integrateType = integrateType, correction =
    correction)<br>
                    Fmatrix <- createIPMFmatrix(nBigMatrix =
    nBigMatrix,<br>
                            minSize = minSize, maxSize = maxSize, fecObj
    = fecObj,<br>
                            chosenCov = chosenCov, integrateType =
    integrateType,<br>
                            correction = correction, preCensus =
    preCensus,<br>
                            survObj = survObj, growObj = growObj)<br>
                    if (!is.null(clonalObj)) {<br>
                        Cmatrix <- createIPMCmatrix(nBigMatrix =
    nBigMatrix, minSize = minSize,<br>
                                chosenCov = chosenCov, maxSize =
    maxSize, clonalObj = clonalObj,<br>
                                integrateType = integrateType,
    correction = correction,<br>
                                preCensus = preCensus, survObj =
    survObj, growObj = growObj)<br>
                    }<br>
                    <br>
                    IPM <- Pmatrix + Fmatrix + Cmatrix<br>
                    <br>
                    if (response=="lambda") rc2 <-
    Re(eigen(IPM)$value[1])<br>
                    if (response=="R0") rc2 <- R0Calc(Pmatrix,
    Fmatrix+Cmatrix)<br>
                    if (response=="lifeExpect") rc2 <-
    meanLifeExpect(Pmatrix)[chosenBin]<br>
                    <br>
                    fecObj@fecByDiscrete[1,chs[j]] <-
    fecObj@fecByDiscrete[1,chs[j]] / (1 + delta)<br>
                    <br>
                    slam <- c(slam,(rc2 -
    rc1)/(as.numeric(fecObj@fecByDiscrete[1,chs[j]] * delta)))<br>
                    elam <- c(elam,(rc2 - rc1)/(rc1 * delta))<br>
                    nmes <- c(nmes,paste("fecundity:
    fecByDiscrete",names(fecObj@fecByDiscrete)[chs[j]]))<br>
                }<br>
            }<br>
            <br>
            if (class(fecObj@offspringRel)=="lm") {<br>
                for (j in 1:length(fecObj@offspringRel$coeff)) {<br>
                    fecObj@offspringRel$coefficients[j] <-
    fecObj@offspringRel$coefficients[j] * (1 + delta)<br>
                    Pmatrix <- createIPMPmatrix(nBigMatrix =
    nBigMatrix,<br>
                            minSize = minSize, maxSize = maxSize,
    growObj = growObj,<br>
                            chosenCov = chosenCov, survObj = survObj,
    discreteTrans = discreteTrans,<br>
                            integrateType = integrateType, correction =
    correction)<br>
                    Fmatrix <- createIPMFmatrix(nBigMatrix =
    nBigMatrix,<br>
                            minSize = minSize, maxSize = maxSize, fecObj
    = fecObj,<br>
                            integrateType = integrateType, correction =
    correction,<br>
                            chosenCov = chosenCov, preCensus =
    preCensus, survObj = survObj,<br>
                            growObj = growObj)<br>
                    if (!is.null(clonalObj)) {<br>
                        Cmatrix <- createIPMCmatrix(nBigMatrix =
    nBigMatrix, minSize = minSize,<br>
                                chosenCov = chosenCov, maxSize =
    maxSize, clonalObj = clonalObj,<br>
                                integrateType = integrateType,
    correction = correction,<br>
                                preCensus = preCensus, survObj =
    survObj, growObj = growObj)<br>
                    }<br>
                    <br>
                    IPM <- Pmatrix + Fmatrix + Cmatrix<br>
                    <br>
                    if (response=="lambda") rc2 <-
    Re(eigen(IPM)$value[1])<br>
                    if (response=="R0") rc2 <- R0Calc(Pmatrix,
    Fmatrix+Cmatrix)<br>
                    if (response=="lifeExpect") rc2 <-
    meanLifeExpect(Pmatrix)[chosenBin]<br>
                    <br>
                    fecObj@offspringRel$coefficients[j] <-
    fecObj@offspringRel$coefficients[j]/(1 + delta)<br>
                    <br>
                    slam <- c(slam,(rc2 -
    rc1)/(as.numeric(fecObj@offspringRel$coefficients[j]) *delta))<br>
                    elam <- c(elam,(rc2 - rc1)/(rc1 *delta))<br>
                    nmes <- c(nmes, as.character(paste("fecundity:
    offspring rel ",names(fecObj@offspringRel$coeff)[j])))<br>
                }<br>
                <br>
                fecObj@sdOffspringSize <- fecObj@sdOffspringSize * (1
    + delta)<br>
                Pmatrix <- createIPMPmatrix(nBigMatrix = nBigMatrix,
    minSize = minSize,<br>
                        maxSize = maxSize, growObj = growObj, chosenCov
    = chosenCov,<br>
                        survObj = survObj, discreteTrans =
    discreteTrans, integrateType = integrateType,<br>
                        correction = correction)<br>
                Fmatrix <- createIPMFmatrix(nBigMatrix = nBigMatrix,
    minSize = minSize,<br>
                        maxSize = maxSize, fecObj = fecObj, chosenCov =
    chosenCov,<br>
                        integrateType = integrateType, correction =
    correction,<br>
                        preCensus = preCensus, survObj = survObj,
    growObj = growObj)<br>
                if (!is.null(clonalObj)) {<br>
                    Cmatrix <- createIPMCmatrix(nBigMatrix =
    nBigMatrix, minSize = minSize,<br>
                            chosenCov = chosenCov, maxSize = maxSize,
    clonalObj = clonalObj,<br>
                            integrateType = integrateType, correction =
    correction,<br>
                            preCensus = preCensus, survObj = survObj,
    growObj = growObj)<br>
                }<br>
                <br>
                IPM <- Pmatrix + Fmatrix + Cmatrix<br>
                <br>
                if (response=="lambda") rc2 <-
    Re(eigen(IPM)$value[1])<br>
                if (response=="R0") rc2 <- R0Calc(Pmatrix,
    Fmatrix+Cmatrix)<br>
                if (response=="lifeExpect") rc2 <-
    meanLifeExpect(Pmatrix)[chosenBin]<br>
                <br>
                fecObj@sdOffspringSize <- fecObj@sdOffspringSize/(1 +
    delta)<br>
                <br>
                slam <- c(slam,(rc2 - rc1)/(fecObj@sdOffspringSize *
    delta))<br>
                elam <- c(elam,(rc2 - rc1)/(rc1 * delta))<br>
                nmes <- c(nmes, "fecundity: sd offspring size")<br>
            }<br>
        }<br>
        <br>
    # 5. Clonality<br>
        if (!is.null(clonalObj)) {<br>
            for (i in 1:length(clonalObj@fitFec)) {<br>
                for (j in 1:length(clonalObj@fitFec[[i]]$coefficients))
    {<br>
                    clonalObj@fitFec[[i]]$coefficients[j] <-
    clonalObj@fitFec[[i]]$coefficients[j] *<br>
                            (1 + delta)<br>
                    Pmatrix <- createIPMPmatrix(nBigMatrix =
    nBigMatrix,<br>
                            minSize = minSize, maxSize = maxSize,
    growObj = growObj,<br>
                            chosenCov = chosenCov, survObj = survObj,
    discreteTrans = discreteTrans,<br>
                            integrateType = integrateType, correction =
    correction)<br>
                    if (!is.null(fecObj)) {<br>
                        Fmatrix <- createIPMFmatrix(nBigMatrix =
    nBigMatrix,<br>
                                minSize = minSize, maxSize = maxSize,
    fecObj = fecObj,<br>
                                chosenCov = chosenCov, integrateType =
    integrateType,<br>
                                correction = correction, preCensus =
    preCensus,<br>
                                survObj = survObj, growObj = growObj)<br>
                    }<br>
                    Cmatrix <- createIPMCmatrix(nBigMatrix =
    nBigMatrix, minSize = minSize,<br>
                            chosenCov = chosenCov, maxSize = maxSize,
    clonalObj = clonalObj,<br>
                            integrateType = integrateType, correction =
    correction,<br>
                            preCensus = preCensus, survObj = survObj,
    growObj = growObj)<br>
                    <br>
                    IPM <- Pmatrix + Fmatrix + Cmatrix<br>
                    <br>
                    if (response=="lambda") rc2 <-
    Re(eigen(IPM)$value[1])<br>
                    if (response=="R0") rc2 <- R0Calc(Pmatrix,
    Fmatrix+Cmatrix)<br>
                    if (response=="lifeExpect") rc2 <-
    meanLifeExpect(Pmatrix)[chosenBin]<br>
                    <br>
                    clonalObj@fitFec[[i]]$coefficients[j] <-
    clonalObj@fitFec[[i]]$coefficients[j]/(1 + delta)<br>
                    <br>
                    slam <- c(slam,(rc2 -
    rc1)/((as.numeric(clonalObj@fitFec[[i]]$coefficients[j]) * delta)))<br>
                    elam <- c(elam,(rc2 - rc1)/(rc1 * delta))<br>
                    nmes <- c(nmes,paste("clonality: func", i,
    names(clonalObj@fitFec[[i]]$coefficients)[j]))<br>
                }<br>
            }<br>
            <br>
            chs <- which(!is.na(as.numeric(clonalObj@fecConstants)),
    arr.ind = TRUE)<br>
            if (length(chs) > 0) {<br>
                for (j in 1:length(chs)) {<br>
                    clonalObj@fecConstants[1,chs[j]] <-
    clonalObj@fecConstants[1,chs[j]] * (1 + delta)<br>
                    Pmatrix <- createIPMPmatrix(nBigMatrix =
    nBigMatrix,<br>
                            minSize = minSize, maxSize = maxSize,
    growObj = growObj,<br>
                            chosenCov = chosenCov, survObj = survObj,
    discreteTrans = discreteTrans,<br>
                            integrateType = integrateType, correction =
    correction)<br>
                    if (!is.null(fecObj)) {<br>
                        Fmatrix <- createIPMFmatrix(nBigMatrix =
    nBigMatrix,<br>
                                minSize = minSize, maxSize = maxSize,
    fecObj = fecObj,<br>
                                chosenCov = chosenCov, integrateType =
    integrateType,<br>
                                correction = correction, preCensus =
    preCensus,<br>
                                survObj = survObj, growObj = growObj)<br>
                    }<br>
                    Cmatrix <- createIPMCmatrix(nBigMatrix =
    nBigMatrix, minSize = minSize,<br>
                            chosenCov = chosenCov, maxSize = maxSize,
    clonalObj = clonalObj,<br>
                            integrateType = integrateType, correction =
    correction,<br>
                            preCensus = preCensus, survObj = survObj,
    growObj = growObj)<br>
                    <br>
                    IPM <- Pmatrix + Fmatrix + Cmatrix<br>
                    <br>
                    if (response=="lambda") rc2 <-
    Re(eigen(IPM)$value[1])<br>
                    if (response=="R0") rc2 <- R0Calc(Pmatrix,
    Fmatrix+Cmatrix)<br>
                    if (response=="lifeExpect") rc2 <-
    meanLifeExpect(Pmatrix)[chosenBin]<br>
                    <br>
                    clonalObj@fecConstants[1, chs[j]] <-
    clonalObj@fecConstants[1,chs[j]]/(1 + delta)<br>
                    <br>
                    slam <- c(slam,(rc2 -
    rc1)/(as.numeric(clonalObj@fecConstants[1,chs[j]] * delta)))<br>
                    elam <- c(elam,(rc2 - rc1)/(rc1 * delta))<br>
                    nmes <- c(nmes,paste("clonality:
    constant",names(clonalObj@fecConstants)[chs[j]]))<br>
                }<br>
            }<br>
            <br>
            if (max(clonalObj@offspringSplitter)<1) {<br>
                for (j in which(clonalObj@offspringSplitter>0)) {<br>
                    clonalObj@offspringSplitter[j] <-
    clonalObj@offspringSplitter[j] * (1 + delta)<br>
                    Pmatrix <- createIPMPmatrix(nBigMatrix =
    nBigMatrix,<br>
                            minSize = minSize, maxSize = maxSize,
    growObj = growObj,<br>
                            chosenCov = chosenCov, survObj = survObj,
    discreteTrans = discreteTrans,<br>
                            integrateType = integrateType, correction =
    correction)<br>
                    if (!is.null(fecObj)) {<br>
                        Fmatrix <- createIPMFmatrix(nBigMatrix =
    nBigMatrix,<br>
                                minSize = minSize, maxSize = maxSize,
    fecObj = fecObj,<br>
                                chosenCov = chosenCov, integrateType =
    integrateType,<br>
                                correction = correction, preCensus =
    preCensus,<br>
                                survObj = survObj, growObj = growObj)<br>
                    }<br>
                    Cmatrix <- createIPMCmatrix(nBigMatrix =
    nBigMatrix, minSize = minSize,<br>
                            chosenCov = chosenCov, maxSize = maxSize,
    clonalObj = clonalObj,<br>
                            integrateType = integrateType, correction =
    correction,<br>
                            preCensus = preCensus, survObj = survObj,
    growObj = growObj)<br>
                    <br>
                    IPM <- Pmatrix + Fmatrix + Cmatrix<br>
                    <br>
                    if (response=="lambda") rc2 <-
    Re(eigen(IPM)$value[1])<br>
                    if (response=="R0") rc2 <- R0Calc(Pmatrix,
    Fmatrix+Cmatrix)<br>
                    if (response=="lifeExpect") rc2 <-
    meanLifeExpect(Pmatrix)[chosenBin]<br>
                    <br>
                    clonalObj@offspringSplitter[j] <-
    clonalObj@offspringSplitter[j] / (1 + delta)<br>
                    <br>
                    slam <- c(slam,(rc2 -
    rc1)/(as.numeric(clonalObj@offspringSplitter[j] * delta)))<br>
                    elam <- c(elam,(rc2 - rc1)/(rc1 * delta))<br>
                    nmes <- c(nmes,paste("clonality:
    offspringSplitter",names(clonalObj@offspringSplitter[j])))<br>
                }<br>
            }<br>
            <br>
            chs <- which(!is.na(as.numeric(clonalObj@fecByDiscrete)),
    arr.ind = TRUE)<br>
            if (length(chs) > 0) {<br>
                for (j in 1:length(chs)) {<br>
                    clonalObj@fecByDiscrete[1,chs[j]] <-
    clonalObj@fecByDiscrete[1,chs[j]] * (1 + delta)<br>
                    Pmatrix <- createIPMPmatrix(nBigMatrix =
    nBigMatrix,<br>
                            minSize = minSize, maxSize = maxSize,
    growObj = growObj,<br>
                            chosenCov = chosenCov, survObj = survObj,
    discreteTrans = discreteTrans,<br>
                            integrateType = integrateType, correction =
    correction)<br>
                    if (!is.null(fecObj)) {<br>
                        Fmatrix <- createIPMFmatrix(nBigMatrix =
    nBigMatrix,<br>
                                minSize = minSize, maxSize = maxSize,
    fecObj = fecObj,<br>
                                chosenCov = chosenCov, integrateType =
    integrateType,<br>
                                correction = correction, preCensus =
    preCensus,<br>
                                survObj = survObj, growObj = growObj)<br>
                    }<br>
                    Cmatrix <- createIPMCmatrix(nBigMatrix =
    nBigMatrix, minSize = minSize,<br>
                            chosenCov = chosenCov, maxSize = maxSize,
    clonalObj = clonalObj,<br>
                            integrateType = integrateType, correction =
    correction,<br>
                            preCensus = preCensus, survObj = survObj,
    growObj = growObj)<br>
                    <br>
                    IPM <- Pmatrix + Fmatrix + Cmatrix<br>
                    <br>
                    if (response=="lambda") rc2 <-
    Re(eigen(IPM)$value[1])<br>
                    if (response=="R0") rc2 <- R0Calc(Pmatrix,
    Fmatrix+Cmatrix)<br>
                    if (response=="lifeExpect") rc2 <-
    meanLifeExpect(Pmatrix)[chosenBin]<br>
                    <br>
                    clonalObj@fecByDiscrete[1,chs[j]] <-
    clonalObj@fecByDiscrete[1,chs[j]] / (1 + delta)<br>
                    <br>
                    slam <- c(slam,(rc2 -
    rc1)/(as.numeric(clonalObj@fecByDiscrete[1,chs[j]] * delta)))<br>
                    elam <- c(elam,(rc2 - rc1)/(rc1 * delta))<br>
                    nmes <- c(nmes,paste("clonality:
    fecByDiscrete",names(clonalObj@fecByDiscrete)[chs[j]]))<br>
                }<br>
            }<br>
            <br>
            if (class(clonalObj@offspringRel)=="lm") {<br>
                for (j in 1:length(clonalObj@offspringRel$coeff)) {<br>
                    clonalObj@offspringRel$coefficients[j] <-
    clonalObj@offspringRel$coefficients[j] * (1 + delta)<br>
                    Pmatrix <- createIPMPmatrix(nBigMatrix =
    nBigMatrix,<br>
                            minSize = minSize, maxSize = maxSize,
    growObj = growObj,<br>
                            chosenCov = chosenCov, survObj = survObj,
    discreteTrans = discreteTrans,<br>
                            integrateType = integrateType, correction =
    correction)<br>
                    if (!is.null(fecObj)) {<br>
                        Fmatrix <- createIPMFmatrix(nBigMatrix =
    nBigMatrix,<br>
                                minSize = minSize, maxSize = maxSize,
    fecObj = fecObj,<br>
                                chosenCov = chosenCov, integrateType =
    integrateType,<br>
                                correction = correction, preCensus =
    preCensus,<br>
                                survObj = survObj, growObj = growObj)<br>
                    }<br>
                    Cmatrix <- createIPMCmatrix(nBigMatrix =
    nBigMatrix, minSize = minSize,<br>
                            chosenCov = chosenCov, maxSize = maxSize,
    clonalObj = clonalObj,<br>
                            integrateType = integrateType, correction =
    correction,<br>
                            preCensus = preCensus, survObj = survObj,
    growObj = growObj)<br>
                    <br>
                    IPM <- Pmatrix + Fmatrix + Cmatrix<br>
                    <br>
                    if (response=="lambda") rc2 <-
    Re(eigen(IPM)$value[1])<br>
                    if (response=="R0") rc2 <- R0Calc(Pmatrix,
    Fmatrix+Cmatrix)<br>
                    if (response=="lifeExpect") rc2 <-
    meanLifeExpect(Pmatrix)[chosenBin]<br>
                    <br>
                    clonalObj@offspringRel$coefficients[j] <-
    clonalObj@offspringRel$coefficients[j]/(1 + delta)<br>
                    <br>
                    slam <- c(slam,(rc2 -
    rc1)/(as.numeric(clonalObj@offspringRel$coefficients[j]) *delta))<br>
                    elam <- c(elam,(rc2 - rc1)/(rc1 *delta))<br>
                    nmes <- c(nmes, as.character(paste("clonality:
    offspring rel ",names(clonalObj@offspringRel$coeff)[j])))<br>
                }<br>
                <br>
                clonalObj@sdOffspringSize <-
    clonalObj@sdOffspringSize * (1 + delta)<br>
                Pmatrix <- createIPMPmatrix(nBigMatrix = nBigMatrix,
    minSize = minSize,<br>
                        maxSize = maxSize, growObj = growObj, chosenCov
    = chosenCov,<br>
                        survObj = survObj, discreteTrans =
    discreteTrans, integrateType = integrateType,<br>
                        correction = correction)<br>
                if (!is.null(fecObj)) {<br>
                    Fmatrix <- createIPMFmatrix(nBigMatrix =
    nBigMatrix,<br>
                            minSize = minSize, maxSize = maxSize, fecObj
    = fecObj,<br>
                            chosenCov = chosenCov, integrateType =
    integrateType,<br>
                            correction = correction, preCensus =
    preCensus,<br>
                            survObj = survObj, growObj = growObj)<br>
                }<br>
                Cmatrix <- createIPMCmatrix(nBigMatrix = nBigMatrix,
    minSize = minSize,<br>
                        chosenCov = chosenCov, maxSize = maxSize,
    clonalObj = clonalObj,<br>
                        integrateType = integrateType, correction =
    correction,<br>
                        preCensus = preCensus, survObj = survObj,
    growObj = growObj)<br>
                <br>
                IPM <- Pmatrix + Fmatrix + Cmatrix<br>
                <br>
                if (response=="lambda") rc2 <-
    Re(eigen(IPM)$value[1])<br>
                if (response=="R0") rc2 <- R0Calc(Pmatrix,
    Fmatrix+Cmatrix)<br>
                if (response=="lifeExpect") rc2 <-
    meanLifeExpect(Pmatrix)[chosenBin]<br>
                <br>
                clonalObj@sdOffspringSize <-
    clonalObj@sdOffspringSize/(1 + delta)<br>
                <br>
                slam <- c(slam,(rc2 - rc1)/(clonalObj@sdOffspringSize
    * delta))<br>
                elam <- c(elam,(rc2 - rc1)/(rc1 * delta))<br>
                nmes <- c(nmes, "clonality: sd offspring size")<br>
            }<br>
        }<br>
        <br>
        names(slam) <- nmes<br>
        names(elam) <- nmes<br>
        <br>
        return(list(sens = slam, elas = elam))<br>
    }<br>
    <br>
    <br>
    <br>
  </body>
</html>