|
dune-geometry 2.8.0
|
Loading...
Searching...
No Matches
multilineargeometry.hh
Go to the documentation of this file.
214 static const bool hasSingleGeometryType = Traits::template hasSingleGeometryType< mydimension >::v;
218 typedef typename std::conditional< hasSingleGeometryType, std::integral_constant< unsigned int, Traits::template hasSingleGeometryType< mydimension >::topologyId >, unsigned int >::type TopologyId;
261 Dune::GeometryType type () const { return GeometryType( toUnsignedInt(topologyId()), mydimension ); }
288 global< false >( topologyId(), std::integral_constant< int, mydimension >(), cit, ctype( 1 ), local, ctype( 1 ), y );
315 MatrixHelper::template xTRightInvA< mydimension, coorddimension >( jacobianTransposed( x ), dglobal, dx );
344 return MatrixHelper::template sqrtDetAAT< mydimension, coorddimension >( jacobianTransposed( local ) );
375 jacobianTransposed< false >( topologyId(), std::integral_constant< int, mydimension >(), cit, ctype( 1 ), local, ctype( 1 ), jt );
423 static bool affine ( TopologyId topologyId, std::integral_constant< int, dim >, CornerIterator &cit, JacobianTransposed &jt );
425 static bool affine ( TopologyId topologyId, std::integral_constant< int, 0 >, CornerIterator &cit, JacobianTransposed &jt );
443 unsigned int topologyId ( std::integral_constant< bool, false > ) const { return refElement().type().id(); }
463 detInv_ = MatrixHelper::template rightInvA< mydimension, coorddimension >( jt, static_cast< Base & >( *this ) );
518 CachedMultiLinearGeometry ( const ReferenceElement &referenceElement, const CornerStorage &cornerStorage )
579 MatrixHelper::template xTRightInvA< mydimension, coorddimension >( jacobianTransposed_, global - corner( 0 ), local );
752 jacobianTransposed< add >( topologyId, std::integral_constant< int, dim-1 >(), cit2, df, x, rf*cxn, jt );
754 jacobianTransposed< true >( topologyId, std::integral_constant< int, dim-1 >(), cit2, df, x, rf*xn, jt );
756 global< add >( topologyId, std::integral_constant< int, dim-1 >(), cit, df, x, -rf, jt[ dim-1 ] );
757 global< true >( topologyId, std::integral_constant< int, dim-1 >(), cit, df, x, rf, jt[ dim-1 ] );
803 ctype dfcxn = (cxn > Traits::tolerance() || cxn < -Traits::tolerance()) ? ctype(df / cxn) : ctype(0);
808 global< add >( topologyId, std::integral_constant< int, dim-1 >(), cit, dfcxn, x, -rf, jt[ dim-1 ] );
817 jacobianTransposed< false >( topologyId, std::integral_constant< int, dim-1 >(), cit2, dfcxn, x, rf, jt2 );
830 jacobianTransposed< false >( topologyId, std::integral_constant< int, dim-1 >(), cit2, dfcxn, x, rf, jt );
853 ::affine ( TopologyId topologyId, std::integral_constant< int, dim >, CornerIterator &cit, JacobianTransposed &jt )
A unique label for each type of element that can occur in a grid.
An implementation of the Geometry interface for affine geometries.
iterator begin()
size_type dim() const
const GlobalIndex & global() const
LocalIndex & local()
Reference get(const RAPropertyMapHelper< Reference, PropertyMap > &pmap, const Key &key)
derived_type & axpy(const field_type &a, const DenseMatrix< Other > &x)
void mtv(const X &x, Y &y) const
size_type size() const
void umtv(const X &x, Y &y) const
constexpr FieldMatrix()=default
typename Container::ReferenceElement ReferenceElement
The reference element type.
Definition referenceelements.hh:186
default traits class for MultiLinearGeometry
Definition multilineargeometry.hh:37
Impl::FieldMatrixHelper< ct > MatrixHelper
helper structure containing some matrix routines
Definition multilineargeometry.hh:56
static ct tolerance()
tolerance to numerical algorithms
Definition multilineargeometry.hh:59
template specifying the storage for the corners
Definition multilineargeometry.hh:127
std::vector< FieldVector< ct, cdim > > Type
Definition multilineargeometry.hh:128
will there be only one geometry type for a dimension?
Definition multilineargeometry.hh:146
static const unsigned int topologyId
Definition multilineargeometry.hh:148
static const bool v
Definition multilineargeometry.hh:147
generic geometry implementation based on corner coordinates
Definition multilineargeometry.hh:179
static void global(TopologyId topologyId, std::integral_constant< int, dim >, CornerIterator &cit, const ctype &df, const LocalCoordinate &x, const ctype &rf, GlobalCoordinate &y)
Definition multilineargeometry.hh:694
static const int mydimension
geometry dimension
Definition multilineargeometry.hh:187
Dune::GeometryType type() const
obtain the name of the reference element
Definition multilineargeometry.hh:261
Traits::MatrixHelper MatrixHelper
Definition multilineargeometry.hh:217
FieldVector< ctype, coorddimension > GlobalCoordinate
type of global coordinates
Definition multilineargeometry.hh:194
static void jacobianTransposed(TopologyId topologyId, std::integral_constant< int, 0 >, CornerIterator &cit, const ctype &df, const LocalCoordinate &x, const ctype &rf, FieldMatrix< ctype, rows, cdim > &jt)
Definition multilineargeometry.hh:841
JacobianTransposed jacobianTransposed(const LocalCoordinate &local) const
obtain the transposed of the Jacobian
Definition multilineargeometry.hh:369
ReferenceElement refElement() const
Definition multilineargeometry.hh:394
GlobalCoordinate global(const LocalCoordinate &local) const
evaluate the mapping
Definition multilineargeometry.hh:282
GlobalCoordinate center() const
obtain the centroid of the mapping's image
Definition multilineargeometry.hh:274
GlobalCoordinate corner(int i) const
obtain coordinates of the i-th corner
Definition multilineargeometry.hh:267
Dune::ReferenceElements< ctype, mydimension > ReferenceElements
Definition multilineargeometry.hh:206
static void jacobianTransposed(TopologyId topologyId, std::integral_constant< int, dim >, CornerIterator &cit, const ctype &df, const LocalCoordinate &x, const ctype &rf, FieldMatrix< ctype, rows, cdim > &jt)
Definition multilineargeometry.hh:739
static const int coorddimension
coordinate dimension
Definition multilineargeometry.hh:189
int corners() const
obtain number of corners of the corresponding reference element
Definition multilineargeometry.hh:264
TopologyId topologyId() const
Definition multilineargeometry.hh:399
friend ReferenceElement referenceElement(const MultiLinearGeometry &geometry)
Definition multilineargeometry.hh:387
LocalCoordinate local(const GlobalCoordinate &globalCoord) const
evaluate the inverse mapping
Definition multilineargeometry.hh:304
static void global(TopologyId topologyId, std::integral_constant< int, 0 >, CornerIterator &cit, const ctype &df, const LocalCoordinate &x, const ctype &rf, GlobalCoordinate &y)
Definition multilineargeometry.hh:725
Volume volume() const
obtain the volume of the mapping's image
Definition multilineargeometry.hh:355
FieldVector< ctype, mydimension > LocalCoordinate
type of local coordinates
Definition multilineargeometry.hh:192
MultiLinearGeometry(const ReferenceElement &refElement, const Corners &corners)
constructor
Definition multilineargeometry.hh:231
static bool affine(TopologyId topologyId, std::integral_constant< int, 0 >, CornerIterator &cit, JacobianTransposed &jt)
Definition multilineargeometry.hh:882
std::conditional< hasSingleGeometryType, std::integral_constant< unsignedint, Traits::templatehasSingleGeometryType< mydimension >::topologyId >, unsignedint >::type TopologyId
Definition multilineargeometry.hh:218
static bool affine(TopologyId topologyId, std::integral_constant< int, dim >, CornerIterator &cit, JacobianTransposed &jt)
Definition multilineargeometry.hh:853
MultiLinearGeometry(Dune::GeometryType gt, const Corners &corners)
constructor
Definition multilineargeometry.hh:247
ctype integrationElement(const LocalCoordinate &local) const
obtain the integration element
Definition multilineargeometry.hh:342
FieldMatrix< ctype, mydimension, coorddimension > JacobianTransposed
type of jacobian transposed
Definition multilineargeometry.hh:199
ReferenceElements::ReferenceElement ReferenceElement
type of reference element
Definition multilineargeometry.hh:211
JacobianInverseTransposed jacobianInverseTransposed(const LocalCoordinate &local) const
obtain the transposed of the Jacobian's inverse
Definition multilineargeometry.hh:683
bool affine() const
is this mapping affine?
Definition multilineargeometry.hh:254
bool affine(JacobianTransposed &jacobianT) const
Definition multilineargeometry.hh:427
Definition multilineargeometry.hh:457
void setup(const JacobianTransposed &jt)
Definition multilineargeometry.hh:461
ctype det() const
Definition multilineargeometry.hh:471
ctype detInv() const
Definition multilineargeometry.hh:472
void setupDeterminant(const JacobianTransposed &jt)
Definition multilineargeometry.hh:466
Implement a MultiLinearGeometry with additional caching.
Definition multilineargeometry.hh:495
GlobalCoordinate global(const LocalCoordinate &local) const
evaluate the mapping
Definition multilineargeometry.hh:547
Base::ReferenceElement ReferenceElement
Definition multilineargeometry.hh:503
bool affine() const
is this mapping affine?
Definition multilineargeometry.hh:534
CachedMultiLinearGeometry(const ReferenceElement &referenceElement, const CornerStorage &cornerStorage)
Definition multilineargeometry.hh:518
ReferenceElement refElement() const
Definition multilineargeometry.hh:394
LocalCoordinate local(const GlobalCoordinate &global) const
evaluate the inverse mapping
Definition multilineargeometry.hh:571
Base::MatrixHelper MatrixHelper
Definition multilineargeometry.hh:500
Base::LocalCoordinate LocalCoordinate
Definition multilineargeometry.hh:510
JacobianTransposed jacobianTransposed(const LocalCoordinate &local) const
obtain the transposed of the Jacobian
Definition multilineargeometry.hh:633
GlobalCoordinate corner(int i) const
obtain coordinates of the i-th corner
Definition multilineargeometry.hh:267
Volume volume() const
obtain the volume of the mapping's image
Definition multilineargeometry.hh:616
CachedMultiLinearGeometry(Dune::GeometryType gt, const CornerStorage &cornerStorage)
Definition multilineargeometry.hh:526
ctype integrationElement(const LocalCoordinate &local) const
obtain the integration element
Definition multilineargeometry.hh:600
Base::JacobianInverseTransposed JacobianInverseTransposed
Definition multilineargeometry.hh:515
Base::JacobianTransposed JacobianTransposed
Definition multilineargeometry.hh:514
Base::GlobalCoordinate GlobalCoordinate
Definition multilineargeometry.hh:511
GlobalCoordinate center() const
obtain the centroid of the mapping's image
Definition multilineargeometry.hh:539
JacobianInverseTransposed jacobianInverseTransposed(const LocalCoordinate &local) const
obtain the transposed of the Jacobian's inverse
Definition multilineargeometry.hh:647
Unique label for each type of entities that can occur in DUNE grids.
Definition type.hh:124
T begin(T... args)
T epsilon(T... args)
T cref(T... args)
Legal Statements / Impressum | Hosted by TU Dresden & Uni Heidelberg | Generated by
1.9.8