Sliding interface mesh modifier. Given two face zones, couple the master and slave side using a cutting procedure. More...

Inheritance diagram for slidingInterface:
Collaboration diagram for slidingInterface:

Public Types

enum  typeOfMatch { INTEGRAL, PARTIAL }
 Type of match. More...
 

Public Member Functions

 TypeName ("slidingInterface")
 Runtime type information. More...
 
 slidingInterface (const word &name, const label index, const polyTopoChanger &mme, const word &masterFaceZoneName, const word &slaveFaceZoneName, const word &cutPointZoneName, const word &cutFaceZoneName, const word &masterPatchName, const word &slavePatchName, const typeOfMatch tom, const bool coupleDecouple=false, const intersection::algorithm algo=intersection::VISIBLE)
 Construct from components. More...
 
 slidingInterface (const word &name, const dictionary &dict, const label index, const polyTopoChanger &mme)
 Construct from dictionary. More...
 
virtual ~slidingInterface ()
 Destructor. More...
 
const faceZoneIDmasterFaceZoneID () const
 Return master face zone ID. More...
 
const faceZoneIDslaveFaceZoneID () const
 Return slave face zone ID. More...
 
bool attached () const
 Return true if attached. More...
 
virtual bool changeTopology () const
 Check for topology change. More...
 
virtual void setRefinement (polyTopoChange &) const
 Insert the layer addition/removal instructions. More...
 
virtual void modifyMotionPoints (pointField &motionPoints) const
 Modify motion points to comply with the topological change. More...
 
virtual void updateMesh (const mapPolyMesh &)
 Force recalculation of locally stored data on topological change. More...
 
const pointFieldpointProjection () const
 Return projected points for a slave patch. More...
 
void setTolerances (const dictionary &, bool report=false)
 Set the tolerances from the values in a dictionary. More...
 
virtual void write (Ostream &) const
 Write. More...
 
virtual void writeDict (Ostream &) const
 Write dictionary. More...
 
- Public Member Functions inherited from polyMeshModifier
 TypeName ("meshModifier")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, polyMeshModifier, dictionary,(const word &name, const dictionary &dict, const label index, const polyTopoChanger &mme),(name, dict, index, mme))
 
 polyMeshModifier (const word &name, const label index, const polyTopoChanger &mme, const bool act)
 Construct from components. More...
 
virtual ~polyMeshModifier ()
 Destructor. More...
 
const wordname () const
 Return name. More...
 
label index () const
 Return the index of this patch in the boundaryMesh. More...
 
const polyTopoChangertopoChanger () const
 Return reference to morph engine. More...
 
const Switchactive () const
 
void enable () const
 Activate mesh modifier. More...
 
void disable () const
 Activate mesh modifier. More...
 

Static Public Attributes

static const NamedEnum
< typeOfMatch, 2 > 
typeOfMatchNames_
 Direction names. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from polyMeshModifier
static autoPtr< polyMeshModifierNew (const word &name, const dictionary &dict, const label index, const polyTopoChanger &mme)
 Select constructed from dictionary. More...
 

Detailed Description

Sliding interface mesh modifier. Given two face zones, couple the master and slave side using a cutting procedure.

The coupled faces are collected into the "coupled" zone and can become either internal or placed into a master and slave coupled zone. The remaining faces (uncovered master or slave) are placed into the master and slave patch.

The definition of the sliding interface can be either integral or partial. Integral interface implies that the slave side completely covers the master (i.e. no faces are uncovered); partial interface implies that the uncovered part of master/slave face zone should become boundary faces.

Source files

Definition at line 72 of file slidingInterface.H.

Member Enumeration Documentation

Type of match.

Enumerator
INTEGRAL 
PARTIAL 

Definition at line 81 of file slidingInterface.H.

Constructor & Destructor Documentation

slidingInterface ( const word name,
const label  index,
const polyTopoChanger mme,
const word masterFaceZoneName,
const word slaveFaceZoneName,
const word cutPointZoneName,
const word cutFaceZoneName,
const word masterPatchName,
const word slavePatchName,
const typeOfMatch  tom,
const bool  coupleDecouple = false,
const intersection::algorithm  algo = intersection::VISIBLE 
)

Construct from components.

Definition at line 125 of file slidingInterface.C.

