Difference between revisions of "OpenFOAM guide/SurfaceInterpolation (class)"

From OpenFOAMWiki
(Created page with '{{About|the surfaceInterpolation class|an overview of surface interpolation|surfaceInterpolation}} surfaceInterpolation is a member of fvMesh, and is derived from the fvSchemes …')
 
Line 1: Line 1:
 
{{About|the surfaceInterpolation class|an overview of surface interpolation|surfaceInterpolation}}
 
{{About|the surfaceInterpolation class|an overview of surface interpolation|surfaceInterpolation}}
  
surfaceInterpolation is a member of fvMesh, and is derived from the fvSchemes and fvSolution [[snip objectRegistry|IOobjects]].  It calculates and provides access to the [[mesh weights]], [[deltaCoeffs]], and non-orthogonality correctionVectors.
+
surfaceInterpolation is a member of fvMesh, and is derived from the fvSchemes and fvSolution [[snip objectRegistry|IOobjects]].  It calculates and provides access to the [[mesh weights]], [[surfaceInterpolation;;deltaCoeffs|deltaCoeffs]], and non-orthogonality correctionVectors.
  
 
The name of this class and the code comments imply that it handles the [[interpolation]] from volume fields to face fields, but it does not.  However, the functions that do, such as [[surfaceInterpolate]], depend on the fields it provides.
 
The name of this class and the code comments imply that it handles the [[interpolation]] from volume fields to face fields, but it does not.  However, the functions that do, such as [[surfaceInterpolate]], depend on the fields it provides.

Revision as of 15:31, 30 June 2010

This article is about the surfaceInterpolation class. For an overview of surface interpolation, see surfaceInterpolation.

surfaceInterpolation is a member of fvMesh, and is derived from the fvSchemes and fvSolution IOobjects. It calculates and provides access to the mesh weights, deltaCoeffs, and non-orthogonality correctionVectors.

The name of this class and the code comments imply that it handles the interpolation from volume fields to face fields, but it does not. However, the functions that do, such as surfaceInterpolate, depend on the fields it provides.

Mesh weights

The mesh weights, surfaceInterpolation::weights are calculated by surfaceInterpolation::makeWeights according to:

\lambda_i = \frac{\mathbf{Sf}_i \bullet \left ( \mathbf{C}_n - \mathbf{Cf}_i \right )}{\mathbf{Sf}_i \bullet \left ( \mathbf{Cf}_i - \mathbf{C}_o \right ) + \mathbf{Sf}_i \bullet \left ( \mathbf{C}_n - \mathbf{Cf}_i \right )}

Where:

  • i is the face index;
  • o and n are the owner and neighbour indices;
  • Sf is the surface area vector;
  • C is the location of the cell centre; and
  • Cf is the location of the face centre.