Consider an $n \times n$ real, time-dependent matrix $A(t)$ such that $A(t) = A(t)^{T} > 0$ and $A(t)$ is continuous on $[a,b]$. Then it is posible to specify a matrix $S(t) \in SO(n)$ such that $S(t)A(t)S^{T}(t) = \Lambda(t)$, where $\Lambda$ is a diagonal matrix. For instance, we can obtain such $S(t)$ using Jacobi rotation method.
I'm looking for time-continuous on $[a,b]$ matrices $S(t)$ and $\Lambda(t)$. Lets consider a net $$ a = t_0 < t_1 < \ldots < t_n = b $$ Assume that $S(t_k)$, $\Lambda(t_k)$ are computed. How to receive than $S(t_{k+1})$ and $\Lambda(t_{k+1})$ nearest possible to $S(t_{k})$ and $\Lambda(t_k)$? Which algorithm should I use?