質問

Is it possible to solve a time delay differential equations using C++ Boost - odeint library ? For an instance below equation:

x'(t) = r*x(t)*(1 - x(t-tau)), 

where tau is a constant value for time delay.

役に立ちましたか?

解決

Yes, you can. But odeint is not explicitly designed for DDEs. There are two possibilities to solve DDEs with odeint:

  1. You consider x and its discretized history as dependend variables and use directly the steppers.
  2. You consider only x as dependent variable and pass the history with the system function (your r.h.s.). But in this case you should only use steppers which evaluate the state at multiplies of you timesteps, like Euler or RK2.

If I have time I will write a more concrete answer, maybe with some code snippets.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top