Base class for calculating Eddy current problem with Maxwell modell in h formulation. More...
#include <Maxwell2D_H.hh>


Public Types | |
| enum | boundaryType { PMC = 0, PEC = 1, MAX_TYPE } |
| Boundary type. More... | |
| enum | solverType { SUPERLU = 0, SUPERLU2 = 1, BICGSTAB = 2, BICGSTAB2 = 3, BICGSTABSUPERLU = 4 } |
| Type of the solver. More... | |
| typedef F | type |
Public Member Functions | |
| const boundaryType | bType () const |
| Returns boundary type. | |
| boundaryType & | bType () |
| const std::string | bTypeStr () const |
| Returns name of boundary type as string. | |
| virtual Real | dissipation ()=0 |
| Return dissipation power loss. | |
| virtual Real | magnEnergy ()=0 |
| Return magnetic energy. | |
| Maxwell2D_H_Base (concepts::EddyGeometry2D &geom, InputMaxwell2D_H &input, const uint geomRefAttrib=100) | |
| Maxwell2D_H_Base (concepts::EddyGeometry2D &geom, enum boundaryType bType=PMC, enum solverType type=SUPERLU, bool diagPrecond=true, bool afterIter=false, const Real eps=EPS0, const Real omega=OMEGA50, const Real mu=MU0, const uint geomRefAttrib=100) | |
| Constructor. | |
| void | rebuildMesh (const uint l=0, const uint p=1, const uint g=0, const uint subdiv=X|Y) |
| Rebuilds only the mesh and sets the polynomial degrees. | |
| void | rebuildMesh (concepts::InputAdaptiveModels &input) |
| const Vector< F > * | solution () |
| Returns solution vector. | |
| virtual Space< Real > & | space () const =0 |
| Returns the space. | |
| virtual | ~Maxwell2D_H_Base () |
Protected Types | |
| enum | subdivTypes |
Protected Member Functions | |
| concepts::SparseMatrix< Real > * | identityMatrix_ (concepts::Space< Real > &spc, concepts::SparseMatrix< Cmplx > *S) |
Calculate identity matrix and add's it to system matrix S. | |
| virtual std::ostream & | info (std::ostream &os) const |
| Returns information in an output stream. | |
| concepts::SparseMatrix< Cmplx > * | laplaceMatrix_ (concepts::Space< Real > &spc, concepts::SparseMatrix< Cmplx > *S) |
Calculate stiffness matrix and add's it to system matrix S. | |
| void | linearform_ () |
| Calculate the load vector, assumes sigma = 0 inside the coil. | |
| virtual concepts::Mesh & | mesh_ () |
| Mesh. | |
| virtual const std::string | mshAbbr_ () |
| Mesh abbreviation string. | |
| virtual hpFull & | prebuild_ ()=0 |
| Space Prebuilder. | |
| virtual void | rebuildMesh_ (const uint l=0, const uint p=1, const uint g=0, const uint subdiv=X|Y) |
| Rebuilds only the mesh and sets the polynomial degrees. | |
| virtual void | solve_ ()=0 |
| Method for solving. | |
Protected Attributes | |
| bool | afterIter_ |
| Nachiteration. | |
| std::auto_ptr < concepts::BoundaryConditions > | bc_ |
| Boundary conditions. | |
| bool | diagPrecond_ |
| Using diagonal preconditioning. | |
| std::auto_ptr< Real > | dissipation_ |
| Dissipation power loss. | |
| Real | eps_ |
| Dielectricity constant. | |
| concepts::EddyGeometry2D & | geom_ |
| Mesh and material constants (sigma, j0) | |
| const uint | geomRefAttr_ |
| Attribute of vertices or edges for geometric refinement. | |
| concepts::PiecewiseFormulaFun < Cmplx, Real > | iOmegaEps_plus_Sigma_Inv_ |
| Piecewise constant formula
| |
| uint | iterations_ |
| Number of iterations for iterative solver. | |
| std::auto_ptr< Real > | magnEnergy_ |
| Magnetic energy. | |
| double | matrixtime_ |
| const Real | mu_ |
| Permeability constant. | |
| Real | omega_ |
| Angular frequency. | |
| const std::string | problemName_ |
| Name of the problem. | |
| std::auto_ptr < concepts::Vector< Cmplx > > | residual_ |
| std::auto_ptr< Real > | residualNorm_ |
| Euclidian norm of the residual of solving the linear system. | |
| std::auto_ptr < concepts::Vector< Cmplx > > | rhs_ |
| std::auto_ptr< Vector< F > > | sol_ |
| Solution vector. | |
| double | solvetime_ |
| Time to solve the system, to build the matrices, to rebuild the space. | |
| double | spacetime_ |
| bool | statusAfterIter_ |
| enum solverType | type_ |
| Solver type. | |
Private Member Functions | |
| void | constructor_ () |
| Private constructor. | |
Friends | |
| class | concepts::ModelControl< Maxwell2D_H_Base > |
Base class for calculating Eddy current problem with Maxwell modell in h formulation.
Definition at line 36 of file Maxwell2D_H.hh.
typedef F concepts::Model< F >::type [inherited] |
enum concepts::MaxwellBoundary::boundaryType [inherited] |
Boundary type.
Either perfect magnetic conductor (PMC) or perfect electric conductor (PEC). Wether it's dirichlet or neumann boundary is dependent from the formulation.
Definition at line 25 of file maxwell.hh.
Type of the solver.
Reimplemented in hp2D::Maxwell2D_H.
Definition at line 42 of file Maxwell2D_H.hh.
enum hp2D::AdaptiveModel::subdivTypes [protected, inherited] |
Reimplemented from concepts::AdaptiveModel< F, dim >.
Definition at line 82 of file adaptiveModels.hh.
| hp2D::Maxwell2D_H_Base::Maxwell2D_H_Base | ( | concepts::EddyGeometry2D & | geom, |
| enum boundaryType | bType = PMC, |
||
| enum solverType | type = SUPERLU, |
||
| bool | diagPrecond = true, |
||
| bool | afterIter = false, |
||
| const Real | eps = EPS0, |
||
| const Real | omega = OMEGA50, |
||
| const Real | mu = MU0, |
||
| const uint | geomRefAttrib = 100 |
||
| ) |
Constructor.
| geom | geometry, conductivity and source currents |
| bType | type of boundary condition |
| type | solver type |
| diagPrecond | flag for preconditioning with diagonal matrix |
| aterIter | flag for after iterations |
| eps | dielectricity constant |
| omega | angular frequency in 1/s |
| mu | permeability constant in Ohm*s/m |
| geomRefAttrib | attrib for geometric refinement |
| hp2D::Maxwell2D_H_Base::Maxwell2D_H_Base | ( | concepts::EddyGeometry2D & | geom, |
| InputMaxwell2D_H & | input, | ||
| const uint | geomRefAttrib = 100 |
||
| ) |
| virtual hp2D::Maxwell2D_H_Base::~Maxwell2D_H_Base | ( | ) | [inline, virtual] |
Definition at line 63 of file Maxwell2D_H.hh.
| const boundaryType concepts::MaxwellBoundary::bType | ( | ) | const [inline, inherited] |
Returns boundary type.
Definition at line 31 of file maxwell.hh.
| boundaryType& concepts::MaxwellBoundary::bType | ( | ) | [inline, inherited] |
Definition at line 32 of file maxwell.hh.
| const std::string concepts::MaxwellBoundary::bTypeStr | ( | ) | const [inline, inherited] |
Returns name of boundary type as string.
Definition at line 34 of file maxwell.hh.
| void hp2D::Maxwell2D_H_Base::constructor_ | ( | ) | [private] |
Private constructor.
Reimplemented in hp2D::Maxwell2D_H.
| virtual Real concepts::MaxwellModel::dissipation | ( | ) | [pure virtual, inherited] |
Return dissipation power loss.
Implemented in hp2D::Eddy2D_H, hp2D::Maxwell2D_H, hp2D::Eddy2D_E, hp2D::Eddy2D_H, hp2D::Maxwell2D_E, hp2D::Maxwell2D_H, and hp2D::Maxwell2D_H_DD.
| concepts::SparseMatrix<Real>* hp2D::Maxwell2D_H_Base::identityMatrix_ | ( | concepts::Space< Real > & | spc, |
| concepts::SparseMatrix< Cmplx > * | S | ||
| ) | [protected] |
Calculate identity matrix and add's it to system matrix S.
| virtual std::ostream& hp2D::Maxwell2D_H_Base::info | ( | std::ostream & | os | ) | const [protected, virtual] |
Returns information in an output stream.
Reimplemented from concepts::Model< F >.
Reimplemented in hp2D::Maxwell2D_H, hp2D::Maxwell2D_H, and hp2D::Maxwell2D_H_DD.
| concepts::SparseMatrix<Cmplx>* hp2D::Maxwell2D_H_Base::laplaceMatrix_ | ( | concepts::Space< Real > & | spc, |
| concepts::SparseMatrix< Cmplx > * | S | ||
| ) | [protected] |
Calculate stiffness matrix and add's it to system matrix S.
| void hp2D::Maxwell2D_H_Base::linearform_ | ( | ) | [protected] |
Calculate the load vector, assumes sigma = 0 inside the coil.
Reimplemented in hp2D::Maxwell2D_H.
| virtual Real concepts::MaxwellModel::magnEnergy | ( | ) | [pure virtual, inherited] |
Return magnetic energy.
Implemented in hp2D::Maxwell2D_H, hp2D::Eddy2D_E, hp2D::Eddy2D_H, hp2D::Maxwell2D_E, hp2D::Maxwell2D_H, and hp2D::Maxwell2D_H_DD.
| virtual concepts::Mesh& hp2D::AdaptiveModel< Cmplx >::mesh_ | ( | ) | [inline, protected, virtual, inherited] |
Mesh.
Implements concepts::Model< F >.
Reimplemented in hp2D::Eddy2D_H, and hp2D::Maxwell2D_H.
Definition at line 86 of file adaptiveModels.hh.