References Foam::abort(), and FatalErrorIn.

Here is the call graph for this function:

slidingInterface ( const word name,
const dictionary dict,
const label  index,
const polyTopoChanger mme 
)

Construct from dictionary.

Definition at line 231 of file slidingInterface.C.

References Foam::endl(), and dictionary::lookup().

Here is the call graph for this function:

~slidingInterface ( )
virtual

Destructor.

Definition at line 330 of file slidingInterface.C.

References slidingInterface::~slidingInterface().

Referenced by slidingInterface::~slidingInterface().

Here is the call graph for this function:

Here is the caller graph for this function:

Member Function Documentation

TypeName ( "slidingInterface"  )

Runtime type information.

const Foam::faceZoneID & masterFaceZoneID ( ) const

Return master face zone ID.

Definition at line 345 of file slidingInterface.C.

References slidingInterface::masterFaceZoneID().

Referenced by slidingInterface::masterFaceZoneID().

Here is the call graph for this function:

Here is the caller graph for this function:

const Foam::faceZoneID & slaveFaceZoneID ( ) const

Return slave face zone ID.

Definition at line 351 of file slidingInterface.C.

References slidingInterface::slaveFaceZoneID().

Referenced by slidingInterface::slaveFaceZoneID().

Here is the call graph for this function:

Here is the caller graph for this function:

bool attached ( ) const
inline

Return true if attached.

Definition at line 354 of file slidingInterface.H.

References slidingInterface::attached().

Referenced by slidingInterface::attached().

Here is the call graph for this function:

Here is the caller graph for this function:

bool changeTopology ( ) const
virtual

Check for topology change.

Implements polyMeshModifier.

Definition at line 357 of file slidingInterface.C.

References slidingInterface::changeTopology(), Foam::endl(), mesh, and name().

Referenced by slidingInterface::changeTopology().

Here is the call graph for this function:

Here is the caller graph for this function:

void setRefinement ( polyTopoChange ref) const
virtual

Insert the layer addition/removal instructions.

into the topological change

Implements polyMeshModifier.

Definition at line 398 of file slidingInterface.C.

References slidingInterface::setRefinement().

Referenced by slidingInterface::setRefinement().

Here is the call graph for this function:

Here is the caller graph for this function:

void modifyMotionPoints ( pointField motionPoints) const
virtual
void updateMesh ( const mapPolyMesh m)
virtual

Force recalculation of locally stored data on topological change.

Implements polyMeshModifier.

Definition at line 667 of file slidingInterface.C.

References polyMesh::boundaryMesh(), Foam::endl(), polyMesh::faceZones(), name(), polyMesh::pointZones(), and slidingInterface::updateMesh().

Referenced by slidingInterface::updateMesh().

Here is the call graph for this function:

Here is the caller graph for this function:

const Foam::pointField & pointProjection ( ) const

Return projected points for a slave patch.

Definition at line 699 of file slidingInterface.C.

References slidingInterface::pointProjection().

Referenced by slidingInterface::pointProjection().

Here is the call graph for this function:

Here is the caller graph for this function:

void setTolerances ( const dictionary dict,
bool  report = false 
)

Set the tolerances from the values in a dictionary.

Definition at line 709 of file slidingInterface.C.

References Foam::endl(), dictionary::lookupOrDefault(), and slidingInterface::setTolerances().

Referenced by slidingInterface::setTolerances().

Here is the call graph for this function:

Here is the caller graph for this function:

void write ( Ostream os) const
virtual

Write.

Implements polyMeshModifier.

Definition at line 767 of file slidingInterface.C.

References Foam::endl(), name(), and Foam::type().

Here is the call graph for this function:

void writeDict ( Ostream os) const
virtual

Write dictionary.

Implements polyMeshModifier.

Definition at line 791 of file slidingInterface.C.

References Foam::endl(), name(), Foam::type(), WRITE_NON_DEFAULT, and slidingInterface::writeDict().

Referenced by slidingInterface::writeDict().

Here is the call graph for this function:

Here is the caller graph for this function:

Member Data Documentation

const Foam::NamedEnum< Foam::slidingInterface::typeOfMatch, 2 > typeOfMatchNames_
static

Direction names.

Definition at line 88 of file slidingInterface.H.


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