Package 'phenModel'

Title: Insect Phenology Model Evaluation Based on Daily Temperatures
Description: Generates predicted stage change days for an insect, based on daily temperatures and development rate parameters, as developed by Pollard (2014) <http://mural.maynoothuniversity.ie/view/ethesisauthor/Pollard=3ACiaran_P=2E=3A=3A.html>. A few example datasets are included and implemented for P. vulgatissima, the blue willow beetle, but the approach can be readily applied to other species that display similar behaviour.
Authors: Rafael de Andrade Moral [aut, cre], Rowan Fealy [aut]
Maintainer: Rafael de Andrade Moral <[email protected]>
License: GPL (>= 2)
Version: 1.0
Built: 2024-12-01 08:00:12 UTC
Source: CRAN

Help Index


Insect Phenology Model Evaluation Based on Daily Temperatures

Description

Generates predicted stage change days for an insect, based on daily temperatures and development rate parameters, as developed by Pollard (2014) <http://mural.maynoothuniversity.ie/view/ethesisauthor/Pollard=3ACiaran_P=2E=3A=3A.html>. A few example datasets are included and implemented for P. vulgatissima, the blue willow beetle, but the approach can be readily applied to other species that display similar behaviour.

Details

The DESCRIPTION file:

Package: phenModel
Type: Package
Title: Insect Phenology Model Evaluation Based on Daily Temperatures
Version: 1.0
Date: 2019-08-01
Authors@R: c(person("Rafael", "de Andrade Moral", role = c("aut", "cre"), email = "[email protected]"), person("Rowan", "Fealy", role = "aut"))
Author: Rafael de Andrade Moral [aut, cre], Rowan Fealy [aut]
Maintainer: Rafael de Andrade Moral <[email protected]>
Depends: R (>= 3.0.0), ggplot2, dplyr, reshape, grid
Description: Generates predicted stage change days for an insect, based on daily temperatures and development rate parameters, as developed by Pollard (2014) <http://mural.maynoothuniversity.ie/view/ethesisauthor/Pollard=3ACiaran_P=2E=3A=3A.html>. A few example datasets are included and implemented for P. vulgatissima, the blue willow beetle, but the approach can be readily applied to other species that display similar behaviour.
License: GPL (>= 2)
NeedsCompilation: no
Packaged: 2019-08-01 12:35:04 UTC; rafael
Repository: CRAN
Date/Publication: 2019-08-02 10:40:02 UTC

Index of help topics:

assign_observed_data    Observed Data Preparation
bp_maxmin               Internal functions to used to evaluate a
                        phenology model and plot the results
casement9596            Casement 1995-1996 Data
cdl_check               Plots for Checking Sensitivity to CDL
cum_dev_rate            Cumulative Development Rates
get_cycle               Obtain Yearly Cycles
get_total_info          Compute Day Length, Mean Temperature, Thermal
                        Units, and Cumulative Chill Days
phenModel-package       Insect Phenology Model Evaluation Based on
                        Daily Temperatures
phen_model              Phenology Model Evaluation
phen_model_forecast     Multi-Year Forecast Based on the Phenology
                        Model
phen_model_gen2         Phenology Model Evaluation for Further
                        Generations
plot_phen_forecast      Plot Phenology Model Multi-Year Forecast
plot_phen_model         Plot Phenology Model Evaluations
pvulg_budburst_parameters
                        Estimated Parameters for the Exponential Decay
                        Model for Budburst
pvulg_lactin_parameters
                        Estimated Parameters for the Lactin Model for
                        P. Vulgatissima
pvulg_weibull_parameters
                        Estimated Parameters for the Weibull Model for
                        P. Vulgatissima
sensitivity             Sensitivity Analysis for Evaluated Phenology
                        Model
valentia                Valentia Data

Author(s)

Rafael de Andrade Moral [aut, cre], Rowan Fealy [aut]

Maintainer: Rafael de Andrade Moral <[email protected]>

References

Pollard C.P., Griffin C.T., Moral R.A., Duffy C., Chuche J., Gaffney M.T., Fealy R. (submitted) phenModel: a temperature-dependent phenology model for the blue willow beetle, Phratora vulgatissima.


Observed Data Preparation

Description

Prepares observed data for plotting with model evaluation.

Usage

assign_observed_data(obj, eggs = NA, larvae = NA, pupae = NA, adults)

Arguments

obj

an object generated from phen_model

eggs

vector of days in which eggs were observed

larvae

vector of days in which larvae were observed

pupae

