45 displacementMethodelasticityMotionSolver,
51displacementMethodelasticityMotionSolver::
52displacementMethodelasticityMotionSolver
90 ).subDict(
"elasticityMotionSolverCoeffs").getOrDefault<bool>
128 pointMovement.
boundaryField()[patchI].patchInternalField()();
159 const polyPatch&
patch =
mesh_.boundaryMesh()[patchI];
163 bField[fI] = patch[fI].average(
points, pointMovement);
180 cellMotionUbf[patchI] == cellMovement.boundaryField()[patchI];
187 gMax(
mag(cellMotionUbf[patchI]))
Macros for easy insertion into run-time selection tables.
#define addToRunTimeSelectionTable(baseType, thisType, argNames)
Add to construction table with typeName as the key.
Internal::FieldType & primitiveFieldRef(const bool updateAccessTime=true)
Return a reference to the internal field values.
Boundary & boundaryFieldRef(const bool updateAccessTime=true)
Return a reference to the boundary field.
void correctBoundaryConditions()
Correct boundary field.
const Boundary & boundaryField() const noexcept
Return const-reference to the boundary field.
IOdictionary is derived from dictionary and IOobject to give the dictionary automatic IO functionalit...
Defines the attributes of an object for which implicit objectRegistry management is supported,...
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Abstract base class for displacement methods, which are a set or wrapper classes allowing to change t...
autoPtr< motionSolver > motionPtr_
labelList patchIDs_
IDs of the patches to be moved.
Wrapper class for the elasticityMotionSolver motion solver.
virtual bool preferPointField() const
Whether the motion solver prefers a point of a vol field as input.
void setMotionField(const pointVectorField &pointMovement)
Set motion filed related to model based on given motion.
pointVectorField & pointMotionU_
volVectorField & cellMotionU_
void setControlField(const vectorField &controlField)
Set control field as a vectorField. For methods working with parameters (RBF etc).
Mesh deformation based on the linear elasticity equations. The boundary displacement is set as a boun...
Mesh data needed to do the Finite Volume discretisation.
A patch is a list of labels that address the faces in the global face list.
#define defineTypeNameAndDebug(Type, DebugSwitch)
Define the typeName and debug information.
#define NotImplemented
Issue a FatalErrorIn for a function not currently implemented.
Different types of constants.
const std::string patch
OpenFOAM patch number as a std::string.
Type & refCast(U &obj)
A dynamic_cast (for references) to Type reference.
label max(const labelHashSet &set, label maxValue=labelMin)
Find the max value in labelHashSet, optionally limited by second argument.
GeometricField< vector, fvPatchField, volMesh > volVectorField
List< label > labelList
A List of labels.
GeometricField< vector, pointPatchField, pointMesh > pointVectorField
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
dimensioned< typename typeOfMag< Type >::type > mag(const dimensioned< Type > &dt)
Field< vector > vectorField
Specialisation of Field<T> for vector.
static constexpr const zero Zero
Global zero (0).
vectorField pointField
pointField is a vectorField.
Type gMax(const FieldField< Field, Type > &f)
fvPatchField< vector > fvPatchVectorField
#define forAll(list, i)
Loop across all elements in list.