FlowSolver

Numerical methods and mathematical models of Elmer
Post Reply
hamed
Posts: 110
Joined: 12 Oct 2009, 18:28

FlowSolver

Post by hamed »

Dear Elmer group
I wanted to ask about the algorithm used in Elmer 'FlowSolver' module for solving incompressible stabilized Navier-Stokes equation. Is it for example a kind of FRONTAL solver or anything else?
Regards,
Hamed
"I just omitted a sentence, no need for answer"
Last edited by hamed on 28 Aug 2011, 19:40, edited 1 time in total.
raback
Site Admin
Posts: 4841
Joined: 22 Aug 2009, 11:57
Antispam: Yes
Location: Espoo, Finland
Contact:

Re: FlowSolver

Post by raback »

Hi Hamed

If you're referring to the solution of the linear systems arising from the discretization of the Navier-Stokes equation, there are a number of choices. Indeed one good option in 2D is Umfpack which is a multi-frontal direct solver, see
http://www.cise.ufl.edu/research/sparse/umfpack/. For larger and 3D problems usually iterative methods are applied, see
Ch. 4 in http://www.nic.funet.fi/pub/sci/physics ... Manual.pdf for more details (unfortunately this isn't quite up to date missing quite many more recent options).

In ElmerGUI the place to choose the linear solver is
Equation -> Navier-Stokes -> Edit Solver Settings -> Linear Systems ( and Parallel)

FlowEdgeResidual is related to the error indicators that may be used in adaptive solution of the equations. Metric is related to the coordinate transformation in non-cartesian coordinates.

-Peter
hamed
Posts: 110
Joined: 12 Oct 2009, 18:28

Re: FlowSolver

Post by hamed »

So what is the difference between functions 'FlowBoundaryResidual' and 'FlowEdgeResidual' ? These functions alongside 'FlowInsideResidual' constitute the main part of 'FlowSolver' module.

Thanks,
Juha
Site Admin
Posts: 357
Joined: 21 Aug 2009, 15:11

Re: FlowSolver

Post by Juha »

Hi Hamed,

EdgeResiduals() is for computing jump in normal stresses over the element
edges (2D) or faces (3D). BoundaryResiduals() is for computing an solution error
measure for boundary conditions.

Both routines return values that can are used, together with the value returned be
InsideResiduals(), to compute an elementwise solution error indicator.The indicator
may then be used in mesh refinement procedures, for example.

Regards, Juha

PS. The main subroutine in the FlowSolve.src file is the FlowSolver() subroutine
which is the actual driver for the N-S equation.
Post Reply