[R-sig-dyn-mod] Event value based on the state of the system at the time the event occurs
John Harrold
john.m.harrold at gmail.com
Sun Oct 18 21:21:26 CEST 2015
Thanks Daniel. I think that will get me where I need to go :)
On Sun, Oct 18, 2015 at 11:38 AM, Daniel Kaschek <
daniel.kaschek at physik.uni-freiburg.de> wrote:
> Hi John,
>
> you might have a look at help(events), example 2. I think, you need an
> event function. Within the event function you can access all states a
> the current time point of integration.
>
> Cheers,
> Daniel
>
> On So, 2015-10-18 at 11:23 -0700, John Harrold wrote:
> > Howdy Folks,
> >
> > I've run into a situation where I need to create events where the values
> > are dependent on one of the current state values. To give you an example,
> > consider the system described below.
> >
> > the values (c(4,4)) actually need to be c(4*var[2], 4*var[2]), where
> var[2]
> > is the value of the state var[2] at times 1 and 6, respectively. I don't
> > know if what I want to do is possible using the event framework. I may
> have
> > to write a wrapper that integrates from one event to the next and
> restarts
> > the system (this is what I've done in Matlab), but I wanted to see if
> there
> > was some kind of callback routine that I might be able to use so I can
> > stick with the framework deSolve provides.
> >
> > Thanks
> > John
> >
> >
> > derivs <- function(t, var, parms) {
> > list(c(-var[1]*parms[1], var[2]*(1-var[2]/parms[2])))
> > }
> >
> > yini <- c(v1 = 0, v2=1)
> > times <- seq(0, 10, by = 0.1)
> >
> > eventdat <- data.frame(var = c("v1", "v1"),
> > time = c(1, 6) ,
> > value = c(4, 4),
> > method = c("add", "mult", "rep", "add"))
> >
> > eventdat
> > parms = c(0.1, 10)
> > out <- vode(func = derivs,
> > y = yini,
> > times = times,
> > parms = parms,
> > events = list(data = eventdat))
> > plot(out)
> >
> >
>
> _______________________________________________
> R-sig-dynamic-models mailing list
> R-sig-dynamic-models at r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-sig-dynamic-models
>
--
-------------------------------------
John M. Harrold
john.m.harrold _at_gmail
-------------------------------------
[[alternative HTML version deleted]]
More information about the R-sig-dynamic-models
mailing list