2

I am trying to solve the following set of 2nd order non-linear and coupled ODEs:

    0 = ² ℎ″() −  ℎ′() + ² ()² [1−ℎ()], 
    0 = ² ″() +  '() −  ² () [()² + ()² − 2], 
    0 = ² ″() +  ′() − (1/2) () [1−ℎ()]² −  ² () [()² + ()² − 2].

(I'm sorry EQs do not look beautiful. I'm used to LaTeX syntax only). Well, besides the equations, I have the following Boundary Conditions:

    f'(0) = 0, f'(x → ∞) = 0. I also know that f (x → ∞) = 1 ,
    h(0)  = 0, h(x → ∞)  = 1 ,
    g(0)  = 0, g(x → ∞)  = 1 . 

Moreover, I also expect the first derivatives h'(x), f'(x), and g'(x) to go to zero for some finite value of x and then, just stay zero. That is, I know my solution must reach the asymptotic values and remain constant afterwards. In other words, I know the functions h(x), f(x) and g(x) must 'saturate'.

Using MATLAB, I have tried the following solution:

xmin=1e-3;
xmax=50;
guess = [ 1 1 1 0 0 0];


xmesh = linspace(xmin,xmax,1e5);
solinit = bvpinit(xmesh,guess);%The last vector is my guess.
options = bvpset('RelTol',1e-5,'NMax',5e6); 

sol = bvp5c(@deriv, @bcs, solinit, options);

Sxint = deval(sol,xmesh);
figure
plot(sol.x(1,:),sol.y(1,:),'k-');
hold on 
plot(sol.x(1,:),sol.y(2,:),'m-');
hold on
plot(sol.x(1,:),sol.y(3,:),'k-')
hold off
axis([0 xmax -0.2 1.5])

function dydx = deriv(x,y)
lambda=0.5;
dydx= [ y(4) %The vector y() was keeping the following results: y=(h, f, g, h', f', g')
        y(5)
        y(6)
        (1/x)*y(4) - (y(3)^2)*(1-y(1))
        -(1/x)*y(5) + (lambda)*y(2)*(y(2)^2 + y(3)^2 - 2)
        -(1/x)*y(6) + (1/(2*x^2))*y(3)*((1-y(1))^2) + (lambda)*y(3)*(y(2)^2 + y(3)^2 - 2)];
end

% boundary conditions 

function res = bcs(ya,yb)
res = [ya(1)
       yb(1) - 1
       yb(2) - 1
       ya(3)
       yb(3) - 1
       ya(5)];
end

Well, up to some minor typos I could make while copying and pasting my code, this code gives me a solution that only takes the desired value (of 'infinity') at the boundary. I can use larger and larger values of my xmax and even so, the solution never starts to saturate at its value for infinity.

I tried using a better guess, based on the analytical solution of these equations for a small value of x, but nothing is giving me a good solution. And this is the reason I am asking for some advice here. What do you think? Is MATLAB incapable of solving this because of the 1/x² in the third ODE?

Thanks!

Lutz Lehmann
  • 25,219
  • 2
  • 22
  • 51
MLPhysics
  • 23
  • 4
  • I managed to solve these ODEs in the approximation of large x. That's why I know the functions must saturate soon. – MLPhysics Jan 27 '21 at 23:33
  • 1
    At a first glance, for large `x` you get in `f,g` a mechanical system with Hamiltonian `H=0.5·(f'(x)²+g'(x)²) - 0.5··(f(x)²+g(x)²-2)²` with a friction that asymptotically falls to zero. The potential energy is a hill with sides going to -oo and a valley at the circular top, like an old volcano. I would expect solutions to fall down along the outside of the potential energy landscape. // Is there a sign error in the gradient force of the potential? – Lutz Lehmann Jan 28 '21 at 12:42
  • @LutzLehmann Thank you for answering this question. And you thought about a very smart analogy. I would never think about that, I guess (and I'm a physicist). Well, this problem is related to physics. These equations give me the radial behavior of a scalar field (f,g) and a gauge field (h). I have nice approximate solutions for both regions, x near zero and x to \infty. However, I haven't been able to make this solution converge for large x. I will read your answer below carefully and then give a more detailed opinion on that. Thanks! – MLPhysics Jan 29 '21 at 20:30

1 Answers1

0

At a first glance, for large x you get in f,g a mechanical system with Hamiltonian

H = 0.5·(f'(x)²+g'(x)²) - 0.25··(f(x)²+g(x)²-2)²

with a friction that asymptotically falls to zero. The potential energy is a hill with sides going to -oo and a valley at the circular top, like an old, weathered volcano.

The initial conditions say that the movement starts in the center of the indentation. With your current approach, you reach the rim around the indentation in finite time, and thus with non-zero velocity. I would expect solutions to continue from that to fall down along the outside of the potential energy landscape.

You are trying to reach f=g=1 asymptotically. This corresponds to the energy surface H=0. Intuition (which could be wrong) and angular momentum, which has to converge to zero, says that the final approach has to be radially, that is, with f(x)=g(x) and thus

f'(x)² = ·(f(x)²-1)² ==> f'(x) = c·(1-f(x)²),  c=sqrt()
f(x)=tanh(c*(x-d)) 

This asymptotic behavior suggests that the boundary conditions at infinity get replaced by conditions at x=T

f'(T)-c*(1-f(T)^2)=0
g'(T)-c*(1-g(T)^2)=0
h'(T)+g(T)*(1-h(T))=0

the last to kill the exponentially increasing term of h''+g²·(1-h)=0.

One also needs some sensible approximation at x=0, disregarding cubic and higher order terms one gets the following:

  • h(x)=h_2·x² follows from the first equation, with h_2 free,
  • f(x)=f_0+f_2·x² leads to 4*f_2 = ·f_0·(f_0²-2),
  • g(x)=g_1·x+g_2·x² leads to g_1·x+4·g_2·x² = (g_1·x+g_2·x²)/2 so that g_1=g_2=0.

Numerical experiments to follow. Or not. Up to now the approximations at the upper boundary are not sufficient to force convergence. The more sensible results are close to the circle segment from angle 0 to pi/4

Lutz Lehmann
  • 25,219
  • 2
  • 22
  • 51
  • As you may have thought, these ODEs come from PDEs associated with field theory. And thinking about the need for the hamiltonian to converge, I could extract my asymptotic conditions. Besides that, I have the complete hamiltonian (in terms of these radial equations), but up to this moment I couldn't get anywhere with my set of informations about the system. – MLPhysics Jan 29 '21 at 20:46
  • Finally, I must say that I've tried to get an estimate of the solution through series expansions. Unfortunately, this very long process showed me that `h_2` was a free parameter, as well as `f_0` and possibly `g_1` in your notation. I also checked that `g_1` seems to be zero indeed, which worries me because this could imply `g_3`, `g_5` and so on would also be zero. Just to conclude: I also know that `f(x)` and `h(x)` are even functions, while `g(x)` is odd. – MLPhysics Jan 29 '21 at 20:50