# Maybe some bug in leastSquaresVectorsc

 Register Blogs Members List Search Today's Posts Mark Forums Read

 December 24, 2007, 22:25 Maybe some bug in leastSquares #1 New Member   Liu Huafei Join Date: Mar 2009 Location: Shanghai, China Posts: 20 Rep Power: 10 Sponsored Links 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)?

 December 27, 2007, 18:47 Yes you are right this is a bu #2 Senior Member   Join Date: Mar 2009 Posts: 854 Rep Power: 15 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 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

 Thread Tools Display Modes Linear Mode

 Posting Rules You may not post new threads You may not post replies You may not post attachments You may not edit your posts BB code is On Smilies are On [IMG] code is On HTML code is OffTrackbacks are On Pingbacks are On Refbacks are On Forum Rules