vector of days in which pupae were observed

adults

vector of days in which adults were observed

Details

Reads in the data and returns an object ready to be passed to plot_phen_model for plotting. Uses a simple probability checking to determine whether the observations for the adults category belong to the post-diapause, ovipositing or adult emergence stage, based on normal distributions.

Value

Returns a data.frame with five columns, one for each stage (post-diapause, eggs, larvae, pupae and adults).

Author(s)

Rafael de Andrade Moral ([email protected]) and Rowan Fealy

See Also

phen_model, plot_phen_model

Examples

data(casement9596)
casement1995 <- data.frame(casement9596, 
                           with(casement9596, 
                                get_total_info(Tmax, Tmin, Tbase = 7, Lat, day)))

## loading fitted parameters
data(pvulg_budburst_parameters)
data(pvulg_weibull_parameters)
data(pvulg_lactin_parameters)

## evaluating model
quantiles_seq <- seq(.001, .95, .001)

phen95 <- phen_model(Tmean = "Tmean",
                     thermal_units = "thermal_units",
                     chill_days = "chill_days",
                     day_length = "day_length",
                     bud_pars = pvulg_budburst_parameters,
                     weib_pars = pvulg_weibull_parameters,
                     lactin_pars = pvulg_lactin_parameters,
                     max_day_length = 14.92,
                     pop_quantiles = quantiles_seq,
                     data = casement1995)

phen95_gen2 <- phen_model_gen2(Tmean = "Tmean",
                               day_length = "day_length",
                               bud_pars = pvulg_budburst_parameters,
                               weib_pars = pvulg_weibull_parameters,
                               lactin_pars = pvulg_lactin_parameters,
                               sex_mat_day = phen95["0.05","sexual_maturation_day"],
                               pop_quantiles = .05,
                               data = casement1995)

## adding observed points
made_up_data <- assign_observed_data(obj = phen95,
                                     eggs = c(182,184,204,227,233,242),
                                     larvae = c(204,227,233,242,249),
                                     adults = c(204,212,220,221,222,224,227,233,242,269,283,298,
                                                305,310,311,312,313,314,315,316,317,318,
                                                319,320,321,322,323,334,325,326,327,328,
                                                329,330,331,332))

plot_phen_model(obj = phen95, obj_gen2 = phen95_gen2,
                observed_data = made_up_data)

Internal functions to used to evaluate a phenology model and plot the results

Description

Internal functions used to evaluate a phenology model and plot the results

Author(s)

Rafael A. Moral <[email protected]> and Rowan Fealy


Casement 1995-1996 Data

Description

Daily minimum and maximum temperature data obtained at the Casement Aerodrome weather station for the period of 1st November 1995 to 31st October 1996.

Usage

data("casement9596")

Format

A data frame with 366 observations on the following 7 variables.

Year

a numeric vector

Month

a numeric vector

Day

a numeric vector

Lat

a numeric vector

Tmin

a numeric vector

Tmax

a numeric vector

day

a numeric vector

Details

The data was obtained from the Irish National Meteorological Agency (Met Éireann).

Source

https://www.met.ie/climate/available-data/historical-data

Examples

data(casement9596)

casement1995 <- data.frame(casement9596, 
                           with(casement9596, 
                                get_total_info(Tmax, Tmin, Tbase = 7, Lat, day)))

## evaluating model
quantiles_seq <- seq(.001, .95, .001)

## loading fitted parameters
data(pvulg_budburst_parameters)
data(pvulg_weibull_parameters)
data(pvulg_lactin_parameters)

phen95 <- phen_model(Tmean = "Tmean",
                     thermal_units = "thermal_units",
                     chill_days = "chill_days",
                     day_length = "day_length",
                     bud_pars = pvulg_budburst_parameters,
                     weib_pars = pvulg_weibull_parameters,
                     lactin_pars = pvulg_lactin_parameters,
                     max_day_length = 14.92,
                     pop_quantiles = quantiles_seq,
                     data = casement1995)

phen95_gen2 <- phen_model_gen2(Tmean = "Tmean",
                               day_length = "day_length",
                               bud_pars = pvulg_budburst_parameters,
                               weib_pars = pvulg_weibull_parameters,
                               lactin_pars = pvulg_lactin_parameters,
                               sex_mat_day = phen95["0.05","sexual_maturation_day"],
                               pop_quantiles = .05,
                               data = casement1995)

plot_phen_model(obj = phen95, obj_gen2 = phen95_gen2)

