![]() |
v0.13.2 |
Implementation of magneto-static problem (basic Implementation) More...
#include <users_modules/tutorials/max-0/src/MagneticElement.hpp>
Classes | |
struct | BlockData |
data structure storing material constants, model parameters, matrices, etc. More... | |
struct | OpCurlCurl |
calculate and assemble CurlCurl matrix More... | |
struct | OpNaturalBC |
calculate essential boundary conditions More... | |
struct | OpPostProcessCurl |
calculate and assemble CurlCurl matrix More... | |
struct | OpStab |
calculate and assemble stabilization matrix More... | |
struct | TriFE |
define surface element More... | |
struct | VolumeFE |
definition of volume element More... | |
Public Member Functions | |
MagneticElement (MoFEM::Interface &m_field) | |
virtual | ~MagneticElement ()=default |
MoFEMErrorCode | getNaturalBc () |
get natural boundary conditions More... | |
MoFEMErrorCode | getEssentialBc () |
get essential boundary conditions (only homogenous case is considered) More... | |
MoFEMErrorCode | createFields () |
build problem data structures More... | |
MoFEMErrorCode | createElements () |
create finite elements More... | |
MoFEMErrorCode | createProblem () |
create problem More... | |
MoFEMErrorCode | destroyProblem () |
destroy Distributed mesh manager More... | |
MoFEMErrorCode | solveProblem (const bool regression_test=false) |
solve problem More... | |
MoFEMErrorCode | postProcessResults () |
post-process results, i.e. save solution on the mesh More... | |
Public Attributes | |
MoFEM::Interface & | mField |
BlockData | blockData |
Implementation of magneto-static problem (basic Implementation)
Look for theory and details here:
[30] <www.hpfem.jku.at/publications/szthesis.pdf> https://pdfs.semanticscholar.org/0574/e5763d9b64bff16f908e9621f23af3b3dc86.pdf
Election file and all other problem related file are here maxwell_element.
Extension for mix formulation
Use appropriate pre-conditioner for large problems
Definition at line 28 of file MagneticElement.hpp.
|
inline |
Definition at line 56 of file MagneticElement.hpp.
|
virtualdefault |
|
inline |
create finite elements
Create volume and surface element. Surface element is used to integrate natural boundary conditions.
Definition at line 234 of file MagneticElement.hpp.
|
inline |
build problem data structures
Definition at line 158 of file MagneticElement.hpp.
|
inline |
create problem
Problem is collection of finite elements. With the information on which fields finite elements operates the matrix and left and right hand side vector could be created.
Here we use Distributed mesh manager from PETSc as a inteface.
Definition at line 278 of file MagneticElement.hpp.
|
inline |
destroy Distributed mesh manager
Definition at line 307 of file MagneticElement.hpp.
|
inline |
get essential boundary conditions (only homogenous case is considered)
Definition at line 121 of file MagneticElement.hpp.
|
inline |
get natural boundary conditions
Definition at line 101 of file MagneticElement.hpp.
|
inline |
post-process results, i.e. save solution on the mesh
Definition at line 406 of file MagneticElement.hpp.
|
inline |
solve problem
Create matrices; integrate over elements; solve linear system of equations
Definition at line 319 of file MagneticElement.hpp.
BlockData MagneticElement::blockData |
Definition at line 94 of file MagneticElement.hpp.
MoFEM::Interface& MagneticElement::mField |
Definition at line 30 of file MagneticElement.hpp.