Elmer FEM solver
Elmer is an open source finite element software for multiphysical problems
|
Data Types | |
module | magnetodynamicsutils |
interface | magnetodynamicsutils::setdoftovalue |
interface | magnetodynamicsutils::getreluctivity |
Functions/Subroutines | |
subroutine | whitneyavsolver_init0 (Model, Solver, dt, Transient) |
subroutine | whitneyavsolver (Model, Solver, dt, Transient) |
LOGICAL function | dosolve () |
subroutine | gaugetree () |
subroutine | gaugetreefluxbc () |
subroutine | breadthfirstsearch (Alist, done, start, nCount, NodeList) |
subroutine | addtocycle (bcycle, index) |
recursive subroutine | depthfirstsearch (Alist, done, i) |
subroutine | localmatrix (MASS, STIFF, FORCE, LOAD, Tcoef, Acoef, Element, n, nd) |
subroutine | localmatrixbc (STIFF, FORCE, LOAD, Bcoef, Element, n, nd) |
real(kind=dp) function | localfluxbc (LOAD, Element, n, nd) |
subroutine | dirichletafromb () |
recursive function | floodfill (Element, CycleEdges, FaceMap, UsedFaces, Bn, CycleSum) |
subroutine | jfixpotentialsolver (Model, Solver, dt, Transient) |
subroutine | bulkassembly () |
subroutine | whitneyavharmonicsolver_init0 (Model, Solver, dt, Transient) |
subroutine | whitneyavharmonicsolver (Model, Solver, dt, Transient) |
subroutine | localmatrix (MASS, STIFF, FORCE, LOAD, Tcoef, Acoef, Element, n, nd) |
subroutine | localmatrixbc (STIFF, FORCE, LOAD, Bcoef, Element, n, nd) |
complex(kind=dp) function | localfluxbc (LOAD, Element, n, nd) |
recursive function | floodfill (Element, CycleEdges, FaceMap, UsedFaces, Bn, CycleSum) |
subroutine | magnetodynamicscalcfields_init0 (Model, Solver, dt, Transient) |
subroutine | magnetodynamics_dummy (Model, Solver, dt, Transient) |
subroutine | magnetodynamicscalcfields_init (Model, Solver, dt, Transient) |
subroutine | magnetodynamicscalcfields (Model, Solver, dt, Transient) |
subroutine | addlocalfaceterms (STIFF, FORCE) |
subroutine | localjumps (STIFF, Face, n, P1, n1, P2, n2) |
subroutine magnetodynamicscalcfields::addlocalfaceterms | ( | real(kind=dp), dimension(:,:) | STIFF, |
real(kind=dp), dimension(:) | FORCE | ||
) |
References defutils::activeboundaryelement(), coordinatesystems::coordinatesystemdimension(), defutils::getelementnofnodes(), defutils::getmaterial(), localjumps(), and solver().
subroutine addtocycle | ( | integer | bcycle, |
integer | index | ||
) |
Referenced by breadthfirstsearch(), and whitneyavharmonicsolver().
subroutine breadthfirstsearch | ( | type(listmatrix_t), dimension(:) | Alist, |
logical, dimension(:) | done, | ||
integer | start, | ||
integer | nCount, | ||
integer, dimension(:) | NodeList | ||
) |
References addtocycle(), and solver().
Referenced by gaugetreefluxbc(), and whitneyavharmonicsolver().
subroutine jfixpotentialsolver::bulkassembly | ( | ) |
References defutils::activeboundaryelement(), crsmatrix::crs_setsymmdirichlet(), elementdescription::elementinfo(), integration::gausspoints(), defutils::getactiveelement(), defutils::getbodyforce(), defutils::getboundaryelement(), defutils::getcreal(), defutils::getelementnodes(), defutils::getelementnofdofs(), defutils::getelementnofnodes(), defutils::getnofactive(), defutils::getnofboundaryelements(), defutils::getreal(), defutils::getsolverparams(), elementdescription::normalvector(), and solver().
recursive subroutine depthfirstsearch | ( | type(listmatrix_t), dimension(:) | Alist, |
logical, dimension(:) | done, | ||
integer | i | ||
) |
References solver().
Referenced by gaugetree(), and whitneyavharmonicsolver().
subroutine dirichletafromb | ( | ) |
References defutils::activeboundaryelement(), floodfill(), gaugetreefluxbc(), defutils::getbc(), defutils::getboundaryelement(), magnetodynamicsutils::getboundaryfaceindex(), defutils::getedgemap(), defutils::getelementfamily(), defutils::getelementnodes(), defutils::getelementnofdofs(), defutils::getelementnofnodes(), defutils::getmatrix(), defutils::getnofboundaryelements(), defutils::getreal(), generalutils::i2s(), messages::info(), listmatrix::list_freematrix(), lists::listcheckpresent(), localfluxbc(), elementdescription::normalvector(), and solver().
Referenced by dosolve(), and whitneyavharmonicsolver().
LOGICAL function whitneyavsolver::dosolve | ( | ) |
References defutils::activeboundaryelement(), defutils::defaultdirichletbcs(), defutils::defaultfinishassembly(), defutils::defaultfinishboundaryassembly(), defutils::defaultfinishbulkassembly(), defutils::defaultinitialize(), defutils::defaultsolve(), dirichletafromb(), gaugetree(), defutils::getactiveelement(), defutils::getbc(), defutils::getbodyforce(), magnetodynamicsutils::getboundaryedgeindex(), defutils::getboundaryelement(), magnetodynamicsutils::getboundaryfaceindex(), defutils::getelementfamily(), defutils::getelementnofdofs(), defutils::getelementnofnodes(), defutils::getlogical(), defutils::getmaterial(), defutils::getmatrix(), defutils::getnofactive(), defutils::getnofboundaryelements(), defutils::getreal(), defutils::getsolverparams(), defutils::getstring(), generalutils::i2s(), messages::info(), lists::listaddlogical(), lists::listcheckpresent(), localmatrix(), localmatrixbc(), solverutils::setmatrixelement(), solver(), and solverutils::zerorow().
Referenced by whitneyavsolver().
recursive function whitneyavharmonicsolver::floodfill | ( | type(element_t), pointer | Element, |
logical, dimension(:) | CycleEdges, | ||
integer, dimension(:) | FaceMap, | ||
logical, dimension(:) | UsedFaces, | ||
complex(kind=dp), dimension(:) | Bn, | ||
complex(kind=dp) | CycleSum | ||
) |
recursive function whitneyavsolver::floodfill | ( | type(element_t), pointer | Element, |
logical, dimension(:) | CycleEdges, | ||
integer, dimension(:) | FaceMap, | ||
logical, dimension(:) | UsedFaces, | ||
real(kind=dp), dimension(:) | Bn, | ||
real(kind=dp) | CycleSum | ||
) |
Referenced by dirichletafromb(), floodfill(), and localfluxbc().
subroutine gaugetree | ( | ) |
References defutils::activeboundaryelement(), depthfirstsearch(), defutils::getbc(), magnetodynamicsutils::getboundaryedgeindex(), defutils::getboundaryelement(), defutils::getelementfamily(), listmatrix::list_freematrix(), listmatrix::list_getmatrixindex(), lists::listcheckpresent(), and solver().
Referenced by dosolve(), and whitneyavharmonicsolver().
subroutine gaugetreefluxbc | ( | ) |
References defutils::activeboundaryelement(), breadthfirstsearch(), defutils::getbc(), magnetodynamicsutils::getboundaryedgeindex(), defutils::getboundaryelement(), defutils::getelementfamily(), listmatrix::list_freematrix(), listmatrix::list_getmatrixindex(), lists::listcheckpresent(), and solver().
Referenced by dirichletafromb(), and localfluxbc().
complex(kind=dp) function whitneyavharmonicsolver::localfluxbc | ( | complex(kind=dp), dimension(:,:) | LOAD, |
type(element_t), pointer | Element, | ||
integer | n, | ||
integer | nd | ||
) |
References defutils::activeboundaryelement(), elementdescription::elementinfo(), floodfill(), gaugetreefluxbc(), integration::gausspoints(), defutils::getbc(), defutils::getboundaryelement(), magnetodynamicsutils::getboundaryfaceindex(), defutils::getedgemap(), defutils::getelementfamily(), defutils::getelementnodes(), defutils::getelementnofdofs(), defutils::getelementnofnodes(), defutils::getmatrix(), defutils::getnofboundaryelements(), defutils::getreal(), generalutils::i2s(), messages::info(), listmatrix::list_freematrix(), lists::listcheckpresent(), localfluxbc(), normal(), elementdescription::normalvector(), and solver().
real(kind=dp) function whitneyavsolver::localfluxbc | ( | real(kind=dp), dimension(:,:) | LOAD, |
type(element_t), pointer | Element, | ||
integer | n, | ||
integer | nd | ||
) |
References elementdescription::elementinfo(), integration::gausspoints(), defutils::getelementnodes(), normal(), and elementdescription::normalvector().
Referenced by dirichletafromb(), and localfluxbc().
subroutine magnetodynamicscalcfields::localjumps | ( | real(kind=dp), dimension(:,:) | STIFF, |
type(element_t), pointer | Face, | ||
integer | n, | ||
type(element_t), pointer | P1, | ||
integer | n1, | ||
type(element_t), pointer | P2, | ||
integer | n2 | ||
) |
References elementdescription::elementinfo(), integration::gausspoints(), defutils::getelementnodes(), and defutils::getparentuvw().
subroutine whitneyavsolver::localmatrix | ( | real(kind=dp), dimension(:,:) | MASS, |
real(kind=dp), dimension(:,:) | STIFF, | ||
real(kind=dp), dimension(:) | FORCE, | ||
real(kind=dp), dimension(:,:) | LOAD, | ||
real(kind=dp), dimension(:) | Tcoef, | ||
real(kind=dp), dimension(:) | Acoef, | ||
type(element_t), pointer | Element, | ||
integer | n, | ||
integer | nd | ||
) |
References generalutils::cubicspline(), generalutils::derivatecurve(), elementdescription::elementinfo(), integration::gausspoints(), defutils::getconstrealarray(), defutils::getedgebasis(), defutils::getelementnodes(), defutils::getlogical(), defutils::getlocalsolution::getscalarlocalsolution(), defutils::getsolverparams(), generalutils::interpolatecurve(), and solver().
subroutine whitneyavharmonicsolver::localmatrix | ( | complex(kind=dp), dimension(:,:) | MASS, |
complex(kind=dp), dimension(:,:) | STIFF, | ||
complex(kind=dp), dimension(:) | FORCE, | ||
complex(kind=dp), dimension(:,:) | LOAD, | ||
complex(kind=dp), dimension(:) | Tcoef, | ||
complex(kind=dp), dimension(:) | Acoef, | ||
type(element_t), pointer | Element, | ||
integer | n, | ||
integer | nd | ||
) |
References elementdescription::elementinfo(), integration::gausspoints(), defutils::getedgebasis(), defutils::getelementnodes(), defutils::getlocalsolution::getvectorlocalsolution(), and solver().
subroutine whitneyavharmonicsolver::localmatrixbc | ( | complex(kind=dp), dimension(:,:) | STIFF, |
complex(kind=dp), dimension(:) | FORCE, | ||
complex(kind=dp), dimension(:,:) | LOAD, | ||
complex(kind=dp), dimension(:) | Bcoef, | ||
type(element_t), pointer | Element, | ||
integer | n, | ||
integer | nd | ||
) |
References elementdescription::elementinfo(), integration::gausspoints(), defutils::getedgebasis(), defutils::getelementnodes(), and solver().
subroutine whitneyavsolver::localmatrixbc | ( | real(kind=dp), dimension(:,:) | STIFF, |
real(kind=dp), dimension(:) | FORCE, | ||
real(kind=dp), dimension(:,:) | LOAD, | ||
real(kind=dp), dimension(:) | Bcoef, | ||
type(element_t), pointer | Element, | ||
integer | n, | ||
integer | nd | ||
) |
References elementdescription::elementinfo(), integration::gausspoints(), defutils::getedgebasis(), defutils::getelementnodes(), and solver().
Referenced by dosolve(), magnetodynamics2d(), magnetodynamics2dharmonic(), streamsolver(), and whitneyavharmonicsolver().
subroutine magnetodynamics_dummy | ( | type(model_t) | Model, |
type(solver_t) | Solver, | ||
real(kind=dp) | dt, | ||
logical | Transient | ||
) |