Plots for Checking Sensitivity to CDL

Description

Produces plots based on sensitivity analysis for the critical day length threshold.

Usage

cdl_check(cdl, quantiles, max_day_length)

Arguments

cdl

a vector with the CDL thersholds calculated by sensitivity

quantiles

the quantiles corresponding to each value from cdl

max_day_length

the maximum day length set when running sensitivity

Value

A ggplot object.

Author(s)

Rafael de Andrade Moral ([email protected]) and Rowan Fealy

See Also

sensitivity

Examples

data(casement9596)

casement1995 <- data.frame(casement9596, 
                           with(casement9596, 
                                get_total_info(Tmax, Tmin, Tbase = 7, Lat, day)))

data(pvulg_budburst_parameters)
data(pvulg_weibull_parameters)
data(pvulg_lactin_parameters)

test_quantiles <- c(.01,.05,.1,.25,.5,.75,.9,.95,.99)
cdl_thresholds <- NULL
for(q in test_quantiles) {
  sens_casement_cdl <- sensitivity(Tmax = casement9596$Tmax,
                                   Tmin = casement9596$Tmin,
                                   Tbase = 7,
                                   lat = casement9596$Lat,
                                   day = casement9596$day,
                                   bud_pars = pvulg_budburst_parameters,
                                   weib_pars = pvulg_weibull_parameters,
                                   lactin_pars = pvulg_lactin_parameters,
                                   max_day_length = 14.92, 
                                   pop_quantile = q,
                                   data = casement9596,
                                   study_type = "cdl",
                                   percent_variation = 1,
                                   resolution = 20) # increase resolution for better visualisation
  cdl_thresholds <- c(cdl_thresholds, summary_sensitivity(sens_casement_cdl)[1])
}

names(cdl_thresholds) <- paste(test_quantiles)
cdl_thresholds
                                 
cdl_check(cdl = cdl_thresholds,
          quantiles = test_quantiles,
          max_day_length = 14.92) +
  ggtitle("CDL sensitivity")

Cumulative Development Rates

Description

Returns the cumulative development rates calculated when the phenology model is being evaluated.

Usage

cum_dev_rate(Tmean, thermal_units, chill_days, day_length,
             bud_pars, weib_pars, lactin_pars, max_day_length,
             pop_quantiles = 0.5, data)

Arguments

Tmean

name of the column in the data representing the mean temperature

thermal_units

name of the column in the data representing the thermal units

chill_days

name of the column in the data representing the number of chill days

day_length

name of the column in the data representing the day length

bud_pars

vector of parameters for the budburst model

weib_pars

matrix of parameters for the Weibull model for each developmental stage

lactin_pars

matrix of parameters for the lactin model for each developmental stage

max_day_length

critical day length threshold

pop_quantiles

quantile of the population to be evaluated by the phenology model

data

a data.frame

Value

Returns the data with an appended column representing the cumulative development rates evaluated by the model.

Author(s)

Rafael de Andrade Moral ([email protected]) and Rowan Fealy

See Also

phen_model

Examples

data(casement9596)

casement1995 <- data.frame(casement9596, 
                           with(casement9596, 
                                get_total_info(Tmax, Tmin, Tbase = 7, Lat, day)))

## loading fitted parameters
data(pvulg_budburst_parameters)
data(pvulg_weibull_parameters)
data(pvulg_lactin_parameters)

casement1995 <- cum_dev_rate(Tmean = "Tmean",
                             thermal_units = "thermal_units",
                             chill_days = "chill_days",
                             day_length = "day_length",
                             bud_pars = pvulg_budburst_parameters,
                             weib_pars = pvulg_weibull_parameters,
                             lactin_pars = pvulg_lactin_parameters,
                             max_day_length = 14.92,
                             data = casement1995)

Obtain Yearly Cycles

Description

Given a data.frame with columns representing days and months, returns a vector of indices representing which cycle each row corresponds to.

Usage

get_cycle(data, day, month, day.end, month.end)

Arguments

data

a data.frame

day

name of the column representing the days

month

name of the column representing the months

day.end

which day determines the end of a cycle?

month.end

which month determines the end of a cycle?

Value

A vector of integers.

Author(s)

Rafael de Andrade Moral ([email protected]) and Rowan Fealy

Examples

data(valentia)

# cycle ends on 31st of October
valentia$cycle <- get_cycle(data = valentia, day = "day", month = "month",
                            day.end = 31, month.end = 10)

Compute Day Length, Mean Temperature, Thermal Units, and Cumulative Chill Days

