dune-alugrid 3.0.0
faceutility.hh
Go to the documentation of this file.
1#ifndef DUNE_ALU3DGRIDFACEUTILITY_HH
2#define DUNE_ALU3DGRIDFACEUTILITY_HH
3
4#include <type_traits>
5
6#include <dune/geometry/referenceelements.hh>
7
8#include "mappings.hh"
9#include "alu3dinclude.hh"
10#include "topology.hh"
11
12namespace Dune
13{
14
15 // convert FieldVectors to alu3dtypes
16 // only used for calculating the normals because the method of the
17 // mapping classes want double (&)[3] and we have FieldVectors which store an
18 // double [3] this is why we can cast here
19 // plz say notin' Adrian
20 template< int dim >
21 inline alu3d_ctype (&fieldVector2alu3d_ctype ( FieldVector< alu3d_ctype, dim > &val ))[ dim ]
22 {
23 return ((alu3d_ctype (&)[dim]) (*( &(val[0])) ));
24 }
25
26 // convert const FieldVectors to const alu3dtypes
27 template< int dim >
28 inline const alu3d_ctype (&fieldVector2alu3d_ctype ( const FieldVector< alu3d_ctype, dim > &val ))[ dim ]
29 {
30 return ((const alu3d_ctype (&)[dim]) (*( &(val[0])) ) );
31 }
32
33
34 // * Note: reconsider lazy evaluation of coordinates
35
36 //- class ALU3dGridFaceInfo
37 /* \brief Stores face and adjoining elements of the underlying ALU3dGrid
38 The class has the same notion of inner and outer element as the
39 intersection iterator.
40 */
41 template< int dim, int dimworld, ALU3dGridElementType type, class Comm >
43 {
45 //- private typedefs
46 typedef typename ImplTraits::HasFaceType HasFaceType;
47 public:
49 //- typedefs
50 typedef typename ImplTraits::GEOFaceType GEOFaceType;
51 typedef typename ImplTraits::GEOElementType GEOElementType;
52 typedef typename ImplTraits::GEOPeriodicType GEOPeriodicType;
53 typedef typename ImplTraits::IMPLElementType IMPLElementType;
54 typedef typename ImplTraits::GhostPairType GhostPairType;
55 typedef typename ImplTraits::BNDFaceType BNDFaceType;
56
57 public:
59 ALU3dGridFaceInfo( const bool levelIntersection = false );
60 void updateFaceInfo(const GEOFaceType& face, int innerLevel, int innerTwist);
61
62 //- constructors and destructors
72
73 protected:
75 bool isElementLike() const;
76
77 public:
78 //- queries
80 bool innerBoundary() const;
81
84 bool outerBoundary() const;
85
87 bool boundary() const;
88
90 bool neighbor() const ;
91
94 bool ghostBoundary () const;
95
97 const GEOFaceType& face() const;
99 const GEOElementType& innerEntity() const;
102 const GEOElementType& outerEntity() const;
105 const BNDFaceType& innerFace() const;
108 const BNDFaceType& boundaryFace() const;
109
111 int innerTwist() const;
113 int outerTwist() const;
114
116 int duneTwist(const int faceIdx, const int aluTwist) const;
117
119 int innerALUFaceIndex() const;
121 int outerALUFaceIndex() const;
122
123 int outsideLevel() const;
124
126 int segmentIndex() const;
127
129 int boundaryId() const;
130
133
135 bool parallel() const { return !std::is_same< Comm, ALUGridNoComm >::value; }
136
138 bool conformingRefinement () const { return conformingRefinement_; }
139
141 bool ghostCellsEnabled () const { return ghostCellsEnabled_; }
142
144 void setFlags( const bool conformingRefinement, const bool ghostCellsEnabled );
145
146 private:
148 ConformanceState getConformanceState(const int innerLevel) const;
149
150 //- forbidden methods
151 const ALU3dGridFaceInfo &
152 operator=(const ALU3dGridFaceInfo &orig);
153
154 private:
155
156 //- member data
157 const GEOFaceType* face_;
158 const HasFaceType* innerElement_;
159 const HasFaceType* outerElement_;
160
161 int innerFaceNumber_;
162 int outerFaceNumber_;
163
164 int innerTwist_;
165 int outerTwist_;
166
167 int segmentIndex_;
168 int bndId_;
169
170 enum boundary_t { noBoundary = 0, // no boundary, outside is normal element
171 periodicBoundary = 1, // periodic boundary
172 innerGhostBoundary = 2, // process boundary, inside is ghost, outside is normal element
173 domainBoundary = 3, // boundary with domain, no outside
174 outerGhostBoundary = 4};// process boundary, outside might be ghost
175
176 boundary_t bndType_;
177
178 ConformanceState conformanceState_;
179 bool conformingRefinement_ ; // true if conforming refinement is enabled
180 bool ghostCellsEnabled_ ; // true if ghost cells are present
181 const bool levelIntersection_ ; // true if called from a levelintersection iterator
182 };
183
184
185 // ALU3dGridSurfaceMappingFactory
186 // ------------------------------
187
188 template< int dim, int dimworld, ALU3dGridElementType type, class Comm >
190
191 template< int dim, int dimworld, class Comm >
192 struct ALU3dGridSurfaceMappingFactory< dim, dimworld, tetra, Comm >
193 {
194 // this is the original ALUGrid LinearSurfaceMapping,
195 // see mapp_tetra_3d.* in ALUGrid code
196 typedef ALU3DSPACE LinearSurfaceMapping SurfaceMappingType;
198
199 static const int numVerticesPerFace = EntityCount< tetra >::numVerticesPerFace;
200
201 typedef FieldMatrix< alu3d_ctype, numVerticesPerFace, 3 > CoordinateType;
202
203 // old method, copies values for tetra twice
204 SurfaceMappingType *buildSurfaceMapping ( const CoordinateType &coords ) const;
205 // get face but doesn't copy values twice
206 SurfaceMappingType *buildSurfaceMapping ( const GEOFaceType &face ) const;
207 };
208
209 template< int dim, int dimworld, class Comm >
210 struct ALU3dGridSurfaceMappingFactory< dim, dimworld, hexa, Comm >
211 {
214
215 static const int numVerticesPerFace = EntityCount< hexa >::numVerticesPerFace;
216
217 typedef FieldMatrix< alu3d_ctype, numVerticesPerFace, 3 > CoordinateType;
218
219 // old method, copies values for tetra twice
220 SurfaceMappingType *buildSurfaceMapping ( const CoordinateType &coords ) const;
221 // get face but doesn't copy values twice
222 SurfaceMappingType *buildSurfaceMapping ( const GEOFaceType &face ) const;
223 };
224
225
226
227 // ALU3dGridGeometricFaceInfoBase
228 // ------------------------------
229
232 template< int dim, int dimworld, ALU3dGridElementType type, class Comm >
234 : public ALU3dGridSurfaceMappingFactory< dim, dimworld, type, Comm >
235 {
237
238 public:
242
243 // type of container for reference elements
244 typedef ReferenceElements< alu3d_ctype, 3 > ReferenceElementContainerType;
245 // type of container for reference faces
246 typedef ReferenceElements< alu3d_ctype, 2 > ReferenceFaceContainerType;
247
248 // type of reference element
249 typedef ReferenceElement<alu3d_ctype, 3> ReferenceElementType;
250 // type of reference face
251 typedef ReferenceElement<alu3d_ctype, 2> ReferenceFaceType;
252
254 enum { numVerticesPerFace =
256
257 //- public typedefs
258 typedef FieldVector<alu3d_ctype, 3> NormalType;
259 typedef FieldMatrix<alu3d_ctype,
261 dimworld> CoordinateType;
262
264
265 public:
267
268 //- constructors and destructors
271
273 void resetFaceGeom();
274
275 //- functions
278
279 private:
280 //- forbidden methods
282
283 private:
284 //- private methods
285 void generateLocalGeometries() const;
286
287 int globalVertexIndex(const int duneFaceIndex,
288 const int faceTwist,
289 const int duneFaceVertexIndex) const;
290
291 void referenceElementCoordinatesRefined(SideIdentifier side,
292 CoordinateType& result) const;
293 void referenceElementCoordinatesUnrefined(SideIdentifier side,
294 CoordinateType& result) const;
295
296 protected:
297 //- private data
299
302
303 mutable bool generatedGlobal_;
304 mutable bool generatedLocal_;
305
307 {
308 return (type == tetra) ?
309 ReferenceElementContainerType :: simplex() :
310 ReferenceElementContainerType :: cube();
311 }
312
313 inline static const ReferenceFaceType& getReferenceFace()
314 {
315 return (type == tetra) ?
316 ReferenceFaceContainerType :: simplex() :
317 ReferenceFaceContainerType :: cube();
318 }
319 };
320
323 template< int dim, int dimworld, class Comm >
325 : public ALU3dGridGeometricFaceInfoBase< dim, dimworld, tetra, Comm >
326 {
328
329 public:
330 //- public typedefs
331 typedef FieldVector<alu3d_ctype, 3> NormalType;
332 typedef typename Base::FaceTopo FaceTopo;
334
336
337 //- constructors and destructors
340
341 NormalType & outerNormal(const FieldVector<alu3d_ctype, 2>& local) const;
342
344 void resetFaceGeom();
345
347 template <class GeometryImp>
348 void buildGlobalGeom(GeometryImp& geo) const;
349
350 private:
351 //- forbidden methods
353
354 protected:
355 using Base::connector_;
356
357 private:
358 //- private data
359 mutable NormalType outerNormal_;
360
361 // false if surface mapping needs a update
362 mutable bool normalUp2Date_;
363 };
364
367 template< int dim, int dimworld, class Comm >
369 : public ALU3dGridGeometricFaceInfoBase< dim, dimworld, hexa, Comm >
370 {
372
373 public:
374 //- public typedefs
375 typedef FieldVector<alu3d_ctype, 3> NormalType;
376 typedef typename Base::FaceTopo FaceTopo;
379
381
382 //- constructors and destructors
385
386 NormalType & outerNormal(const FieldVector<alu3d_ctype, 2>& local) const;
387
389 void resetFaceGeom();
390
392 template <class GeometryImp>
393 void buildGlobalGeom(GeometryImp& geo) const;
394
395 private:
396 //- forbidden methods
398
399 protected:
400 using Base::connector_;
401
402 private:
403 //- private data
404 mutable NormalType outerNormal_;
405
406 // surface mapping for calculating the outer normal
407 mutable SurfaceMappingType mappingGlobal_;
408
409 // false if surface mapping needs a update
410 mutable bool mappingGlobalUp2Date_;
411 };
412
413 // ALU3dGridGeometricFaceInfoBase
414 // ------------------------------
415
418 template< int dimworld, ALU3dGridElementType type, class Comm >
419 class ALU3dGridGeometricFaceInfoBase<2, dimworld, type, Comm>
420 {
421
422 public:
425
426 // type of container for reference elements
427 typedef ReferenceElements< alu3d_ctype, 2 > ReferenceElementContainerType;
428 // type of container for reference faces
429 typedef ReferenceElements< alu3d_ctype, 1 > ReferenceFaceContainerType;
430
431 // type of reference element
432 typedef ReferenceElement<alu3d_ctype, 2> ReferenceElementType;
433 // type of reference face
434 typedef ReferenceElement<alu3d_ctype, 1> ReferenceFaceType;
435
437 enum { numVerticesPerFace = 2 }; // A face in 2d is an edge
438
439 //- public typedefs
440 typedef FieldVector<alu3d_ctype, dimworld> NormalType;
441 typedef FieldMatrix<alu3d_ctype,
443 dimworld> CoordinateType;
444 typedef FieldMatrix<alu3d_ctype,
447
449
450 public:
452
453 //- constructors and destructors
456
458 void resetFaceGeom();
459
460 //- functions
463
464 private:
465 //- forbidden methods
467
468 protected:
469 //- protected methods
470 void generateLocalGeometries() const;
471
472 private:
473 //- private methods
474
475 int globalVertexIndex(const int duneFaceIndex,
476 const int faceTwist,
477 const int duneFaceVertexIndex) const;
478
479 void referenceElementCoordinatesRefined(SideIdentifier side,
480 LocalCoordinateType& result) const;
481 void referenceElementCoordinatesUnrefined(SideIdentifier side,
482 LocalCoordinateType& result) const;
483
484 protected:
485 //- private data
487
490
491 mutable bool generatedGlobal_;
492 mutable bool generatedLocal_;
493
495 {
496 return (type == tetra) ?
497 ReferenceElementContainerType :: simplex() :
498 ReferenceElementContainerType :: cube();
499 }
500
501 inline static const ReferenceFaceType& getReferenceFace()
502 {
503 return (type == tetra) ?
504 ReferenceFaceContainerType :: simplex() :
505 ReferenceFaceContainerType :: cube();
506 }
507 };
508
511 template< int dimworld, class Comm >
512 class ALU3dGridGeometricFaceInfoTetra<2, dimworld, Comm>
513 : public ALU3dGridGeometricFaceInfoBase< 2, dimworld, tetra, Comm >
514 {
516
517 public:
518 //- public typedefs
519 typedef FieldVector<alu3d_ctype, dimworld> NormalType;
520 typedef typename Base::FaceTopo FaceTopo;
524
525 //- constructors and destructors
528
529 NormalType & outerNormal(const FieldVector<alu3d_ctype, 1>& local) const;
530
532 void resetFaceGeom();
533
535 template <class GeometryImp>
536 void buildGlobalGeom(GeometryImp& geo) const;
537
538 private:
539 //- forbidden methods
541
542 protected:
543 using Base::connector_;
544
545 private:
546 //- private data
547 mutable NormalType outerNormal_;
548
549 // false if surface mapping needs a update
550 mutable bool normalUp2Date_;
551 };
552
555 template< int dimworld, class Comm >
556 class ALU3dGridGeometricFaceInfoHexa<2, dimworld, Comm>
557 : public ALU3dGridGeometricFaceInfoBase< 2, dimworld, hexa, Comm >
558 {
560
561 public:
562 //- public typedefs
563 typedef FieldVector<alu3d_ctype, dimworld> NormalType;
564 typedef typename Base::FaceTopo FaceTopo;
567
569
570 //- constructors and destructors
573
574 NormalType & outerNormal(const FieldVector<alu3d_ctype, 1>& local) const;
575
577 void resetFaceGeom();
578
580 template <class GeometryImp>
581 void buildGlobalGeom(GeometryImp& geo) const;
582
583 private:
584 //- forbidden methods
586
587 protected:
588 using Base::connector_;
589
590 private:
591 //- private data
592 mutable NormalType outerNormal_;
593
594 // false if surface mapping needs a update
595 mutable bool normalUp2Date_;
596 };
597
598
599} // end namespace Dune
600
601#include "faceutility_imp.cc"
602
603#endif
#define ALU3DSPACE
Definition alu3dinclude.hh:24
Definition alu3dinclude.hh:80
@ hexa
Definition topology.hh:12
@ tetra
Definition topology.hh:12
alu3d_ctype(& fieldVector2alu3d_ctype(FieldVector< alu3d_ctype, dim > &val))[dim]
Definition faceutility.hh:21
double alu3d_ctype
Definition alu3dinclude.hh:85
Definition alu3dinclude.hh:259
Definition faceutility.hh:43
bool isElementLike() const
returns true if outerEntity casts into a helement
Definition faceutility_imp.cc:286
int outsideLevel() const
Definition faceutility_imp.cc:357
int outerTwist() const
Twist of the face seen from the outer element.
Definition faceutility_imp.cc:415
ImplTraits::GEOElementType GEOElementType
Definition faceutility.hh:51
ImplTraits::GhostPairType GhostPairType
Definition faceutility.hh:54
ConformanceState
Definition faceutility.hh:48
@ UNDEFINED
Definition faceutility.hh:48
@ CONFORMING
Definition faceutility.hh:48
@ REFINED_INNER
Definition faceutility.hh:48
@ REFINED_OUTER
Definition faceutility.hh:48
~ALU3dGridFaceInfo()
Destructor.
Definition faceutility_imp.cc:265
void setFlags(const bool conformingRefinement, const bool ghostCellsEnabled)
reset flags
Definition faceutility_imp.cc:32
void updateFaceInfo(const GEOFaceType &face, int innerLevel, int innerTwist)
Definition faceutility_imp.cc:43
bool conformingRefinement() const
return true if conforming refinement is enabled
Definition faceutility.hh:138
const GEOElementType & innerEntity() const
Returns the inner element at that face.
Definition faceutility_imp.cc:327
int innerALUFaceIndex() const
Local number of the face in inner element (ALU3dGrid reference element)
Definition faceutility_imp.cc:427
const BNDFaceType & innerFace() const
Definition faceutility_imp.cc:343
bool ghostBoundary() const
Definition faceutility_imp.cc:312
bool ghostCellsEnabled() const
return true if ghost cells are enabled
Definition faceutility.hh:141
int duneTwist(const int faceIdx, const int aluTwist) const
Twist of the face seen from the inner element.
Definition faceutility_imp.cc:388
bool neighbor() const
returns true if outside is something meaningfull
Definition faceutility_imp.cc:306
bool innerBoundary() const
returns true if inside is a ghost entity
Definition faceutility_imp.cc:291
int boundaryId() const
return boundary id if intersection is with domain boundary
Definition faceutility_imp.cc:373
bool boundary() const
returns true if the face lies on the domain boundary
Definition faceutility_imp.cc:301
const GEOFaceType & face() const
Returns the ALU3dGrid face.
Definition faceutility_imp.cc:320
int innerTwist() const
Twist of the face seen from the inner element.
Definition faceutility_imp.cc:379
bool outerBoundary() const
Definition faceutility_imp.cc:296
int outerALUFaceIndex() const
Local number of the face in outer element (ALU3dGrid reference element)
Definition faceutility_imp.cc:432
ImplTraits::IMPLElementType IMPLElementType
Definition faceutility.hh:53
bool parallel() const
return whether we are in a parallel environment or not
Definition faceutility.hh:135
const GEOElementType & outerEntity() const
Definition faceutility_imp.cc:335
ImplTraits::GEOPeriodicType GEOPeriodicType
Definition faceutility.hh:52
ImplTraits::GEOFaceType GEOFaceType
Definition faceutility.hh:50
ConformanceState conformanceState() const
Description of conformance on the face.
Definition faceutility_imp.cc:438
const BNDFaceType & boundaryFace() const
Definition faceutility_imp.cc:351
int segmentIndex() const
return boundary segment index if intersection is with domain boundary
Definition faceutility_imp.cc:366
ImplTraits::BNDFaceType BNDFaceType
Definition faceutility.hh:55
Definition faceutility.hh:189
ALU3dGridFaceInfo< dim, dimworld, tetra, Comm >::GEOFaceType GEOFaceType
Definition faceutility.hh:197
ALU3DSPACE LinearSurfaceMapping SurfaceMappingType
Definition faceutility.hh:196
FieldMatrix< alu3d_ctype, numVerticesPerFace, 3 > CoordinateType
Definition faceutility.hh:201
ALU3dGridFaceInfo< dim, dimworld, hexa, Comm >::GEOFaceType GEOFaceType
Definition faceutility.hh:213
FieldMatrix< alu3d_ctype, numVerticesPerFace, 3 > CoordinateType
Definition faceutility.hh:217
BilinearSurfaceMapping SurfaceMappingType
Definition faceutility.hh:212
Definition faceutility.hh:235
FieldMatrix< alu3d_ctype, numVerticesPerFace, dimworld > CoordinateType
Definition faceutility.hh:261
bool generatedLocal_
Definition faceutility.hh:304
CoordinateType coordsNeighborLocal_
Definition faceutility.hh:301
const CoordinateType & intersectionNeighborLocal() const
Definition faceutility_imp.cc:511
@ numVerticesPerFace
Definition faceutility.hh:254
NonConformingFaceMapping< dim, dimworld, type, Comm > NonConformingMappingType
Definition faceutility.hh:241
static const ReferenceFaceType & getReferenceFace()
Definition faceutility.hh:313
FieldVector< alu3d_ctype, 3 > NormalType
Definition faceutility.hh:258
ReferenceElement< alu3d_ctype, 3 > ReferenceElementType
Definition faceutility.hh:249
ReferenceElements< alu3d_ctype, 2 > ReferenceFaceContainerType
Definition faceutility.hh:246
static const ReferenceElementType & getReferenceElement()
Definition faceutility.hh:306
const ConnectorType & connector_
Definition faceutility.hh:298
ElementTopologyMapping< type > ElementTopo
Definition faceutility.hh:239
SideIdentifier
Definition faceutility.hh:253
@ OUTER
Definition faceutility.hh:253
@ INNER
Definition faceutility.hh:253
ALU3dGridFaceInfo< dim, dimworld, type, Comm >::GEOFaceType GEOFaceType
Definition faceutility.hh:263
FaceTopologyMapping< type > FaceTopo
Definition faceutility.hh:240
ReferenceElement< alu3d_ctype, 2 > ReferenceFaceType
Definition faceutility.hh:251
void resetFaceGeom()
reset status of faceGeomInfo
Definition faceutility_imp.cc:485
CoordinateType coordsSelfLocal_
Definition faceutility.hh:300
ALU3dGridFaceInfo< dim, dimworld, type, Comm > ConnectorType
Definition faceutility.hh:266
ReferenceElements< alu3d_ctype, 3 > ReferenceElementContainerType
Definition faceutility.hh:244
const CoordinateType & intersectionSelfLocal() const
Definition faceutility_imp.cc:503
bool generatedGlobal_
Definition faceutility.hh:303
Definition faceutility.hh:326
ALU3dGridFaceInfo< dim, dimworld, tetra, Comm > ConnectorType
Definition faceutility.hh:335
void resetFaceGeom()
reset status of faceGeomInfo
Definition faceutility_imp.cc:528
void buildGlobalGeom(GeometryImp &geo) const
update global geometry
Definition faceutility_imp.cc:544
NormalType & outerNormal(const FieldVector< alu3d_ctype, 2 > &local) const
Definition faceutility_imp.cc:562
Base::FaceTopo FaceTopo
Definition faceutility.hh:332
FieldVector< alu3d_ctype, 3 > NormalType
Definition faceutility.hh:331
ALU3dGridFaceInfo< dim, dimworld, tetra, Comm >::GEOFaceType GEOFaceType
Definition faceutility.hh:333
Definition faceutility.hh:370
ALU3dGridFaceInfo< dim, dimworld, hexa, Comm > ConnectorType
Definition faceutility.hh:380
SurfaceNormalCalculator SurfaceMappingType
Definition faceutility.hh:378
ALU3dGridFaceInfo< dim, dimworld, hexa, Comm >::GEOFaceType GEOFaceType
Definition faceutility.hh:377
void buildGlobalGeom(GeometryImp &geo) const
update global geometry
Definition faceutility_imp.cc:617
NormalType & outerNormal(const FieldVector< alu3d_ctype, 2 > &local) const
Definition faceutility_imp.cc:635
Base::FaceTopo FaceTopo
Definition faceutility.hh:376
FieldVector< alu3d_ctype, 3 > NormalType
Definition faceutility.hh:375
void resetFaceGeom()
reset status of faceGeomInfo
Definition faceutility_imp.cc:599
ReferenceElement< alu3d_ctype, 1 > ReferenceFaceType
Definition faceutility.hh:434
FaceTopologyMapping< type > FaceTopo
Definition faceutility.hh:424
const ConnectorType & connector_
Definition faceutility.hh:486
ReferenceElement< alu3d_ctype, 2 > ReferenceElementType
Definition faceutility.hh:432
ALU3dGridFaceInfo< 2, dimworld, type, Comm >::GEOFaceType GEOFaceType
Definition faceutility.hh:448
FieldVector< alu3d_ctype, dimworld > NormalType
Definition faceutility.hh:440
LocalCoordinateType coordsSelfLocal_
Definition faceutility.hh:488
static const ReferenceFaceType & getReferenceFace()
Definition faceutility.hh:501
static const ReferenceElementType & getReferenceElement()
Definition faceutility.hh:494
ElementTopologyMapping< type > ElementTopo
Definition faceutility.hh:423
ReferenceElements< alu3d_ctype, 1 > ReferenceFaceContainerType
Definition faceutility.hh:429
FieldMatrix< alu3d_ctype, numVerticesPerFace, 2 > LocalCoordinateType
Definition faceutility.hh:446
LocalCoordinateType coordsNeighborLocal_
Definition faceutility.hh:489
ALU3dGridFaceInfo< 2, dimworld, type, Comm > ConnectorType
Definition faceutility.hh:451
ReferenceElements< alu3d_ctype, 2 > ReferenceElementContainerType
Definition faceutility.hh:427
FieldMatrix< alu3d_ctype, numVerticesPerFace, dimworld > CoordinateType
Definition faceutility.hh:443
Base::FaceTopo FaceTopo
Definition faceutility.hh:520
ALU3dGridFaceInfo< 2, dimworld, tetra, Comm > ConnectorType
Definition faceutility.hh:523
FieldVector< alu3d_ctype, dimworld > NormalType
Definition faceutility.hh:519
ALU3dGridFaceInfo< 2, dimworld, tetra, Comm >::GEOElementType GEOElementType
Definition faceutility.hh:522
ALU3dGridFaceInfo< 2, dimworld, tetra, Comm >::GEOFaceType GEOFaceType
Definition faceutility.hh:521
ALU3dGridFaceInfo< 2, dimworld, hexa, Comm > ConnectorType
Definition faceutility.hh:568
Base::FaceTopo FaceTopo
Definition faceutility.hh:564
ALU3dGridFaceInfo< 2, dimworld, hexa, Comm >::GEOElementType GEOElementType
Definition faceutility.hh:566
ALU3dGridFaceInfo< 2, dimworld, hexa, Comm >::GEOFaceType GEOFaceType
Definition faceutility.hh:565
FieldVector< alu3d_ctype, dimworld > NormalType
Definition faceutility.hh:563
A bilinear surface mapping.
Definition mappings.hh:88
A bilinear surface mapping.
Definition mappings.hh:143
Definition mappings.hh:385
Definition topology.hh:15
Definition topology.hh:40
Definition topology.hh:151