Elmer FEM solver
Elmer is an open source finite element software for multiphysical problems
 All Classes Files Functions Variables Typedefs Macros Groups Pages
CoupledNSUpdate.src File Reference

Functions/Subroutines

subroutine optimalsolutionupdate (Model, Solver, dt, TransientSimulation)
 
subroutine gcrupdate (n, A, M, x, b, r, Snew, S, V, RR, Round)
 
subroutine orthogonalize (n, A, x, b, Snew, S, V, R, Round, MaxRounds)
 
subroutine localmatrix (STIFF, Mass, FORCE, LOAD, Nodalrho, Nodalmu, NodalVelo, Element, n, nd, dim, Stabilization, Convect, GradDivParam)
 
subroutine lcondensatestabilizationbubble (n, nd, dim, K)
 
subroutine localmatrixboundary (STIFF, FORCE, Velocity, rho, Element, nd, dim, BlockPreconditioning, ABlock)
 
real(kind=dp) function mydot (n, x, y)
 
subroutine mymv (A, x, b, Update)
 
real(kind=dp) function mynorm (n, x)
 
subroutine setboundaryconditions (Model, StiffMatrix, Name, DOF, NDOFs, Perm, rhs)
 

Function/Subroutine Documentation

subroutine optimalsolutionupdate::gcrupdate ( integer  n,
type(matrix_t), pointer  A,
type(matrix_t), pointer  M,
real(kind=dp), dimension(:)  x,
real(kind=dp), dimension(:)  b,
real(kind=dp), dimension(:)  r,
real(kind=dp), dimension(:)  Snew,
real(kind=dp), dimension(:,:)  S,
real(kind=dp), dimension(:,:)  V,
real(kind=dp), dimension(:)  RR,
integer  Round 
)

References messages::info(), mydot(), mymv(), mynorm(), and parallelutils::parallelvector().

Referenced by optimalsolutionupdate(), and stokessolver().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine optimalsolutionupdate::lcondensatestabilizationbubble ( integer  n,
integer  nd,
integer  dim,
real(kind=dp), dimension(:,:)  K 
)

References linearalgebra::invertmatrix().

Referenced by localmatrix().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine optimalsolutionupdate::localmatrix ( real(kind=dp), dimension(:,:), target  STIFF,
real(kind=dp), dimension(:,:), target  Mass,
real(kind=dp), dimension(:), target  FORCE,
real(kind=dp), dimension(:,:), target  LOAD,
real(kind=dp), dimension(:)  Nodalrho,
real(kind=dp), dimension(:)  Nodalmu,
real(kind=dp), dimension(:,:)  NodalVelo,
type(element_t), pointer  Element,
integer  n,
integer  nd,
integer  dim,
logical  Stabilization,
logical  Convect,
real(kind=dp)  GradDivParam 
)

References elementdescription::elementdiameter(), elementdescription::elementinfo(), integration::gausspoints(), defutils::getelementnodes(), and lcondensatestabilizationbubble().

Here is the call graph for this function:

subroutine optimalsolutionupdate::localmatrixboundary ( real(kind=dp), dimension(:,:), target  STIFF,
real(kind=dp), dimension(:), target  FORCE,
real(kind=dp), dimension(:,:)  Velocity,
real(kind=dp)  rho,
type(element_t), pointer  Element,
integer  nd,
integer  dim,
logical  BlockPreconditioning,
real(kind=dp), dimension(:,:), target  ABlock 
)

References elementdescription::elementinfo(), integration::gausspoints(), defutils::getelementnodes(), normal(), and elementdescription::normalvector().

Here is the call graph for this function:

real(kind=dp) function optimalsolutionupdate::mydot ( integer  n,
real(kind=dp), dimension(:)  x,
real(kind=dp), dimension(:)  y 
)

References parallelutils::paralleldot().

Referenced by gcrupdate(), and orthogonalize().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine optimalsolutionupdate::mymv ( type(matrix_t), pointer  A,
real(kind=dp), dimension(:)  x,
real(kind=dp), dimension(:)  b,
logical, optional  Update 
)

References crsmatrix::crs_matrixvectormultiply(), and parallelutils::parallelmatrixvector().

Referenced by gcrupdate(), orthogonalize(), and stokessolver().

Here is the call graph for this function:

Here is the caller graph for this function:

real(kind=dp) function optimalsolutionupdate::mynorm ( integer  n,
real(kind=dp), dimension(:)  x 
)

References parallelutils::parallelnorm().

Referenced by gcrupdate(), orthogonalize(), and stokessolver().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine optimalsolutionupdate::orthogonalize ( integer  n,
type(matrix_t), pointer  A,
real(kind=dp), dimension(n)  x,
real(kind=dp), dimension(n)  b,
real(kind=dp), dimension(n)  Snew,
real(kind=dp), dimension(:,:)  S,
real(kind=dp), dimension(:,:)  V,
real(kind=dp), dimension(:)  R,
integer  Round,
integer  MaxRounds 
)

References messages::info(), mydot(), mymv(), and mynorm().

Referenced by optimalsolutionupdate().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine optimalsolutionupdate::setboundaryconditions ( type(model_t)  Model,
type(matrix_t), pointer  StiffMatrix,
character(len=*)  Name,
integer  DOF,
integer  NDOFs,
integer, dimension(:)  Perm,
real(kind=dp), dimension(:), optional  rhs 
)

References defutils::getelementdofs(), defutils::getelementnofnodes(), lists::listgetreal(), solverutils::setmatrixelement(), and solverutils::zerorow().

Here is the call graph for this function: