All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
slidingInterface Class Reference

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::algorithm::visible)
 Construct from components. More...
 
 slidingInterface (const word &name, const dictionary &dict, const label index, const polyTopoChanger &mme)
 Construct from dictionary. More...
 
 slidingInterface (const slidingInterface &)=delete
 Disallow default bitwise copy construction. 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...
 
void operator= (const slidingInterface &)=delete
 Disallow default bitwise assignment. 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...
 
 polyMeshModifier (const polyMeshModifier &)=delete
 Disallow default bitwise copy construction. More...
 
virtual ~polyMeshModifier ()
 Destructor. More...
 
const wordname () const
 Return name of this modifier. More...
 
label index () const
 Return the index of this modifier. 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...
 
void operator= (const polyMeshModifier &)=delete
 Disallow default bitwise assignment. 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 71 of file slidingInterface.H.

Member Enumeration Documentation

◆ typeOfMatch

Type of match.

Enumerator
INTEGRAL 
PARTIAL 

Definition at line 80 of file slidingInterface.H.

Constructor & Destructor Documentation

◆ slidingInterface() [1/3]

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::algorithm::visible 
)

Construct from components.

Definition at line 122 of file slidingInterface.C.

References Foam::abort(), Foam::FatalError, and FatalErrorInFunction.

Referenced by NamedEnum< compressibleField, 8 >::names().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ slidingInterface() [2/3]

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

Construct from dictionary.

Definition at line 213 of file slidingInterface.C.

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

Here is the call graph for this function:

◆ slidingInterface() [3/3]

slidingInterface ( const slidingInterface )
delete

Disallow default bitwise copy construction.

◆ ~slidingInterface()

~slidingInterface ( )
virtual

Destructor.

Definition at line 312 of file slidingInterface.C.

References Foam::deleteDemandDrivenData().

Here is the call graph for this function:

Member Function Documentation

◆ TypeName()

TypeName ( "slidingInterface"  )

Runtime type information.

◆ masterFaceZoneID()

const Foam::faceZoneID & masterFaceZoneID ( ) const

Return master face zone ID.

Definition at line 327 of file slidingInterface.C.

◆ slaveFaceZoneID()

const Foam::faceZoneID & slaveFaceZoneID ( ) const

Return slave face zone ID.

Definition at line 333 of file slidingInterface.C.

◆ attached()

◆ changeTopology()

bool changeTopology ( ) const
virtual

Check for topology change.

Implements polyMeshModifier.

Definition at line 339 of file slidingInterface.C.

References Foam::endl(), mesh, Foam::name(), and Foam::Pout.

Referenced by slidingInterface::attached().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setRefinement()

void setRefinement ( polyTopoChange ref) const
virtual

Insert the layer addition/removal instructions.

into the topological change

Implements polyMeshModifier.

Definition at line 380 of file slidingInterface.C.

Referenced by slidingInterface::attached().

Here is the caller graph for this function:

◆ modifyMotionPoints()

◆ updateMesh()

void updateMesh ( const mapPolyMesh m)
virtual

Force recalculation of locally stored data on topological change.

Implements polyMeshModifier.

Definition at line 646 of file slidingInterface.C.

References polyMesh::boundaryMesh(), Foam::endl(), polyMesh::faceZones(), mesh, Foam::name(), polyMesh::pointZones(), Foam::Pout, and dynamicFvMesh::update().

Referenced by slidingInterface::attached().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ pointProjection()

const Foam::pointField & pointProjection ( ) const

Return projected points for a slave patch.

Definition at line 678 of file slidingInterface.C.

Referenced by slidingInterface::attached().

Here is the caller graph for this function:

◆ setTolerances()

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

Set the tolerances from the values in a dictionary.

Definition at line 688 of file slidingInterface.C.

References Foam::endl(), Foam::Info, dictionary::lookupOrDefault(), and Foam::nl.

Referenced by slidingInterface::attached().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ write()

void write ( Ostream os) const
virtual

Write.

Implements polyMeshModifier.

Definition at line 746 of file slidingInterface.C.

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

Referenced by slidingInterface::attached().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ writeDict()

void writeDict ( Ostream os) const
virtual

Write dictionary.

Implements polyMeshModifier.

Definition at line 770 of file slidingInterface.C.

References intersection::algorithmNames_, token::BEGIN_BLOCK, token::END_BLOCK, token::END_STATEMENT, Foam::endl(), Foam::name(), Foam::nl, Foam::type(), WRITE_NON_DEFAULT, and Foam::writeEntry().

Referenced by slidingInterface::attached().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ operator=()

void operator= ( const slidingInterface )
delete

Disallow default bitwise assignment.

Referenced by slidingInterface::attached().

Here is the caller graph for this function:

Member Data Documentation

◆ typeOfMatchNames_

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

Direction names.

Definition at line 87 of file slidingInterface.H.

Referenced by NamedEnum< compressibleField, 8 >::names().


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