[Pomp-commits] r1108 - pkg/pomp pkg/pomp/R pkg/pomp/inst pkg/pomp/man pkg/pomp/tests www/content www/vignettes
noreply at r-forge.r-project.org
noreply at r-forge.r-project.org
Fri Feb 27 03:58:00 CET 2015
Author: kingaa
Date: 2015-02-27 03:58:00 +0100 (Fri, 27 Feb 2015)
New Revision: 1108
Modified:
pkg/pomp/DESCRIPTION
pkg/pomp/R/mif.R
pkg/pomp/inst/NEWS
pkg/pomp/inst/NEWS.Rd
pkg/pomp/man/mif.Rd
pkg/pomp/man/pfilter.Rd
pkg/pomp/tests/bbs-trajmatch.Rout.save
pkg/pomp/tests/bbs.Rout.save
pkg/pomp/tests/blowflies.Rout.save
pkg/pomp/tests/dacca.Rout.save
pkg/pomp/tests/dimchecks.Rout.save
pkg/pomp/tests/fhn.Rout.save
pkg/pomp/tests/filtfail.Rout.save
pkg/pomp/tests/gillespie.Rout.save
pkg/pomp/tests/gompertz.Rout.save
pkg/pomp/tests/logistic.Rout.save
pkg/pomp/tests/ou2-abc.Rout.save
pkg/pomp/tests/ou2-bsmc.Rout.save
pkg/pomp/tests/ou2-bsmc2.Rout.save
pkg/pomp/tests/ou2-forecast.Rout.save
pkg/pomp/tests/ou2-kalman.Rout.save
pkg/pomp/tests/ou2-mif-fp.Rout.save
pkg/pomp/tests/ou2-mif.R
pkg/pomp/tests/ou2-mif.Rout.save
pkg/pomp/tests/ou2-mif2.R
pkg/pomp/tests/ou2-mif2.Rout.save
pkg/pomp/tests/ou2-nlf.Rout.save
pkg/pomp/tests/ou2-pmcmc.Rout.save
pkg/pomp/tests/ou2-probe.Rout.save
pkg/pomp/tests/ou2-procmeas.Rout.save
pkg/pomp/tests/ou2-simulate.Rout.save
pkg/pomp/tests/ou2-spect.Rout.save
pkg/pomp/tests/ou2-trajmatch.Rout.save
pkg/pomp/tests/partrans.Rout.save
pkg/pomp/tests/pfilter.Rout.save
pkg/pomp/tests/pomppomp.Rout.save
pkg/pomp/tests/prior.Rout.save
pkg/pomp/tests/ricker-bsmc.Rout.save
pkg/pomp/tests/ricker-probe.Rout.save
pkg/pomp/tests/ricker-spect.Rout.save
pkg/pomp/tests/ricker.Rout.save
pkg/pomp/tests/rw2.Rout.save
pkg/pomp/tests/sir.Rout.save
pkg/pomp/tests/skeleton.Rout.save
pkg/pomp/tests/steps.Rout.save
pkg/pomp/tests/synlik.Rout.save
pkg/pomp/tests/verhulst.Rout.save
www/content/NEWS.html
www/vignettes/pomp.pdf
Log:
- mif's 'pars' argument is now ignored, with a warning
- update all tests, NEWS, and the manual
- fix some problems in the help pages
Modified: pkg/pomp/DESCRIPTION
===================================================================
--- pkg/pomp/DESCRIPTION 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/DESCRIPTION 2015-02-27 02:58:00 UTC (rev 1108)
@@ -1,7 +1,7 @@
Package: pomp
Type: Package
Title: Statistical Inference for Partially Observed Markov Processes
-Version: 0.61-3
+Version: 0.62-1
Date: 2015-02-26
Authors at R: c(person(given=c("Aaron","A."),family="King",
role=c("aut","cre"),email="kingaa at umich.edu"),
@@ -24,10 +24,10 @@
LazyData: true
MailingList: Subscribe to pomp-announce at r-forge.r-project.org for announcements by going to http://lists.r-forge.r-project.org/mailman/listinfo/pomp-announce.
Collate: aaa.R authors.R generics.R eulermultinom.R
- csnippet.R pomp-fun.R plugins.R builder.R load.R
+ csnippet.R pomp-fun.R plugins.R builder.R
parmat.R logmeanexp.R slice-design.R
profile-design.R sobol.R bsplines.R sannbox.R
- pomp-class.R pomp.R pomp-methods.R
+ pomp-class.R load.R pomp.R pomp-methods.R
rmeasure-pomp.R rprocess-pomp.R init-state-pomp.R
dmeasure-pomp.R dprocess-pomp.R skeleton-pomp.R
dprior-pomp.R rprior-pomp.R
Modified: pkg/pomp/R/mif.R
===================================================================
--- pkg/pomp/R/mif.R 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/R/mif.R 2015-02-27 02:58:00 UTC (rev 1108)
@@ -81,32 +81,8 @@
)
}
-mif.cooling <- function (factor, n) { # default geometric cooling schedule
- alpha <- factor^(n-1)
- list(alpha=alpha,gamma=alpha^2)
-}
-
-mif2.cooling <- function (frac, nt, m, n) { # cooling schedule for mif2
- ## frac is the fraction of cooling after 50 iterations
- scal <- (50*n*frac-1)/(1-frac)
- alpha <- (1+scal)/(scal+nt+n*(m-1))
- list(alpha=alpha)
-}
-
-powerlaw.cooling <- function (init = 1, delta = 0.1, eps = (1-delta)/2, n) {
- m <- init
- if (n <= m) { # linear cooling regime
- alpha <- (m-n+1)/m
- gamma <- alpha
- } else { # power-law cooling regime
- alpha <- ((n/m)^(delta+eps))/n
- gamma <- ((n/m)^(delta+1))/n/n
- }
- list(alpha=alpha,gamma=gamma)
-}
-
mif.internal <- function (object, Nmif,
- start, pars, ivps,
+ start, pars = NULL, ivps,
particles,
rw.sd,
Np, var.factor, ic.lag,
@@ -138,52 +114,27 @@
if (is.null(start.names))
stop("mif error: ",sQuote("start")," must be a named vector",call.=FALSE)
+ if (!is.null(pars)) {
+ warning("mif warning: the ",sQuote("pars")," argument to ",sQuote("mif")," is unnecessary and deprecated and will be ignored.\n",
+ "This behavior differs from that previous to ",sQuote("pomp")," version 0.62",call.=FALSE)
+ }
+
rw.names <- names(rw.sd)
if (is.null(rw.names) || any(rw.sd<0))
stop("mif error: ",sQuote("rw.sd")," must be a named non-negative numerical vector",call.=FALSE)
if (!all(rw.names%in%start.names))
stop("mif error: all the names of ",sQuote("rw.sd")," must be names of ",sQuote("start"),call.=FALSE)
- rw.names <- names(rw.sd[rw.sd>0])
+ rw.names <- rw.names[rw.sd>0]
if (length(rw.names) == 0)
stop("mif error: ",sQuote("rw.sd")," must have one positive entry for each parameter to be estimated",call.=FALSE)
+ pars <- rw.names[!(rw.names%in%ivps)]
- if (
- !is.character(pars) ||
- !is.character(ivps) ||
- !all(pars%in%start.names) ||
- !all(ivps%in%start.names) ||
- any(pars%in%ivps) ||
- any(ivps%in%pars) ||
- !all(pars%in%rw.names) ||
- !all(ivps%in%rw.names)
- )
- stop(
- "mif error: ",
- sQuote("pars")," and ",sQuote("ivps"),
- " must be mutually disjoint subsets of ",
- sQuote("names(start)"),
- " and must have a positive random-walk SDs specified in ",
- sQuote("rw.sd"),
- call.=FALSE
- )
+ if (!is.character(ivps) || !all(ivps%in%start.names))
+ stop("mif error: ",sQuote("ivps")," must name model parameters",call.=FALSE)
+
+## rw.sd <- rw.sd[c(pars,ivps)]
+## rw.names <- names(rw.sd)
- if (!all(rw.names%in%c(pars,ivps))) {
- extra.rws <- rw.names[!(rw.names%in%c(pars,ivps))]
- warning(
- ngettext(length(extra.rws),"mif warning: the variable ",
- "mif warning: the variables "),
- paste(sQuote(extra.rws),collapse=", "),
- ngettext(length(extra.rws)," has positive random-walk SD specified, but is included in neither ",
- " have positive random-walk SDs specified, but are included in neither "),
- sQuote("pars")," nor ",sQuote("ivps"),
- ngettext(length(extra.rws),". This random walk SD will be ignored.",
- ". These random walk SDs will be ignored."),
- call.=FALSE
- )
- }
- rw.sd <- rw.sd[c(pars,ivps)]
- rw.names <- names(rw.sd)
-
ntimes <- length(time(object))
if (is.null(Np)) stop("mif error: ",sQuote("Np")," must be specified",call.=FALSE)
if (is.function(Np)) {
@@ -416,7 +367,7 @@
signature=signature(object="pomp"),
function (object, Nmif = 1,
start,
- pars, ivps = character(0),
+ ivps = character(0),
particles, rw.sd,
Np, ic.lag, var.factor,
cooling.type = c("geometric","hyperbolic"),
@@ -441,10 +392,7 @@
ic.lag <- length(time(object))
}
}
- if (missing(pars)) {
- rw.names <- names(rw.sd)[rw.sd>0]
- pars <- rw.names[!(rw.names%in%ivps)]
- }
+
if (missing(Np))
stop("mif error: ",sQuote("Np")," must be specified",call.=FALSE)
if (missing(var.factor))
@@ -470,7 +418,6 @@
object=object,
Nmif=Nmif,
start=start,
- pars=pars,
ivps=ivps,
particles=particles,
rw.sd=rw.sd,
@@ -586,48 +533,3 @@
obj
}
)
-
-mif.profileDesign <- function (object, profile, lower, upper, nprof, ivps,
- rw.sd, Np, ic.lag, var.factor, cooling.factor,option, cooling.fraction, paramMatrix, ...)
-{
- if (missing(profile)) profile <- list()
- if (missing(lower)) lower <- numeric(0)
- if (missing(upper)) upper <- lower
- if (length(lower)!=length(upper))
- stop(sQuote("lower")," and ",sQuote("upper")," must be of the same length")
- pars <- names(lower)
- if (missing(ivps)) ivps <- character(0)
- Np <- as.integer(Np)
-
- pd <- do.call(profileDesign,c(profile,list(lower=lower,upper=upper,nprof=nprof)))
-
- object <- as(object,"pomp")
-
- pp <- coef(object)
- idx <- !(names(pp)%in%names(pd))
- if (any(idx)) pd <- cbind(pd,as.list(pp[idx]))
-
- ans <- vector(mode="list",length=nrow(pd))
- for (k in seq_len(nrow(pd))) {
- ans[[k]] <- list(
- mf=mif(
- object,
- Nmif=0,
- start=unlist(pd[k,]),
- pars=pars,
- ivps=ivps,
- rw.sd=rw.sd,
- Np=Np,
- ic.lag=ic.lag,
- var.factor=var.factor,
- cooling.factor=cooling.factor,
- option=option,
- cooling.fraction=cooling.fraction,
- paramMatrix=paramMatrix,
- ...
- )
- )
- }
-
- ans
-}
Modified: pkg/pomp/inst/NEWS
===================================================================
--- pkg/pomp/inst/NEWS 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/inst/NEWS 2015-02-27 02:58:00 UTC (rev 1108)
@@ -1,5 +1,11 @@
_N_e_w_s _f_o_r _p_a_c_k_a_g_e '_p_o_m_p'
+_C_h_a_n_g_e_s _i_n '_p_o_m_p' _v_e_r_s_i_o_n _0._6_2-_1:
+
+ • ‘mif’'s ‘pars’ argument, which is redundant, is now ignored
+ with a warning. In a future release, this argument will be
+ removed.
+
_C_h_a_n_g_e_s _i_n '_p_o_m_p' _v_e_r_s_i_o_n _0._6_1-_1:
• When using ‘Csnippet’s or ‘pompBuilder’, it is no longer
Modified: pkg/pomp/inst/NEWS.Rd
===================================================================
--- pkg/pomp/inst/NEWS.Rd 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/inst/NEWS.Rd 2015-02-27 02:58:00 UTC (rev 1108)
@@ -1,5 +1,11 @@
\name{NEWS}
\title{News for package `pomp'}
+\section{Changes in \pkg{pomp} version 0.62-1}{
+ \itemize{
+ \item \code{mif}'s \code{pars} argument, which is redundant, is now ignored with a warning.
+ In a future release, this argument will be removed.
+ }
+}
\section{Changes in \pkg{pomp} version 0.61-1}{
\itemize{
\item When using \code{Csnippet}s or \code{pompBuilder}, it is no longer necessary to manually load and unload the dynamically loadable library.
Modified: pkg/pomp/man/mif.Rd
===================================================================
--- pkg/pomp/man/mif.Rd 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/man/mif.Rd 2015-02-27 02:58:00 UTC (rev 1108)
@@ -126,24 +126,20 @@
\code{method="mif2"} implements an incomplete version of the iterated Bayes map method of Ionides (2015).
The latter method is, by every indication, both more efficient and more stable.
}
- \item{tol}{
+ \item{tol, max.fail}{
See the description under \code{\link{pfilter}}.
}
- \item{max.fail}{
- See the description under \code{\link{pfilter}}.
- }
\item{verbose}{
logical; if TRUE, print progress reports.
}
\item{transform}{
logical;
- if \code{TRUE}, optimization is performed on the transformed scale.
+ if \code{TRUE}, optimization is performed on the transformed scale, as defined by the user-supplied parameter transformations (see \code{\link{pomp}}).
}
\item{\dots}{
additional arguments that override the defaults.
}
\item{pars}{names of parameters.}
- \item{x}{a \code{mif} object.}
}
\section{Re-running \code{mif} Iterations}{
To re-run a sequence of \code{mif} iterations, one can use the \code{mif} method on a \code{mif} object.
Modified: pkg/pomp/man/pfilter.Rd
===================================================================
--- pkg/pomp/man/pfilter.Rd 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/man/pfilter.Rd 2015-02-27 02:58:00 UTC (rev 1108)
@@ -103,8 +103,7 @@
}
\item{pars}{Names of parameters.}
\item{\dots}{
- By default, when \code{pfilter} pfilter is run on a \code{pfilterd.pomp} object, the settings in the original call are re-used.
- This default behavior can be overridden by changing the settings (see Examples below).
+ additional arguments that override the defaults.
}
}
\value{
@@ -170,9 +169,9 @@
logLik(pf)
cond.logLik(pf) ## conditional log-likelihoods
eff.sample.size(pf) ## effective sample size
-logLik(pfilter(gompertz)) ## run it again with 1000 particles
-## run it with 2000 particles
-pf <- pfilter(gompertz,Np=2000,filter.mean=TRUE)
+logLik(pfilter(pf)) ## run it again with 1000 particles
+## run it again with 2000 particles
+pf <- pfilter(pf,Np=2000,filter.mean=TRUE)
fm <- filter.mean(pf) ## extract the filtering means
}
\references{
Modified: pkg/pomp/tests/bbs-trajmatch.Rout.save
===================================================================
--- pkg/pomp/tests/bbs-trajmatch.Rout.save 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/tests/bbs-trajmatch.Rout.save 2015-02-27 02:58:00 UTC (rev 1108)
@@ -80,4 +80,4 @@
>
> proc.time()
user system elapsed
- 2.480 0.052 2.555
+ 2.448 0.052 2.525
Modified: pkg/pomp/tests/bbs.Rout.save
===================================================================
--- pkg/pomp/tests/bbs.Rout.save 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/tests/bbs.Rout.save 2015-02-27 02:58:00 UTC (rev 1108)
@@ -73,4 +73,4 @@
>
> proc.time()
user system elapsed
- 7.153 0.049 7.193
+ 6.916 0.056 7.013
Modified: pkg/pomp/tests/blowflies.Rout.save
===================================================================
--- pkg/pomp/tests/blowflies.Rout.save 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/tests/blowflies.Rout.save 2015-02-27 02:58:00 UTC (rev 1108)
@@ -72,4 +72,4 @@
>
> proc.time()
user system elapsed
- 1.304 0.044 1.380
+ 1.320 0.060 1.411
Modified: pkg/pomp/tests/dacca.Rout.save
===================================================================
--- pkg/pomp/tests/dacca.Rout.save 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/tests/dacca.Rout.save 2015-02-27 02:58:00 UTC (rev 1108)
@@ -107,4 +107,4 @@
>
> proc.time()
user system elapsed
- 10.852 0.064 10.968
+ 11.408 0.084 11.550
Modified: pkg/pomp/tests/dimchecks.Rout.save
===================================================================
--- pkg/pomp/tests/dimchecks.Rout.save 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/tests/dimchecks.Rout.save 2015-02-27 02:58:00 UTC (rev 1108)
@@ -179,4 +179,4 @@
>
> proc.time()
user system elapsed
- 0.560 0.092 0.677
+ 0.592 0.072 0.689
Modified: pkg/pomp/tests/fhn.Rout.save
===================================================================
--- pkg/pomp/tests/fhn.Rout.save 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/tests/fhn.Rout.save 2015-02-27 02:58:00 UTC (rev 1108)
@@ -93,4 +93,4 @@
>
> proc.time()
user system elapsed
- 1.084 0.064 1.285
+ 1.064 0.032 1.243
Modified: pkg/pomp/tests/filtfail.Rout.save
===================================================================
--- pkg/pomp/tests/filtfail.Rout.save 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/tests/filtfail.Rout.save 2015-02-27 02:58:00 UTC (rev 1108)
@@ -116,4 +116,4 @@
>
> proc.time()
user system elapsed
- 0.576 0.068 0.660
+ 0.624 0.048 0.693
Modified: pkg/pomp/tests/gillespie.Rout.save
===================================================================
--- pkg/pomp/tests/gillespie.Rout.save 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/tests/gillespie.Rout.save 2015-02-27 02:58:00 UTC (rev 1108)
@@ -131,4 +131,4 @@
>
> proc.time()
user system elapsed
- 2.564 0.048 2.635
+ 2.488 0.056 2.574
Modified: pkg/pomp/tests/gompertz.Rout.save
===================================================================
--- pkg/pomp/tests/gompertz.Rout.save 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/tests/gompertz.Rout.save 2015-02-27 02:58:00 UTC (rev 1108)
@@ -133,4 +133,4 @@
>
> proc.time()
user system elapsed
- 1.576 0.052 1.652
+ 1.616 0.052 1.820
Modified: pkg/pomp/tests/logistic.Rout.save
===================================================================
--- pkg/pomp/tests/logistic.Rout.save 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/tests/logistic.Rout.save 2015-02-27 02:58:00 UTC (rev 1108)
@@ -124,4 +124,4 @@
>
> proc.time()
user system elapsed
- 0.976 0.052 1.175
+ 0.944 0.072 1.143
Modified: pkg/pomp/tests/ou2-abc.Rout.save
===================================================================
--- pkg/pomp/tests/ou2-abc.Rout.save 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/tests/ou2-abc.Rout.save 2015-02-27 02:58:00 UTC (rev 1108)
@@ -139,4 +139,4 @@
>
> proc.time()
user system elapsed
- 11.422 0.073 11.497
+ 11.092 0.068 11.369
Modified: pkg/pomp/tests/ou2-bsmc.Rout.save
===================================================================
--- pkg/pomp/tests/ou2-bsmc.Rout.save 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/tests/ou2-bsmc.Rout.save 2015-02-27 02:58:00 UTC (rev 1108)
@@ -59,7 +59,7 @@
> post <- smc$post
>
> print(etime <- toc-tic)
-Time difference of 2.789886 secs
+Time difference of 2.748923 secs
>
> print(
+ cbind(
@@ -101,4 +101,4 @@
>
> proc.time()
user system elapsed
- 4.688 0.064 4.785
+ 4.712 0.032 4.777
Modified: pkg/pomp/tests/ou2-bsmc2.Rout.save
===================================================================
--- pkg/pomp/tests/ou2-bsmc2.Rout.save 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/tests/ou2-bsmc2.Rout.save 2015-02-27 02:58:00 UTC (rev 1108)
@@ -56,7 +56,7 @@
> post <- smc$post
>
> print(etime <- toc-tic)
-Time difference of 2.022153 secs
+Time difference of 1.971769 secs
>
> print(
+ cbind(
@@ -98,4 +98,4 @@
>
> proc.time()
user system elapsed
- 3.588 0.084 3.697
+ 3.540 0.060 3.626
Modified: pkg/pomp/tests/ou2-forecast.Rout.save
===================================================================
--- pkg/pomp/tests/ou2-forecast.Rout.save 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/tests/ou2-forecast.Rout.save 2015-02-27 02:58:00 UTC (rev 1108)
@@ -61,4 +61,4 @@
>
> proc.time()
user system elapsed
- 1.420 0.036 1.559
+ 1.596 0.072 1.793
Modified: pkg/pomp/tests/ou2-kalman.Rout.save
===================================================================
--- pkg/pomp/tests/ou2-kalman.Rout.save 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/tests/ou2-kalman.Rout.save 2015-02-27 02:58:00 UTC (rev 1108)
@@ -164,7 +164,7 @@
117 function evaluations used
> toc <- Sys.time()
> print(toc-tic)
-Time difference of 3.41739 secs
+Time difference of 3.520454 secs
> tic <- Sys.time()
> print(loglik.mle <- -kalm.fit1$value,digits=4)
[1] -477.2
@@ -188,4 +188,4 @@
>
> proc.time()
user system elapsed
- 3.933 0.035 3.954
+ 4.172 0.068 4.270
Modified: pkg/pomp/tests/ou2-mif-fp.Rout.save
===================================================================
--- pkg/pomp/tests/ou2-mif-fp.Rout.save 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/tests/ou2-mif-fp.Rout.save 2015-02-27 02:58:00 UTC (rev 1108)
@@ -46,6 +46,9 @@
+ max.fail=100,
+ method="fp"
+ )
+Warning message:
+mif warning: the 'pars' argument to 'mif' is unnecessary and deprecated and will be ignored.
+This behavior differs from that previous to 'pomp' version 0.62
>
> mif2 <- mif(ou2,Nmif=100,start=guess2,
+ pars=c('alpha.2','alpha.3'),ivps=c('x1.0','x2.0'),
@@ -61,6 +64,9 @@
+ max.fail=100,
+ method="fp"
+ )
+Warning message:
+mif warning: the 'pars' argument to 'mif' is unnecessary and deprecated and will be ignored.
+This behavior differs from that previous to 'pomp' version 0.62
>
> plot(c(mif1,mif2))
>
@@ -70,4 +76,4 @@
>
> proc.time()
user system elapsed
- 19.413 0.056 19.690
+ 20.933 0.064 21.259
Modified: pkg/pomp/tests/ou2-mif.R
===================================================================
--- pkg/pomp/tests/ou2-mif.R 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/tests/ou2-mif.R 2015-02-27 02:58:00 UTC (rev 1108)
@@ -19,7 +19,7 @@
guess2[c('x1.0','x2.0','alpha.2','alpha.3')] <- 1.5*guess1[c('x1.0','x2.0','alpha.2','alpha.3')]
mif1 <- mif(ou2,Nmif=30,start=guess1,
- pars=c('alpha.2','alpha.3'),ivps=c('x1.0','x2.0'),
+ ivps=c('x1.0','x2.0'),
rw.sd=c(
x1.0=5,x2.0=5,
alpha.2=0.1,alpha.3=0.1
@@ -33,7 +33,7 @@
)
mif2 <- mif(ou2,Nmif=30,start=guess2,
- pars=c('alpha.2','alpha.3'),ivps=c('x1.0','x2.0'),
+ ivps=c('x1.0','x2.0'),
transform=TRUE,
rw.sd=c(
x1.0=5,x2.0=5,
@@ -60,9 +60,8 @@
mif(
ou2,
Nmif=1,
- pars=c("alpha.1","alpha.4","x1.0"),
ivps=c("x1.0","x2.0"),
- rw.sd=c(x1.0=5,x2.0=5,alpha.1=0.1,alpha.4=0.2,alpha.3=0),
+ rw.sd=c(x1.0=5,x2.0=5,alpha.1=0.1,alpha.4=0.2,alpha.3=-1),
Np=100,cooling.type="geometric",cooling.fraction=0.95^50,
ic.lag=10,var.factor=1
)
@@ -71,62 +70,6 @@
try(
mif(
ou2,
- Nmif=1,
- pars=c("alpha.1","alpha.4"),
- ivps=c("x1.0","x2.0"),
- rw.sd=c(x1.0=5,x2.0=5,alpha.1=0,alpha.4=0.2,alpha.3=0),
- Np=100,
- cooling.type="geometric",cooling.fraction=0.95^50,
- ic.lag=10,var.factor=1
- )
- )
-
-try(
- mif(
- ou2,
- Nmif=1,
- ivps=c("x1.0","x2.0"),
- rw.sd=c(alpha.1=0.1,alpha.4=0.2,alpha.3=0),
- Np=100,cooling.type="geometric",cooling.fraction=0.95^50,
- cooling.factor=0.95,ic.lag=10,var.factor=1
- )
- )
-
-try(
- mif(
- ou2,
- Nmif=1,
- ivps=c("x1.0","x2.0"),
- rw.sd=c(x1.0=5,x2.0=5,alpha.1=0.1,alpha.4=0.2,alpha.3=0),
- Np=100,ic.lag=10,var.factor=1
- )
- )
-
-try(
- mif(
- ou2,
- Nmif=1,
- ivps=c("x1.0","x2.0"),
- rw.sd=c(x1.0=5,x2.0=5,alpha.1=0,alpha.4=0.2,alpha.3=0),
- Np=-10,cooling.type="geometric",cooling.fraction=0.95^50,
- ic.lag=10,var.factor=1
- )
- )
-
-try(
- mif(
- ou2,
- Nmif=-3,
- ivps=c("x1.0","x2.0"),
- rw.sd=c(x1.0=5,x2.0=5,alpha.1=0,alpha.4=0.2,alpha.3=0),
- Np=11.6,cooling.type="geometric",cooling.fraction=0.95^50,
- ic.lag=10,var.factor=1
- )
- )
-
-try(
- mif(
- ou2,
Nmif=2,
start=c(alpha.1=0.9,alpha.2=0,alpha.3=0,alpha.4=-Inf,sigma.1=1,sigma.2=0,sigma.3=2,tau=1,x1.0=50,x2.0=-50),
ivps=c("x1.0","x2.0"),
@@ -151,7 +94,6 @@
fit <- mif(
ou2,
Nmif=0,
- pars=c("alpha.2","alpha.3"),
ivps=c("x1.0","x2.0"),
rw.sd=c(x1.0=5,x2.0=5,alpha.2=0.1,alpha.3=0.2,alpha.3=0),
Np=100,cooling.type="geometric",cooling.fraction=0.95^50,
@@ -171,7 +113,7 @@
ff <- pfilter(fit,pred.mean=T,filter.mean=T,pred.var=T,max.fail=100,verbose=T)
ff <- pfilter(ff)
fit <- mif(fit,rw.sd=c(x1.0=5,x2.0=5,alpha.2=0.1,alpha.3=0.1))
-fit <- continue(fit,Nmif=2,ivps=c("x1.0"),pars=c("alpha.2"))
+fit <- continue(fit,Nmif=2,ivps=c("x1.0"),rw.sd=c(x1.0=5,alpha.2=0.1))
s <- coef(fit)
s[2] <- 0.01
fit <- mif(fit,Nmif=3,start=s)
Modified: pkg/pomp/tests/ou2-mif.Rout.save
===================================================================
--- pkg/pomp/tests/ou2-mif.Rout.save 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/tests/ou2-mif.Rout.save 2015-02-27 02:58:00 UTC (rev 1108)
@@ -52,7 +52,7 @@
> guess2[c('x1.0','x2.0','alpha.2','alpha.3')] <- 1.5*guess1[c('x1.0','x2.0','alpha.2','alpha.3')]
>
> mif1 <- mif(ou2,Nmif=30,start=guess1,
-+ pars=c('alpha.2','alpha.3'),ivps=c('x1.0','x2.0'),
++ ivps=c('x1.0','x2.0'),
+ rw.sd=c(
+ x1.0=5,x2.0=5,
+ alpha.2=0.1,alpha.3=0.1
@@ -69,7 +69,7 @@
See '?mif' for instructions on specifying the cooling schedule.
>
> mif2 <- mif(ou2,Nmif=30,start=guess2,
-+ pars=c('alpha.2','alpha.3'),ivps=c('x1.0','x2.0'),
++ ivps=c('x1.0','x2.0'),
+ transform=TRUE,
+ rw.sd=c(
+ x1.0=5,x2.0=5,
@@ -100,80 +100,17 @@
+ mif(
+ ou2,
+ Nmif=1,
-+ pars=c("alpha.1","alpha.4","x1.0"),
+ ivps=c("x1.0","x2.0"),
-+ rw.sd=c(x1.0=5,x2.0=5,alpha.1=0.1,alpha.4=0.2,alpha.3=0),
++ rw.sd=c(x1.0=5,x2.0=5,alpha.1=0.1,alpha.4=0.2,alpha.3=-1),
+ Np=100,cooling.type="geometric",cooling.fraction=0.95^50,
+ ic.lag=10,var.factor=1
+ )
+ )
-Error : mif error: 'pars' and 'ivps' must be mutually disjoint subsets of 'names(start)' and must have a positive random-walk SDs specified in 'rw.sd'
+Error : mif error: 'rw.sd' must be a named non-negative numerical vector
>
> try(
+ mif(
+ ou2,
-+ Nmif=1,
-+ pars=c("alpha.1","alpha.4"),
-+ ivps=c("x1.0","x2.0"),
-+ rw.sd=c(x1.0=5,x2.0=5,alpha.1=0,alpha.4=0.2,alpha.3=0),
-+ Np=100,
-+ cooling.type="geometric",cooling.fraction=0.95^50,
-+ ic.lag=10,var.factor=1
-+ )
-+ )
-Error : mif error: 'pars' and 'ivps' must be mutually disjoint subsets of 'names(start)' and must have a positive random-walk SDs specified in 'rw.sd'
->
-> try(
-+ mif(
-+ ou2,
-+ Nmif=1,
-+ ivps=c("x1.0","x2.0"),
-+ rw.sd=c(alpha.1=0.1,alpha.4=0.2,alpha.3=0),
-+ Np=100,cooling.type="geometric",cooling.fraction=0.95^50,
-+ cooling.factor=0.95,ic.lag=10,var.factor=1
-+ )
-+ )
-Error : mif error: 'pars' and 'ivps' must be mutually disjoint subsets of 'names(start)' and must have a positive random-walk SDs specified in 'rw.sd'
->
-> try(
-+ mif(
-+ ou2,
-+ Nmif=1,
-+ ivps=c("x1.0","x2.0"),
-+ rw.sd=c(x1.0=5,x2.0=5,alpha.1=0.1,alpha.4=0.2,alpha.3=0),
-+ Np=100,ic.lag=10,var.factor=1
-+ )
-+ )
-Error : mif error: 'cooling.fraction' must be specified
->
-> try(
-+ mif(
-+ ou2,
-+ Nmif=1,
-+ ivps=c("x1.0","x2.0"),
-+ rw.sd=c(x1.0=5,x2.0=5,alpha.1=0,alpha.4=0.2,alpha.3=0),
-+ Np=-10,cooling.type="geometric",cooling.fraction=0.95^50,
-+ ic.lag=10,var.factor=1
-+ )
-+ )
-Error in mif.internal(object = object, Nmif = Nmif, start = start, pars = pars, :
- number of particles, 'Np', must always be positive
->
-> try(
-+ mif(
-+ ou2,
-+ Nmif=-3,
-+ ivps=c("x1.0","x2.0"),
-+ rw.sd=c(x1.0=5,x2.0=5,alpha.1=0,alpha.4=0.2,alpha.3=0),
-+ Np=11.6,cooling.type="geometric",cooling.fraction=0.95^50,
-+ ic.lag=10,var.factor=1
-+ )
-+ )
-Error : mif error: 'Nmif' must be a positive integer
->
-> try(
-+ mif(
-+ ou2,
+ Nmif=2,
+ start=c(alpha.1=0.9,alpha.2=0,alpha.3=0,alpha.4=-Inf,sigma.1=1,sigma.2=0,sigma.3=2,tau=1,x1.0=50,x2.0=-50),
+ ivps=c("x1.0","x2.0"),
@@ -202,7 +139,6 @@
> fit <- mif(
+ ou2,
+ Nmif=0,
-+ pars=c("alpha.2","alpha.3"),
+ ivps=c("x1.0","x2.0"),
+ rw.sd=c(x1.0=5,x2.0=5,alpha.2=0.1,alpha.3=0.2,alpha.3=0),
+ Np=100,cooling.type="geometric",cooling.fraction=0.95^50,
@@ -242,9 +178,7 @@
pfilter timestep 100 of 100 finished
> ff <- pfilter(ff)
> fit <- mif(fit,rw.sd=c(x1.0=5,x2.0=5,alpha.2=0.1,alpha.3=0.1))
-> fit <- continue(fit,Nmif=2,ivps=c("x1.0"),pars=c("alpha.2"))
-Warning message:
-mif warning: the variables 'alpha.3', 'x2.0' have positive random-walk SDs specified, but are included in neither 'pars' nor 'ivps'. These random walk SDs will be ignored.
+> fit <- continue(fit,Nmif=2,ivps=c("x1.0"),rw.sd=c(x1.0=5,alpha.2=0.1))
> s <- coef(fit)
> s[2] <- 0.01
> fit <- mif(fit,Nmif=3,start=s)
@@ -283,4 +217,4 @@
>
> proc.time()
user system elapsed
- 14.827 0.050 14.879
+ 12.032 0.080 12.261
Modified: pkg/pomp/tests/ou2-mif2.R
===================================================================
--- pkg/pomp/tests/ou2-mif2.R 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/tests/ou2-mif2.R 2015-02-27 02:58:00 UTC (rev 1108)
@@ -11,7 +11,7 @@
set.seed(64857673L)
mif1a <- mif(ou2,Nmif=100,start=guess1,
- pars=c('alpha.2','alpha.3'),ivps=c('x1.0','x2.0'),
+ ivps=c('x1.0','x2.0'),
rw.sd=c(
x1.0=.5,x2.0=.5,
alpha.2=0.1,alpha.3=0.1),
@@ -26,7 +26,7 @@
)
mif2a <- mif(ou2,Nmif=100,start=guess1,
- pars=c('alpha.2','alpha.3'),ivps=c('x1.0','x2.0'),
+ ivps=c('x1.0','x2.0'),
rw.sd=c(
x1.0=0.5,x2.0=.5,
alpha.2=0.1,alpha.3=0.1),
@@ -45,7 +45,7 @@
set.seed(64857673L)
mif1b <- mif(ou2,Nmif=50,start=guess1,
- pars=c('alpha.2','alpha.3'),ivps=c('x1.0','x2.0'),
+ ivps=c('x1.0','x2.0'),
rw.sd=c(
x1.0=.5,x2.0=.5,
alpha.2=0.1,alpha.3=0.1),
@@ -60,7 +60,7 @@
mif1b <- continue(mif1b,Nmif=50)
mif2b <- mif(ou2,Nmif=50,start=guess1,
- pars=c('alpha.2','alpha.3'),ivps=c('x1.0','x2.0'),
+ ivps=c('x1.0','x2.0'),
rw.sd=c(
x1.0=0.5,x2.0=.5,
alpha.2=0.1,alpha.3=0.1),
@@ -77,7 +77,7 @@
mif2b <- continue(mif2b,Nmif=50)
mif2c <- mif(ou2,Nmif=50,start=guess1,
- pars=c('alpha.2','alpha.3'),ivps=c('x1.0','x2.0'),
+ ivps=c('x1.0','x2.0'),
rw.sd=c(
x1.0=0.5,x2.0=.5,
alpha.2=0.1,alpha.3=0.1),
Modified: pkg/pomp/tests/ou2-mif2.Rout.save
===================================================================
--- pkg/pomp/tests/ou2-mif2.Rout.save 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/tests/ou2-mif2.Rout.save 2015-02-27 02:58:00 UTC (rev 1108)
@@ -32,7 +32,7 @@
>
> set.seed(64857673L)
> mif1a <- mif(ou2,Nmif=100,start=guess1,
-+ pars=c('alpha.2','alpha.3'),ivps=c('x1.0','x2.0'),
++ ivps=c('x1.0','x2.0'),
+ rw.sd=c(
+ x1.0=.5,x2.0=.5,
+ alpha.2=0.1,alpha.3=0.1),
@@ -47,7 +47,7 @@
+ )
>
> mif2a <- mif(ou2,Nmif=100,start=guess1,
-+ pars=c('alpha.2','alpha.3'),ivps=c('x1.0','x2.0'),
++ ivps=c('x1.0','x2.0'),
+ rw.sd=c(
+ x1.0=0.5,x2.0=.5,
+ alpha.2=0.1,alpha.3=0.1),
@@ -66,7 +66,7 @@
>
> set.seed(64857673L)
> mif1b <- mif(ou2,Nmif=50,start=guess1,
-+ pars=c('alpha.2','alpha.3'),ivps=c('x1.0','x2.0'),
++ ivps=c('x1.0','x2.0'),
+ rw.sd=c(
+ x1.0=.5,x2.0=.5,
+ alpha.2=0.1,alpha.3=0.1),
@@ -81,7 +81,7 @@
> mif1b <- continue(mif1b,Nmif=50)
>
> mif2b <- mif(ou2,Nmif=50,start=guess1,
-+ pars=c('alpha.2','alpha.3'),ivps=c('x1.0','x2.0'),
++ ivps=c('x1.0','x2.0'),
+ rw.sd=c(
+ x1.0=0.5,x2.0=.5,
+ alpha.2=0.1,alpha.3=0.1),
@@ -101,7 +101,7 @@
> mif2b <- continue(mif2b,Nmif=50)
>
> mif2c <- mif(ou2,Nmif=50,start=guess1,
-+ pars=c('alpha.2','alpha.3'),ivps=c('x1.0','x2.0'),
++ ivps=c('x1.0','x2.0'),
+ rw.sd=c(
+ x1.0=0.5,x2.0=.5,
+ alpha.2=0.1,alpha.3=0.1),
@@ -135,4 +135,4 @@
>
> proc.time()
user system elapsed
- 49.355 0.040 49.763
+ 51.303 0.148 51.806
Modified: pkg/pomp/tests/ou2-nlf.Rout.save
===================================================================
--- pkg/pomp/tests/ou2-nlf.Rout.save 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/tests/ou2-nlf.Rout.save 2015-02-27 02:58:00 UTC (rev 1108)
@@ -85,4 +85,4 @@
>
> proc.time()
user system elapsed
- 4.380 0.092 6.425
+ 4.416 0.048 4.523
Modified: pkg/pomp/tests/ou2-pmcmc.Rout.save
===================================================================
--- pkg/pomp/tests/ou2-pmcmc.Rout.save 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/tests/ou2-pmcmc.Rout.save 2015-02-27 02:58:00 UTC (rev 1108)
@@ -138,4 +138,4 @@
>
> proc.time()
user system elapsed
- 28.662 0.057 28.743
+ 32.378 0.076 32.745
Modified: pkg/pomp/tests/ou2-probe.Rout.save
===================================================================
--- pkg/pomp/tests/ou2-probe.Rout.save 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/tests/ou2-probe.Rout.save 2015-02-27 02:58:00 UTC (rev 1108)
@@ -340,4 +340,4 @@
>
> proc.time()
user system elapsed
- 7.892 0.092 8.187
+ 7.692 0.072 7.942
Modified: pkg/pomp/tests/ou2-procmeas.Rout.save
===================================================================
--- pkg/pomp/tests/ou2-procmeas.Rout.save 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/tests/ou2-procmeas.Rout.save 2015-02-27 02:58:00 UTC (rev 1108)
@@ -54,4 +54,4 @@
>
> proc.time()
user system elapsed
- 0.408 0.048 0.479
+ 0.588 0.076 0.684
Modified: pkg/pomp/tests/ou2-simulate.Rout.save
===================================================================
--- pkg/pomp/tests/ou2-simulate.Rout.save 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/tests/ou2-simulate.Rout.save 2015-02-27 02:58:00 UTC (rev 1108)
@@ -35,7 +35,7 @@
> ou2.sim <- simulate(ou2,params=p,nsim=100,seed=32043858)
> toc <- Sys.time()
> print(toc-tic)
-Time difference of 0.006910086 secs
+Time difference of 0.004848957 secs
>
> coef(ou2,c('x1.0','x2.0')) <- c(-50,50)
>
@@ -46,4 +46,4 @@
>
> proc.time()
user system elapsed
- 0.508 0.040 0.572
+ 0.608 0.052 0.680
Modified: pkg/pomp/tests/ou2-spect.Rout.save
===================================================================
--- pkg/pomp/tests/ou2-spect.Rout.save 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/tests/ou2-spect.Rout.save 2015-02-27 02:58:00 UTC (rev 1108)
@@ -38,4 +38,4 @@
>
> proc.time()
user system elapsed
- 21.537 0.040 21.670
+ 22.417 0.048 22.562
Modified: pkg/pomp/tests/ou2-trajmatch.Rout.save
===================================================================
--- pkg/pomp/tests/ou2-trajmatch.Rout.save 2015-02-27 02:57:51 UTC (rev 1107)
+++ pkg/pomp/tests/ou2-trajmatch.Rout.save 2015-02-27 02:58:00 UTC (rev 1108)
@@ -175,4 +175,4 @@
>
> proc.time()
user system elapsed
- 1.712 0.060 1.801
+ 2.188 0.040 2.279
Modified: pkg/pomp/tests/partrans.Rout.save
===================================================================
--- pkg/pomp/tests/partrans.Rout.save 2015-02-27 02:57:51 UTC (rev 1107)
[TRUNCATED]
To get the complete diff run:
svnlook diff /svnroot/pomp -r 1108
More information about the pomp-commits
mailing list