lumpedPointDisplacementPointPatchVectorField Class Reference

This is the point-patch responsible for managing the force integration on a 'lumped-point' basis, waiting for the external application, reading back the response from the external program and updating the locations of the associated patch points accordingly. More...

Inheritance diagram for lumpedPointDisplacementPointPatchVectorField:
[legend]
Collaboration diagram for lumpedPointDisplacementPointPatchVectorField:
[legend]

Public Member Functions

 TypeName ("lumpedPointDisplacement")
 Runtime type information. More...
 
 lumpedPointDisplacementPointPatchVectorField (const pointPatch &p, const DimensionedField< vector, pointMesh > &iF)
 Construct from patch and internal field. More...
 
 lumpedPointDisplacementPointPatchVectorField (const pointPatch &p, const DimensionedField< vector, pointMesh > &iF, const dictionary &dict)
 Construct from patch, internal field and dictionary. More...
 
 lumpedPointDisplacementPointPatchVectorField (const lumpedPointDisplacementPointPatchVectorField &rhs, const pointPatch &p, const DimensionedField< vector, pointMesh > &iF, const pointPatchFieldMapper &mapper)
 Construct by mapping given patchField<vector> onto a new patch. More...
 
virtual autoPtr< pointPatchField< vector > > clone () const
 Construct and return a clone. More...
 
 lumpedPointDisplacementPointPatchVectorField (const lumpedPointDisplacementPointPatchVectorField &rhs, const DimensionedField< vector, pointMesh > &iF)
 Construct as copy setting internal field reference. More...
 
virtual autoPtr< pointPatchField< vector > > clone (const DimensionedField< vector, pointMesh > &iF) const
 Construct and return a clone setting internal field reference. More...
 
virtual ~lumpedPointDisplacementPointPatchVectorField ()
 Destructor. De-register movement if in use and managed by this patch. More...
 
const wordListcontrollers () const
 The controller names for this patch. More...
 
virtual void updateCoeffs ()
 Update the coefficients associated with the patch field. More...
 
virtual void write (Ostream &os) const
 Write. More...
 
- Public Member Functions inherited from fixedValuePointPatchField< vector >
 TypeName ("fixedValue")
 Runtime type information. More...
 
 fixedValuePointPatchField (const pointPatch &, const DimensionedField< vector, pointMesh > &)
 Construct from patch and internal field. More...
 
 fixedValuePointPatchField (const pointPatch &, const DimensionedField< vector, pointMesh > &, const dictionary &, const bool valueRequired=true)
 Construct from patch, internal field and dictionary. More...
 
 fixedValuePointPatchField (const fixedValuePointPatchField< vector > &, const pointPatch &, const DimensionedField< vector, pointMesh > &, const pointPatchFieldMapper &)
 Construct by mapping given patchField<Type> onto a new patch. More...
 
 fixedValuePointPatchField (const fixedValuePointPatchField< vector > &, const DimensionedField< vector, pointMesh > &)
 Construct as copy setting internal field reference. More...
 
virtual bool fixesValue () const
 Return true if this patch field fixes a value. More...
 
virtual void operator= (const Field< vector > &)
 
virtual void operator= (const vector &)
 
- Public Member Functions inherited from valuePointPatchField< vector >
 TypeName ("value")
 Declare type-name, virtual type (with debug switch) More...
 
 valuePointPatchField (const valuePointPatchField &)=default
 Copy construct. More...
 
 valuePointPatchField (const pointPatch &, const DimensionedField< vector, pointMesh > &)
 Construct from patch and internal field. More...
 
 valuePointPatchField (const pointPatch &, const DimensionedField< vector, pointMesh > &, const dictionary &, const bool valueRequired=true)
 Construct from patch, internal field and dictionary. More...
 
 valuePointPatchField (const valuePointPatchField< vector > &, const pointPatch &, const DimensionedField< vector, pointMesh > &, const pointPatchFieldMapper &)
 Construct by mapping given patchField<Type> onto a new patch. More...
 
 valuePointPatchField (const valuePointPatchField< vector > &, const DimensionedField< vector, pointMesh > &)
 Construct as copy setting internal field reference. More...
 
label size () const
 Return size. More...
 
