You are here:
Concepts
>
Concepts Web
>
Class documentation
Class documentation of Concepts
Loading...
Searching...
No Matches
waveprop
pmlTransformation.hh
Go to the documentation of this file.
1
9
#ifndef PMLTransformation_hh
10
#define PMLTransformation_hh
11
12
#include "basics.hh"
13
#include "toolbox.hh"
14
#include "formula.hh"
15
#include "geometry.hh"
16
#include "space.hh"
17
namespace
concepts
{
18
19
// ************************************************* FrmE_PMLTransformation **
20
21
template
<u
int
dim>
22
class
FrmE_PMLTransformation
:
23
public
ElementFormula
< typename GeneralMapping<Cmplx,dim>::Type >
24
{
25
public
:
26
FrmE_PMLTransformation
(
const
Formula<Real>
& sigma,
27
const
Formula<Real>
&
sigmaDeriv
);
28
29
virtual
~FrmE_PMLTransformation
();
30
31
void
addSector(
const
Real2d
vtx0
,
const
Real2d
vtx1
,
32
const
Real2d
vtx2
,
const
Real2d
vtx3
);
33
void
addSector(
const
Sequence<Real2d>
vtx);
34
35
typename
GeneralMapping<Cmplx,dim>::Type
operator
()
36
(
const
ElementWithCell<Real>
& elm,
const
Real
p,
37
const
Real
t = 0.0)
const
;
38
typename
GeneralMapping<Cmplx,dim>::Type
operator
()
39
(
const
ElementWithCell<Real>
& elm,
const
Real2d
& p,
40
const
Real
t = 0.0)
const
;
41
typename
GeneralMapping<Cmplx,dim>::Type
operator
()
42
(
const
ElementWithCell<Real>
& elm,
const
Real3d
& p,
43
const
Real
t = 0.0)
const
;
45
virtual
FrmE_PMLTransformation<dim>
*
clone
()
const
;
46
47
private
:
49
Sequence<InverseVertexQuadSector2d>
mapFromSectorToRefSector_;
51
std::unique_ptr<const Formula<Real> > sigma_,sigmaDeriv_;
53
mutable
const
ElementWithCell<Real>
* lastElm_;
55
mutable
uint
lastSector_;
57
Real2d
localCoord_(
const
ElementWithCell<Real>
& elm,
58
const
Real2d
& p)
const
;
60
FrmE_PMLTransformation
61
(
const
Formula<Real>
* sigma,
const
Formula<Real>
*
sigmaDeriv
,
62
Sequence<InverseVertexQuadSector2d>
mapFromSectorToRefSector
);
63
64
static
const
uint
OUTSIDEPMLSECTOR_ = -1;
65
};
66
}
// namespace concepts
67
68
#endif
//PMLTransformation_hh
concepts::ElementFormula
Definition
elementFormula.hh:35
concepts::ElementWithCell
Definition
element.hh:79
concepts::Formula
Definition
formula.hh:34
concepts::FrmE_PMLTransformation
Definition
pmlTransformation.hh:24
concepts::FrmE_PMLTransformation::clone
virtual FrmE_PMLTransformation< dim > * clone() const
Virtual copy constructor.
concepts::Mapping< F, dim >
concepts::Point< Real, 2 >
concepts::Sequence
Definition
sequence.hh:39
concepts
Definition
pml_formula.h:16
concepts::Real
double Real
Definition
typedefs.hh:39
concepts::makeSet
Set< F > makeSet(uint n, const F &first,...)
Definition
set.hh:320
Generated on Wed Sep 13 2023 21:06:25 for Concepts by
1.9.8