7

I am trying to solve a multiphysic problem using finite elements and a Newton Raphson solution scheme. I have two non-linear subsystems that are coupled bi-directionally.

The first subsystem includes an equation that I solve for $p_f$:

$\nabla u - \nabla a^3 \nabla p_f = \nabla a^3 B$

This equation becomes very non-linear, due to the parameter $a$ with an exponent of 3! $B$ are body forces and $u$ is the solution of the second subsystem that I am trying to solve. This second subsystem includes the Stokes equation that depends on the gradient of $p_f$. Therefore, both system are coupled bi-directionally.

I am using a Newton-Raphson solution scheme for each subsystem. First, I solve for $p_f$. After convergence occurred, I pass this solution to the second subsystem, which I solve using a Newton Raphson scheme, too. Then, the solution $u$ is passed to the first subsystem ... until the solutions of both subsystems do not change anymore. See the flow chart below.

Flow Chart

This procedure works very well so far. However, if the values of the parameter $a$ become very low (thus the gradient of $a$ becomes very, very low), there is no convergence anymore! The reason seems to be that the coupling between both subsystem becomes very strong. A small change in one subsystem creates a significant changes in the other one (especially where the gradient of $a$ is very low). I tried a variety of good initial conditions, however, since the first subsystem reacts very sensitiv, convergence has been impossible so far.

In the figure below, you can see how the solution of this approach ("Segregated Approach"-blue line) is different from the "true" solution ("Fully Coupled"-red line). The "true solution" is the result of a benchmark, which I calculated by solving a single system of equations that includes the equations of both subsystems.

Differences in solution

The greatest differences between both solutions are located where the gradient of $a$ becomes very small. See the figure below (in this figure the values of $p_f$ and $a$ are normalized to range between 0 and 1):

Parameter $a$ and the 'wrong' solution for $p_f$

So: Is a Newton-Raphson solution scheme the wrong method for solving a strongly coupled system, if there are low gradients in a subsystem? Could my method be fixed to solve the problem that I described? If yes, how? Are there alternative solution schemes for this problem?

Johann
  • 71
  • 2
  • It's probably the segregation scheme that's killing you not the inner non-linear solver. Why don't you want to solve the fully coupled problem? – Bill Barth Mar 05 '15 at 14:18
  • The model that I'm modifying makes it very hard to add a new subsystem to the existing system of equations 2. Later, the model should run on a larger scale, and it seemed less time and memory consuming to use a segregation scheme
  • – Johann Mar 05 '15 at 14:23
  • Find a new program to extend? I think the odds are good that the segregated version is converging to the wrong answer. If the inner Newton steps appear converged, and the outer iterations between the segregated models appear converged, then segregation may not be working. How many different initial guesses have you tried? It's possible that the fully coupled version has an easier time hitting what you think of as the right solution. How did you generate the fully coupled solution if the model is hard to extend, btw? Have you tried the method of manufactured solutions on both models? – Bill Barth Mar 05 '15 at 16:27
  • The fully coupled solution is from a simple model I wrote in MATLAB (much too simple for later usage, but good enough to run this benchmark). I used the solution of the fully-coupled code as initial condition and did not get any convergence! I have not tried the method of manufactured solutions yet. – Johann Mar 05 '15 at 22:06
  • If the solution to the segregated model changed as drastically from the solution to the fully coupled problem as you show here when you used the fully coupled solution as the initial guess, something is wrong with your segregated solver. – Bill Barth Mar 06 '15 at 00:47
  • 1
    The nonlinear term is $\nabla (a^3)$ or $(\nabla a)^3$? – nicoguaro Mar 19 '15 at 22:26