virtual void autoMap (const pointPatchFieldMapper &)
 Map (and resize as needed) from self given a mapping object. More...
 
virtual void rmap (const pointPatchField< vector > &, const labelList &)
 Reverse map the given PointPatchField onto. More...
 
virtual void evaluate (const Pstream::commsTypes commsType=Pstream::commsTypes::blocking)
 Evaluate the patch field. More...
 
virtual void operator= (const valuePointPatchField< vector > &)
 
virtual void operator= (const pointPatchField< vector > &)
 
virtual void operator== (const valuePointPatchField< vector > &)
 
virtual void operator== (const pointPatchField< vector > &)
 
virtual void operator== (const Field< vector > &)
 
virtual void operator== (const vector &)
 
- Public Member Functions inherited from pointPatchField< vector >
 TypeName ("pointPatchField")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, pointPatchField, pointPatch,(const pointPatch &p, const DimensionedField< vector, pointMesh > &iF),(p, iF))
 
 declareRunTimeSelectionTable (autoPtr, pointPatchField, patchMapper,(const pointPatchField< vector > &ptf, const pointPatch &p, const DimensionedField< vector, pointMesh > &iF, const pointPatchFieldMapper &m),(dynamic_cast< const pointPatchFieldType & >(ptf), p, iF, m))
 
 declareRunTimeSelectionTable (autoPtr, pointPatchField, dictionary,(const pointPatch &p, const DimensionedField< vector, pointMesh > &iF, const dictionary &dict),(p, iF, dict))
 
 pointPatchField (const pointPatch &, const DimensionedField< vector, pointMesh > &)
 Construct from patch and internal field. More...
 
 pointPatchField (const pointPatch &, const DimensionedField< vector, pointMesh > &, const dictionary &)
 Construct from patch, internal field and dictionary. More...
 
 pointPatchField (const pointPatchField< vector > &, const pointPatch &, const DimensionedField< vector, pointMesh > &, const pointPatchFieldMapper &)
 Construct by mapping given patchField<Type> onto a new patch. More...
 
 pointPatchField (const pointPatchField< vector > &)
 Construct as copy. More...
 
 pointPatchField (const pointPatchField< vector > &, const DimensionedField< vector, pointMesh > &)
 Construct as copy setting internal field reference. More...
 
Foam::autoPtr< Foam::pointPatchField< vector > > NewCalculatedType (const pointPatchField< Type2 > &pf)
 
virtual ~pointPatchField ()=default
 Destructor. More...
 
const objectRegistrydb () const
 Return local objectRegistry. More...
 
label size () const
 Return size. More...
 
const pointPatchpatch () const
 Return patch. More...
 
const DimensionedField< vector, pointMesh > & internalField () const
 Return dimensioned internal field reference. More...
 
const Field< vector > & primitiveField () const
 Return internal field reference. More...
 
const wordpatchType () const
 Optional patch type. More...
 
wordpatchType ()
 Optional patch type. More...
 
virtual bool coupled () const
 Return true if this patch field is coupled. More...
 
bool updated () const
 Return true if the boundary condition has already been updated. More...
 
tmp< Field< vector > > patchInternalField () const
 Return field created from appropriate internal field values. More...
 
tmp< Field< Type1 > > patchInternalField (const Field< Type1 > &iF) const
 Return field created from appropriate internal field values. More...
 
tmp< Field< Type1 > > patchInternalField (const Field< Type1 > &iF, const labelList &meshPoints) const
 Return field created from selected internal field values. More...
 
Foam::tmp< Foam::Field< Type1 > > patchInternalField (const Field< Type1 > &iF, const labelList &meshPoints) const
 
Foam::tmp< Foam::Field< Type1 > > patchInternalField (const Field< Type1 > &iF) const
 
void addToInternalField (Field< Type1 > &iF, const Field< Type1 > &pF) const
 Given the internal field and a patch field,. More...
 
void addToInternalField (Field< Type1 > &iF, const Field< Type1 > &pF, const labelList &points) const
 Given the internal field and a patch field,. More...
 
void setInInternalField (Field< Type1 > &iF, const Field< Type1 > &pF, const labelList &meshPoints) const
 Given the internal field and a patch field,. More...
 
void setInInternalField (Field< Type1 > &iF, const Field< Type1 > &pF) const
 Given the internal field and a patch field,. More...
 
