From 57df67cc4c7ca5bffa9afbc3d3b3fffcd7b83593 Mon Sep 17 00:00:00 2001 From: Ian Jauslin Date: Fri, 31 Jan 2025 10:55:41 -0500 Subject: [PATCH] Mention lyapunov algorithms in doc --- docs/nstrophy_doc.tex | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/nstrophy_doc.tex b/docs/nstrophy_doc.tex index d68bd4e..f5e4eff 100644 --- a/docs/nstrophy_doc.tex +++ b/docs/nstrophy_doc.tex @@ -518,6 +518,7 @@ To do the computation numerically, we drop the limit, and compute the logarithm \indent In practice, we approximate $\varphi_{t_{i-1},t_i}$ by running a Runge-Kutta algorithm for the tangent flow equation. +Because the tangent flow equation depends on $u(t)$, we must run it at times for which $u$ has been computed, so the Runge-Kutta algorithm for the tangent flow cannot be an adaptive step method, and should be one of {\tt RK4} for the fourth order algorithm or {\tt RK2} for the second order algorithm. To obtain the full matrix, we consider every element of the canonical basis as an initial condition $\delta_0$. We then iterate the Runge-Kutta algorithm until the time $t_0$ (chosen in one of two ways, see below), at which point we perform a QR decomposition, save the diagonal entries of $R$, replace the family of initial conditions with the columns of $Q$, and continue the flow from there. The choice of the times $t_i$ can be done either by fixed-length intervals, specified with the option {\tt lyapunov\_reset}, or the QR decomposition can be triggered whenever $\|\delta\|_1$ exceeds a threshold, specified in {\tt lyapunov\_maxu} (after all, the intervals are used to prevent $\delta$ from becoming too large).