Description

Computes daily day length, mean temperature, thermal units and cumulative number of chill days for a dataset.

Usage

get_total_info(Tmax, Tmin, Tbase, lat, day)

Arguments

Tmax

a vector of daily maximum temperatures

Tmin

a vector of daily minimum temperatures

Tbase

the base temperature used to define a chill day

lat

the latitude

day

day of the year (vector)

Details

Implements the method by Forsythe et al. (1995) to calculate the day length, and the single-sine degree-day method to compute the thermal units.

Value

Returns a data.frame with the day lengths, mean temperatures, thermal units and cumulative number of chill days.

Author(s)

Rafael de Andrade Moral ([email protected]) and Rowan Fealy

References

Cannell, M.G.R., Smith, R.I. (1983) Thermal time, chill days and prediction of budburst in Picea sitchensis. Journal of Applied Ecology, 20(3), 951–963.

Forsythe et al. (1995) A model comparison for daylength as a function of latitude and day of the year. Ecological Modeling 80:87-95.

Examples

data(casement9596)

with(casement9596, get_total_info(Tmax, Tmin, Tbase = 7, Lat, day))

Phenology Model Evaluation

Description

Evaluates the phenology model for specified population quantiles, based on daily temperatures.

Usage

phen_model(Tmean, thermal_units, chill_days, day_length,
           bud_pars, weib_pars, lactin_pars, max_day_length,
           pop_quantiles = c(0.05, 0.5, 0.95),
           print.l = FALSE, save.l = FALSE, data)

Arguments

Tmean

name of the column in the data representing the mean temperature

thermal_units

name of the column in the data representing the thermal units

chill_days

name of the column in the data representing the number of chill days

day_length

name of the column in the data representing the day length

bud_pars

vector of parameters for the budburst model

weib_pars

matrix of parameters for the Weibull model for each developmental stage

lactin_pars

matrix of parameters for the lactin model for each developmental stage

max_day_length

critical day length threshold

pop_quantiles

vector of quantiles of the population to be evaluated by the phenology model

print.l

logical. If TRUE, prints the cumulative development rates as the model iterates.

save.l

logical. If TRUE, returns the cumulative development rates instead of model evaluations.

data

a data.frame

Details

As inputs, the model requires site latitude and daily minimum and maximum temperatures from the 1st November of the preceding year. Development, quantified by a temperature dependent development rate model defined for each life cycle stage, is initialised in the model following the simulated date of budburst, a biofix dependent on the accumulation of required thermal and chilling days from the 1st November of the preceding year, described below. Once budburst is simulated to have occurred, post-diapause pre-oviposition development commences. Following completion of the post-diapause pre-oviposition stage, the first day of egg-lay is returned for adult females emerging from overwintering. Oviposition period stage advancement occurs when the required development for this life cycle stage has been completed. Egg, larval and pupal development stages are then initiated sequentially. Following completion of the pupal development stage, the emerging adults enter a sexual maturation or post-eclosion pre-oviposition period. This life-cycle stage is hypothesised to be sensitive to a diapause-inducing stimulus - photoperiod (Tauber et al., 1986; Danks, 1987; Dalin, 2011; Hodek 2012; Pollard, 2014) - defined in the model as a critical day length (CDL) threshold. New generation adults that finish sexual maturation after the critical day length (CDL) enter into a state of reproductive diapause. P. vulgatissima adults that complete development prior to the CDL threshold can begin ovipositing to initiate subsequent generations.

Value

A data.frame containing model evaluations for each life cycle (columns) and population quantile (rows).

Author(s)

Rafael de Andrade Moral ([email protected]) and Rowan Fealy

References

Dalin P. (2011) Diapause induction and termination in a commonly univoltine leaf beetle (Phratora vulgatissima). Insect Science, 18, 443-450. doi:10.1111/j.1744-7917.2011.01417.x

Danks, H.V. (1987) Insect dormancy: an ecological perspective 1st ed. H. V. Danks, ed., Biological Survey of Canada (Terrestrial Artropods) (Ottawa).

Hodek, I. (2012) Adult diapause in Coleoptera. Psyche, 2012, 1–10.

Tauber M.J., Tauber C.A. and Masaki S. (1986) Seasonal adaptations of insects. Oxford University Press, New York, USA

Pollard, C. (2014) A Temperature-Dependent Development Model for Willow Beetle Species (Coleoptera: Chrysomelidae) in Ireland: Simulation of Phenology/Voltinism in Response to Climate Change. Unpublished PhD thesis, submitted to the National University of Ireland Maynooth, Maynooth, 1-373.