virtual const wordconstraintType () const
 Return the constraint type this pointPatchField implements. More...
 
virtual void initEvaluate (const Pstream::commsTypes commsType=Pstream::commsTypes::blocking)
 Initialise evaluation of the patch field (do nothing) More...
 
virtual void operator+= (const pointPatchField< vector > &)
 
virtual void operator+= (const Field< vector > &)
 
virtual void operator+= (const vector &)
 
virtual void operator-= (const pointPatchField< vector > &)
 
virtual void operator-= (const Field< vector > &)
 
virtual void operator-= (const vector &)
 
virtual void operator*= (const pointPatchField< scalar > &)
 
virtual void operator*= (const Field< scalar > &)
 
virtual void operator*= (const scalar)
 
virtual void operator/= (const pointPatchField< scalar > &)
 
virtual void operator/= (const Field< scalar > &)
 
virtual void operator/= (const scalar)
 
void negate ()
 Negate the field inplace. More...
 
- Public Member Functions inherited from Field< vector >
constexpr Field () noexcept
 Default construct. More...
 
 Field (const label len)
 Construct given size. More...
 
 Field (const label len, const vector &val)
 Construct given size and initial value. More...
 
 Field (const label len, const Foam::zero)
 Construct given size and initial values of zero. More...
 
 Field (const Foam::one, const vector &val)
 Construct with length=1, copying the value as the only content. More...
 
 Field (const Foam::one, vector &&val)
 Construct with length=1, moving the value as the only content. More...
 
 Field (const Foam::one, const Foam::zero)
 Construct with length=1, initializing content to zero. More...
 
 Field (const Field< vector > &fld)
 Copy construct. More...
 
 Field (const UList< vector > &list)
 Copy construct from UList<Type> More...
 
 Field (const IndirectListBase< vector, Addr > &list)
 Copy construct from IndirectList. More...
 
 Field (Field< vector > &&fld)
 Move construct from Field. More...
 
 Field (List< vector > &&list)
 Move construct from List. More...
 
 Field (DynamicList< vector, SizeMin > &&list)
 Move construct from DynamicList. More...
 
 Field (const UList< vector > &mapF, const labelUList &mapAddressing)
 Construct by 1 to 1 mapping from the given field. More...
 
 Field (const tmp< Field< vector >> &tmapF, const labelUList &mapAddressing)
 Construct by 1 to 1 mapping from the given tmp field. More...
 
 Field (const UList< vector > &mapF, const labelListList &mapAddressing, const scalarListList &weights)
 Construct by interpolative mapping from the given field. More...
 
 Field (const tmp< Field< vector >> &tmapF, const labelListList &mapAddressing, const scalarListList &weights)
 Construct by interpolative mapping from the given tmp field. More...
 
 Field (const UList< vector > &mapF, const FieldMapper &map, const bool applyFlip=true)
 Construct by mapping from the given field. More...
 
 Field (const UList< vector > &mapF, const FieldMapper &map, const vector &defaultValue, const bool applyFlip=true)
 Construct by mapping from the given field. More...
 
 Field (const UList< vector > &mapF, const FieldMapper &map, const UList< vector > &defaultValues, const bool applyFlip=true)
 Construct by mapping from the given field. More...
 
 Field (const tmp< Field< vector >> &tmapF, const FieldMapper &map, const bool applyFlip=true)
 Construct by mapping from the given tmp field. More...
 
 Field (const tmp< Field< vector >> &tmapF, const FieldMapper &map, const vector &defaultValue, const bool applyFlip=true)
 
 Field (const tmp< Field< vector >> &tmapF, const FieldMapper &map, const UList< vector > &defaultValues, const bool applyFlip=true)
 
 Field (Field< vector > &fld, bool reuse)
 Copy construct or re-use as specified. More...
 
 Field (const tmp< Field< vector >> &tfld)
 Copy or move construct from tmp. More...
 
 Field (Istream &is)
 Construct from Istream. More...
 
 Field (const word &keyword, const dictionary &dict, const label len)
 Construct from a dictionary entry. More...
 
tmp< Field< vector > > clone () const
 Clone. More...
 
