Locating periodic solutions (dynamic systems)

Hey all,

I'm trying to program a MATLAB function that can locate periodic solutions of a dynamic system. My work is based on the *shooting method* (sorry if this is not the english term).

Consider the system $\displaystyle x'=f(x)$, where $\displaystyle f:\mathbb{R}^n\rightarrow\mathbb{R}^n$ and $\displaystyle x\in\mathbb{R}^n$. The flow of the system is $\displaystyle \varphi:\mathbb{R}^n \times \mathbb{R}\rightarrow\mathbb{R}^n$, and $\displaystyle P(x)=\varphi(x,\tau(x))$ is a Poincare section / application / map (again, I'm sorry, I don't know the english word). Now, consider the following system:

$\displaystyle

H

\left( \begin{array}{}

x & t\end{array}\right) =

\left( \begin{array}{}

\varphi(x,t)-x & t-\tau(x)\end{array}\right)

$

Then, it is not hard to see that solving $\displaystyle H=\left( \begin{array}{}

0 & 0\end{array}\right)$ would give a *x* on a periodical solution of period *t* (obtained by solving the same system, of course). We can use Newton's method applied to the system to solve it numerically. Of course, we don't have DH (H's Jacobian matrix) explicitly since $\displaystyle \tau$ and $\displaystyle \varphi$ are also not explicitly known. Note that we have:

$\displaystyle DH =

\left( \begin{array}{cc}

D_{x}\varphi(x,t)-I & \frac{\partial\varphi}{\partial t}(x,t)} \\

-D_{x}\tau(x) & 1

\end{array} \right)

$

Ok, finally we get to my problem! :) I can get around calculating $\displaystyle \tau$'s Jacobian matrix as well as $\displaystyle \frac{\partial\varphi}{\partial t}(x,t)}$, but I'm having trouble figuring out how to get a good approximation of $\displaystyle D_{x}\varphi(x,t)$. Does anyone have an idea?

Thank you all for reading all this!