Go to the documentation of this file.
37 #ifndef interfaceTrackingFvMesh_H
38 #define interfaceTrackingFvMesh_H
73 wordList nonReflectingFreeSurfacePatches_;
76 wordList pointNormalsCorrectionPatches_;
96 Switch correctContactLineNormals_;
153 void makeControlPoints();
156 void makeMotionPointsMask();
159 void makeDirections();
162 void makeFsNetPhi()
const;
168 void makeBulkSurfactConc()
const;
171 void makeSurfactConc()
const;
174 void makeSurfaceTension()
const;
177 void makeSurfactant()
const;
180 void makeContactAngle();
189 void initializeData();
192 void updateDisplacementDirections();
195 void initializeControlPointsPosition();
210 void smoothFreeSurfaceMesh();
213 void updateSurfaceFlux();
216 void updateSurfactantConcentration();
219 vector totalPressureForce()
const;
222 vector totalViscousForce()
const;
225 vector totalSurfaceTensionForce()
const;
228 scalar maxCourantNumber();
231 void updateProperties();
234 void correctContactLinePointNormals();
237 void correctPointDisplacement
246 TypeName(
"interfaceTrackingFvMesh");
263 const bool syncPar =
true
297 return fsPatchIndex_;
303 return pureFreeSurface_;
309 return rigidFreeSurface_;
315 return rigidFreeSurface_;
321 return correctContactLineNormals_;
327 return correctContactLineNormals_;
387 return normalMotionDir_;
virtual const pointField & points() const
Return raw points.
const faMesh & aMesh() const
Return reference to finite area mesh.
Defines the attributes of an object for which implicit objectRegistry management is supported,...
faMesh & aMesh()
Return reference to finite area mesh.
A simple wrapper around bool so that it can be read as a word: true/false, on/off,...
volScalarField & bulkSurfactantConcentration()
Return volume surfactant concentration field.
A primitive field of type <T> with automated input and output.
areaScalarField & surfactantConcentration()
Return free-surface surfactant concentration field.
const dimensionedScalar & sigma() const
Surface tension coefficient of pure free-surface.
A class for managing temporary objects.
const Switch & pureFreeSurface() const
Pure free-surface.
The interfaceTrackingFvMesh.
void writeVTK() const
Write VTK freeSurface mesh.
const Switch & correctContactLineNormals() const
Correct contact line point normals.
const label & fsPatchIndex() const
tmp< scalarField > freeSurfacePressureJump()
Return free surface pressure jump.
void deleteDemandDrivenData(DataPtr &dataPtr)
void updateUs()
Update free-surface velocity field.
tmp< areaVectorField > surfaceTensionGrad()
Return surface tension gradient.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
const volScalarField & p() const
Return constant reference to pressure field.
vectorField & pointsDisplacementDir()
Return reference to point displacement direction field.
Switch & correctContactLineNormals()
Correct contact line point normals.
const Switch & rigidFreeSurface() const
Rigid free-surface.
const volVectorField & U() const
Return constant reference to velocity field.
Switch & rigidFreeSurface()
Rigid free-surface.
const areaScalarField & fsNetPhi() const
Return free-surface net flux.
tmp< vectorField > freeSurfaceSnGradU()
Return free surface normal derivative of velocity.
Mesh data needed to do the Finite Volume discretisation.
tmp< scalarField > freeSurfaceSnGradUn()
Return free surface normal derivative of normal velocity comp.
areaScalarField & surfaceTension()
Return surface tension field.
bool normalMotionDir() const
Motion direction swithc.
labelList & motionPointsMask()
Return reference to motion points mask field.
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
virtual const faceList & faces() const
Return raw faces.
TypeName("interfaceTrackingFvMesh")
Runtime type information.
void writeVTKControlPoints()
Write VTK freeSurface control points.
vectorField & facesDisplacementDir()
Return reference to control points displacement direction field.
void clearControlPoints()
Clear control points.
void correctUsBoundaryConditions()
Correct surface velocity boundary conditions.
const surfaceScalarField & phi() const
Return constant reference to velocity field.
Finite area mesh. Used for 2-D non-Euclidian finite area method.
vectorField & controlPoints()
Return control points.
virtual bool update()
Update the mesh for both mesh motion and topology change.
const surfactantProperties & surfactant() const
Return surfactant properties.
Generic GeometricField class.
const fvMesh & mesh() const
areaVectorField & Us()
Return free-surface velocity field.
edgeScalarField & Phis()
Return free-surface fluid flux field.
~interfaceTrackingFvMesh()
Destructor.
The dynamicMotionSolverFvMesh.