void map (const UList< vector > &mapF, const labelUList &mapAddressing)
 1 to 1 map from the given field More...
 
void map (const tmp< Field< vector >> &tmapF, const labelUList &mapAddressing)
 1 to 1 map from the given tmp field More...
 
void map (const UList< vector > &mapF, const labelListList &mapAddressing, const scalarListList &weights)
 Interpolative map from the given field. More...
 
void map (const tmp< Field< vector >> &tmapF, const labelListList &mapAddressing, const scalarListList &weights)
 Interpolative map from the given tmp field. More...
 
void map (const UList< vector > &mapF, const FieldMapper &map, const bool applyFlip=true)
 Map from the given field. More...
 
void map (const tmp< Field< vector >> &tmapF, const FieldMapper &map, const bool applyFlip=true)
 Map from the given tmp field. More...
 
void autoMap (const FieldMapper &map, const bool applyFlip=true)
 Map from self. More...
 
void rmap (const UList< vector > &mapF, const labelUList &mapAddressing)
 1 to 1 reverse-map from the given field More...
 
void rmap (const tmp< Field< vector >> &tmapF, const labelUList &mapAddressing)
 1 to 1 reverse-map from the given tmp field More...
 
void rmap (const UList< vector > &mapF, const labelUList &mapAddressing, const UList< scalar > &weights)
 Interpolative reverse map from the given field. More...
 
void rmap (const tmp< Field< vector >> &tmapF, const labelUList &mapAddressing, const UList< scalar > &weights)
 Interpolative reverse map from the given tmp field. More...
 
void negate ()
 Negate this field (negative). More...
 
tmp< Field< cmptType > > component (const direction) const
 Return a component field of the field. More...
 
void replace (const direction, const UList< cmptType > &)
 Replace a component field of the field. More...
 
void replace (const direction, const tmp< Field< cmptType >> &)
 Replace a component field of the field. More...
 
void replace (const direction, const cmptType &)
 Replace a component field of the field. More...
 
VSForm block (const label start) const
 
tmp< Field< vector > > T () const
 Return the field transpose (only defined for second rank tensors) More...
 
void writeEntry (const word &keyword, Ostream &os) const
 Write the field as a dictionary entry. More...
 
SubField< vectorslice (const label pos, label len=-1)
 Return SubField slice (non-const access) - no range checking. More...
 
const SubField< vectorslice (const label pos, label len=-1) const
 Return SubField slice (const access) - no range checking. More...
 
SubField< vectorslice (const labelRange &range)
 Return SubField slice (non-const access) - with range checking. More...
 
const SubField< vectorslice (const labelRange &range) const
 Return SubField slice (const access) - with range checking. More...
 
void operator= (const Field< vector > &)
 Copy assignment. More...
 
void operator= (const tmp< Field< vector >> &)
 
void operator= (const UList< vector > &rhs)
 
void operator= (const SubField< vector > &rhs)
 
void operator= (const IndirectListBase< vector, Addr > &rhs)
 Copy assign from IndirectList. More...
 
void operator= (Field< vector > &&rhs)
 Move assignment. More...
 
void operator= (List< vector > &&rhs)
 
void operator= (DynamicList< vector, SizeMin > &&rhs)
 
void operator= (const vector &val)
 Value assignment. More...
 
void operator= (const Foam::zero)
 
void operator= (const VectorSpace< Form, Cmpt, nCmpt > &)
 
void operator= (const tmp< Field > &rhs)
 
void operator+= (const UList< vector > &)
 
void operator+= (const tmp< Field< vector >> &)
 
void operator+= (const vector &)
 
void operator-= (const UList< vector > &)
 
void operator-= (const tmp< Field< vector >> &)
 
void operator-= (const vector &)
 
void operator*= (const UList< scalar > &)
 
void operator*= (const tmp< Field< scalar >> &)
 
void operator*= (const scalar &)
 
void operator/= (const UList< scalar > &)
 
void operator/= (const tmp< Field< scalar >> &)
 
void operator/= (const scalar &)
 

Static Public Member Functions

static label setPatchControls (const pointVectorField &pvf, const pointField &points0)
 Set all patch controls for patches of this type. More...
 
static label setInterpolators (const pointVectorField &pvf, const pointField &points0)
 Set all patch controls for patches of this type. More...
 