Pollard C.P., Griffin C.T., Moral R.A., Duffy C., Chuche J., Gaffney M.T., Fealy R. (submitted) phenModel: a temperature-dependent phenology model for the blue willow beetle, Phratora vulgatissima.

See Also

plot_phen_model

Examples

data(casement9596)

casement1995 <- data.frame(casement9596, 
                           with(casement9596, 
                                get_total_info(Tmax, Tmin, Tbase = 7, Lat, day)))

data(pvulg_budburst_parameters)
data(pvulg_weibull_parameters)
data(pvulg_lactin_parameters)

phen_model(Tmean = "Tmean",
           thermal_units = "thermal_units",
           chill_days = "chill_days",
           day_length = "day_length",
           bud_pars = pvulg_budburst_parameters,
           weib_pars = pvulg_weibull_parameters,
           lactin_pars = pvulg_lactin_parameters,
           max_day_length = 14.92,
           data = casement1995)

Multi-Year Forecast Based on the Phenology Model

Description

A forecast based on the phenology model for multiple years, based on daily temperatures.

Usage

phen_model_forecast(Tmean, thermal_units, chill_days, day_length,
                    bud_pars, weib_pars, lactin_pars,
                    max_day_length = 14.92, pop_quantile, year, data)

Arguments

Tmean

name of the column in the data representing the mean temperature

thermal_units

name of the column in the data representing the thermal units

chill_days

name of the column in the data representing the number of chill days

day_length

name of the column in the data representing the day length

bud_pars

vector of parameters for the budburst model

weib_pars

matrix of parameters for the Weibull model for each developmental stage

lactin_pars

matrix of parameters for the lactin model for each developmental stage

max_day_length

critical day length threshold

pop_quantile

quantile of the population to be evaluated by the phenology model

year

a vector of indices representing each yearly cycle (usually the output from get_cycle)

data

a data.frame

Details

See phen_model

Value

A data.frame with the number of rows equal to the total number of yearly cycles, and each column representing the developmental stage of the insect.

Author(s)

Rafael de Andrade Moral ([email protected]) and Rowan Fealy

See Also

plot_phen_forecast

Examples

data(valentia)

valentia$cycle <- get_cycle(data = valentia, day = "day", month = "month",
                            day.end = 31, month.end = 10)
valentia_split <- split(valentia, valentia$cycle)
valentia_split <- lapply(valentia_split,
                         function(x) data.frame(x,
                                                with(x, get_total_info(Tmax = x$max_temp,
                                                                       Tmin = x$min_temp,
                                                                       Tbase = 7,
                                                                       lat = x$Lat,
                                                                       x$day_of_year))))
valentia <- do.call("rbind", valentia_split)

data(pvulg_budburst_parameters)
data(pvulg_weibull_parameters)
data(pvulg_lactin_parameters)

phen_forecast <- phen_model_forecast(Tmean = "Tmean",
                                     thermal_units = "thermal_units",
                                     chill_days = "chill_days",
                                     day_length = "day_length",
                                     bud_pars = pvulg_budburst_parameters,
                                     weib_pars = pvulg_weibull_parameters,
                                     lactin_pars = pvulg_lactin_parameters,
                                     pop_quantile = .5,
                                     year = "cycle",
                                     data = valentia)

Phenology Model Evaluation for Further Generations

Description

Evaluates the phenology model for specified population quantiles, based on daily temperatures for further generations.

Usage

phen_model_gen2(Tmean, day_length,
                bud_pars, weib_pars, lactin_pars,
                sex_mat_day, pop_quantiles = 0.5,
                max_day_length = 14.92, data)

Arguments

Tmean

name of the column in the data representing the mean temperature

day_length

name of the column in the data representing the day length

bud_pars

vector of parameters for the budburst model

weib_pars

matrix of parameters for the Weibull model for each developmental stage

lactin_pars

matrix of parameters for the lactin model for each developmental stage

sex_mat_day

the day individuals from the first generation reached the sexual maturation stage

pop_quantiles

vector of quantiles of the population to be evaluated by the phenology model

max_day_length

critical day length threshold

data

a data.frame

Details

See phen_model

Value

A data.frame containing model evaluations for each life cycle (columns) and population quantile (rows).

Author(s)

Rafael de Andrade Moral ([email protected]) and Rowan Fealy

See Also

plot_phen_model

Examples

data(casement9596)

