Interpolation of cellbased displacements to the points with additional correction of patchadjacent cells. More...
Public Member Functions  
TypeName ("patchTransformed")  
Runtime type information. More...  
patchTransformedInterpolation (const fvMesh &mesh, Istream &entry)  
Construct from an fvMesh and an Istream. More...  
virtual  ~patchTransformedInterpolation () 
Destructor. More...  
virtual void  interpolate (const volScalarField &, pointScalarField &) const 
Interpolate the given scalar cell displacement. More...  
virtual void  interpolate (const volVectorField &, pointVectorField &) const 
Interpolate the given vector cell displacement. More...  
Public Member Functions inherited from motionInterpolation  
TypeName ("motionInterpolation")  
Runtime type information. More...  
declareRunTimeSelectionTable (autoPtr, motionInterpolation, Istream,(const fvMesh &mesh, Istream &entry),(mesh, entry))  
motionInterpolation (const fvMesh &mesh)  
Construct from an fvMesh. More...  
motionInterpolation (const fvMesh &mesh, Istream &entry)  
Construct from an fvMesh and an Istream. More...  
virtual  ~motionInterpolation () 
Destructor. More...  
const fvMesh &  mesh () const 
Return constreference to the mesh. More...  
Additional Inherited Members  
Static Public Member Functions inherited from motionInterpolation  
static autoPtr< motionInterpolation >  New (const fvMesh &mesh) 
Select default. More...  
static autoPtr< motionInterpolation >  New (const fvMesh &mesh, Istream &entry) 
Select from stream. More...  
Interpolation of cellbased displacements to the points with additional correction of patchadjacent cells.
Snappy meshes often have moderately nonorthogonal faces next to patches. If these partches are moved, these already quite distorted faces quickly violate the quality criteria.
This method corrects patchadjacent cells are by calculating the average translation, rotation and expansion of points connected to the patch. This transformation is then applied to all the points in the cell that are not on the patch. This does a better job of preserving the cell shape on the patch than pure interpolation, though it can simply move the problem into the next layer of cells.
The user needs only to specify the patches on which this correction is performed:
interpolation patchTransformed (movingPatch1 movingPatch2);
Note that this method is not defined for scalar displacement fields.
Definition at line 71 of file patchTransformedInterpolation.H.
patchTransformedInterpolation  (  const fvMesh &  mesh, 
Istream &  entry  
) 
Construct from an fvMesh and an Istream.
Definition at line 84 of file patchTransformedInterpolation.C.

virtual 
Destructor.
Definition at line 96 of file patchTransformedInterpolation.C.
TypeName  (  "patchTransformed"  ) 
Runtime type information.

virtual 
Interpolate the given scalar cell displacement.
Reimplemented from motionInterpolation.
Definition at line 103 of file patchTransformedInterpolation.C.
References NotImplemented.

virtual 
Interpolate the given vector cell displacement.
Reimplemented from motionInterpolation.
Definition at line 113 of file patchTransformedInterpolation.C.
References Foam::constant::universal::c, cells, GeometricField< Type, PatchField, GeoMesh >::correctBoundaryConditions(), f(), forAll, volPointInterpolation::interpolate(), Foam::magSqr(), mesh, MeshObject< fvMesh, UpdateableMeshObject, volPointInterpolation >::New(), nPoints, Foam::foamVersion::patch, points, syncTools::syncPointList(), x, VectorSpace< Vector< scalar >, scalar, 3 >::zero, and Foam::Zero.