67 template <
typename TElem,
int TWorldDim>
99 ? ref_elem_type::numCorners : 8;
106 ? ref_elem_type::numEdges : 12;
115 static const size_t nip = 1;
141 inline size_t to()
const {
return To;}
512 typename std::map<int, std::vector<BF> >::const_iterator it;
515 num += (*it).second.size();
522 typename std::map<int, std::vector<BF> >::const_iterator it;
525 else return (*it).second.size();
529 inline const BF&
bf(
int si,
size_t i)
const
532 typename std::map<int, std::vector<BF> >::const_iterator it;
535 return (*it).second[i];
539 inline const std::vector<BF>&
bf(
int si)
const
541 typename std::map<int, std::vector<BF> >::const_iterator it;
596 template <
int TDim,
int TWorldDim = TDim>
605 static const int dim = TDim;
630 static const size_t maxNSH = traits::maxNSH;
633 static const size_t nip = 1;
650 static const size_t numCo = traits::NumCornersOfSCVF;
659 inline size_t to()
const {
return To;}
750 static const size_t numCo = traits::NumCornersOfSCV;
839 static const size_t numCo = traits::NumCornersOfSCVF;
1024 typename std::map<int, std::vector<BF> >::const_iterator it;
1027 num += (*it).second.size();
1034 typename std::map<int, std::vector<BF> >::const_iterator it;
1037 else return (*it).second.size();
1041 inline const BF&
bf(
int si,
size_t i)
const
1043 typename std::map<int, std::vector<BF> >::const_iterator it;
1046 return (*it).second[i];
1050 inline const std::vector<BF>&
bf(
int si)
const
1052 typename std::map<int, std::vector<BF> >::const_iterator it;
1055 return (*it).second;
boundary face
Definition: fv1ib_geom.h:836
MathVector< dim > vLocPos[numCo]
Definition: fv1ib_geom.h:914
const MathVector< worldDim > * global_grad_vector() const
vector of global gradients in ip point
Definition: fv1ib_geom.h:890
size_t nodeId
Definition: fv1ib_geom.h:908
const MathVector< worldDim > & global_ip() const
global integration point of bf
Definition: fv1ib_geom.h:854
const MathVector< worldDim > & global_corner(size_t co) const
return global corner number i
Definition: fv1ib_geom.h:900
size_t node_id() const
index of SubControlVolume of the bf
Definition: fv1ib_geom.h:845
number Vol
Definition: fv1ib_geom.h:922
number detj
Definition: fv1ib_geom.h:930
size_t num_ip() const
number of integration points on bf
Definition: fv1ib_geom.h:848
MathVector< worldDim > vGlobalGrad[maxNSH]
Definition: fv1ib_geom.h:928
const MathVector< worldDim > & global_grad(size_t sh) const
value of global gradient of shape function i in integration point
Definition: fv1ib_geom.h:886
const MathVector< dim > & local_ip() const
local integration point of bf
Definition: fv1ib_geom.h:851
MathVector< dim > vLocalGrad[maxNSH]
Definition: fv1ib_geom.h:927
size_t numSH
Definition: fv1ib_geom.h:925
const MathVector< dim > & local_corner(size_t co) const
return local corner number i
Definition: fv1ib_geom.h:896
BF()
Definition: fv1ib_geom.h:842
number shape(size_t sh) const
value of shape function i in integration point
Definition: fv1ib_geom.h:872
size_t num_sh() const
number of shape functions
Definition: fv1ib_geom.h:869
const MathVector< worldDim > & normal() const
outer normal on bf. Norm is equal to area
Definition: fv1ib_geom.h:857
MathVector< worldDim > globalIP
Definition: fv1ib_geom.h:920
MathVector< worldDim > Normal
Definition: fv1ib_geom.h:921
size_t num_corners() const
number of corners, that bound the scvf
Definition: fv1ib_geom.h:893
static const size_t numCo
Number of corners of bf.
Definition: fv1ib_geom.h:839
number vShape[maxNSH]
Definition: fv1ib_geom.h:926
number volume() const
volume of bf
Definition: fv1ib_geom.h:860
const MathMatrix< worldDim, dim > & JTInv() const
Transposed Inverse of Jacobian in integration point.
Definition: fv1ib_geom.h:863
MidID vMidID[numCo]
Definition: fv1ib_geom.h:916
MathVector< dim > localIP
Definition: fv1ib_geom.h:919
number detJ() const
Determinant of Jacobian in integration point.
Definition: fv1ib_geom.h:866
const MathVector< dim > * local_grad_vector() const
vector of local gradients in ip point
Definition: fv1ib_geom.h:883
MathVector< worldDim > vGloPos[numCo]
Definition: fv1ib_geom.h:915
const MathVector< dim > & local_grad(size_t sh) const
value of local gradient of shape function i in integration point
Definition: fv1ib_geom.h:879
const number * shape_vector() const
vector of local gradients in ip point
Definition: fv1ib_geom.h:876
MathMatrix< worldDim, dim > JtInv
Definition: fv1ib_geom.h:929
Sub-Control Volume Face structure.
Definition: fv1ib_geom.h:647
MathVector< worldDim > Normal
Definition: fv1ib_geom.h:722
const MathVector< dim > & local_grad(size_t sh) const
value of local gradient of shape function i in integration point
Definition: fv1ib_geom.h:689
MathVector< dim > vLocalGrad[maxNSH]
Definition: fv1ib_geom.h:739
size_t num_ip() const
number of integration points on scvf
Definition: fv1ib_geom.h:662
size_t numSH
Definition: fv1ib_geom.h:737
const MathVector< dim > & local_corner(size_t co) const
return local corner number i
Definition: fv1ib_geom.h:706
number vShape[maxNSH]
Definition: fv1ib_geom.h:738
number shape(size_t sh) const
value of shape function i in integration point
Definition: fv1ib_geom.h:683
MathVector< dim > vLocPos[numCo]
Definition: fv1ib_geom.h:728
MathVector< dim > localIP
Definition: fv1ib_geom.h:733
MathVector< worldDim > vGlobalGrad[maxNSH]
Definition: fv1ib_geom.h:740
size_t from() const
index of SubControlVolume on one side of the scvf
Definition: fv1ib_geom.h:656
size_t From
Definition: fv1ib_geom.h:719
const MathVector< worldDim > & global_ip() const
global integration point of scvf
Definition: fv1ib_geom.h:668
number detj
Definition: fv1ib_geom.h:742
size_t To
Definition: fv1ib_geom.h:719
const MathVector< worldDim > & global_grad(size_t sh) const
value of global gradient of shape function i in integration point
Definition: fv1ib_geom.h:696
const number * shape_vector() const
vector of shape functions in ip point
Definition: fv1ib_geom.h:686
MathVector< worldDim > globalIP
Definition: fv1ib_geom.h:734
MathVector< worldDim > vGloPos[numCo]
Definition: fv1ib_geom.h:729
MidID vMidID[numCo]
Definition: fv1ib_geom.h:730
size_t num_sh() const
number of shape functions
Definition: fv1ib_geom.h:680
size_t num_corners() const
number of corners, that bound the scvf
Definition: fv1ib_geom.h:703
const MathVector< dim > * local_grad_vector() const
vector of local gradients in ip point
Definition: fv1ib_geom.h:693
const MathVector< worldDim > & normal() const
normal on scvf (points direction "from"->"to"). Norm is equal to area
Definition: fv1ib_geom.h:671
static const size_t numCo
Number of corners of scvf.
Definition: fv1ib_geom.h:650
MathMatrix< worldDim, dim > JtInv
Definition: fv1ib_geom.h:741
SCVF()
Definition: fv1ib_geom.h:653
const MathVector< worldDim > * global_grad_vector() const
vector of gloabl gradients in ip point
Definition: fv1ib_geom.h:700
const MathVector< dim > & local_ip() const
local integration point of scvf
Definition: fv1ib_geom.h:665
const MathMatrix< worldDim, dim > & JTInv() const
Transposed Inverse of Jacobian in integration point.
Definition: fv1ib_geom.h:674
number detJ() const
Determinant of Jacobian in integration point.
Definition: fv1ib_geom.h:677
const MathVector< worldDim > & global_corner(size_t co) const
return glbal corner number i
Definition: fv1ib_geom.h:710
size_t to() const
index of SubControlVolume on one side of the scvf
Definition: fv1ib_geom.h:659
sub control volume structure
Definition: fv1ib_geom.h:747
size_t numSH
Definition: fv1ib_geom.h:826
number detj
Definition: fv1ib_geom.h:831
size_t nodeId
Definition: fv1ib_geom.h:815
size_t node_id() const
node id that this scv is associated to
Definition: fv1ib_geom.h:770
const number * shape_vector() const
vector of shape functions in ip point
Definition: fv1ib_geom.h:794
MathVector< worldDim > vGloPos[numCo]
Definition: fv1ib_geom.h:822
const MathVector< worldDim > & global_grad(size_t sh) const
value of global gradient of shape function i in integration point
Definition: fv1ib_geom.h:804
SCV()
Definition: fv1ib_geom.h:753
const MathVector< worldDim > * global_grad_vector() const
vector of global gradients in ip point
Definition: fv1ib_geom.h:808
number vShape[maxNSH]
Definition: fv1ib_geom.h:827
MidID vMidID[numCo]
Definition: fv1ib_geom.h:823
static const size_t numCo
Number of corners of scv.
Definition: fv1ib_geom.h:750
MathMatrix< worldDim, dim > JtInv
Definition: fv1ib_geom.h:830
number shape(size_t sh) const
value of shape function i in integration point
Definition: fv1ib_geom.h:791
number detJ() const
Determinant of Jacobian in integration point.
Definition: fv1ib_geom.h:785
const MathVector< dim > * local_grad_vector() const
vector of local gradients in ip point
Definition: fv1ib_geom.h:801
const MathMatrix< worldDim, dim > & JTInv() const
Transposed Inverse of Jacobian in integration point.
Definition: fv1ib_geom.h:782
const MathVector< worldDim > & global_corner(size_t co) const
return global corner number i
Definition: fv1ib_geom.h:766
number volume() const
volume of scv
Definition: fv1ib_geom.h:756
MathVector< dim > vLocalGrad[maxNSH]
Definition: fv1ib_geom.h:828
MathVector< worldDim > vGlobalGrad[maxNSH]
Definition: fv1ib_geom.h:829
size_t num_sh() const
number of shape functions
Definition: fv1ib_geom.h:788
const MathVector< dim > & local_grad(size_t sh) const
value of local gradient of shape function i in integration point
Definition: fv1ib_geom.h:797
size_t num_ip() const
number of integration points
Definition: fv1ib_geom.h:773
const MathVector< dim > & local_ip() const
local integration point of scv
Definition: fv1ib_geom.h:776
number Vol
Definition: fv1ib_geom.h:818
const MathVector< worldDim > & global_ip() const
global integration point
Definition: fv1ib_geom.h:779
size_t num_corners() const
number of corners, that bound the scv
Definition: fv1ib_geom.h:759
const MathVector< dim > & local_corner(size_t co) const
return local corner number i
Definition: fv1ib_geom.h:762
MathVector< dim > vLocPos[numCo]
Definition: fv1ib_geom.h:821
Geometry and shape functions for 1st order Vertex-Centered Finite Volume.
Definition: fv1ib_geom.h:598
MathVector< worldDim > m_vGlobSCVF_IP[maxNumSCVF]
Definition: fv1ib_geom.h:1005
size_t num_scvf_ips() const
returns number of all scvf ips
Definition: fv1ib_geom.h:985
const MathVector< worldDim > * scv_global_ips() const
returns all ips of scv as they appear in scv loop
Definition: fv1ib_geom.h:1000
size_t num_boundary_subsets()
number of registered boundary subsets
Definition: fv1ib_geom.h:1019
DimFV1IBGeometry()
construct object and initialize local values and sizes
Definition: fv1ib_geom.h:935
ReferenceObjectID m_roid
current reference object id
Definition: fv1ib_geom.h:1067
const SCV & scv(size_t i) const
const access to SubControlVolume number i
Definition: fv1ib_geom.h:977
void add_boundary_subset(int subsetIndex)
add subset that is interpreted as boundary subset.
Definition: fv1ib_geom.h:1010
size_t num_bf() const
number of all boundary faces
Definition: fv1ib_geom.h:1022
size_t m_nsh
current number of shape functions
Definition: fv1ib_geom.h:1076
SCV m_vSCV[maxNumSCV]
SubControlVolumes.
Definition: fv1ib_geom.h:1090
MathVector< worldDim > m_vvGloMid[dim+1][maxMid]
Definition: fv1ib_geom.h:1084
size_t m_numSCV
current number of scv
Definition: fv1ib_geom.h:1070
std::map< int, std::vector< BF > > m_mapVectorBF
Definition: fv1ib_geom.h:1059
size_t m_numSCVF
current number of scvf
Definition: fv1ib_geom.h:1073
void adapt_integration_points(GridObject *elem, const MathVector< TWorldDim > *vCornerCoords, const ISubsetHandler *ish=NULL)
adapt integration points for elements cut by the inner boundary
Definition: fv1ib_geom_impl.h:921
void update_local_data()
update local data
Definition: fv1ib_geom_impl.h:951
static const int order
order
Definition: fv1ib_geom.h:618
static const bool staticLocalData
flag indicating if local data may change
Definition: fv1ib_geom.h:614
size_t num_scvf() const
number of SubControlVolumeFaces
Definition: fv1ib_geom.h:965
const MathVector< dim > * scvf_local_ips() const
returns all ips of scvf as they appear in scv loop
Definition: fv1ib_geom.h:988
size_t num_bf(int si) const
number of boundary faces on subset 'subsetIndex'
Definition: fv1ib_geom.h:1032
void remove_boundary_subset(int subsetIndex)
removes subset that is interpreted as boundary subset.
Definition: fv1ib_geom.h:1013
void update(GridObject *elem, const MathVector< worldDim > *vCornerCoords, const ISubsetHandler *ish=NULL)
update data for given element
Definition: fv1ib_geom_impl.h:1057
static const int worldDim
dimension of world
Definition: fv1ib_geom.h:608
MathVector< worldDim > m_MidPoint
Definition: fv1ib_geom.h:1095
static const size_t nip
number of integration points
Definition: fv1ib_geom.h:633
SCVF m_vSCVF[maxNumSCVF]
SubControlVolumeFaces.
Definition: fv1ib_geom.h:1087
size_t num_scv() const
number of SubControlVolumes
Definition: fv1ib_geom.h:974
MathVector< dim > m_vLocSCVF_IP[maxNumSCVF]
Definition: fv1ib_geom.h:1006
const MathVector< worldDim > * corners() const
get vector of corners for current element
Definition: fv1ib_geom.h:962
const SCVF & scvf(size_t i) const
const access to SubControlVolumeFace number i
Definition: fv1ib_geom.h:968
std::vector< BF > m_vEmptyVectorBF
Definition: fv1ib_geom.h:1060
GridObject * m_pElem
pointer to current element
Definition: fv1ib_geom.h:1064
static const size_t maxNSH
max number of shape functions
Definition: fv1ib_geom.h:630
void adapt(GridObject *elem, const MathVector< TWorldDim > *vCornerCoords, const ISubsetHandler *ish=NULL)
adapt integration points for elements cut by the inner boundary
Definition: fv1ib_geom_impl.h:858
MathVector< worldDim > vSCVF_PosOnEdge[maxNumSCVF]
new members for adaptions
Definition: fv1ib_geom.h:1094
const std::vector< BF > & bf(int si) const
returns reference to vector of boundary faces for subsetIndex
Definition: fv1ib_geom.h:1050
void adapt_normals(GridObject *elem, const MathVector< TWorldDim > *vCornerCoords, const ISubsetHandler *ish=NULL)
adapt normals for elements cut by the inner boundary
Definition: fv1ib_geom_impl.h:930
MathVector< dim > m_vvLocMid[dim+1][maxMid]
local and global geom object midpoints for each dimension
Definition: fv1ib_geom.h:1083
traits::scv_type scv_type
type of SubControlVolume
Definition: fv1ib_geom.h:624
const MathVector< dim > * scv_local_ips() const
returns all ips of scv as they appear in scv loop
Definition: fv1ib_geom.h:997
size_t num_sh() const
number of shape functions
Definition: fv1ib_geom.h:981
static const size_t maxNumSCV
number of SubControlVolumes
Definition: fv1ib_geom.h:621
static const int maxMid
max number of geometric objects in a dimension
Definition: fv1ib_geom.h:1080
const MathVector< worldDim > * scvf_global_ips() const
returns all ips of scvf as they appear in scv loop
Definition: fv1ib_geom.h:991
const BF & bf(int si, size_t i) const
returns the boundary face i for subsetIndex
Definition: fv1ib_geom.h:1041
static const size_t maxNumSCVF
max number of SubControlVolumeFaces
Definition: fv1ib_geom.h:627
fv1_dim_traits< TDim, TWorldDim > traits
used traits
Definition: fv1ib_geom.h:601
static const int dim
dimension of reference element
Definition: fv1ib_geom.h:605
static const bool usesHangingNodes
Hanging node flag: this Geometry does not support hanging nodes.
Definition: fv1ib_geom.h:611
void update_boundary_faces(GridObject *elem, const MathVector< worldDim > *vCornerCoords, const ISubsetHandler *ish=NULL)
update boundary data for given element
Definition: fv1ib_geom_impl.h:1169
size_t num_scv_ips() const
returns number of all scv ips
Definition: fv1ib_geom.h:994
void clear_boundary_subsets()
reset all boundary subsets
Definition: fv1ib_geom.h:1016
boundary face
Definition: fv1ib_geom.h:324
const number * shape_vector() const
vector of local gradients in ip point
Definition: fv1ib_geom.h:364
size_t num_corners() const
number of corners, that bound the scvf
Definition: fv1ib_geom.h:381
const MathVector< worldDim > * global_grad_vector() const
vector of global gradients in ip point
Definition: fv1ib_geom.h:378
const MathVector< dim > & local_grad(size_t sh) const
value of local gradient of shape function i in integration point
Definition: fv1ib_geom.h:367
MathVector< worldDim > vGloPos[numCo]
Definition: fv1ib_geom.h:403
size_t num_sh() const
number of shape functions
Definition: fv1ib_geom.h:357
MathMatrix< worldDim, dim > JtInv
Definition: fv1ib_geom.h:416
MathVector< worldDim > Normal
Definition: fv1ib_geom.h:409
const MathVector< dim > & local_ip() const
local integration point of bf
Definition: fv1ib_geom.h:339
const MathVector< worldDim > & global_ip() const
global integration point of bf
Definition: fv1ib_geom.h:342
const MathVector< dim > * local_grad_vector() const
vector of local gradients in ip point
Definition: fv1ib_geom.h:371
MathVector< dim > vLocalGrad[nsh]
Definition: fv1ib_geom.h:414
BF()
Definition: fv1ib_geom.h:330
number detJ() const
Determinant of Jacobian in integration point.
Definition: fv1ib_geom.h:354
number shape(size_t sh) const
value of shape function i in integration point
Definition: fv1ib_geom.h:360
const MathMatrix< worldDim, dim > & JTInv() const
Transposed Inverse of Jacobian in integration point.
Definition: fv1ib_geom.h:351
MidID vMidID[numCo]
Definition: fv1ib_geom.h:404
static const size_t numCo
Number of corners of bf.
Definition: fv1ib_geom.h:327
const MathVector< worldDim > & global_corner(size_t co) const
return global corner number i
Definition: fv1ib_geom.h:388
number detj
Definition: fv1ib_geom.h:417
MathVector< dim > localIP
Definition: fv1ib_geom.h:407
size_t nodeId
Definition: fv1ib_geom.h:396
size_t num_ip() const
number of integration points on bf
Definition: fv1ib_geom.h:336
size_t node_id() const
index of SubControlVolume of the bf
Definition: fv1ib_geom.h:333
const MathVector< worldDim > & normal() const
outer normal on bf. Norm is equal to area
Definition: fv1ib_geom.h:345
const MathVector< worldDim > & global_grad(size_t sh) const
value of global gradient of shape function i in integration point
Definition: fv1ib_geom.h:374
number volume() const
volume of bf
Definition: fv1ib_geom.h:348
MathVector< worldDim > globalIP
Definition: fv1ib_geom.h:408
number Vol
Definition: fv1ib_geom.h:410
number vShape[nsh]
Definition: fv1ib_geom.h:413
MathVector< dim > vLocPos[numCo]
Definition: fv1ib_geom.h:402
const MathVector< dim > & local_corner(size_t co) const
return local corner number i
Definition: fv1ib_geom.h:384
MathVector< worldDim > vGlobalGrad[nsh]
Definition: fv1ib_geom.h:415
Sub-Control Volume Face structure.
Definition: fv1ib_geom.h:129
size_t num_corners() const
number of corners, that bound the scvf
Definition: fv1ib_geom.h:185
const number * shape_vector() const
vector of shape functions in ip point
Definition: fv1ib_geom.h:168
number detJ() const
Determinant of Jacobian in integration point.
Definition: fv1ib_geom.h:159
MathVector< dim > vLocPos[numCo]
Definition: fv1ib_geom.h:210
const MathVector< worldDim > & global_corner(size_t co) const
return global corner number i
Definition: fv1ib_geom.h:192
MathVector< worldDim > vGlobalGrad[nsh]
Definition: fv1ib_geom.h:221
number shape(size_t sh) const
value of shape function i in integration point
Definition: fv1ib_geom.h:165
MathVector< worldDim > globalIP
Definition: fv1ib_geom.h:216
const MathVector< worldDim > & normal() const
normal on scvf (points direction "from"->"to"). Norm is equal to area
Definition: fv1ib_geom.h:144
MathVector< dim > localIP
Definition: fv1ib_geom.h:215
const MathVector< dim > * local_grad_vector() const
vector of local gradients in ip point
Definition: fv1ib_geom.h:175
MidID vMidID[numCo]
Definition: fv1ib_geom.h:212
const MathVector< dim > & local_ip() const
local integration point of scvf
Definition: fv1ib_geom.h:150
size_t To
Definition: fv1ib_geom.h:201
const MathVector< dim > & local_corner(size_t co) const
return local corner number i
Definition: fv1ib_geom.h:188
number detj
Definition: fv1ib_geom.h:223
const MathVector< worldDim > * global_grad_vector() const
vector of global gradients in ip point
Definition: fv1ib_geom.h:182
size_t to() const
index of SubControlVolume on one side of the scvf
Definition: fv1ib_geom.h:141
MathVector< worldDim > vGloPos[numCo]
Definition: fv1ib_geom.h:211
size_t from() const
index of SubControlVolume on one side of the scvf
Definition: fv1ib_geom.h:138
number vShape[nsh]
Definition: fv1ib_geom.h:219
size_t From
Definition: fv1ib_geom.h:201
size_t num_sh() const
number of shape functions
Definition: fv1ib_geom.h:162
const MathVector< dim > & local_grad(size_t sh) const
value of local gradient of shape function i in integration point
Definition: fv1ib_geom.h:171
MathVector< worldDim > Normal
Definition: fv1ib_geom.h:204
const MathMatrix< worldDim, dim > & JTInv() const
Transposed Inverse of Jacobian in integration point.
Definition: fv1ib_geom.h:156
MathVector< dim > vLocalGrad[nsh]
Definition: fv1ib_geom.h:220
static const size_t numCo
Number of corners of scvf.
Definition: fv1ib_geom.h:132
MathMatrix< worldDim, dim > JtInv
Definition: fv1ib_geom.h:222
SCVF()
Definition: fv1ib_geom.h:135
const MathVector< worldDim > & global_grad(size_t sh) const
value of global gradient of shape function i in integration point
Definition: fv1ib_geom.h:178
size_t num_ip() const
number of integration points on scvf
Definition: fv1ib_geom.h:147
const MathVector< worldDim > & global_ip() const
global integration point of scvf
Definition: fv1ib_geom.h:153
sub control volume structure
Definition: fv1ib_geom.h:228
size_t num_ip() const
number of integration points
Definition: fv1ib_geom.h:262
const number * shape_vector() const
vector of shape functions in ip point
Definition: fv1ib_geom.h:283
MidID midId[numCo]
Definition: fv1ib_geom.h:312
MathVector< dim > vLocPos[numCo]
Definition: fv1ib_geom.h:310
MathVector< worldDim > vGloPos[numCo]
Definition: fv1ib_geom.h:311
number Vol
Definition: fv1ib_geom.h:307
MathMatrix< worldDim, dim > JtInv
Definition: fv1ib_geom.h:318
number volume() const
volume of scv
Definition: fv1ib_geom.h:237
const MathVector< worldDim > & global_grad(size_t sh) const
value of global gradient of shape function i in integration point
Definition: fv1ib_geom.h:293
size_t node_id() const
node id that this scv is associated to
Definition: fv1ib_geom.h:259
const MathMatrix< worldDim, dim > & JTInv() const
Transposed Inverse of Jacobian in integration point.
Definition: fv1ib_geom.h:271
size_t nodeId
Definition: fv1ib_geom.h:304
MathVector< dim > vLocalGrad[nsh]
Definition: fv1ib_geom.h:316
MathVector< worldDim > vGlobalGrad[nsh]
Definition: fv1ib_geom.h:317
static const size_t numCo
Number of corners of scvf.
Definition: fv1ib_geom.h:231
const MathVector< worldDim > * global_grad_vector() const
vector of global gradients in ip point
Definition: fv1ib_geom.h:297
number detj
Definition: fv1ib_geom.h:319
const MathVector< dim > * local_grad_vector() const
vector of local gradients in ip point
Definition: fv1ib_geom.h:290
number shape(size_t sh) const
value of shape function i in integration point
Definition: fv1ib_geom.h:280
size_t num_sh() const
number of shape functions
Definition: fv1ib_geom.h:277
const MathVector< dim > * local_corners() const
return local corners
Definition: fv1ib_geom.h:251
const MathVector< dim > & local_grad(size_t sh) const
value of local gradient of shape function i in integration point
Definition: fv1ib_geom.h:286
size_t num_corners() const
number of corners, that bound the scvf
Definition: fv1ib_geom.h:240
const MathVector< dim > & local_ip() const
local integration point of scv
Definition: fv1ib_geom.h:265
const MathVector< dim > & local_corner(size_t co) const
return local corner number i
Definition: fv1ib_geom.h:243
const MathVector< worldDim > & global_corner(size_t co) const
return global corner number i
Definition: fv1ib_geom.h:247
SCV()
Definition: fv1ib_geom.h:234
const MathVector< worldDim > * global_corners() const
return global corners
Definition: fv1ib_geom.h:255
number detJ() const
Determinant of Jacobian in integration point.
Definition: fv1ib_geom.h:274
const MathVector< worldDim > & global_ip() const
global integration point
Definition: fv1ib_geom.h:268
number vShape[nsh]
Definition: fv1ib_geom.h:315
Geometry and shape functions for 1st order Vertex-Centered Finite Volume.
Definition: fv1ib_geom.h:69
static const int maxMid
max number of geom objects in all dimensions
Definition: fv1ib_geom.h:557
size_t num_sh() const
number of shape functions
Definition: fv1ib_geom.h:469
MathVector< worldDim > m_vGlobSCVF_IP[numSCVF]
Definition: fv1ib_geom.h:493
void remove_boundary_subset(int subsetIndex)
removes subset that is interpreted as boundary subset.
Definition: fv1ib_geom.h:501
size_t num_boundary_subsets()
number of registered boundary subsets
Definition: fv1ib_geom.h:507
const SCVF & scvf(size_t i) const
const access to SubControlVolumeFace number i
Definition: fv1ib_geom.h:456
LagrangeP1< ref_elem_type > local_shape_fct_set_type
type of Shape function used
Definition: fv1ib_geom.h:109
MathVector< worldDim > m_vvGloMid[dim+1][maxMid]
Definition: fv1ib_geom.h:561
void clear_boundary_subsets()
reset all boundary subsets
Definition: fv1ib_geom.h:504
fv1_traits< ref_elem_type, TWorldDim > traits
used traits
Definition: fv1ib_geom.h:78
const SCV & scv(size_t i) const
const access to SubControlVolume number i
Definition: fv1ib_geom.h:465
static const size_t nip
number of integration points
Definition: fv1ib_geom.h:115
traits::scv_type scv_type
type of SubControlVolume
Definition: fv1ib_geom.h:102
SCVF m_vSCVF[numSCVF]
SubControlVolumeFaces.
Definition: fv1ib_geom.h:564
ReferenceMapping< ref_elem_type, worldDim > m_mapping
Reference Mapping.
Definition: fv1ib_geom.h:570
static const size_t numSCV
number of SubControlVolumes
Definition: fv1ib_geom.h:98
void add_boundary_subset(int subsetIndex)
add subset that is interpreted as boundary subset.
Definition: fv1ib_geom.h:498
size_t num_bf(int si) const
number of boundary faces on subset 'subsetIndex'
Definition: fv1ib_geom.h:520
static const int order
order
Definition: fv1ib_geom.h:95
FV1IBGeometry()
construct object and initialize local values and sizes
Definition: fv1ib_geom_impl.h:552
static const size_t nsh
number of shape functions
Definition: fv1ib_geom.h:112
const local_shape_fct_set_type & m_rTrialSpace
Shape function set.
Definition: fv1ib_geom.h:576
static const bool usesHangingNodes
Hanging node flag: this Geometry does not support hanging nodes.
Definition: fv1ib_geom.h:88
reference_element_traits< TElem >::reference_element_type ref_elem_type
type of reference element
Definition: fv1ib_geom.h:75
void update_local_data()
update local data
Definition: fv1ib_geom_impl.h:561
const MathVector< dim > * scvf_local_ips() const
returns all ips of scvf as they appear in scv loop
Definition: fv1ib_geom.h:476
const MathVector< worldDim > * scv_global_ips() const
returns all ips of scv as they appear in scv loop
Definition: fv1ib_geom.h:488
MathVector< dim > m_vvLocMid[dim+1][maxMid]
local and global geom object midpoints for each dimension
Definition: fv1ib_geom.h:560
const MathVector< worldDim > * corners() const
get vector of the global coordinates of corners for current element
Definition: fv1ib_geom.h:450
size_t num_bf() const
number of all boundary faces
Definition: fv1ib_geom.h:510
size_t num_scvf_ips() const
returns number of all scvf ips
Definition: fv1ib_geom.h:473
MathVector< worldDim > vSCVF_PosOnEdge[numSCVF]
new members for adaptions
Definition: fv1ib_geom.h:580
size_t num_scv() const
number of SubControlVolumes
Definition: fv1ib_geom.h:462
const BF & bf(int si, size_t i) const
returns the boundary face i for subsetIndex
Definition: fv1ib_geom.h:529
const MathVector< dim > * scv_local_ips() const
returns all ips of scv as they appear in scv loop
Definition: fv1ib_geom.h:485
void update(GridObject *elem, const MathVector< worldDim > *vCornerCoords, const ISubsetHandler *ish=NULL)
update data for given element
Definition: fv1ib_geom_impl.h:643
void adapt(GridObject *elem, const MathVector< TWorldDim > *vCornerCoords, const ISubsetHandler *ish=NULL)
adapt integration points for elements cut by the inner boundary
Definition: fv1ib_geom_impl.h:47
const std::vector< BF > & bf(int si) const
returns reference to vector of boundary faces for subsetIndex
Definition: fv1ib_geom.h:539
const ref_elem_type & m_rRefElem
Reference Element.
Definition: fv1ib_geom.h:573
void update_boundary_faces(GridObject *elem, const MathVector< worldDim > *vCornerCoords, const ISubsetHandler *ish=NULL)
update boundary data for given element
Definition: fv1ib_geom_impl.h:741
static const int dim
dimension of reference element
Definition: fv1ib_geom.h:82
static const bool staticLocalData
flag indicating if local data may change
Definition: fv1ib_geom.h:91
MathVector< worldDim > m_MidPoint
Definition: fv1ib_geom.h:581
MathVector< dim > m_vLocSCVF_IP[numSCVF]
Definition: fv1ib_geom.h:494
std::map< int, std::vector< BF > > m_mapVectorBF
Definition: fv1ib_geom.h:548
size_t num_scv_ips() const
returns number of all scv ips
Definition: fv1ib_geom.h:482
static const size_t numSCVF
number of SubControlVolumeFaces
Definition: fv1ib_geom.h:105
size_t num_scvf() const
number of SubControlVolumeFaces
Definition: fv1ib_geom.h:453
const MathVector< worldDim > * scvf_global_ips() const
returns all ips of scvf as they appear in scv loop
Definition: fv1ib_geom.h:479
static const int worldDim
dimension of world
Definition: fv1ib_geom.h:85
SCV m_vSCV[numSCV]
SubControlVolumes.
Definition: fv1ib_geom.h:567
void adapt_normals(GridObject *elem, const MathVector< TWorldDim > *vCornerCoords, const ISubsetHandler *ish=NULL)
adapt normals for elements cut by the inner boundary
Definition: fv1ib_geom_impl.h:120
TElem * m_pElem
pointer to current element
Definition: fv1ib_geom.h:553
void adapt_integration_points(GridObject *elem, const MathVector< TWorldDim > *vCornerCoords, const ISubsetHandler *ish=NULL)
adapt integration points for elements cut by the inner boundary
Definition: fv1ib_geom_impl.h:111
std::vector< BF > m_vEmptyVectorBF
Definition: fv1ib_geom.h:549
TElem elem_type
type of element
Definition: fv1ib_geom.h:72
base class for all FVGeometries
Definition: fv_geom_base.h:76
The base class for all geometric objects, such as vertices, edges, faces, volumes,...
Definition: grid_base_objects.h:157
Definition: subset_handler_interface.h:223
Lagrange shape functions of first order.
Definition: lagrangep1.h:55
static const size_t nsh
Number of shape functions.
Definition: lagrangep1.h:77
#define UG_ASSERT(expr, msg)
Definition: assert.h:70
#define UG_THROW(msg)
Definition: error.h:57
double number
Definition: types.h:124
ReferenceObjectID
these ids are used to identify the shape of a geometric object.
Definition: grid_base_objects.h:74
@ ROID_PYRAMID
Definition: grid_base_objects.h:83
@ ROID_UNKNOWN
Definition: grid_base_objects.h:75
helper class to store dimension and id of a midpoint of a sub-element
Definition: fv_geom_base.h:41
Traits for Finite Volumes for a generic element of the fixed dimensionalities.
Definition: fv_util.h:1325
Traits for Finite Volumes (dummy implementation, s. the instantiations below)
Definition: fv_util.h:178
static const size_t NumCornersOfSCV
Definition: fv_util.h:188
void scv_type
Definition: fv_util.h:204
static const size_t NumCornersOfSCVF
Definition: fv_util.h:185
traits for reference elements
Definition: reference_element_traits.h:48