static labelList patchIds (const pointVectorField &pvf)
 The ids for all patches of this type. More...
 
- Static Public Member Functions inherited from pointPatchField< vector >
static autoPtr< pointPatchField< vector > > New (const word &, const pointPatch &, const DimensionedField< vector, pointMesh > &)
 Return a pointer to a new patchField created on freestore given. More...
 
static autoPtr< pointPatchField< vector > > New (const word &, const word &actualPatchType, const pointPatch &, const DimensionedField< vector, pointMesh > &)
 Return a pointer to a new patchField created on freestore given. More...
 
static autoPtr< pointPatchField< vector > > New (const pointPatchField< vector > &, const pointPatch &, const DimensionedField< vector, pointMesh > &, const pointPatchFieldMapper &)
 Return a pointer to a new patchField created on freestore from. More...
 
static autoPtr< pointPatchField< vector > > New (const pointPatch &, const DimensionedField< vector, pointMesh > &, const dictionary &)
 Return a pointer to a new patchField created on freestore. More...
 
static autoPtr< pointPatchField< vector > > NewCalculatedType (const pointPatchField< Type2 > &)
 Return a pointer to a new calculatedPointPatchField created on. More...
 
static const wordcalculatedType ()
 Return the type of the calculated form of pointPatchField. More...
 
- Static Public Member Functions inherited from Field< vector >
static const Field< vector > & null ()
 Return nullObject reference Field. More...
 
static autoPtr< Field< vector > > New (Istream &is)
 Return a pointer to a new Field created on freestore. More...
 
static tmp< Field< vector > > NewCalculatedType (const Field< Type2 > &f)
 

Protected Member Functions

const pointFieldpoints0 () const
 The starting locations (obtained from the motionSolver). More...
 
const lumpedPointMovementmovement () const
 The auto-vivifying singleton for movement. More...
 

Additional Inherited Members

- Public Types inherited from pointPatchField< vector >
typedef vector value_type
 
typedef pointPatch Patch
 
typedef calculatedPointPatchField< vectorCalculated
 
- Public Types inherited from Field< vector >
typedef pTraits< vector >::cmptType cmptType
 Component type. More...
 
typedef SubField< vectorsubField
 Declare type of subField. More...
 
- Static Public Attributes inherited from pointPatchField< vector >
static int disallowGenericPointPatchField
 Debug switch to disallow the use of genericPointPatchField. More...
 

Detailed Description

This is the point-patch responsible for managing the force integration on a 'lumped-point' basis, waiting for the external application, reading back the response from the external program and updating the locations of the associated patch points accordingly.

The internal patch type name is 'lumpedPointDisplacement'.


Patch usage Example:

walls
{
    type    lumpedPointDisplacement;
    value   uniform (0 0 0);
    controllers ( controllerName1 controllerName2 );
}
Source files

Definition at line 74 of file lumpedPointDisplacementPointPatchVectorField.H.

Constructor & Destructor Documentation

◆ lumpedPointDisplacementPointPatchVectorField() [1/4]

Construct from patch and internal field.

Definition at line 205 of file lumpedPointDisplacementPointPatchVectorField.C.

Referenced by lumpedPointDisplacementPointPatchVectorField::clone().

Here is the caller graph for this function:

◆ lumpedPointDisplacementPointPatchVectorField() [2/4]

Construct from patch, internal field and dictionary.

Definition at line 219 of file lumpedPointDisplacementPointPatchVectorField.C.

References dict, Foam::nl, Foam::foamVersion::patch, dictionary::readIfPresent(), and WarningInFunction.

Here is the call graph for this function:

◆ lumpedPointDisplacementPointPatchVectorField() [3/4]

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

Definition at line 247 of file lumpedPointDisplacementPointPatchVectorField.C.

◆ lumpedPointDisplacementPointPatchVectorField() [4/4]

Construct as copy setting internal field reference.

Definition at line 263 of file lumpedPointDisplacementPointPatchVectorField.C.

◆ ~lumpedPointDisplacementPointPatchVectorField()

Destructor. De-register movement if in use and managed by this patch.

Definition at line 278 of file lumpedPointDisplacementPointPatchVectorField.C.

