$treeview $search $mathjax
|
Palabos
Version 1.1
$projectbrief
|
$projectbrief
|
$searchbox |
#include <triangleBoundary3D.h>

Public Member Functions | |
| TriangleBoundary3D (DEFscaledMesh< T > const &defMesh, bool automaticCloseHoles=true) | |
| ~TriangleBoundary3D () | |
| TriangleBoundary3D (TriangleBoundary3D< T > const &rhs) | |
| TriangleBoundary3D< T > & | operator= (TriangleBoundary3D< T > const &rhs) |
| void | swap (TriangleBoundary3D< T > &rhs) |
| TriangleBoundary3D< T > const & | select (plint whichTopology, plint whichVertices) const |
| TriangleBoundary3D< T > const & | pushSelect (plint whichTopology, plint whichVertices) const |
| TriangleBoundary3D< T > const & | popSelect () const |
| void | getSelection (plint &whichTopology, plint &whichVertices) const |
| TriangularSurfaceMesh< T > & | getMesh () |
| Get a reference to the currently active mesh. | |
| TriangularSurfaceMesh< T > const & | getMesh () const |
| Get a const reference to the currently active mesh. | |
| VertexProperty3D< T > const * | getVertexProperty (plint iVertex) const |
| bool | intersectSegment (plint iTriangle, AtomicBlock3D *boundaryArg, Array< T, 3 > const &fromPoint, Array< T, 3 > const &direction, Array< T, 3 > &locatedPoint, T &distance, Array< T, 3 > &wallNormal) const |
| Array< T, 3 > | computeContinuousNormal (Array< T, 3 > const &p, plint iTriangle, bool isAreaWeighted=false) const |
| void | cloneVertexSet (plint whichVertexSet) |
| Create a new set of vertices, and an associated open and closed mesh. | |
| Array< T, 3 > | getPhysicalLocation () const |
| Coordinates of the lower-left corner in physical units. | |
| T | getDx () const |
| Size of a grid spacing. | |
| std::vector< typename TriangularSurfaceMesh< T > ::Lid > const & | getInletOutlet () const |
| Get a list of all inlets and outlets (no specific sorting order). | |
| std::vector< typename TriangularSurfaceMesh< T > ::Lid > | getInletOutlet (plint sortDirection) const |
| Get a list of all inlets and outlets, sorted along a given direction. | |
| template<typename DomainFunctional > | |
| plint | tagDomain (DomainFunctional functional) |
| template<typename DomainFunctional > | |
| plint | tagDomain (DomainFunctional functional, Array< T, 3 > normal, T angleTolerance, plint previousTag=-1) |
| std::vector< plint > | getInletOutletIds (plint sortDirection) const |
| void | getLidProperties (plint sortDirection, std::vector< Array< T, 3 > > &normal, std::vector< Array< T, 3 > > ¢er, std::vector< T > &radius) const |
| template<typename DomainFunctional > | |
| plint | setVertexProperty (VertexProperty3D< T > const &property, DomainFunctional functional) |
| plint | getMargin () const |
| plint | getTag (plint iTriangle) const |
| std::vector< plint > const & | getTriangleTags () const |
| std::vector< plint > const & | getVertexTags () const |
| plb::TriangleBoundary3D< T >::TriangleBoundary3D | ( | DEFscaledMesh< T > const & | defMesh, | |
| bool | automaticCloseHoles = true | |||
| ) | [inline] |
| plb::TriangleBoundary3D< T >::~TriangleBoundary3D | ( | ) | [inline] |
| plb::TriangleBoundary3D< T >::TriangleBoundary3D | ( | TriangleBoundary3D< T > const & | rhs | ) | [inline] |
| void plb::TriangleBoundary3D< T >::cloneVertexSet | ( | plint | whichVertexSet | ) | [inline] |
Create a new set of vertices, and an associated open and closed mesh.
References PLB_PRECONDITION.
| Array< T, 3 > plb::TriangleBoundary3D< T >::computeContinuousNormal | ( | Array< T, 3 > const & | p, | |
| plint | iTriangle, | |||
| bool | isAreaWeighted = false | |||
| ) | const [inline] |
Given a point p on the surface of the shape, determine its "continuous normal". If the shape is for example piecewise linear, the normal is adjusted to vary continuously over the surface.
References plb::TriangleBoundary3D< T >::getMesh().
| T plb::TriangleBoundary3D< T >::getDx | ( | ) | const [inline] |
Size of a grid spacing.
| std::vector< typename TriangularSurfaceMesh< T >::Lid > plb::TriangleBoundary3D< T >::getInletOutlet | ( | plint | sortDirection | ) | const [inline] |
Get a list of all inlets and outlets, sorted along a given direction.
This information can be used as a hint to select the boundary condition associated to each inlet/outlet. Access the variable lid.baryCenter to know the location of a given inlet/outlet.
References plb::TriangleBoundary3D< T >::getMesh(), and PLB_PRECONDITION.
| std::vector< typename TriangularSurfaceMesh< T >::Lid > const & plb::TriangleBoundary3D< T >::getInletOutlet | ( | ) | const [inline] |
Get a list of all inlets and outlets (no specific sorting order).
References PLB_PRECONDITION.
| std::vector< plint > plb::TriangleBoundary3D< T >::getInletOutletIds | ( | plint | sortDirection | ) | const [inline] |
References plb::TriangleBoundary3D< T >::getMesh().
Referenced by plb::BoundaryProfiles3D< T, SurfaceData >::defineInletOutletTags().
| void plb::TriangleBoundary3D< T >::getLidProperties | ( | plint | sortDirection, | |
| std::vector< Array< T, 3 > > & | normal, | |||
| std::vector< Array< T, 3 > > & | center, | |||
| std::vector< T > & | radius | |||
| ) | const [inline] |
References plb::computeBaryCenter(), plb::computeInnerRadius(), plb::computeNormal(), plb::computeOuterRadius(), plb::TriangleBoundary3D< T >::getMesh(), and PLB_PRECONDITION.
Referenced by plb::BoundaryProfiles3D< T, SurfaceData >::adjustInletOutlet(), and plb::BoundaryProfiles3D< T, SurfaceData >::defineInletOutletTags().
| plint plb::TriangleBoundary3D< T >::getMargin | ( | ) | const [inline] |
| TriangularSurfaceMesh< T > const & plb::TriangleBoundary3D< T >::getMesh | ( | ) | const [inline] |
Get a const reference to the currently active mesh.
| TriangularSurfaceMesh< T > & plb::TriangleBoundary3D< T >::getMesh | ( | ) | [inline] |
Get a reference to the currently active mesh.
Referenced by plb::TriangleBoundary3D< T >::computeContinuousNormal(), plb::TriangleBoundary3D< T >::getInletOutlet(), plb::TriangleBoundary3D< T >::getInletOutletIds(), plb::TriangleBoundary3D< T >::getLidProperties(), plb::TriangleBoundary3D< T >::intersectSegment(), plb::TriangleBoundary3D< T >::setVertexProperty(), and plb::TriangleBoundary3D< T >::tagDomain().
| Array<T,3> plb::TriangleBoundary3D< T >::getPhysicalLocation | ( | ) | const [inline] |
Coordinates of the lower-left corner in physical units.
| void plb::TriangleBoundary3D< T >::getSelection | ( | plint & | whichTopology, | |
| plint & | whichVertices | |||
| ) | const [inline] |
| plint plb::TriangleBoundary3D< T >::getTag | ( | plint | iTriangle | ) | const [inline] |
Return the tag (id of boundary-portion with specific boundary condition) of a triangle.
References PLB_ASSERT.
| std::vector<plint> const& plb::TriangleBoundary3D< T >::getTriangleTags | ( | ) | const [inline] |
Referenced by plb::BoundaryProfiles3D< T, SurfaceData >::getProfile().
| VertexProperty3D< T > const * plb::TriangleBoundary3D< T >::getVertexProperty | ( | plint | iVertex | ) | const [inline] |
Get the material property (for example the elasticity constants) implemented on a given vertex (the answer is independent of the currently active mesh).
References PLB_ASSERT.
| std::vector<plint> const& plb::TriangleBoundary3D< T >::getVertexTags | ( | ) | const [inline] |
| bool plb::TriangleBoundary3D< T >::intersectSegment | ( | plint | iTriangle, | |
| AtomicBlock3D * | boundaryArg, | |||
| Array< T, 3 > const & | fromPoint, | |||
| Array< T, 3 > const & | direction, | |||
| Array< T, 3 > & | locatedPoint, | |||
| T & | distance, | |||
| Array< T, 3 > & | wallNormal | |||
| ) | const [inline] |
Get intersection between a line segment (fromPoint,fromPoint+direction) and a given triangle in the currently active mesh; return true incase of success.
References plb::doesIntersect(), and plb::TriangleBoundary3D< T >::getMesh().
| TriangleBoundary3D< T > & plb::TriangleBoundary3D< T >::operator= | ( | TriangleBoundary3D< T > const & | rhs | ) | [inline] |
References plb::TriangleBoundary3D< T >::swap().
| TriangleBoundary3D< T > const & plb::TriangleBoundary3D< T >::popSelect | ( | ) | const [inline] |
Recover the previous selection of the mesh, stored through a call to pushSelect.
References PLB_PRECONDITION.
| TriangleBoundary3D< T > const & plb::TriangleBoundary3D< T >::pushSelect | ( | plint | whichTopology, | |
| plint | whichVertices | |||
| ) | const [inline] |
Select the mesh which is subsequently being referred to in calls to the methods of this class. Save the previous selection, which can be recovered through a call to popSelect.
References PLB_PRECONDITION.
| TriangleBoundary3D< T > const & plb::TriangleBoundary3D< T >::select | ( | plint | whichTopology, | |
| plint | whichVertices | |||
| ) | const [inline] |
Select the mesh which is subsequently being referred to in calls to the methods of this class.
References PLB_PRECONDITION.
| plint plb::TriangleBoundary3D< T >::setVertexProperty | ( | VertexProperty3D< T > const & | property, | |
| DomainFunctional | functional | |||
| ) | [inline] |
Define the material property to be used on all vertices contained in the domain specified by the domain functional. Returns the tag which was assigned to the corresponding vertices.
References plb::VertexProperty3D< T >::clone(), plb::TriangleBoundary3D< T >::getMesh(), PLB_ASSERT, and PLB_PRECONDITION.
| void plb::TriangleBoundary3D< T >::swap | ( | TriangleBoundary3D< T > & | rhs | ) | [inline] |
Referenced by plb::TriangleBoundary3D< T >::operator=().
| plint plb::TriangleBoundary3D< T >::tagDomain | ( | DomainFunctional | functional, | |
| Array< T, 3 > | normal, | |||
| T | angleTolerance, | |||
| plint | previousTag = -1 | |||
| ) | [inline] |
| plint plb::TriangleBoundary3D< T >::tagDomain | ( | DomainFunctional | functional | ) | [inline] |
References plb::TriangleBoundary3D< T >::getMesh(), and PLB_PRECONDITION.
1.6.3
1.6.3