casement1995 <- data.frame(casement9596, 
                           with(casement9596, 
                                get_total_info(Tmax, Tmin, Tbase = 7, Lat, day)))

data(pvulg_budburst_parameters)
data(pvulg_weibull_parameters)
data(pvulg_lactin_parameters)

phen95 <- phen_model(Tmean = "Tmean",
                     thermal_units = "thermal_units",
                     chill_days = "chill_days",
                     day_length = "day_length",
                     bud_pars = pvulg_budburst_parameters,
                     weib_pars = pvulg_weibull_parameters,
                     lactin_pars = pvulg_lactin_parameters,
                     max_day_length = 14.92,
                     data = casement1995)
           
phen95_gen2 <- phen_model_gen2(Tmean = "Tmean",
                               day_length = "day_length",
                               bud_pars = pvulg_budburst_parameters,
                               weib_pars = pvulg_weibull_parameters,
                               lactin_pars = pvulg_lactin_parameters,
                               sex_mat_day = phen95["0.05","sexual_maturation_day"],
                               pop_quantiles = .05,
                               data = casement1995)

Plot Phenology Model Multi-Year Forecast

Description

Produces a plot of the phenology model multi-year forecasting evaluations.

Usage

plot_phen_forecast(obj, year_from = 1, xlab = "Year",
                   ylab = "Days from 1st November")

Arguments

obj

an output from the phen_model_forecast function

year_from

the first year we are forecasting for (e.g. "2015")

xlab

the x-axis label

ylab

the y-axis label

Value

A ggplot object.

Author(s)

Rafael de Andrade Moral ([email protected]) and Rowan Fealy

See Also

valentia


Plot Phenology Model Evaluations

Description

Produces a plot of the phenology model evaluations.

Usage

plot_phen_model(obj, obj_gen2, binwidth = 8, forecast = FALSE,
                observed_data = NULL, ylab = "Days from 1st November",
                xlab = "Modelled Life-Cycle Stages", 
                labels = c("Budburst",
                           "Post-Diapause",
                           "Ovipositing Period (Eggs)",
                           "Larvae Emergence",
                           "Pupae Emergence",
                           "Adult Emergence",
                           "Sexual Maturation"))

Arguments

obj

an output of the phen_model or phen_model_forecast functions

obj_gen2

an output of the phen_model_gen2 or phen_model_forecast functions

binwidth

binwidth of the density estimator

forecast

logical. Set to TRUE if you are plotting a multi-year forecast (i.e. if obj and obj_gen2 are outputs of phen_model_forecast)

observed_data

an output from the assign_observed_data function

ylab

the y-axis label

xlab

the x-axis label

labels

a vector of strings representing the names of the life-cycle stages

Details

Visualisation of days until stage completion for different life cycle stages and generations. Plot can incorporate observed data, where available. All dates are counted from the 1st of November of the previous year. The estimated density is based on a Gaussian kernel whose binwidth can be easily modified using argument binwidth. To add observed data points, see assign_observed_data.

Since this is a ggplot object, layers can be easily added by using standard ggplot functions.

Value

A ggplot object.

Author(s)

Rafael de Andrade Moral ([email protected]) and Rowan Fealy

References

Pollard C.P., Griffin C.T., Moral R.A., Duffy C., Chuche J., Gaffney M.T., Fealy R. (submitted) phenModel: a temperature-dependent phenology model for the blue willow beetle, Phratora vulgatissima.

See Also

phen_model, phen_model_gen2, phen_model_forecast


Estimated Parameters for the Exponential Decay Model for Budburst

Description

Vector of estimated parameters.

Usage

data("pvulg_budburst_parameters")

Format

The format is: Named num [1:2] 540.196 -0.016 - attr(*, "names")= chr [1:2] "b" "m"

Details

The method implied is based on the Alternating Model, which is a degree-day model that accumulates thermal/chilling units above/below a base threshold from a specified date (Cannell and Smith, 1983). The b and m values correspond to the estimates for budburst for Salix viminalis (Pollard et al., submitted).

Source

Chmielewski, F.M., Heider, S., Moryson, S. and Bruns, E. (2013) International phenological observation networks: concept of IPG and GPM. In M. D. Schwartz, ed. Phenology: An integrative environmental science. New York London: Springer, p. 610.

References

Cannell, M.G.R. and Smith, R.I. (1983) Thermal time, chill days and prediction of budburst in Picea sitchensis. Journal of Applied Ecology, 20(3), 951–963.

