CFD Online Discussion Forums

CFD Online Discussion Forums (http://www.cfd-online.com/Forums/)
-   OpenFOAM Bugs (http://www.cfd-online.com/Forums/openfoam-bugs/)
-   -   Maybe some bug in leastSquaresVectorsc (http://www.cfd-online.com/Forums/openfoam-bugs/62517-maybe-some-bug-leastsquaresvectorsc.html)

liuhuafei December 24, 2007 22:25

Maybe some bug in leastSquares
 
Maybe some bug in leastSquaresVectors.c

Description:
some error in calculation of dd in leastsquare vector

Source file:
leastSquaresVectors.c

function
void Foam::leastSquaresVectors::makeLeastSquaresVectors () const

if (p.coupled())
{
forAll(pd, patchFacei)
{
const vector& d = pd[patchFacei];

dd[faceCells[patchFacei]] +=
(pw[patchFacei]*pMagSf[patchFacei]/magSqr(d))*sqr(d);
}
}

dd maybe done by the following:
dd[faceCells[patchFacei]] +=
(1.-pw[patchFacei])*pMagSf[patchFacei]/magSqr(d))*sqr(d);

also a question:
for the couple boundary,dd is calculated only for P cell(owner),why not for N cell(neighbour)?

henry December 27, 2007 18:47

Yes you are right this is a bu
 
Yes you are right this is a bug, the second use of pw[patchFacei] is as (1 - pw[patchFacei]) but the first is inconsistent and incorrect. Here is the corrected http://www.cfd-online.com/OpenFOAM_D...hment_icon.gif leastSquaresVectors.C to replace the file in OpenFOAM-1.4.1/src/finiteVolume/finiteVolume/gradSchemes/leastSquaresGrad

On the coupled boundaries only the owner contribution needs to be calculated, the neighbour contribution being calculated by the "other-side" of the couple.

Thanks for the bug report and proposed solution

Henry


All times are GMT -4. The time now is 01:34.