truncatedCone Class Reference

A zoneGenerator which selects points, cells or faces with centres either inside or outside a truncatedCone. More...

Inheritance diagram for truncatedCone:
Collaboration diagram for truncatedCone:

Public Member Functions

 TypeName ("truncatedCone")
 Runtime type information. More...
 
 truncatedCone (const word &name, const polyMesh &mesh, const dictionary &dict)
 Construct from dictionary. More...
 
virtual ~truncatedCone ()
 Destructor. More...
 
virtual zoneSet generate () const
 Generate and return the zoneSet. More...
 
- Public Member Functions inherited from volume
 volume (const word &name, const polyMesh &mesh, const dictionary &dict)
 Construct from dictionary. More...
 
virtual ~volume ()
 Destructor. More...
 
template<class ZoneType , class UnaryOp , class ZoneGenType >
Foam::labelList select (const ZoneGenType &zoneGen, const vectorField &pts, const UnaryOp &uop) const
 
template<class ZoneType , class UnaryOp , class ZoneGenType >
Foam::labelList select (const ZoneGenType &zoneGen, const zoneGeneratorList &zoneGenerators, const vectorField &pts, const UnaryOp &uop) const
 
template<class ZoneType , class ZoneGenType >
Foam::labelList selectOp (const ZoneGenType &zoneGen, const zoneGeneratorList &zoneGenerators, const vectorField &pts) const
 
template<class UnaryOp , class ZoneGenType >
Foam::labelList select (const ZoneGenType &zoneGen, const zoneGeneratorList &zoneGenerators, const vectorField &pts, boolList &flipMap, const UnaryOp &uop) const
 
template<class ZoneGenType >
Foam::labelList selectOp (const ZoneGenType &zoneGen, const zoneGeneratorList &zoneGenerators, const vectorField &pts, boolList &flipMap) const
 
template<class ZoneGenType >
Foam::zoneSet generate (const ZoneGenType &zoneGen) const
 
- Public Member Functions inherited from zoneGenerator
 TypeName ("zoneGenerator")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, zoneGenerator, dictionary,(const word &name, const polyMesh &mesh, const dictionary &dict),(name, mesh, dict))
 
 zoneGenerator (const word &name, const polyMesh &mesh, const dictionary &dict)
 Construct from name, polyMesh and dictionary. More...
 
 zoneGenerator (const zoneGenerator &)=delete
 Disallow default bitwise copy construction. More...
 
virtual ~zoneGenerator ()
 Destructor. More...
 
const wordname () const
 
const wordzoneName () const
 
bool moveUpdate () const
 Return true if the zoneGenerator updates any of the zones. More...
 
virtual zoneSet movePoints () const
 Regenerate the zoneSet following mesh point motion. More...
 
void operator= (const zoneGenerator &)=delete
 Disallow default bitwise assignment. More...
 

Friends

class volume
 

Additional Inherited Members

- Static Public Member Functions inherited from zoneGenerator
static autoPtr< zoneGeneratorNew (const word &name, const polyMesh &mesh, const dictionary &dict)
 Select constructed from name, mesh and dictionary. More...
 
static autoPtr< zoneGeneratorNew (const word &name, const zoneTypes &zoneType, const polyMesh &mesh, const dictionary &dict)
 Select constructed from name, zoneType, mesh and dictionary. More...
 
static autoPtr< zoneGeneratorNew (const polyMesh &mesh, const dictionary &dict)
 Select constructed from mesh and first valid dictionary. More...
 
static labelList indices (const boolList &selected)
 Return the list of selected indices. More...
 
- Protected Types inherited from volume
enum class  selection { inside , outside }
 Enumeration for inside/outside selection. More...
 
- Protected Member Functions inherited from volume
template<class ZoneType , class UnaryOp , class ZoneGenType >
labelList select (const ZoneGenType &zoneGen, const vectorField &pts, const UnaryOp &uop) const
 
