Hello:
How would you approach solving a linear differential equation
system with constant coefficients and unknown inputs sampled at
irregular time intervals? I'm trying to model the motion of a bridge
driven by traffic and heating with a 6-dimensional linear state space
model with constant coefficients but with no knowledge of the traffic
and large gaps in my records on the temperature.
I perceive 3 primary options: dlm, deSolve, and sde.
deSolve: I'm concerned that the difference between
observation and transition noise could be large in my current application.
dlm: This seems like the best option, because unknown
inputs can be handled as transition noise. The primary difficulty I see
is in translating the differential equation into a difference equation,
including estimating the noise variance as proportional to
integral(exp(A(t-tau))d.tau).
sde: It might make most sense to model this as a
stochastic differential equation. However, I have the impression that
sde will not handle a multivariate state vector.
Thanks in advance for any thoughts you may have on this.
Best Wishes,
Spencer Graves
[R-sig-dyn-mod] differential equations with unknown inputs?
3 messages · Thomas Petzoldt, Spencer Graves
1 day later
Hello Spencer, your question is a little bit vague, because I don't know what kind of inputs you have and how is your model constructed. Nevertheless, I would probably start with deSolve and then explore other methods if required. I'm not sure if the developers of dlm and sde are already on this list, so let's send them an invitation. Thomas
On 3/24/2011 10:40 PM, Spencer Graves wrote:
Hello: How would you approach solving a linear differential equation system with constant coefficients and unknown inputs sampled at irregular time intervals? I'm trying to model the motion of a bridge driven by traffic and heating with a 6-dimensional linear state space model with constant coefficients but with no knowledge of the traffic and large gaps in my records on the temperature. I perceive 3 primary options: dlm, deSolve, and sde. deSolve: I'm concerned that the difference between observation and transition noise could be large in my current application. dlm: This seems like the best option, because unknown inputs can be handled as transition noise. The primary difficulty I see is in translating the differential equation into a difference equation, including estimating the noise variance as proportional to integral(exp(A(t-tau))d.tau). sde: It might make most sense to model this as a stochastic differential equation. However, I have the impression that sde will not handle a multivariate state vector. Thanks in advance for any thoughts you may have on this. Best Wishes, Spencer Graves
_______________________________________________ R-sig-dynamic-models mailing list R-sig-dynamic-models at r-project.org https://stat.ethz.ch/mailman/listinfo/r-sig-dynamic-models
--------------------------------------------- Dr. Thomas Petzoldt Member of academic staff (Limnology and Ecological Modelling) Technische Universitaet Dresden Faculty of Forest, Geo and Hydro Sciences Institute of Hydrobiology 01062 Dresden, Germany Tel.: +49 (351) 463-34954 Fax: +49 (351) 463-37108 E-Mail: thomas.petzoldt at tu-dresden.de http://tu-dresden.de/Members/thomas.petzoldt
Hi, Thomas:
Thanks for the reply. I'm concerned that if I don't know the
inputs, I have to estimate them somehow, because otherwise I get only
the standard homogeneous solution of the differential equation system.
I don't see how it can support the rich behavior of real physical
systems subject to substantive but unknown inputs.
With sufficiently short time between observations, a differential
equation system can can be turned into difference equations and solved
using a Kalman filtering approach. With continuous observations with
normal errors, the best package I know for that in R is dlm. It has a
good vignette, a companion book that appeared less than 2 years ago, and
seems to be actively maintained. When the time between observations is
not sufficiently short, one could still use dlm overall with either a
theoretical solution or deSolve for the behavior between observations.
I have not yet tried this, because I uncovered data quality problems
that need to be fixed before I can proceed.
At least that is what I'm thinking now.
Best Wishes,
Spencer
On 3/26/2011 12:14 PM, Thomas Petzoldt wrote:
Hello Spencer, your question is a little bit vague, because I don't know what kind of inputs you have and how is your model constructed. Nevertheless, I would probably start with deSolve and then explore other methods if required. I'm not sure if the developers of dlm and sde are already on this list, so let's send them an invitation. Thomas On 3/24/2011 10:40 PM, Spencer Graves wrote:
Hello: How would you approach solving a linear differential equation system with constant coefficients and unknown inputs sampled at irregular time intervals? I'm trying to model the motion of a bridge driven by traffic and heating with a 6-dimensional linear state space model with constant coefficients but with no knowledge of the traffic and large gaps in my records on the temperature. I perceive 3 primary options: dlm, deSolve, and sde. deSolve: I'm concerned that the difference between observation and transition noise could be large in my current application. dlm: This seems like the best option, because unknown inputs can be handled as transition noise. The primary difficulty I see is in translating the differential equation into a difference equation, including estimating the noise variance as proportional to integral(exp(A(t-tau))d.tau). sde: It might make most sense to model this as a stochastic differential equation. However, I have the impression that sde will not handle a multivariate state vector. Thanks in advance for any thoughts you may have on this. Best Wishes, Spencer Graves
_______________________________________________ R-sig-dynamic-models mailing list R-sig-dynamic-models at r-project.org https://stat.ethz.ch/mailman/listinfo/r-sig-dynamic-models