61 const labelList& nei = mesh_.faceNeighbour();
65 vector d = centres[nei[faceI]] - centres[own[faceI]];
73 result[own[faceI]] =
max(cosDDotS, result[own[faceI]]);
75 result[nei[faceI]] =
max(cosDDotS, result[nei[faceI]]);
78 forAll (mesh_.boundaryMesh(), patchI)
81 mesh_.boundaryMesh()[patchI].faceCells();
84 mesh_.boundaryMesh()[patchI].faceCentres();
87 mesh_.boundaryMesh()[patchI].faceAreas();
91 vector d = faceCentres[faceI] - centres[faceCells[faceI]];
92 vector s = faceAreas[faceI];
99 result[faceCells[faceI]] =
max(cosDDotS, result[faceCells[faceI]]);
124 const labelList& own = mesh_.faceOwner();
125 const labelList& nei = mesh_.faceNeighbour();
131 (faceCtrs[faceI] - cellCtrs[own[faceI]]) & areas[faceI]
136 (cellCtrs[nei[faceI]] - faceCtrs[faceI]) & areas[faceI]
139 point faceIntersection =
141 + (dOwn/(dOwn+dNei))*(cellCtrs[nei[faceI]] - cellCtrs[own[faceI]]);
144 mag(faceCtrs[faceI] - faceIntersection)
145 /(
mag(cellCtrs[nei[faceI]] - cellCtrs[own[faceI]]) + VSMALL);
147 result[own[faceI]] =
max(skewness, result[own[faceI]]);
149 result[nei[faceI]] =
max(skewness, result[nei[faceI]]);
152 forAll (mesh_.boundaryMesh(), patchI)
155 mesh_.boundaryMesh()[patchI].faceCells();
158 mesh_.boundaryMesh()[patchI].faceCentres();
161 mesh_.boundaryMesh()[patchI].faceAreas();
163 forAll(faceCentres, faceI)
165 vector n = faceAreas[faceI]/
mag(faceAreas[faceI]);
167 point faceIntersection =
168 cellCtrs[faceCells[faceI]]
169 + ((faceCentres[faceI] - cellCtrs[faceCells[faceI]])&n)*n;
172 mag(faceCentres[faceI] - faceIntersection)
174 mag(faceCentres[faceI] - cellCtrs[faceCells[faceI]])
178 result[faceCells[faceI]] =
max(skewness, result[faceCells[faceI]]);
201 const labelList& own = mesh_.faceOwner();
202 const labelList& nei = mesh_.faceNeighbour();
206 vector d = centres[nei[faceI]] - centres[own[faceI]];
208 scalar magS =
mag(s);
214 result[faceI] = cosDDotS;
217 label globalFaceI = mesh_.nInternalFaces();
219 forAll (mesh_.boundaryMesh(), patchI)
222 mesh_.boundaryMesh()[patchI].faceCells();
225 mesh_.boundaryMesh()[patchI].faceCentres();
228 mesh_.boundaryMesh()[patchI].faceAreas();
230 forAll(faceCentres, faceI)
232 vector d = faceCentres[faceI] - centres[faceCells[faceI]];
233 vector s = faceAreas[faceI];
234 scalar magS =
mag(s);
240 result[globalFaceI++] = cosDDotS;
264 const labelList& own = mesh_.faceOwner();
265 const labelList& nei = mesh_.faceNeighbour();
271 (faceCtrs[faceI] - cellCtrs[own[faceI]]) & areas[faceI]
276 (cellCtrs[nei[faceI]] - faceCtrs[faceI]) & areas[faceI]
279 point faceIntersection =
281 + (dOwn/(dOwn+dNei))*(cellCtrs[nei[faceI]] - cellCtrs[own[faceI]]);
284 mag(faceCtrs[faceI] - faceIntersection)
285 /(
mag(cellCtrs[nei[faceI]] - cellCtrs[own[faceI]]) + VSMALL);
289 label globalFaceI = mesh_.nInternalFaces();
291 forAll (mesh_.boundaryMesh(), patchI)
294 mesh_.boundaryMesh()[patchI].faceCells();
297 mesh_.boundaryMesh()[patchI].faceCentres();
300 mesh_.boundaryMesh()[patchI].faceAreas();
302 forAll(faceCentres, faceI)
304 vector n = faceAreas[faceI]/
mag(faceAreas[faceI]);
306 point faceIntersection =
307 cellCtrs[faceCells[faceI]]
308 + ((faceCentres[faceI] - cellCtrs[faceCells[faceI]])&n)*n;
310 result[globalFaceI++] =
311 mag(faceCentres[faceI] - faceIntersection)
313 mag(faceCentres[faceI] - cellCtrs[faceCells[faceI]])