[Date Index] [Thread Index] [Author Index]
How to use a discretized controller with NDSolve?
Hello all, I thought I'd check to see if there is a better way to perform a calculation. I've been using NDSolve to determine the response of a system of nonlinear differential equations representing a controlled double pendulum. So, each pendulum has an associated input, say U[i]. The dynamics are discribed by continuous ODEs, however, my controller is discrete, meaning, every 'dt' seconds new updates are sent to each U[i]. Assuming I know what the desired list of U[i] updates are before hand... I've used the Piecewise function to create piecewise continuous functions representing each U[i] to inject into the double pendulum system of ODEs. This is not the way I would do this in other languages but given my somewhat primitive skills in Mathematica... this is what I came up with. My solutions appear to be correct so my question is motivated more to improve my Mathematica skills. Any thoughts or points are welcome. Thx. Joe