21 #ifndef _aspect_compat_h 22 #define _aspect_compat_h 33 using ::Utilities::MPI::broadcast;
40 #if !DEAL_II_VERSION_GTE(9,6,0) 41 #include <deal.II/multigrid/mg_transfer_matrix_free.h> 44 template <
int dim,
class NumberType>
54 #if !DEAL_II_VERSION_GTE(9,6,0) 56 #include <deal.II/grid/manifold.h> 57 #include <deal.II/grid/manifold_lib.h> 71 template <
int dim,
int spacedim = dim>
86 virtual std::unique_ptr<Manifold<dim, spacedim>>
87 clone()
const override;
96 virtual Point<spacedim>
97 get_intermediate_point(
const Point<spacedim> &p1,
98 const Point<spacedim> &p2,
99 const double w)
const override;
105 virtual Tensor<1, spacedim>
106 get_tangent_vector(
const Point<spacedim> &x1,
107 const Point<spacedim> &x2)
const override;
112 virtual Tensor<1, spacedim>
114 const typename Triangulation<dim, spacedim>::face_iterator &face,
115 const Point<spacedim> &p)
const override;
121 get_normals_at_vertices(
122 const typename Triangulation<dim, spacedim>::face_iterator &face,
123 typename Manifold<dim, spacedim>::FaceVertexNormals &face_vertex_normals)
141 get_new_points(
const ArrayView<
const Point<spacedim>> &surrounding_points,
142 const Table<2, double> &weights,
143 ArrayView<Point<spacedim>> new_points)
const override;
149 virtual Point<spacedim>
150 get_new_point(
const ArrayView<
const Point<spacedim>> &vertices,
151 const ArrayView<const double> &weights)
const override;
165 std::pair<double, Tensor<1, spacedim>>
166 guess_new_point(
const ArrayView<
const Tensor<1, spacedim>> &directions,
167 const ArrayView<const double> &distances,
168 const ArrayView<const double> &weights)
const;
188 do_get_new_points(
const ArrayView<
const Point<spacedim>> &surrounding_points,
189 const ArrayView<const double> &weights,
190 ArrayView<Point<spacedim>> new_points)
const;
208 #include <deal.II/grid/manifold_lib.h> 211 using ::SphericalManifold;
MGTransferMatrixFree< dim, NumberType > MGTransferMF
const PolarManifold< spacedim > polar_manifold
const Point< spacedim > center