How Large is the Residual Error in FEA Solutions of PDEs?

  • Context: Graduate 
  • Thread starter Thread starter feynman1
  • Start date Start date
  • Tags Tags
    Fea Pdes
Click For Summary

Discussion Overview

The discussion revolves around the residual error in finite element analysis (FEA) solutions of partial differential equations (PDEs). Participants explore the relationship between the residual error of the PDE and that of the finite element discrete system, including the implications of iterative solvers and convergence criteria.

Discussion Character

  • Technical explanation
  • Debate/contested
  • Mathematical reasoning

Main Points Raised

  • Some participants describe the process of solving a PDE using finite elements and Newton iteration, noting that each iteration has an associated residual error.
  • There is mention of the role of residual error minimization and trial functions in deriving element equations, with some participants questioning the common practices in software regarding iteration versus linearization for nonlinear systems.
  • A theoretical bound on discretization error is discussed, with references to Taylor's Theorem for estimating errors in iterative solutions.
  • Participants emphasize the distinction between the discrete solution and the exact continuous solution, discussing how the error and residual are related, and how convergence can be assessed through mesh refinement.
  • Concerns are raised about the behavior of the error when refining meshes, particularly in cases where the true solution exhibits oscillatory behavior.
  • Some participants note that for time-dependent solutions, residuals must be converged at each time step, and complications may arise from unstructured meshes in practical problems.
  • A question is posed regarding the situation where the residual of the discrete system decreases, but the function evaluated at the discrete solution does not yield zero, prompting further inquiry into the nature of these residuals.
  • There is a request for clarification on the difference between the residual of the discrete system yielding the solution and the function evaluated at that solution.

Areas of Agreement / Disagreement

Participants express a range of views on the relationship between residuals and errors, the implications of mesh refinement, and the challenges posed by complex geometries. No consensus is reached on the best practices or interpretations of the residuals in various contexts.

Contextual Notes

Limitations include the dependence on the nature of the PDEs being solved, the potential for oscillatory solutions affecting convergence, and the challenges posed by unstructured meshes in practical applications.

feynman1
Messages
435
Reaction score
29
A PDE is solved by finite elements. The PDE then becomes a discrete system solved by Newton iteration. Every iteration step comes with a residual error. When the solution is completed, how far is the residual error of the PDE from the residual error of the finite element discrete system?
 
Physics news on Phys.org
feynman1 said:
A PDE is solved by finite elements. The PDE then becomes a discrete system solved by Newton iteration. Every iteration step comes with a residual error. When the solution is completed, how far is the residual error of the PDE from the residual error of the finite element discrete system?
I thought the residual error minimization and trial functions come into play deriving the element equations which are then solved by Gaussian Elimination.
 
Last edited:
bob012345 said:
I thought the residual error minimization and trial functions come into play deriving the element equations which are then solved by Gaussian Elimination.
If the discrete system is nonlinear, either iteration is needed or linearization is to be done? Which is more commonly applied in software?
 
There is a theoretical bound on the discretization error (the difference bewtween the actual solution and the numerical solution).

If you can't solve the resulting algebraic system exactly, then this will be a further source of error. You can estimate this using Taylor's Theorem: if you are attempting to solve f(x) = 0 and the actual solution is x_{c}, then for the approximation x_n you have |f(x_n)| \approx |f'(x_n)||x_n - x_{c}| so that |x_n - x_{c}| \approx |f(x_n)|/|f'(x_n)|. You can then continue your iteration until this error is less than the theoretical maximum discretization error.
 
feynman1 said:
A PDE is solved by finite elements. The PDE then becomes a discrete system solved by Newton iteration. Every iteration step comes with a residual error. When the solution is completed, how far is the residual error of the PDE from the residual error of the finite element discrete system?
You have to distinguish between the solution of the discrete equations u_d and the exact solution of the continuous equations u.
When using an iterative solver, you start with an estimate of u_d and you update this estimate at every iteration, let's call this u_d^{i}. So at every iteration, you compute a new estimate of your discrete solution, and the error is e_d = |u_d^{i} - u_d|. The residual is what you get when you substitute your current estimate u_d^{i} into your discretized PDE. If your numerical method converges, your residual goes to zero. The error and the residual are related: |e| < C\cdot|R|, and a lot of study has gone into getting accurate estimates of this constant C. So when the residual is zero, you can be pretty sure that you have found the solution of the discretized PDE (within machine precision). What remains is the error e = |u_d - u|. In general, you do not know this error, although we do know that the error goes to zero when the mesh element size goes to zero, and we also know that the rate of convergence is equal to the order of the numerical method. What you can do is compute a second solution on a finer mesh and compare this to the first solution.
You now have 2 solutions, one on the coarse mesh 1: u_{d_1} on the fine mesh 2: u_{d_2}. An important observation is that if you interpolate the solution of mesh 1 (with residual R=0) to the finer mesh 2 and recompute the residual, the residual on the new mesh is not zero anymore.
If you have 3 meshes with 3 solutions, you can use Richardson extrapolation to get an estimate of the error.
 
  • Like