| virtual const std::string hp2D::Maxwell2D_H_Base::mshAbbr_ | ( | ) | [inline, protected, virtual] |
Mesh abbreviation string.
Implements concepts::Model< F >.
Reimplemented in hp2D::Maxwell2D_H.
Definition at line 67 of file Maxwell2D_H.hh.

| virtual hpFull& hp2D::AdaptiveModel< Cmplx >::prebuild_ | ( | ) | [protected, pure virtual, inherited] |
Space Prebuilder.
Implemented in hp2D::Eddy2D_E, hp2D::Eddy2D_H, hp2D::Maxwell2D_E, hp2D::Maxwell2D_H, and hp2D::Maxwell2D_H_DD.
| void concepts::AdaptiveModel< F, dim >::rebuildMesh | ( | concepts::InputAdaptiveModels & | input | ) | [inherited] |
| void concepts::AdaptiveModel< F, dim >::rebuildMesh | ( | const uint | l = 0, |
| const uint | p = 1, |
||
| const uint | g = 0, |
||
| const uint | subdiv = X|Y |
||
| ) | [inherited] |
Rebuilds only the mesh and sets the polynomial degrees.
| l | number of uniform refinements |
| p | number of polynomial enlargements |
| g | number of geometric refinements |
| subdiv | possibility to restrict subdivision strategy for geometric refinement |
| virtual void hp2D::AdaptiveModel< Cmplx >::rebuildMesh_ | ( | const uint | l = 0, |
| const uint | p = 1, |
||
| const uint | g = 0, |
||
| const uint | subdiv = X | Y |
||
| ) | [protected, virtual, inherited] |
Rebuilds only the mesh and sets the polynomial degrees.
Implements concepts::AdaptiveModel< F, dim >.
| const Vector<F>* concepts::Model< F >::solution | ( | ) | [inline, inherited] |
| virtual void concepts::Model< F >::solve_ | ( | ) | [protected, pure virtual, inherited] |
Method for solving.
Implemented in hp2D::Eddy2D_H, hp2D::Maxwell2D_H, concepts::DiffReactAsympCollModel_Alpha0_Order0and1< F, order, G >, concepts::DiffReactAsympCollModel_Alpha1_Order0and1< F, order, G >, concepts::DiffReactAsympCollModel_Alpha1_Order2plus< F, order, G >, concepts::DiffReactAsympCollModel_Alpha2_Order0< F, G >, concepts::DiffReactAsympCollModel_Alpha2_Order1plus< F, order, G >, concepts::DiffReactAsympModelKraehenbuehl< F, G >, hp2D::Eddy2D_E, hp2D::Eddy2D_H, hp2D::Maxwell2D_E, hp2D::Maxwell2D_H, hp2D::Maxwell2D_H_DD, concepts::DiffReactAsympCollModel_Alpha0_Order0and1< F, 0, G >, concepts::DiffReactAsympCollModel_Alpha0_Order0and1< F, 1, G >, concepts::DiffReactAsympCollModel_Alpha1_Order0and1< F, 0, G >, concepts::DiffReactAsympCollModel_Alpha1_Order0and1< F, 1, G >, concepts::DiffReactAsympCollModel_Alpha1_Order2plus< F, 2, G >, concepts::DiffReactAsympCollModel_Alpha1_Order2plus< F, 3, G >, and concepts::DiffReactAsympCollModel_Alpha2_Order1plus< F, 1, G >.
| virtual Space<Real>& concepts::Model< F >::space | ( | ) | const [pure virtual, inherited] |
Returns the space.
Implemented in concepts::DiffReactAsympCollModel_Alpha0_Order0and1< F, order, G >, concepts::DiffReactAsympCollModel_Alpha1_Order0and1< F, order, G >, concepts::DiffReactAsympCollModel_Alpha1_Order2plus< F, order, G >, concepts::DiffReactAsympCollModel_Alpha2_Order0< F, G >, concepts::DiffReactAsympCollModel_Alpha2_Order1plus< F, order, G >, concepts::DiffReactAsympModelKraehenbuehl< F, G >, hp2D::Eddy2D_E, hp2D::Eddy2D_H, hp2D::Maxwell2D_E, hp2D::Maxwell2D_H, hp2D::Maxwell2D_H_DD, concepts::DiffReactAsympCollModel_Alpha0_Order0and1< F, 0, G >, concepts::DiffReactAsympCollModel_Alpha0_Order0and1< F, 1, G >, concepts::DiffReactAsympCollModel_Alpha1_Order0and1< F, 0, G >, concepts::DiffReactAsympCollModel_Alpha1_Order0and1< F, 1, G >, concepts::DiffReactAsympCollModel_Alpha1_Order2plus< F, 2, G >, concepts::DiffReactAsympCollModel_Alpha1_Order2plus< F, 3, G >, and concepts::DiffReactAsympCollModel_Alpha2_Order1plus< F, 1, G >.
friend class concepts::ModelControl< Maxwell2D_H_Base > [friend] |
Definition at line 39 of file Maxwell2D_H.hh.
bool hp2D::Maxwell2D_H_Base::afterIter_ [protected] |
std::auto_ptr<concepts::BoundaryConditions> hp2D::Maxwell2D_H_Base::bc_ [protected] |
Boundary conditions.
Definition at line 82 of file Maxwell2D_H.hh.
bool hp2D::Maxwell2D_H_Base::diagPrecond_ [protected] |
Using diagonal preconditioning.
Reimplemented in hp2D::Maxwell2D_H.
Definition at line 86 of file Maxwell2D_H.hh.
std::auto_ptr<Real> hp2D::Maxwell2D_H_Base::dissipation_ [protected] |
Dissipation power loss.
Reimplemented in hp2D::Maxwell2D_H.
Definition at line 103 of file Maxwell2D_H.hh.
Real hp2D::Maxwell2D_H_Base::eps_ [protected] |
Dielectricity constant.
Reimplemented in hp2D::Maxwell2D_H.
Definition at line 97 of file Maxwell2D_H.hh.
concepts::EddyGeometry2D& hp2D::Maxwell2D_H_Base::geom_ [protected] |
Mesh and material constants (sigma, j0)
Reimplemented in hp2D::Maxwell2D_H.
Definition at line 80 of file Maxwell2D_H.hh.
const uint hp2D::AdaptiveModel< Cmplx >::geomRefAttr_ [protected, inherited] |
Attribute of vertices or edges for geometric refinement.
Definition at line 90 of file adaptiveModels.hh.
concepts::PiecewiseFormulaFun<Cmplx, Real> hp2D::Maxwell2D_H_Base::iOmegaEps_plus_Sigma_Inv_ [protected] |
Piecewise constant formula
.
Reimplemented in hp2D::Maxwell2D_H.
Definition at line 95 of file Maxwell2D_H.hh.
uint hp2D::Maxwell2D_H_Base::iterations_ [protected] |
Number of iterations for iterative solver.
Definition at line 109 of file Maxwell2D_H.hh.
std::auto_ptr<Real> hp2D::Maxwell2D_H_Base::magnEnergy_ [protected] |
double hp2D::Maxwell2D_H_Base::matrixtime_ [protected] |
Definition at line 107 of file Maxwell2D_H.hh.
const Real hp2D::Maxwell2D_H_Base::mu_ [protected] |
Permeability constant.
Reimplemented in hp2D::Maxwell2D_H.
Definition at line 101 of file Maxwell2D_H.hh.
Real hp2D::Maxwell2D_H_Base::omega_ [protected] |
Angular frequency.
Reimplemented in hp2D::Maxwell2D_H.
Definition at line 99 of file Maxwell2D_H.hh.
const std::string concepts::Model< F >::problemName_ [protected, inherited] |
std::auto_ptr<concepts::Vector<Cmplx> > hp2D::Maxwell2D_H_Base::residual_ [protected] |
Reimplemented in hp2D::Maxwell2D_H.
Definition at line 89 of file Maxwell2D_H.hh.
std::auto_ptr<Real> hp2D::Maxwell2D_H_Base::residualNorm_ [protected] |
Euclidian norm of the residual of solving the linear system.
Reimplemented in hp2D::Maxwell2D_H.
Definition at line 91 of file Maxwell2D_H.hh.
std::auto_ptr<concepts::Vector<Cmplx> > hp2D::Maxwell2D_H_Base::rhs_ [protected] |
Reimplemented in hp2D::Maxwell2D_H.
Definition at line 93 of file Maxwell2D_H.hh.
std::auto_ptr<Vector<F> > concepts::Model< F >::sol_ [protected, inherited] |
double hp2D::Maxwell2D_H_Base::solvetime_ [protected] |
Time to solve the system, to build the matrices, to rebuild the space.
Definition at line 107 of file Maxwell2D_H.hh.
double hp2D::Maxwell2D_H_Base::spacetime_ [protected] |
Definition at line 107 of file Maxwell2D_H.hh.
bool hp2D::Maxwell2D_H_Base::statusAfterIter_ [protected] |
Reimplemented in hp2D::Maxwell2D_H.
Definition at line 88 of file Maxwell2D_H.hh.
enum solverType hp2D::Maxwell2D_H_Base::type_ [protected] |