Home | Doxygen Documentation | Tutorials | Developer Tools (restricted)

Public Types | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Private Member Functions | Friends
hp2D::Maxwell2D_H_Base Class Reference

Base class for calculating Eddy current problem with Maxwell modell in h formulation. More...

#include <Maxwell2D_H.hh>

Inheritance diagram for hp2D::Maxwell2D_H_Base:
Inheritance graph
[legend]
Collaboration diagram for hp2D::Maxwell2D_H_Base:
Collaboration graph
[legend]

List of all members.

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.
boundaryTypebType ()
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::Meshmesh_ ()
 Mesh.
virtual const std::string mshAbbr_ ()
 Mesh abbreviation string.
virtual hpFullprebuild_ ()=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::EddyGeometry2Dgeom_
 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

\[(i \omega \varepsilon_0 + \sigma)^-1\]

.

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 >

Detailed Description

Base class for calculating Eddy current problem with Maxwell modell in h formulation.

Author:
Kersten Schmidt, 2005

Definition at line 36 of file Maxwell2D_H.hh.


Member Typedef Documentation

template<class F>
typedef F concepts::Model< F >::type [inherited]

Definition at line 58 of file models.hh.


Member Enumeration Documentation

Boundary type.

Either perfect magnetic conductor (PMC) or perfect electric conductor (PEC). Wether it's dirichlet or neumann boundary is dependent from the formulation.

Enumerator:
PMC 
PEC 
MAX_TYPE 

Definition at line 25 of file maxwell.hh.

Type of the solver.

Enumerator:
SUPERLU 
SUPERLU2 
BICGSTAB 
BICGSTAB2 
BICGSTABSUPERLU 

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.


Constructor & Destructor Documentation

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.

Parameters:
geomgeometry, conductivity and source currents
bTypetype of boundary condition
typesolver type
diagPrecondflag for preconditioning with diagonal matrix
aterIterflag for after iterations
epsdielectricity constant
omegaangular frequency in 1/s
mupermeability constant in Ohm*s/m
geomRefAttribattrib 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.


Member Function Documentation

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]
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]
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.

Here is the call graph for this function:

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.

Here is the call graph for this function:

virtual hpFull& hp2D::AdaptiveModel< Cmplx >::prebuild_ ( ) [protected, pure virtual, inherited]
template<class F, uint dim>
void concepts::AdaptiveModel< F, dim >::rebuildMesh ( concepts::InputAdaptiveModels input) [inherited]
template<class F, uint dim>
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.

Parameters:
lnumber of uniform refinements
pnumber of polynomial enlargements
gnumber of geometric refinements
subdivpossibility 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 >.

template<class F>
const Vector<F>* concepts::Model< F >::solution ( ) [inline, inherited]

Returns solution vector.

Definition at line 66 of file models.hh.

template<class F>
virtual void concepts::Model< F >::solve_ ( ) [protected, pure virtual, inherited]
template<class F>
virtual Space<Real>& concepts::Model< F >::space ( ) const [pure virtual, inherited]

Friends And Related Function Documentation

friend class concepts::ModelControl< Maxwell2D_H_Base > [friend]

Definition at line 39 of file Maxwell2D_H.hh.


Member Data Documentation

Nachiteration.

Reimplemented in hp2D::Maxwell2D_H.

Definition at line 88 of file Maxwell2D_H.hh.

Boundary conditions.

Definition at line 82 of file Maxwell2D_H.hh.

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.

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.

Piecewise constant formula

\[(i \omega \varepsilon_0 + \sigma)^-1\]

.

Reimplemented in hp2D::Maxwell2D_H.

Definition at line 95 of file Maxwell2D_H.hh.

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]

Magnetic energy.

Reimplemented in hp2D::Maxwell2D_H.

Definition at line 105 of file Maxwell2D_H.hh.

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.

Angular frequency.

Reimplemented in hp2D::Maxwell2D_H.

Definition at line 99 of file Maxwell2D_H.hh.

template<class F>
const std::string concepts::Model< F >::problemName_ [protected, inherited]

Name of the problem.

Definition at line 81 of file models.hh.

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.

template<class F>
std::auto_ptr<Vector<F> > concepts::Model< F >::sol_ [protected, inherited]

Solution vector.

Definition at line 77 of file models.hh.

Time to solve the system, to build the matrices, to rebuild the space.

Definition at line 107 of file Maxwell2D_H.hh.

Definition at line 107 of file Maxwell2D_H.hh.

Reimplemented in hp2D::Maxwell2D_H.

Definition at line 88 of file Maxwell2D_H.hh.

Solver type.

Reimplemented in hp2D::Maxwell2D_H.

Definition at line 84 of file Maxwell2D_H.hh.


The documentation for this class was generated from the following file:

Home | Doxygen Documentation | Tutorials | Developer Tools (restricted)