Likes   Reactions: feynman1
bigfooted said:
You have to distinguish between the solution of the discrete equations u_d and the exact solution of the continuous equations u.
When using an iterative solver, you start with an estimate of u_d and you update this estimate at every iteration, let's call this u_d^{i}. So at every iteration, you compute a new estimate of your discrete solution, and the error is e_d = |u_d^{i} - u_d|. The residual is what you get when you substitute your current estimate u_d^{i} into your discretized PDE. If your numerical method converges, your residual goes to zero. The error and the residual are related: |e| < C\cdot|R|, and a lot of study has gone into getting accurate estimates of this constant C. So when the residual is zero, you can be pretty sure that you have found the solution of the discretized PDE (within machine precision). What remains is the error e = |u_d - u|. In general, you do not know this error, although we do know that the error goes to zero when the mesh element size goes to zero, and we also know that the rate of convergence is equal to the order of the numerical method. What you can do is compute a second solution on a finer mesh and compare this to the first solution.
You now have 2 solutions, one on the coarse mesh 1: u_{d_1} on the fine mesh 2: u_{d_2}. An important observation is that if you interpolate the solution of mesh 1 (with residual R=0) to the finer mesh 2 and recompute the residual, the residual on the new mesh is not zero anymore.
If you have 3 meshes with 3 solutions, you can use Richardson extrapolation to get an estimate of the error.
What drives the iterations? Changing mesh size to check for convergence?
 
bigfooted said:
You have to distinguish between the solution of the discrete equations u_d and the exact solution of the continuous equations u.
When using an iterative solver, you start with an estimate of u_d and you update this estimate at every iteration, let's call this u_d^{i}. So at every iteration, you compute a new estimate of your discrete solution, and the error is e_d = |u_d^{i} - u_d|. The residual is what you get when you substitute your current estimate u_d^{i} into your discretized PDE. If your numerical method converges, your residual goes to zero. The error and the residual are related: |e| < C\cdot|R|, and a lot of study has gone into getting accurate estimates of this constant C. So when the residual is zero, you can be pretty sure that you have found the solution of the discretized PDE (within machine precision). What remains is the error e = |u_d - u|. In general, you do not know this error, although we do know that the error goes to zero when the mesh element size goes to zero, and we also know that the rate of convergence is equal to the order of the numerical method. What you can do is compute a second solution on a finer mesh and compare this to the first solution.
You now have 2 solutions, one on the coarse mesh 1: u_{d_1} on the fine mesh 2: u_{d_2}. An important observation is that if you interpolate the solution of mesh 1 (with residual R=0) to the finer mesh 2 and recompute the residual, the residual on the new mesh is not zero anymore.
If you have 3 meshes with 3 solutions, you can use Richardson extrapolation to get an estimate of the error.
thanks a lot and I wonder what could be the reason if |u-ud| doesn't decrease with refined meshes? If the true solution of the PDEs is of a highly oscillatory nature in space, would the residual of the PDEs (containing spatial derivatives) be hard to be suppressed?
 
if the solution is time dependent, then you have to converge the residuals every time step. If the residuals do not go down anymore, this is usually because for practical problems, you have a complicated geometry with an unstructured mesh, and the cells are not perfect squares or triangles.
 
  • Like
Likes   Reactions: feynman1
bigfooted said:
if the solution is time dependent, then you have to converge the residuals every time step. If the residuals do not go down anymore, this is usually because for practical problems, you have a complicated geometry with an unstructured mesh, and the cells are not perfect squares or triangles.
what if the residual of the discrete system yielding the ud solution goes down with iterations but f(ud) doesn't (f defined in #4 so f(uex)=0 where uex is exact)?
 
  • #10
how is the "residual of the discrete system yielding u_d" different from f(u_d)=R?
 
  • #11
bigfooted said:
how is the "residual of the discrete system yielding u_d" different from f(u_d)=R?
I'm not sure. f is some differential operator and it takes derivatives, whereas the discrete system has no derivative. Would the gibbs phenomenon make the discrete solution so bad on highly oscillatory regions that the residual will never be small?
 
Last edited:
  • #12
feynman1 said:
I'm not sure. f is some differential operator and it takes derivatives, whereas the discrete system has no derivative. Would the gibbs phenomenon make the discrete solution so bad on highly oscillatory regions that the residual will never be small?
?
 
  • #13
how large is the residual of a discrete solution of a PDE from 0 in order of magnitude?
 

Similar threads

  • · Replies 9 ·
Replies
9
Views
3K
  • · Replies 65 ·
3
Replies
65
Views
8K
Replies
5
Views
2K
  • · Replies 5 ·
Replies
5
Views
3K
  • · Replies 2 ·
Replies
2
Views
3K
  • · Replies 3 ·
Replies
3
Views
2K
Replies
4
Views
2K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 2 ·
Replies
2
Views
3K
  • · Replies 6 ·
Replies
6
Views
2K