|
dune-grid 2.12-git
|
Loading...
Searching...
No Matches
common/geometry.hh
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright © DUNE Project contributors, see file LICENSE.md in module root
136 using JacobianInverseOfImplementation = decltype(typename Implementation_T::JacobianInverse{std::declval<Implementation_T>().jacobianInverse(std::declval<LocalCoordinate>())});
141 using JacobianOfImplementation = decltype(typename Implementation_T::Jacobian{std::declval<Implementation_T>().jacobian(std::declval<LocalCoordinate>())});
150 [[deprecated("Geometry implementations are required to provide a jacobian(local) method. The default implementation is deprecated and will be removed after release 2.9")]]
156 auto jacobianInverseImpl ( const LocalCoordinate &local, std::true_type /*implDetected*/ ) const
161 [[deprecated("Geometry implementations are required to provide a jacobianInverse(local) method. The default implementation is deprecated and will be removed after release 2.9")]]
162 auto jacobianInverseImpl ( const LocalCoordinate &local, std::false_type /*implNotDetected*/ ) const
178 using JacobianInverse = Std::detected_or_t<JacobianInverseDefault, JacobianInverseOfImplementation, Implementation>;
477 GeometryImp<mydim,cdim,GridImp>& asImp () {return static_cast<GeometryImp<mydim,cdim,GridImp>&>(*this);}
548 GeometryImp<mydim,cdim,GridImp>& asImp () {return static_cast<GeometryImp<mydim,cdim,GridImp>&>(*this);}
580 template< int mydim, int cdim, class GridImp, template< int, int, class > class GeometryImp, typename Impl>
unspecified value type referenceElement(T &&... t)
typename detected_or< Default, Op, Args... >::type detected_or_t
typename detected_or< nonesuch, Op, Args... >::value_t is_detected
const GlobalIndex & global() const
LocalIndex & local()
auto transpose(const Matrix &matrix)
Include standard header files.
Volume integrationElement(const LocalCoordinate &local) const
Return the factor appearing in the integral transformation formula.
Definition common/geometry.hh:265
Jacobian jacobian(const LocalCoordinate &local) const
Return the Jacobian.
Definition common/geometry.hh:344
FieldVector< ctype, cdim > GlobalCoordinate
type of the global coordinates
Definition common/geometry.hh:106
JacobianTransposed jacobianTransposed(const LocalCoordinate &local) const
Return the transposed of the Jacobian.
Definition common/geometry.hh:302
Implementation & impl()
access to the underlying implementation
Definition common/geometry.hh:85
GeometryType type() const
Return the type of the reference element. The type can be used to access the Dune::ReferenceElement.
Definition common/geometry.hh:194
GlobalCoordinate global(const LocalCoordinate &local) const
Evaluate the map .
Definition common/geometry.hh:228
JacobianInverse jacobianInverse(const LocalCoordinate &local) const
Return inverse of Jacobian.
Definition common/geometry.hh:371
Geometry(const Implementation &impl)
copy constructor from implementation
Definition common/geometry.hh:384
Implementation::JacobianTransposed JacobianTransposed
type of jacobian transposed
Definition common/geometry.hh:131
Implementation::JacobianInverseTransposed JacobianInverseTransposed
type of jacobian inverse transposed
Definition common/geometry.hh:120
GlobalCoordinate corner(int i) const
Obtain a corner of the geometry.
Definition common/geometry.hh:219
int corners() const
Return the number of corners of the reference element.
Definition common/geometry.hh:205
Volume volume() const
return volume of geometry
Definition common/geometry.hh:271
static constexpr int coorddimension
dimension of embedding coordinate system
Definition common/geometry.hh:97
Std::detected_or_t< JacobianInverseDefault, JacobianInverseOfImplementation, Implementation > JacobianInverse
type of jacobian inverse
Definition common/geometry.hh:178
decltype(std::declval< Implementation >().volume()) Volume
Number type used for the geometry volume.
Definition common/geometry.hh:109
GridImp::ctype ctype
define type used for coordinates in grid module
Definition common/geometry.hh:100
const Implementation & impl() const
access to the underlying implementation
Definition common/geometry.hh:91
FieldVector< ctype, mydim > LocalCoordinate
type of local coordinates
Definition common/geometry.hh:103
GlobalCoordinate center() const
return center of geometry
Definition common/geometry.hh:286
LocalCoordinate local(const GlobalCoordinate &global) const
Evaluate the inverse map .
Definition common/geometry.hh:237
bool affine() const
Return true if the geometry mapping is affine and false otherwise.
Definition common/geometry.hh:197
auto referenceElement(const Geometry< mydim, cdim, GridImp, GeometryImp > &geo, const Impl &) -> decltype(referenceElement< typename GridImp::ctype, mydim >(geo.type()))
Second-level dispatch to select the correct reference element for a grid geometry.
Definition common/geometry.hh:581
Std::detected_or_t< JacobianDefault, JacobianOfImplementation, Implementation > Jacobian
type of jacobian
Definition common/geometry.hh:189
static constexpr int mydimension
geometry dimension
Definition common/geometry.hh:94
GeometryImp< mydim, cdim, GridImp > Implementation
type of underlying implementation
Definition common/geometry.hh:78
JacobianInverseTransposed jacobianInverseTransposed(const LocalCoordinate &local) const
Return inverse of transposed of Jacobian.
Definition common/geometry.hh:328
Default implementation for class Geometry.
Definition common/geometry.hh:406
FieldVector< ctype, cdim > GlobalCoordinate
Definition common/geometry.hh:415
static const int mydimension
Definition common/geometry.hh:408
Volume volume() const
return volume of the geometry
Definition common/geometry.hh:433
FieldVector< ctype, mydim > LocalCoordinate
Definition common/geometry.hh:414
GlobalCoordinate center() const
return center of the geometry
Definition common/geometry.hh:451
FieldMatrix< ctype, cdim, mydim > Jacobian
type of jacobian
Definition common/geometry.hh:430
JacobianInverse jacobianInverse(const LocalCoordinate &local) const
Return inverse of Jacobian.
Definition common/geometry.hh:470
FieldMatrix< ctype, mydim, cdim > JacobianTransposed
type of jacobian transposed
Definition common/geometry.hh:424
Jacobian jacobian(const LocalCoordinate &local) const
Return the Jacobian.
Definition common/geometry.hh:464
FieldMatrix< ctype, cdim, mydim > JacobianInverseTransposed
type of jacobian inverse transposed
Definition common/geometry.hh:421
static const int coorddimension
Definition common/geometry.hh:409
FieldMatrix< ctype, mydim, cdim > JacobianInverse
type of jacobian inverse
Definition common/geometry.hh:427
ctype Volume
Number type used for the geometry volume.
Definition common/geometry.hh:418
GridImp::ctype ctype
Definition common/geometry.hh:492
FieldVector< ctype, cdim > global(const FieldVector< ctype, mydim > &) const
return the only coordinate
Definition common/geometry.hh:511
FieldVector< ctype, cdim > GlobalCoordinate
Definition common/geometry.hh:495
FieldMatrix< ctype, cdim, mydim > JacobianInverseTransposed
type of jacobian inverse transposed
Definition common/geometry.hh:499
FieldMatrix< ctype, mydim, cdim > JacobianInverse
type of jacobian inverse
Definition common/geometry.hh:505
ctype Volume
Definition common/geometry.hh:496
FieldMatrix< ctype, cdim, mydim > Jacobian
type of jacobian
Definition common/geometry.hh:508
Jacobian jacobian(const LocalCoordinate &local) const
Return the Jacobian.
Definition common/geometry.hh:535
JacobianInverse jacobianInverse(const LocalCoordinate &local) const
Return inverse of Jacobian.
Definition common/geometry.hh:541
FieldVector< ctype, cdim > center() const
return center of the geometry
Definition common/geometry.hh:529
FieldVector< ctype, mydim > LocalCoordinate
Definition common/geometry.hh:494
FieldMatrix< ctype, mydim, cdim > JacobianTransposed
type of jacobian transposed
Definition common/geometry.hh:502
FieldVector< ctype, mydim > local(const FieldVector< ctype, cdim > &) const
return empty vector
Definition common/geometry.hh:517
Volume volume() const
return volume of the geometry
Definition common/geometry.hh:523
Legal Statements / Impressum | Hosted by TU Dresden & Uni Heidelberg | Generated by
1.9.8