Pollard C.P., Griffin C.T., Moral R.A., Duffy C., Chuche J., Gaffney M.T., Fealy R. (submitted) phenModel: a temperature-dependent phenology model for the blue willow beetle, Phratora vulgatissima.

Examples

data(pvulg_budburst_parameters)

Estimated Parameters for the Lactin Model for P. Vulgatissima

Description

Matrix of estimated parameters for each stage of the life-cycle of P. vulgatissima

Usage

data("pvulg_lactin_parameters")

Format

The format is: num [1:4, 1:6] 0.00864 28.94449 0.52103 -1.06402 0.002 ... - attr(*, "dimnames")=List of 2 ..$ : chr [1:4] "rho" "Tmax" "deltaT" "lambda" ..$ : chr [1:6] "post_diapause" "ovipositing" "larva_emergence" "pupa_emergence" ...

Details

The parameters were derived based on constant temperature laboratory experiments (see Pollard, 2014) for different life-cycle stages of P. vulgatissima. Development times were converted to rates and subsequently used as input for the Lactin model (Lactin et al., 1995). The model was fitted to the entire temperature range, including where there was no development rate (at the upper temperature threshold).

Source

Pollard, C. (2014) A Temperature-Dependent Development Model for Willow Beetle Species (Coleoptera: Chrysomelidae) in Ireland: Simulation of Phenology/Voltinism in Response to Climate Change. Unpublished PhD thesis, submitted to the National University of Ireland Maynooth, Maynooth, 1-373.

References

Lactin D.J., Holliday N.J., Johnson D.L. and Craigen R. (1995) Improved rate model of temperature-dependent development by arthropods. Environmental Entomology, 24, 68–75. doi:10.1093/ee/24.1.68

Pollard C.P., Griffin C.T., Moral R.A., Duffy C., Chuche J., Gaffney M.T., Fealy R. (submitted) phenModel: a temperature-dependent phenology model for the blue willow beetle, Phratora vulgatissima.

Examples

data(pvulg_lactin_parameters)

Estimated Parameters for the Weibull Model for P. Vulgatissima

Description

Matrix of estimated parameters for each stage of the life-cycle of P. vulgatissima

Usage

data("pvulg_weibull_parameters")

Format

The format is: num [1:3, 1:6] 0.7207 0.3517 1.7918 -0.0716 0.5117 ... - attr(*, "dimnames")=List of 2 ..$ : chr [1:3] "gamma" "eta" "beta" ..$ : chr [1:6] "post_diapause" "ovipositing" "larva_emergence" "pupa_emergence" ...

Details

The parameters were derived based on constant temperature laboratory experiments (see Pollard, 2014) for different life-cycle stages of P. vulgatissima. Development times (or rates) were derived as cumulative frequency distributions at each temperature; development times for each percentile were then divided by the respective median value of the distribution to produce a normalised ("same shape") distribution of development times at each temperature (Wagner et al., 1984; 1991). Based on the "same shape" assumption, a single cumulative distribution representing the normalised distributions for all temperature treatments was produced by averaging all the distributions, weighted by the total frequency of each distribution (Wagner et al., 1984; 1991).

Source

Pollard, C. (2014) A Temperature-Dependent Development Model for Willow Beetle Species (Coleoptera: Chrysomelidae) in Ireland: Simulation of Phenology/Voltinism in Response to Climate Change. Unpublished PhD thesis, submitted to the National University of Ireland Maynooth, Maynooth, 1-373.

References

Wagner T.L., Olson R.L. and Willers J.L. (1991) Modeling arthropod development time. Journal of Agricultural Entomology, 8, 251-270.

Wagner T.L., Wu H.I., Sharpe P.J.H. and Coulson R.N. (1984) Modeling distributions of insect development time: a literature review and application of the Weibull function. Annals of the Entomological Society of America, 77, 475-487. doi:10.1093/aesa/77.2.208

Pollard C.P., Griffin C.T., Moral R.A., Duffy C., Chuche J., Gaffney M.T., Fealy R. (submitted) phenModel: a temperature-dependent phenology model for the blue willow beetle, Phratora vulgatissima.

Examples

data(pvulg_weibull_parameters)

Sensitivity Analysis for Evaluated Phenology Model

Description

Runs a sensitivity analysis on the evaluated phenology model, by simulating random changes to fitted parameters and/or specifying a range of base temperatures to determine a chill day.

Usage

