surfaceDisplacementPointPatchVectorField Class Reference

Displacement fixed by projection onto triSurface. Use in a displacementMotionSolver as a bc on the pointDisplacement field. More...

Inheritance diagram for surfaceDisplacementPointPatchVectorField:
Collaboration diagram for surfaceDisplacementPointPatchVectorField:

Public Types

enum  projectMode { NEAREST , POINTNORMAL , FIXEDNORMAL }
 

Public Member Functions

 TypeName ("surfaceDisplacement")
 Runtime type information. More...
 
 surfaceDisplacementPointPatchVectorField (const pointPatch &, const DimensionedField< vector, pointMesh > &, const dictionary &)
 Construct from patch, internal field and dictionary. More...
 
 surfaceDisplacementPointPatchVectorField (const surfaceDisplacementPointPatchVectorField &, const pointPatch &, const DimensionedField< vector, pointMesh > &, const pointPatchFieldMapper &)
 Construct by mapping given patchField<vector> onto a new patch. More...
 
 surfaceDisplacementPointPatchVectorField (const surfaceDisplacementPointPatchVectorField &)=delete
 Disallow copy without setting internal field reference. More...
 
 surfaceDisplacementPointPatchVectorField (const surfaceDisplacementPointPatchVectorField &, const DimensionedField< vector, pointMesh > &)
 Copy constructor setting internal field reference. More...
 
virtual autoPtr< pointPatchVectorFieldclone (const DimensionedField< vector, pointMesh > &iF) const
 Construct and return a clone setting internal field reference. More...
 
const searchableSurfacessurfaces () const
 Surface to follow. Demand loads surfaceNames. More...
 
virtual void updateCoeffs ()
 Update the coefficients associated with the patch field. More...
 
virtual void write (Ostream &) const
 Write. More...
 
void operator= (const surfaceDisplacementPointPatchVectorField &)=delete
 Disallow default bitwise assignment. More...
 

Detailed Description

Displacement fixed by projection onto triSurface. Use in a displacementMotionSolver as a bc on the pointDisplacement field.

Calculates the projection onto the surface according to the projectMode

  • NEAREST : nearest
  • POINTNORMAL : intersection with point normal
  • FIXEDNORMAL : intersection with fixed vector

This displacement is then clipped with the specified velocity * deltaT.

Optionally (intersection only) removes a component ("wedgePlane") to stay in 2D.

Needs:

  • geometry : dictionary with searchableSurfaces. (usually triSurfaceMeshes in constant/triSurface)
  • projectMode : see above
  • projectDirection : if projectMode = fixedNormal
  • wedgePlane : -1 or component to knock out of intersection normal
  • frozenPointsZone : empty or name of pointZone containing points that do not move
Source files

Definition at line 73 of file surfaceDisplacementPointPatchVectorField.H.

Member Enumeration Documentation

◆ projectMode

Enumerator
NEAREST 
POINTNORMAL 
FIXEDNORMAL 

Definition at line 81 of file surfaceDisplacementPointPatchVectorField.H.

Constructor & Destructor Documentation

◆ surfaceDisplacementPointPatchVectorField() [1/4]

Construct from patch, internal field and dictionary.

Definition at line 307 of file surfaceDisplacementPointPatchVectorField.C.

References Foam::exit(), Foam::FatalError, FatalErrorInFunction, Foam::nl, Vector< Cmpt >::x(), Vector< Cmpt >::y(), and Vector< Cmpt >::z().

Here is the call graph for this function:

◆ surfaceDisplacementPointPatchVectorField() [2/4]

Construct by mapping given patchField<vector> onto a new patch.

Definition at line 334 of file surfaceDisplacementPointPatchVectorField.C.

◆ surfaceDisplacementPointPatchVectorField() [3/4]

Disallow copy without setting internal field reference.

◆ surfaceDisplacementPointPatchVectorField() [4/4]

Copy constructor setting internal field reference.

Definition at line 353 of file surfaceDisplacementPointPatchVectorField.C.

Member Function Documentation

◆ TypeName()

TypeName ( "surfaceDisplacement"  )

Runtime type information.

◆ clone()

virtual autoPtr<pointPatchVectorField> clone ( const DimensionedField< vector, pointMesh > &  iF) const
inlinevirtual

Construct and return a clone setting internal field reference.

Definition at line 162 of file surfaceDisplacementPointPatchVectorField.H.

◆ surfaces()

const searchableSurfaces & surfaces ( ) const

Surface to follow. Demand loads surfaceNames.

Definition at line 373 of file surfaceDisplacementPointPatchVectorField.C.

References searchableSurface::geometryDir(), IOobject::MUST_READ, and IOobject::NO_WRITE.

Here is the call graph for this function:

◆ updateCoeffs()

void updateCoeffs ( )
virtual

Update the coefficients associated with the patch field.

Definition at line 399 of file surfaceDisplacementPointPatchVectorField.C.

References polyMesh::boundaryMesh(), TimeState::deltaTValue(), forAll, Foam::max(), polyBoundaryMesh::mesh(), Foam::min(), VectorSpace< Form, Cmpt, Ncmpts >::nComponents, Foam::offset(), Foam::operator==(), and objectRegistry::time().

Here is the call graph for this function:

◆ write()

void write ( Ostream os) const
virtual

Write.

Definition at line 445 of file surfaceDisplacementPointPatchVectorField.C.

References word::null, Foam::vtkWriteOps::write(), and Foam::writeEntry().

Here is the call graph for this function:

◆ operator=()

void operator= ( const surfaceDisplacementPointPatchVectorField )
delete

Disallow default bitwise assignment.


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