Elmer FEM solver Elmer is an open source finite element software for multiphysical problems
StressSolve.src File Reference

## Functions/Subroutines

subroutine stresssolver_init (Model, Solver, dt, Transient)

subroutine stresssolver (Model, Solver, dt, Transient)

subroutine bulkassembly ()

subroutine bcassembly ()

subroutine computenormaldisplacement (Displacement, NormalDisplacement, DisplPerm, STDOfs)

subroutine computestress (Displacement, NodalStress, VonMises, DisplPerm, StressPerm, NodalStrain, PrincipalStress, PrincipalStrain, Tresca, PrincipalAngle)

real(kind=dp) function trace (F, dim)

subroutine coordinateintegrals (Area, Center, Moments, maxnodes)

subroutine lumpedloads (Permutation, Area, Center, Moments, Forces)

subroutine lumpeddisplacements (Model, Permutation, Area, Center)

subroutine lumpedsprings (Permutation, Area, Center, Moments, maxnodes)

subroutine lumpedcartesianmass ()

real(kind=dp) function,
dimension(2)
stressboundaryresidual (Model, Edge, Mesh, Quant, Perm, Gnorm)

real(kind=dp) function,
dimension(2)
stressedgeresidual (Model, Edge, Mesh, Quant, Perm)

real(kind=dp) function,
dimension(2)
stressinsideresidual (Model, Element, Mesh, Quant, Perm, Fnorm)

double precision function ddotprod (A, B, N)

## Function/Subroutine Documentation

 subroutine stresssolver::addglobaltime ( )

References timeintegrate::bossak2ndorder(), and solver().

Here is the call graph for this function:

 subroutine stresssolver::bcassembly ( )

Here is the call graph for this function:

 subroutine stresssolver::bulkassembly ( )

Here is the call graph for this function:

 subroutine stresssolver::computenormaldisplacement ( real(kind=dp), dimension(:) Displacement, real(kind=dp), dimension(:) NormalDisplacement, integer, dimension(:) DisplPerm, integer STDOfs )

Referenced by stresssolver().

Here is the call graph for this function:

Here is the caller graph for this function:

 subroutine stresssolver::computestress ( real(kind=dp), dimension(:) Displacement, real(kind=dp), dimension(:) NodalStress, real(kind=dp), dimension(:) VonMises, integer, dimension(:) DisplPerm, integer, dimension(:), pointer StressPerm, real(kind=dp), dimension(:) NodalStrain, real(kind=dp), dimension(:) PrincipalStress, real(kind=dp), dimension(:) PrincipalStrain, real(kind=dp), dimension(:) Tresca, real(kind=dp), dimension(:) PrincipalAngle )

Referenced by stresssolver().

Here is the call graph for this function:

Here is the caller graph for this function:

 subroutine stresssolver::coordinateintegrals ( real(kind=dp) Area, real(kind=dp), dimension(:) Center, real(kind=dp), dimension(:,:) Moments, integer maxnodes )

Referenced by stresssolver().

Here is the call graph for this function:

Here is the caller graph for this function:

 double precision function stressinsideresidual::ddotprod ( double precision, dimension(:,:) A, double precision, dimension(:,:) B, integer N )
 subroutine stresssolver::lumpedcartesianmass ( )

Referenced by stresssolver().

Here is the call graph for this function:

Here is the caller graph for this function:

 subroutine stresssolver::lumpeddisplacements ( type(model_t) Model, integer Permutation, real(kind=dp) Area, real(kind=dp), dimension(:) Center )

Referenced by stresssolver().

Here is the call graph for this function:

Here is the caller graph for this function:

 subroutine stresssolver::lumpedloads ( integer Permutation, real (kind=dp) Area, real (kind=dp), dimension(:) Center, real (kind=dp), dimension(:,:) Moments, real (kind=dp), dimension(:,:) Forces )

References messages::warn().

Referenced by bcassembly().

Here is the call graph for this function:

Here is the caller graph for this function:

 subroutine stresssolver::lumpedsprings ( integer Permutation, real(kind=dp) Area, real(kind=dp), dimension(:) Center, real(kind=dp), dimension(:,:) Moments, integer maxnodes )

Referenced by stresssolver().

Here is the call graph for this function:

Here is the caller graph for this function:

 real(kind=dp) function, dimension(2) stressboundaryresidual ( type(model_t) Model, type( element_t ), pointer Edge, type( mesh_t ), pointer Mesh, real(kind=dp), dimension(:) Quant, integer, dimension(:) Perm, real(kind=dp) Gnorm )

Referenced by stresssolver().

Here is the call graph for this function:

Here is the caller graph for this function:

 real(kind=dp) function, dimension(2) stressedgeresidual ( type(model_t) Model, type( element_t ), pointer Edge, type( mesh_t ), pointer Mesh, real(kind=dp), dimension(:) Quant, integer, dimension(:) Perm )

Referenced by stresssolver().

Here is the call graph for this function:

Here is the caller graph for this function:

 real(kind=dp) function, dimension(2) stressinsideresidual ( type(model_t) Model, type( element_t ), pointer Element, type( mesh_t ), pointer Mesh, real(kind=dp), dimension(:) Quant, integer, dimension(:) Perm, real(kind=dp) Fnorm )

Referenced by stresssolver().

Here is the call graph for this function:

Here is the caller graph for this function:

 subroutine stresssolver ( type(model_t) Model, type(solver_t), target Solver, real(kind=dp) dt, logical Transient )

Solves the elastic displacement assuming linear stress-strain relationship. The solver is burdened with a plethora of different options. For example, various kinds of stresses may be computed. Also some basic features for model lumping and contact analysis exist.