sensitivity(Tmax, Tmin, Tbase, lat, day,
            bud_pars, weib_pars, lactin_pars, max_day_length, 
            pop_quantile = .5, data,
            study_type = c("Tbase","lactin","weibull","bud_days","bud_parms","cdl"),
            percent_variation = .1, resolution = 1000)

summary_sensitivity(obj)

boxplot_sensitivity(obj)

Arguments

obj

an output from a call to the sensitivity function

Tmax

a vector of daily maximum temperatures

Tmin

a vector of daily minimum temperatures

Tbase

the base temperature

lat

the latitude

day

day of the year (vector)

bud_pars

vector of parameters for the budburst model

weib_pars

matrix of parameters for the Weibull model for each developmental stage

lactin_pars

matrix of parameters for the lactin model for each developmental stage

max_day_length

critical day length threshold

pop_quantile

quantile of the population to be evaluated by the phenology model

data

a data.frame

study_type

a character string indicating what type of sensitivity study to be performed. "Tbase" runs a sensitivity study for the temperature threshold that classifies a chill day; "lactin" runs a sensitivity study on variations of the values for the parameters estimated by the lactin model; "weibull" does the same as the latter, but for the Weibull model; "bud_days" changes the budburst day while "bud_parms" randomly changes the parameter estimates for the exponential decay function associated with budburst prediction; "cdl" changes the critical day length threshold

percent_variation

percentage of variation of the values to be changed for the sensitivity analysis

resolution

number of model evaluations to be performed

Value

A list containing the sensitivity analysis results as the first component, and the original model evaluation results as the second component.

Author(s)

Rafael de Andrade Moral ([email protected]) and Rowan Fealy

See Also

phen_model

Examples

data(casement9596)

casement1995 <- data.frame(casement9596, 
                           with(casement9596, 
                                get_total_info(Tmax, Tmin, Tbase = 7, Lat, day)))

data(pvulg_budburst_parameters)
data(pvulg_weibull_parameters)
data(pvulg_lactin_parameters)

sens_casement1995 <- sensitivity(Tmax = casement9596$Tmax,
                                 Tmin = casement9596$Tmin,
                                 Tbase = 7,
                                 lat = casement9596$Lat,
                                 day = casement9596$day,
                                 bud_pars = pvulg_budburst_parameters,
                                 weib_pars = pvulg_weibull_parameters,
                                 lactin_pars = pvulg_lactin_parameters,
                                 max_day_length = 14.92, 
                                 pop_quantile = .5,
                                 data = casement9596,
                                 study_type = "lactin",
                                 percent_variation = .1,
                                 resolution = 100)
                                 
summary_sensitivity(sens_casement1995)

boxplot_sensitivity(sens_casement1995)

Valentia Data

Description

Daily minimum and maximum temperature data obtained at the Valentia synoptic weather station for the period of 1st November 1939 to 31st October 2000.

Usage

data("valentia")

Format

A data frame with 22281 observations on the following 7 variables.

year

a numeric vector

month

a numeric vector

day

a numeric vector

Lat

a numeric vector

max_temp

a numeric vector

min_temp

a numeric vector

day_of_year

a numeric vector

Details

The data was obtained from the Irish National Meteorological Agency (Met Éireann).

Source

https://www.met.ie/climate/available-data/historical-data

Examples

data(valentia)

valentia$cycle <- get_cycle(data = valentia, day = "day", month = "month",
                            day.end = 31, month.end = 10)
valentia_split <- split(valentia, valentia$cycle)
valentia_split <- lapply(valentia_split,
                         function(x) data.frame(x,
                                                with(x, get_total_info(Tmax = x$max_temp,
                                                                       Tmin = x$min_temp,
                                                                       Tbase = 7,
                                                                       lat = x$Lat,
                                                                       x$day_of_year))))
valentia <- do.call("rbind", valentia_split)

data(pvulg_budburst_parameters)
data(pvulg_weibull_parameters)
data(pvulg_lactin_parameters)

phen_forecast <- phen_model_forecast(Tmean = "Tmean",
                                     thermal_units = "thermal_units",
                                     chill_days = "chill_days",
                                     day_length = "day_length",
                                     bud_pars = pvulg_budburst_parameters,
                                     weib_pars = pvulg_weibull_parameters,
                                     lactin_pars = pvulg_lactin_parameters,
                                     pop_quantile = .5,
                                     year = "cycle",
                                     data = valentia)

plot_phen_model(obj = phen_forecast[,1:7], obj_gen2 = phen_forecast[,8:12],
                forecast = TRUE)

plot_phen_forecast(obj = phen_forecast, year_from = 1939)