16 #ifndef dealii_manifold_lib_h 17 #define dealii_manifold_lib_h 27 #include <boost/container/small_vector.hpp> 62 template <
int dim,
int spacedim = dim>
79 virtual std::unique_ptr<Manifold<dim, spacedim>>
80 clone()
const override;
230 template <
int dim,
int spacedim = dim>
242 virtual std::unique_ptr<Manifold<dim, spacedim>>
243 clone()
const override;
255 const double w)
const override;
321 std::pair<double, Tensor<1, spacedim>>
386 template <
int dim,
int spacedim = dim>
397 const double tolerance = 1
e-10);
408 const double tolerance = 1
e-10);
413 virtual std::unique_ptr<Manifold<dim, spacedim>>
414 clone()
const override;
507 template <
int dim,
int spacedim = dim>
525 const double eccentricity);
527 virtual std::unique_ptr<Manifold<dim, spacedim>>
528 clone()
const override;
592 template <
int dim,
int spacedim = dim,
int chartdim = dim>
613 const double tolerance = 1
e-10);
630 const double tolerance = 1
e-10);
647 const std::string push_forward_expression,
648 const std::string pull_back_expression,
652 const std::string chart_vars =
654 const std::string space_vars =
656 const double tolerance = 1
e-10,
657 const double h = 1
e-8);
667 virtual std::unique_ptr<Manifold<dim, spacedim>>
668 clone()
const override;
791 static const int chartdim = 3;
792 static const int spacedim = 3;
804 virtual std::unique_ptr<Manifold<dim, 3>>
805 clone()
const override;
970 template <
int dim,
int spacedim = dim>
987 virtual std::unique_ptr<Manifold<dim, spacedim>>
988 clone()
const override;
1060 std::array<unsigned int, 20>
1061 get_possible_cells_around_points(
1072 compute_chart_points(
FlatManifold< dim > chart_manifold
static Tensor< 1, spacedim > get_periodicity()
const Triangulation< dim, spacedim > * triangulation
SymmetricTensor< 2, dim, Number > e(const Tensor< 2, dim, Number > &F)
const Point< spacedim > point_on_axis
std::vector< bool > coarse_cell_is_flat
const double finite_difference_step
const std::string pull_back_expression
const Point< spacedim > center
SmartPointer< const Function< spacedim >, FunctionManifold< dim, spacedim, chartdim > > pull_back_function
Tensor< 1, spacedim > direction
PolarManifold(const Point< spacedim > center=Point< spacedim >())
const PolarManifold< spacedim > polar_manifold
const std::string chart_vars
virtual Point< spacedim > push_forward(const Point< spacedim > &chart_point) const override
#define DEAL_II_NAMESPACE_CLOSE
SmartPointer< const Function< chartdim >, FunctionManifold< dim, spacedim, chartdim > > push_forward_function
const Point< spacedim > center
virtual void get_new_points(const ArrayView< const Point< spacedim >> &surrounding_points, const Table< 2, double > &weights, ArrayView< Point< spacedim >> new_points) const override
virtual Tensor< 1, spacedim > get_tangent_vector(const Point< spacedim > &x1, const Point< spacedim > &x2) const override
Tensor< 2, dim, Number > w(const Tensor< 2, dim, Number > &F, const Tensor< 2, dim, Number > &dF_dt)
virtual Point< spacedim > pull_back(const Point< spacedim > &space_point) const override
const std::string space_vars
virtual Point< spacedim > get_new_point(const ArrayView< const Point< spacedim >> &surrounding_points, const ArrayView< const double > &weights) const override
#define DEAL_II_NAMESPACE_OPEN
const Tensor< 1, spacedim > direction
const std::string push_forward_expression
std::array< Tensor< 1, spacedim >, GeometryInfo< dim >::vertices_per_face > FaceVertexNormals
const Tensor< 1, spacedim > normal_direction
const FunctionParser< spacedim >::ConstMap const_map
const ::parallel::distributed::Triangulation< dim, spacedim > * triangulation
boost::signals2::connection clear_signal
const Point< spacedim > center
virtual Tensor< 1, spacedim > normal_vector(const typename Triangulation< dim, spacedim >::face_iterator &face, const Point< spacedim > &p) const override
virtual void get_normals_at_vertices(const typename Triangulation< dim, spacedim >::face_iterator &face, FaceVertexNormals &face_vertex_normals) const
virtual std::unique_ptr< Manifold< dim, spacedim > > clone() const override
virtual DerivativeForm< 1, spacedim, spacedim > push_forward_gradient(const Point< spacedim > &chart_point) const override
virtual Point< spacedim > get_intermediate_point(const Point< spacedim > &p1, const Point< spacedim > &p2, const double w) const override