template<class ZoneType , class UnaryOp , class ZoneGenType >
labelList select (const ZoneGenType &zoneGen, const zoneGeneratorList &zoneGenerators, const vectorField &pts, const UnaryOp &uop) const
 
template<class ZoneType , class ZoneGenType >
labelList selectOp (const ZoneGenType &zoneGen, const zoneGeneratorList &zoneGenerators, const vectorField &pts) const
 
template<class UnaryOp , class ZoneGenType >
labelList select (const ZoneGenType &zoneGen, const zoneGeneratorList &zoneGenerators, const vectorField &pts, boolList &flipMap, const UnaryOp &uop) const
 
template<class ZoneGenType >
labelList selectOp (const ZoneGenType &zoneGen, const zoneGeneratorList &zoneGenerators, const vectorField &pts, boolList &flipMap) const
 
template<class ZoneGenType >
zoneSet generate (const ZoneGenType &zone) const
 Generate the zone of the given type. More...
 
- Static Protected Member Functions inherited from volume
static NamedEnum< selection, 2 >::namesType selectionNames_ ()
 Initialisation function for selection enumeration names. More...
 
- Protected Attributes inherited from volume
zoneTypes zoneType_
 
selection select_
 Inside/outside selection. More...
 
zoneGeneratorList zoneGenerators_
 Optional list of zoneGenerators which provide the zones to sub-set. More...
 
- Protected Attributes inherited from zoneGenerator
const word name_
 Name of zone generator. More...
 
const dictionary dict_
 Dictionary cached for error context. More...
 
const word zoneName_
 Name of the zone (defaults to the name of the generator) More...
 
const polyMeshmesh_
 Reference to the polyMesh. More...
 
bool moveUpdate_
 Switch to update the zones if the mesh points are moved. More...
 
- Static Protected Attributes inherited from volume
static const NamedEnum< selection, 2 > selectionNames
 Enumeration names for inside/outside selection. More...
 

Detailed Description

A zoneGenerator which selects points, cells or faces with centres either inside or outside a truncatedCone.

By default all the points, cells or faces of the mesh are tested for being inside or outside the truncatedCone but an optional single zone or list of zones may be provided and those points, cells or faces are tested instead. This provides an efficient method of hierarchical sub-division of space where an initial selection of points cells or faces is refined by selecting the sub-set inside or outside the given truncatedCone rather than having to generate another zone to intersect with.

Usage
Property Description Required Default value
type Type: truncatedCone yes
name Name of the zone no zoneGenerator name
zoneType Type of zone yes
select Select either the inside or outside no inside
moveUpdate Switch to update after mesh motion no false
point1 First point on cone axis yes
radius1 Radius of the cone at point1 yes
point2 Second point on cone axis yes
radius2 Radius of the cone at point2 yes
zone Optional zone to sub-set no
zones Optional list of zones to sub-set no

A cellZone named cone1 containing the cells with centres inside a cone can be generated by

        cone1
        {
            type        truncatedCone;
            zoneType    cell;

            point1      (-0.0075 0 -1);
            point2      (-0.003 0.0025 1);
            radius1     0.001;
            radius2     0.001;
        }
See also
zoneGenerators::volume
Source files

Definition at line 153 of file truncatedCone.H.

Constructor & Destructor Documentation

◆ truncatedCone()

truncatedCone ( const word name,
const polyMesh mesh,
const dictionary dict 
)

Construct from dictionary.

Definition at line 66 of file truncatedCone.C.

◆ ~truncatedCone()

~truncatedCone ( )
virtual

Destructor.

Definition at line 85 of file truncatedCone.C.

Member Function Documentation

◆ TypeName()

TypeName ( "truncatedCone"  )

Runtime type information.

◆ generate()

Foam::zoneSet generate ( ) const
virtual

Generate and return the zoneSet.

Implements volume.

Definition at line 91 of file truncatedCone.C.

References volume::generate().

Here is the call graph for this function:

Friends And Related Function Documentation

◆ volume

friend class volume
friend

Definition at line 180 of file truncatedCone.H.


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