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

Functions/Subroutines

subroutine statelecsolver_init (Model, Solver, dt, TransientSimulation)

subroutine statelecsolver (Model, Solver, dt, TransientSimulation)

subroutine bulkassembly ()

subroutine boundaryassembly ()

subroutine totalchargebc (F, Element, n, Nodes)

subroutine generalelectricflux (Mesh, Potential)

subroutine stateleccompose (StiffMatrix, Force, PiezoMaterial, PiezoCoeff, Permittivity, Load, Element, n, ntot, Nodes, Displacement)

subroutine setpermutationboundaries (Model, StiffMatrix, ForceVector, Name, Perm, Permutation)

subroutine statelecboundary (BoundaryMatrix, BoundaryVector, LoadVector, Alpha, Beta, OpenBC, Permittivity, Element, n, Nodes)

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

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

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

Function/Subroutine Documentation

 subroutine statelecsolver::boundaryassembly ( )

Here is the call graph for this function:

 subroutine statelecsolver::bulkassembly ( )

Here is the call graph for this function:

 real(kind=dp) function, dimension(2) electricboundaryresidual ( 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 )

Here is the call graph for this function:

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

Here is the call graph for this function:

 real(kind=dp) function, dimension(2) electricinsideresidual ( 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 )

Here is the call graph for this function:

 subroutine statelecsolver::generalelectricflux ( type(mesh_t) Mesh, real(kind=dp), dimension(:) Potential )

Compute the Electric Flux, Electric Field and Electric Energy at model nodes.

Here is the call graph for this function:

 subroutine statelecsolver::setpermutationboundaries ( type(model_t) Model, type(matrix_t), pointer StiffMatrix, real(kind=dp), dimension(:) ForceVector, character(len=*) Name, integer, dimension(:) Perm, integer Permutation )

To compute the capacitance matrix for m bodies, also m permutations are required. This subroutine sets at permutation i, the body i to 1, and all else to 0.

Here is the call graph for this function:

 subroutine statelecsolver::statelecboundary ( real(kind=dp), dimension(:,:) BoundaryMatrix, real(kind=dp), dimension(:) BoundaryVector, real(kind=dp), dimension(:) LoadVector, real(kind=dp), dimension(:) Alpha, real(kind=dp), dimension(:) Beta, logical OpenBC, real(kind=dp), dimension(:) Permittivity, type(element_t), pointer Element, integer n, type(nodes_t) Nodes )
Parameters
 alpha Coefficient of the Robin BC: g = alpha * u + beta beta Coefficient of the Robin BC: g = alpha * u + beta

Here is the call graph for this function:

 subroutine statelecsolver::stateleccompose ( real(kind=dp), dimension(:,:) StiffMatrix, real(kind=dp), dimension(:) Force, logical PiezoMaterial, real(kind=dp), dimension(:,:,:) PiezoCoeff, real(kind=dp), dimension(:,:,:) Permittivity, real(kind=dp), dimension(:) Load, type(element_t), pointer Element, integer n, integer ntot, type(nodes_t) Nodes, real(kind=dp), dimension(:,:) Displacement )

Here is the call graph for this function:

 subroutine statelecsolver::totalchargebc ( real(kind=dp), dimension(:) F, type(element_t), pointer Element, integer n, type(nodes_t) Nodes )

Here is the call graph for this function: