I’m interested in finding the monodromy group of some solutions of an ODE that I know only either approximately or numerically. For example, I might have a 3rd order ODE of which I cannot find exact solutions, but I can find them to very high accuracy as a series expansion. For the sake of the example, however, let me take an ODE of which I know the solutions, so I can compare whatever numerical method I have to the analytic solution.

Let me take the ODE $ $ f”(z)+\frac{(2-5 z) f'(z)}{4 z (1-z)}-\frac{3 f(z)}{64 (z-1)^2}=0$ $ that has the two linear independent solutions $ $ f_1=\frac{\sqrt{1-z}+\sqrt{z}+1}{2 \sqrt{\sqrt{z}+1} (1-z)^{1/8}}$ $ $ $ f_2=\frac{-\sqrt{1-z}+\sqrt{z}+1}{\sqrt{\sqrt{z}+1} (1-z)^{1/8}}$ $

Say that I start with $ 0<z<1$ , I analytically continue $ z$ to the complex plane, go around $ z=1$ , which is a branch point, and I come back to $ 0<z<1$ . From the explicit solutions, we can see that they change to $ $ \left( {\begin{array}{c} f_1 \ f_2 \ \end{array} } \right)\to \left( {\begin{array}{cc} 0 & \frac{1}{2} e^{-\frac{1}{4} i \pi }\ 2 e^{-\frac{1}{4} i \pi } & 4 \ \end{array} } \right) \left( {\begin{array}{c} f_1 \ f_2 \ \end{array} } \right) $ $

Now, let’s assume I don’t know exactly the form of $ f_1$ and $ f_2$ . Maybe I know them for example as a series expansions around z=0 with as many orders as I want. I wanna find out how the monodromy group acts on these solutions.

One way to do this would be as explained here. The idea is to discretize the path around z=1, solve the ODE as a series expansion in all of these points, and match these approximate solutions to the ones closeby. In this way we go around z=1 approximately. I’ve tried this and, assuming I’ve done this correctly, I get a sensible result, but even with 16 points and keeping 200ish orders of the series expansion, I get an error which is roughly 1-2%.

I would like to get these numbers with a higher precision. Is there any way that I could do this, without using the explicit form of $ f_1$ and $ f_2$ ? Maybe there’s a smart way of using NDSolve?