Reference documentation for deal.II version 8.5.1
Public Member Functions | Private Member Functions | Private Attributes | List of all members
OpenCASCADE::NURBSPatchManifold< dim, spacedim > Class Template Reference

#include <deal.II/opencascade/boundary_lib.h>

Inheritance diagram for OpenCASCADE::NURBSPatchManifold< dim, spacedim >:
[legend]

Public Member Functions

virtual Point< 2 > pull_back (const Point< spacedim > &space_point) const
 
virtual Point< spacedim > push_forward (const Point< 2 > &chart_point) const
 
virtual DerivativeForm< 1, 2, spacedim > push_forward_gradient (const Point< 2 > &chart_point) const
 
- Public Member Functions inherited from ChartManifold< dim, spacedim, 2 >
 ChartManifold (const Tensor< 1, chartdim > &periodicity=Tensor< 1, chartdim >())
 
virtual ~ChartManifold ()
 
virtual Point< spacedim > get_new_point (const Quadrature< spacedim > &quad) const 1
 
virtual Point< spacedim > get_new_point (const std::vector< Point< spacedim > > &surrounding_points, const std::vector< double > &weights) const
 
virtual void add_new_points (const std::vector< Point< spacedim > > &surrounding_points, const Table< 2, double > &weights, std::vector< Point< spacedim > > &new_points) const
 
virtual Point< spacedim > push_forward (const Point< chartdim > &chart_point) const=0
 
virtual DerivativeForm< 1, chartdim, spacedim > push_forward_gradient (const Point< chartdim > &chart_point) const
 
virtual Tensor< 1, spacedim > get_tangent_vector (const Point< spacedim > &x1, const Point< spacedim > &x2) const
 
const Tensor< 1, chartdim > & get_periodicity () const
 
- Public Member Functions inherited from Manifold< dim, spacedim >
virtual ~Manifold ()
 
virtual Point< spacedim > get_intermediate_point (const Point< spacedim > &p1, const Point< spacedim > &p2, const double w) const
 
virtual Point< spacedim > project_to_manifold (const std::vector< Point< spacedim > > &surrounding_points, const Point< spacedim > &candidate) const
 
virtual Point< spacedim > get_new_point_on_line (const typename Triangulation< dim, spacedim >::line_iterator &line) const
 
virtual Point< spacedim > get_new_point_on_quad (const typename Triangulation< dim, spacedim >::quad_iterator &quad) const
 
virtual Point< spacedim > get_new_point_on_hex (const typename Triangulation< dim, spacedim >::hex_iterator &hex) const
 
Point< spacedim > get_new_point_on_face (const typename Triangulation< dim, spacedim >::face_iterator &face) const
 
Point< spacedim > get_new_point_on_cell (const typename Triangulation< dim, spacedim >::cell_iterator &cell) const
 
virtual Tensor< 1, spacedim > normal_vector (const typename Triangulation< dim, spacedim >::face_iterator &face, const Point< spacedim > &p) const
 
virtual void get_normals_at_vertices (const typename Triangulation< dim, spacedim >::face_iterator &face, FaceVertexNormals &face_vertex_normals) const
 
- Public Member Functions inherited from Subscriptor
 Subscriptor ()
 
 Subscriptor (const Subscriptor &)
 
 Subscriptor (Subscriptor &&)
 
virtual ~Subscriptor ()
 
Subscriptoroperator= (const Subscriptor &)
 
Subscriptoroperator= (Subscriptor &&)
 
void subscribe (const char *identifier=0) const
 
void unsubscribe (const char *identifier=0) const
 
unsigned int n_subscriptions () const
 
void list_subscribers () const
 
template<class Archive >
void serialize (Archive &ar, const unsigned int version)
 

Private Member Functions

std_cxx11::tuple< double, double, double, double > get_uv_bounds () const
 

Private Attributes

TopoDS_Face face
 
double tolerance
 

Additional Inherited Members

- Public Types inherited from Manifold< dim, spacedim >
typedef Tensor< 1, spacedim > FaceVertexNormals[GeometryInfo< dim >::vertices_per_face]
 
- Static Public Member Functions inherited from Subscriptor
static ::ExceptionBaseExcInUse (int arg1, char *arg2, std::string &arg3)
 
static ::ExceptionBaseExcNoSubscriber (char *arg1, char *arg2)
 

Detailed Description

template<int dim, int spacedim>
class OpenCASCADE::NURBSPatchManifold< dim, spacedim >

Manifold description for the face of a CAD imported usign OpenCASCADE.

Author
Andrea Mola, Mauro Bardelloni, 2016

Definition at line 332 of file boundary_lib.h.

Member Function Documentation

◆ pull_back()

template<int dim, int spacedim>
virtual Point<2> OpenCASCADE::NURBSPatchManifold< dim, spacedim >::pull_back ( const Point< spacedim > &  space_point) const
virtual

Pull back the given point from the Euclidean space. Will return the uv coordinates associated with the point space_point.

Implements ChartManifold< dim, spacedim, 2 >.

◆ push_forward()

template<int dim, int spacedim>
virtual Point<spacedim> OpenCASCADE::NURBSPatchManifold< dim, spacedim >::push_forward ( const Point< 2 > &  chart_point) const
virtual

Given a chart_point in the uv coordinate system, this method returns the Euclidean coordinates associated.

◆ push_forward_gradient()

template<int dim, int spacedim>
virtual DerivativeForm<1,2,spacedim> OpenCASCADE::NURBSPatchManifold< dim, spacedim >::push_forward_gradient ( const Point< 2 > &  chart_point) const
virtual

Given a point in the spacedim dimensional Euclidean space, this method returns the derivatives of the function \(F\) that maps from the uv coordinate system to the Euclidean coordinate system. In other words, it is a matrix of size \(\text{spacedim}\times\text{chartdim}\).

This function is used in the computations required by the get_tangent_vector() function.

Refer to the general documentation of this class for more information.

◆ get_uv_bounds()

template<int dim, int spacedim>
std_cxx11::tuple<double, double, double, double> OpenCASCADE::NURBSPatchManifold< dim, spacedim >::get_uv_bounds ( ) const
private

Return a tuple representing the minimum and maximum values of u and v. Precisely, it returns (u_min, u_max, v_min, v_max)

Member Data Documentation

◆ face

template<int dim, int spacedim>
TopoDS_Face OpenCASCADE::NURBSPatchManifold< dim, spacedim >::face
private

An OpenCASCADE TopoDS_Face face given by the CAD.

Definition at line 383 of file boundary_lib.h.

◆ tolerance

template<int dim, int spacedim>
double OpenCASCADE::NURBSPatchManifold< dim, spacedim >::tolerance
private

Tolerance used by OpenCASCADE to identify points in each operation.

Definition at line 389 of file boundary_lib.h.


The documentation for this class was generated from the following files: