Delay Differential Equations

Does anybody have any experience in or ideas for integrating delay differential equations in Igor? I have in mind examples such as the Mackey-Glass eq.,

Dropping some parameters, it is

xdot(t) = xt / (1+xt^n) - x(t) ,

where xt = x(t-tau). In other words, the derivative function depends on the variable in question at the present time (t) but also on a past time (t-tau).

Offhand, my impression is that this is not possible using the IntegrateODE operation, which seems to be set up only to pass state vectors at the present time. But maybe there is a tricky workaround....

I suppose one can also write a low-level program, but then one loses all the nice features built into IntegrateODE....

Yes- the methods used by IntegrateODE are quite likely to move back and forth in time and the state space. I suspect that a system like that might need to be done by simple time-stepping methods, and you'll go back to the old, "run it once, then run it again at half-size step" to see if your time steps are adequately small.

John Weeks
WaveMetrics, Inc.