I am investigating an application of differential geometry in experimental dynamical systems.

Given a 1D time series (e.g., one that has been experimentally obtained), $x(t)$, I am considering the phase space reconstruction (a.k.a., the state space reconstruction) via the method of time delays. According to the Takens embedding theorem, an $m$-dimensional phase portrait can be reconstructed with delay coordinates so that a point on the reconstructed attractor is given by:

$$\left\{x(t),\,x(t+\tau), \ldots,\,x(t+[m-1]\tau)\right\}.$$

Here, $m$ refers to the dimension of the reconstructed phase space (which can be determined via a false nearest-neighbors search), and $\tau$ is the time delay parameter (which can be inferred from analyzing either the autocorrelation or mutual information functions).

I would like to approximate the tangent vector at a point on the reconstructed trajectory. How does one do this without knowing the underlying or governing system of differential equations? Is there some central difference method I should try?

In contrast, and for clarity, if one did know the underlying equations of a continuous dynamical system, say $\dot{\boldsymbol{x}}=\vec{f}(\boldsymbol{x})$ , then the tangent (or flow) vector at a particular point $\boldsymbol{x}_{0}$ is simply $\vec{T}=\vec{f}(\boldsymbol{x}_{0})$. This is the tangent vector that points in the direction of the local flow at this point.

I apologize in advance if this question has already been asked and answered on math stackexchange. I would be happy to edit my answer to accommodate additional information, too.


First of all, beware that all you can possibly obtain is the tangent vector of the reconstructed phase space.

I see two general cases:

  • Your sampling is sufficiently fine that you can estimate the tangent vector by subtracting two subsequent points of your reconstructed phase space (and possibly normalising with the sampling rate). For example, if your reconstructed phase-space vectors are $$\mathbf{y}(t) = \left( x(t),x(t-τ),x(t-2τ),… \right),$$ and $Δt$ is your sampling rate, you could estimate the tangent vector at $t+\tfrac{1}{2}Δt$ as: $$\mathbf{T}\left( t+\tfrac{1}{2}Δt \right) ≈ \frac{\mathbf{y}(t+Δt)-\mathbf{y}(t)}{Δt}$$

    If your noise is very high, it may be reasonable to average over many points or apply some non-linear noise-reduction techniques first. These are mainly based on averaging over nearby points in phase space, assuming that the corresponding trajectory segments are parallel to the one you are interested in.

  • If your sampling rate is so coarse that you cannot use more than one reconstructed point per oscillation, you have to somehow associate these points to each other to reconstruct a phase-space trajectory. Some techniques for non-linear noise reduction rely on this anyway, so you may want to check them out. My ad-hoc suggestion would be to sort nearby points by an instantaneous phase obtained from a Poincaré section and assume that this represents the trajectory in the vicinity of your point of interest.

As for which method is best (even within the above two cases), I do not think there can be a general answer, as it depends on too many factors:

  • What your data is like (sampling rate, noise, …) affects the viability of methods and whether noise reduction is reasonable.

  • Where do you need your tangent vectors? A difference of subsequent phase-space points will give you a good estimate for the tangent vector in the middle of them (assuming a sufficiently fine sampling rate), but it won’t be such a good estimate for either phase-space point – here, a central difference may be better.

  • Related to the above, you’ll always have to make a trade-off between the accuracy of the tangent vector’s direction and its position. Again, a central difference yields you a high accuracy of position at the price of a lesser accuracy in direction, as compared to, e.g., forward difference.

  • $\begingroup$ Wrzlprmft: thanks for your response. Your first suggestion is, more or less, what I was considering of implementing. It seems that you are advocating some sort of difference quotient approach to approximating the tangent space. I wonder if other numerical techniques might be more robust, rigorous, or appropriate? Would a central difference better? Others? $\endgroup$ – matt1011 Nov 26 '18 at 22:17
  • $\begingroup$ at any rate, I appreciate your responses! $\endgroup$ – matt1011 Nov 26 '18 at 22:20
  • $\begingroup$ At the moment, I am simply investigating the tangent space of a time delay reconstruction of the Rossler and Lorenz systems. At the moment, my data is not experimental, but it is numerically computed in Matlab. For instance, I use a conventional RungeKutta4 scheme to solve the Lorenz system for dt = 0.08 seconds. $\endgroup$ – matt1011 Nov 26 '18 at 23:21
  • $\begingroup$ When making use of a difference quotient of a reconstructed attractor, e.g, v = [x(t), x(t + tau), x(t + 2*tau)], how does one define the difference quotient's numerator and denominator? Will the numerator be v(t + deltaT) = [x(t + deltaT), x(t + deltaT + tau), x(t + deltaT + 2*tau)]? How is the denominator formulated? $\endgroup$ – matt1011 Nov 26 '18 at 23:25
  • $\begingroup$ @matt1011: Please see my edit. As for the Rössler and Lorenz system, it depends on how far you wish to mimic experimental situations. After all you can compute the tangent vectors analytically as you have access to the differential equations. $\endgroup$ – Wrzlprmft Nov 27 '18 at 12:36

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.