As interpolationCellPoint, but with the point field modified on wall faces. More...
Public Member Functions | |
TypeName ("cellPointWallModified") | |
Runtime type information. More... | |
interpolationCellPointWallModified (const GeometricField< Type, fvPatchField, volMesh > &psi) | |
Construct from components. More... | |
template<class TYPE > | |
Foam::tmp< Foam::GeometricField< TYPE, Foam::pointPatchField, Foam::pointMesh > > | calcPointField (const GeometricField< TYPE, fvPatchField, volMesh > &psi) const |
Public Member Functions inherited from interpolationCellPoint< Type > | |
TypeName ("cellPoint") | |
Runtime type information. More... | |
interpolationCellPoint (const GeometricField< Type, fvPatchField, volMesh > &psi) | |
Construct from components. More... | |
interpolationCellPoint (const GeometricField< Type, fvPatchField, volMesh > &psi, tmp< GeometricField< Type, pointPatchField, pointMesh >> psip) | |
Construct from components. More... | |
Type | interpolate (const cellPointWeight &cpw) const |
Interpolate field for the given cellPointWeight. More... | |
Type | interpolate (const vector &position, const label celli, const label facei=-1) const |
Interpolate field to the given point in the given cell. More... | |
Type | interpolate (const barycentric &coordinates, const tetIndices &tetIs, const label facei=-1) const |
Interpolate field to the given coordinates in the tetrahedron. More... | |
Public Member Functions inherited from fieldInterpolation< Type, interpolationCellPoint< Type > > | |
virtual tmp< Field< Type > > | interpolate (const vectorField &position, const labelField &celli, const labelField &facei=NullObjectRef< labelField >()) const |
Interpolate field to the given points in the given cells. More... | |
virtual tmp< Field< Type > > | interpolate (const Field< barycentric > &coordinates, const labelField &celli, const labelField &tetFacei, const labelField &tetPti, const labelField &facei=NullObjectRef< labelField >()) const |
Interpolate field to the given coordinates in the given tetrahedra. More... | |
Public Member Functions inherited from interpolation< Type > | |
virtual const word & | type () const =0 |
Runtime type information. More... | |
declareRunTimeSelectionTable (autoPtr, interpolation, dictionary,(const GeometricField< Type, fvPatchField, volMesh > &psi),(psi)) | |
interpolation (const GeometricField< Type, fvPatchField, volMesh > &psi) | |
Construct from components. More... | |
virtual | ~interpolation () |
Destructor. More... | |
const GeometricField< Type, fvPatchField, volMesh > & | psi () const |
Return the field to be interpolated. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from interpolation< Type > | |
static autoPtr< interpolation< Type > > | New (const word &interpolationType, const GeometricField< Type, fvPatchField, volMesh > &psi) |
Return a reference to the specified interpolation scheme. More... | |
static autoPtr< interpolation< Type > > | New (const dictionary &interpolationSchemes, const GeometricField< Type, fvPatchField, volMesh > &psi) |
Return a reference to the selected interpolation scheme. More... | |
Protected Attributes inherited from interpolationCellPoint< Type > | |
const GeometricField< Type, pointPatchField, pointMesh > | psip_ |
Interpolated volfield. More... | |
Protected Attributes inherited from interpolation< Type > | |
const GeometricField< Type, fvPatchField, volMesh > & | psi_ |
The vol field to interpolate. More... | |
const polyMesh & | mesh_ |
Reference to the mesh. More... | |
As interpolationCellPoint, but with the point field modified on wall faces.
This method is defined only for vectors. The point field is extrapolated from the cells to the wall faces, and then rotated towards the (reverse) point normal so that the vectors do not point out of the domain. The result is also scaled so so if the necessary rotation exceeds 90 degrees, it is clamped to zero.
This prevents unresolvable drag-rebound couplings when applied to the velocity interpolation in a Lagrangian simulation.
Definition at line 55 of file interpolationCellPointWallModified.H.
interpolationCellPointWallModified | ( | const GeometricField< Type, fvPatchField, volMesh > & | psi | ) |
Construct from components.
Definition at line 326 of file interpolationCellPointWallModified.C.
Referenced by interpolationCellPointWallModified< Type >::calcPointField().
TypeName | ( | "cellPointWallModified" | ) |
Runtime type information.
Foam::tmp<Foam::GeometricField<TYPE, Foam::pointPatchField, Foam::pointMesh> > calcPointField | ( | const GeometricField< TYPE, fvPatchField, volMesh > & | psi | ) | const |
Definition at line 38 of file interpolationCellPointWallModified.C.
References Foam::atan2(), GeometricField< Type, PatchField, GeoMesh >::boundaryField(), polyMesh::boundaryMesh(), Foam::constant::universal::c, GeometricField< Type, PatchField, GeoMesh >::correctBoundaryConditions(), Foam::cos(), DimensionedField< Type, GeoMesh >::dimensions(), Foam::endl(), Foam::exit(), f(), PrimitivePatch< FaceList, PointField >::faceNormals(), polyMesh::faceOwner(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::I, Foam::Info, interpolationCellPointWallModified< Type >::interpolationCellPointWallModified(), Foam::max(), mesh, DimensionedField< Type, GeoMesh >::mesh(), PrimitivePatch< FaceList, PointField >::meshPoints(), Foam::min(), n, IOobject::name(), Foam::compressible::New(), Foam::normalised(), primitiveMesh::nPoints(), patchi, patchTypes(), Foam::constant::mathematical::pi(), polyMesh::points(), Foam::reduce(), GeometricField< Type, PatchField, GeoMesh >::ref(), s(), Foam::fvm::S(), Foam::sin(), List< T >::size(), Foam::sqr(), polyPatch::start(), fvMesh::time(), Time::timeName(), Foam::vtkWriteOps::write(), and Foam::Zero.