Hi,
Concerning the linear/non linear convergence tolerance of a solver is roughly ok for me about the understanding of how it works.
But I don't understand how the "Steady state convergence tolerance" works when using a solver. How is this convergence tolerance taken into account?
Could somebody give some explanations about this?
Thanks in advance for any help!
Roland
Steady state convergence tolerance

 Posts: 2286
 Joined: 25 Jan 2019, 01:28
 Antispam: Yes
Re: Steady state convergence tolerance
I believe the linear/non linear convergence tolerance of a solver applies to that individual solver.
Each individual solver stops when it converges. Then the next solver starts.
The steady state convergence applies to the equation which is the combination of all the solvers
A common stopping criterion applies a residual level for the equation, below which the equation is deemed to be converged. When the equation satisfy the respective residual control, the simulation then stops.
Each individual solver stops when it converges. Then the next solver starts.
The steady state convergence applies to the equation which is the combination of all the solvers
A common stopping criterion applies a residual level for the equation, below which the equation is deemed to be converged. When the equation satisfy the respective residual control, the simulation then stops.
Re: Steady state convergence tolerance
Hi,
Thanks Kevin for your reply.
But how could this stopping criterion be applied to the equation? What is the error expression defined for this equation which gathers all the concerned solvers? Is there something like a flowchart which could describe this kind of convergence test?
Thanks in advance for any help!
Roland
Thanks Kevin for your reply.
But how could this stopping criterion be applied to the equation? What is the error expression defined for this equation which gathers all the concerned solvers? Is there something like a flowchart which could describe this kind of convergence test?
Thanks in advance for any help!
Roland

 Site Admin
 Posts: 4821
 Joined: 22 Aug 2009, 11:57
 Antispam: Yes
 Location: Espoo, Finland
 Contact:
Re: Steady state convergence tolerance
Hi Roland,
The convergence criterion is u_i  u_j < c*(u_i+u_j)/2, where c is the tolerance. For nonlinear system j refers to previous nonlinear iterate. For coupled system j refers to the solution of the previous time the coupled system visited the solver.
Generally it may be a good idea that the tolerances for linear system are the tightest, for nonlinear system a little sloppier, and for steady state system even more so. For example, values 1.0e8, 1.0e5 and 1.0e4 could be used.
Peter
The convergence criterion is u_i  u_j < c*(u_i+u_j)/2, where c is the tolerance. For nonlinear system j refers to previous nonlinear iterate. For coupled system j refers to the solution of the previous time the coupled system visited the solver.
Generally it may be a good idea that the tolerances for linear system are the tightest, for nonlinear system a little sloppier, and for steady state system even more so. For example, values 1.0e8, 1.0e5 and 1.0e4 could be used.
Peter
Re: Steady state convergence tolerance
Hi Peter,
Thanks for your answer.
But I still don't feel exactly what this convergence criterion (which I understand for nonlinear and linear iterations when using a solver) is for " steady state ". What do you mean exactly by "Steady state" ? What confuses me is that you refer to nonlinear systems, then to coupled systems. Can you please explain what is exactly the "Steady state" compared with a nonlinear system and a coupled system? And why is it necessary to have a convergence tolerance for "Steady state"?
Thanks in advance
Roland
Thanks for your answer.
But I still don't feel exactly what this convergence criterion (which I understand for nonlinear and linear iterations when using a solver) is for " steady state ". What do you mean exactly by "Steady state" ? What confuses me is that you refer to nonlinear systems, then to coupled systems. Can you please explain what is exactly the "Steady state" compared with a nonlinear system and a coupled system? And why is it necessary to have a convergence tolerance for "Steady state"?
Thanks in advance
Roland
Re: Steady state convergence tolerance
Hi Peter,
After thinking this "Steady state convergence tolerance" matter a bit more and after reading one of your former post explaining the 3 convergence nested levels (liner, nonlinear and loosely coupled equations system) I think I understand now what is the "Steady state": when several equations are loosely coupled you have to iterate from one to the other equation , and this until the multiphyisic solution is converged thanks to the "Steady state convergence tolerance". I guess that this is the same as what is called "segregated solver" in Comsol. At last I think I understand now that this has nothing to do with the "physical steady state" of a model...
I let you confirm if I am on the right way...
Thanks in advance.
Roland
After thinking this "Steady state convergence tolerance" matter a bit more and after reading one of your former post explaining the 3 convergence nested levels (liner, nonlinear and loosely coupled equations system) I think I understand now what is the "Steady state": when several equations are loosely coupled you have to iterate from one to the other equation , and this until the multiphyisic solution is converged thanks to the "Steady state convergence tolerance". I guess that this is the same as what is called "segregated solver" in Comsol. At last I think I understand now that this has nothing to do with the "physical steady state" of a model...
I let you confirm if I am on the right way...
Thanks in advance.
Roland