dune-geometry  2.3beta2
mockgeometry.hh
Go to the documentation of this file.
1 // -*- tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
2 // vi: set et ts=4 sw=2 sts=2:
3 
4 #ifndef DUNE_GEOMETRY_MOCKGEOMETRY_HH
5 #define DUNE_GEOMETRY_MOCKGEOMETRY_HH
6 
7 #include <cstddef>
8 
9 #include <dune/common/deprecated.hh>
10 #include <dune/common/fmatrix.hh>
11 #include <dune/geometry/type.hh>
14 
15 namespace Dune {
16 
18 
32  template<class ctype, std::size_t mydim, std::size_t coorddim>
33  class MockGeometry :
35  mydim, GenericGeometry::DefaultGeometryTraits<ctype, coorddim, coorddim>
36  >
37  {
39  Traits;
41 
42  // Hide members of BasicGeometry that are not part of Dune::Geometry
43  using typename Base::JacobianInverseTransposed;
44 
45  public:
47  typedef FieldMatrix<ctype, coorddim, mydim> Jacobian;
49  typedef FieldMatrix<ctype, mydim, coorddim> JacobianTransposed;
50 
52  DUNE_DEPRECATED_MSG( "MockGeometry is deprecated; use MultiLinearGeometry instead." )
55  template<class CoordVector>
56  DUNE_DEPRECATED_MSG( "MockGeometry is deprecated; use MultiLinearGeometry instead." )
57  MockGeometry(const GeometryType &type, const CoordVector &coords) :
58  Base(type, coords)
59  { }
61  template<int fatherdim>
62  DUNE_DEPRECATED_MSG( "MockGeometry is deprecated; use MultiLinearGeometry instead." )
63  MockGeometry(const MockGeometry<ctype, fatherdim, coorddim> &father,
64  int i) :
65  Base(static_cast<const GenericGeometry::BasicGeometry<
66  fatherdim,
67  GenericGeometry::DefaultGeometryTraits<ctype, coorddim, coorddim>
68  > &>(father),
69  i)
70  { }
71 
74  (const typename Base::LocalCoordinate &local) const
75  { return Base::jacobianTransposed(local); }
78  (const typename Base::LocalCoordinate &local) const
79  { return Base::jacobianInverseTransposed(local); }
80  };
81 
82 } // namespace Dune
83 
84 #endif // DUNE_GEOMETRY_MOCKGEOMETRY_HH