References regIOobject::checkOut(), lumpedPointIOMovement::getMovementObject(), mesh, lumpedPointMovement::ownerId(), and Foam::foamVersion::patch.

Here is the call graph for this function:

Member Function Documentation

◆ points0()

const Foam::pointField & points0 ( ) const
protected

The starting locations (obtained from the motionSolver).

Definition at line 147 of file lumpedPointDisplacementPointPatchVectorField.C.

References pointPatch::boundaryMesh(), objectRegistry::cfindObject(), IOobject::db(), mesh, pointBoundaryMesh::mesh(), pointPatchField< vector >::patch(), and points0MotionSolver::points0IO().

Here is the call graph for this function:

◆ movement()

const Foam::lumpedPointMovement & movement ( ) const
protected

The auto-vivifying singleton for movement.

Definition at line 182 of file lumpedPointDisplacementPointPatchVectorField.C.

References lumpedPointIOMovement::getMovementObject(), lumpedPointIOMovement::New(), Foam::foamVersion::patch, and regIOobject::store().

Here is the call graph for this function:

◆ TypeName()

TypeName ( "lumpedPointDisplacement"  )

Runtime type information.

◆ clone() [1/2]

virtual autoPtr<pointPatchField<vector> > clone ( ) const
inlinevirtual

Construct and return a clone.

Reimplemented from fixedValuePointPatchField< vector >.

Definition at line 141 of file lumpedPointDisplacementPointPatchVectorField.H.

References lumpedPointDisplacementPointPatchVectorField::lumpedPointDisplacementPointPatchVectorField().

Here is the call graph for this function:

◆ clone() [2/2]

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

Construct and return a clone setting internal field reference.

Reimplemented from fixedValuePointPatchField< vector >.

Definition at line 161 of file lumpedPointDisplacementPointPatchVectorField.H.

References lumpedPointDisplacementPointPatchVectorField::lumpedPointDisplacementPointPatchVectorField().

Here is the call graph for this function:

◆ controllers()

const wordList& controllers ( ) const
inline

The controller names for this patch.

Definition at line 183 of file lumpedPointDisplacementPointPatchVectorField.H.

◆ setPatchControls()

Foam::label setPatchControls ( const pointVectorField pvf,
const pointField points0 
)
static

Set all patch controls for patches of this type.

Definition at line 54 of file lumpedPointDisplacementPointPatchVectorField.C.

References GeometricField< Type, PatchField, GeoMesh >::boundaryField(), Foam::BitOps::count(), forAll, p, patches, and points0().

Here is the call graph for this function:

◆ setInterpolators()

Foam::label setInterpolators ( const pointVectorField pvf,
const pointField points0 
)
static

Set all patch controls for patches of this type.

Definition at line 89 of file lumpedPointDisplacementPointPatchVectorField.C.

References GeometricField< Type, PatchField, GeoMesh >::boundaryField(), Foam::BitOps::count(), forAll, p, and points0().

Here is the call graph for this function:

◆ patchIds()

Foam::labelList patchIds ( const pointVectorField pvf)
static

The ids for all patches of this type.

Definition at line 123 of file lumpedPointDisplacementPointPatchVectorField.C.

References GeometricField< Type, PatchField, GeoMesh >::boundaryField(), and forAll.

Here is the call graph for this function:

◆ updateCoeffs()

void updateCoeffs ( )
virtual

Update the coefficients associated with the patch field.

Reimplemented from valuePointPatchField< vector >.

Definition at line 298 of file lumpedPointDisplacementPointPatchVectorField.C.

References lumpedPointMovement::couplingCompleted(), lumpedPointMovement::debug, Foam::endl(), Foam::Info, UPstream::master(), mesh, Foam::nl, Foam::operator==(), Foam::foamVersion::patch, points0(), Foam::Pout, Foam::lumpedPointTools::setPatchControls(), timeIndex, and valuePointPatchField< Type >::updateCoeffs().

Here is the call graph for this function:

◆ write()

void write ( Ostream os) const
virtual

Write.

Reimplemented from valuePointPatchField< vector >.

Definition at line 433 of file lumpedPointDisplacementPointPatchVectorField.C.

References os(), Foam::foamVersion::patch, pointPatchField< Type >::write(), and Ostream::writeEntry().

Here is the call graph for this function:

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