CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Programming & Development (https://www.cfd-online.com/Forums/openfoam-programming-development/)
-   -   Face and point ordering during interpolation (https://www.cfd-online.com/Forums/openfoam-programming-development/94862-face-point-ordering-during-interpolation.html)

Arnoldinho November 28, 2011 13:32

Face and point ordering during interpolation
 
Hi all,

I have two questions concerning the interpolation from faces to points and getting the corresponding point coordinates.
To move the boundary of a movingMesh case, I have calculated the displacement/motion at the face centers on the moving boundary patch (stored in volScalarField hbVol.boundaryField()[patchi]).

As I need the point displacement/motion at the points and not the faces, I used primitivePatchInterpolation faceToPointInterpolate on the face values. The point values are now used to modify the pointdisplacement/motionU file at the boundary patch within the solver, by doing e.g.

Quote:

pointVectorField& pointDisplacement
(
const_cast<pointVectorField&>(mesh.objectRegistry: :lookupObject<pointVectorField>("pointDisplacement "))
);

vectorField &pDisp = refCast<vectorField>(pointDisplacement.boundaryFie ld()[patchi]);

pDisp += newPointHeight; // newPointHeight from faceToPointInterpolate
My questions are:
1. How do I know or can make sure that faceToPointInterpolate is giving the same order of the points that is used in pointDisplacement file?

2. How can I get the x,y,z coordinates of these boundary patch points, and again make sure that the point order is right?
Something like mesh.boundaryMesh()[patchi].points()[pointI].x() does not give me the right points.

Arne

Arnoldinho November 29, 2011 04:54

Ok, to answer my questions:

2. Point coordinates on the patch (e.g. for x) are found using mesh.boundaryMesh()[patchi].localPoints()[pointI].x().

1. I have checked the point order (sorry, not ordering!) by looping 1. over mesh.boundaryMesh()[patchi].localPoints() and 2. over the point list received from face to point interpolation. Result: Order is equal!

Greetings,
Arne


All times are GMT -4. The time now is 17:52.