CFD Online Discussion Forums (http://www.cfd-online.com/Forums/)
-   OpenFOAM Programming & Development (http://www.cfd-online.com/Forums/openfoam-programming-development/)
-   -   programming & icoFoam (http://www.cfd-online.com/Forums/openfoam-programming-development/119064-programming-icofoam.html)

 sasanghomi June 9, 2013 06:02

programming & icoFoam

Hi foamers ,
what is the relation between non-orthogonality in the grid and number of solving P.Equ ???
please take a look at this part of icoFoam :

PHP Code:

``` for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)            {                fvScalarMatrix pEqn                (                    fvm::laplacian(rUA, p) == fvc::div(phi)                );                pEqn.setReference(pRefCell, pRefValue);                pEqn.solve();                if (nonOrth == nNonOrthCorr)                {                    phi -= pEqn.flux();                }            }  ```
why the number of solving P.Equ should be equal nNonOrthogonalCorrectors ??
I think in PISO algorithm the number of solving pressure equation should be equal nCorrectors. I think nNonOrthogonalCorrectors is related to quality of grid generation.
what is the relation between grid's quality and number of solving pressure equation??
Can anyone clarify this issue for me ?

Thanks and best regards,
Sasan.

 wyldckat June 9, 2013 15:27

Hi Sasan,

Best regards,
Bruno

 sasanghomi June 9, 2013 16:51

Hi Bruno,
I want to know that why the quantity of solving pressure equation is equal to quantity of nNonOrthogonalCorrectors ?

Thanks and best regards,
Sasan.

 wyldckat June 9, 2013 17:33

Hi Sasan,

I'm not sure I understand you correctly... are you asking about the following code?
Code:

```if (nonOrth == nNonOrthCorr) {     phi -= pEqn.flux(); }```
Code:

`for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)`
Best regards,
Bruno

 sasanghomi June 10, 2013 02:31

Hi Bruno,

Code:

`for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++)`
Thanks and best regards,
Sasan.

 wyldckat June 10, 2013 07:24

Hi Sasan,

Well, as the wiki page explains:
Quote:
 Originally Posted by http://openfoamwiki.net/index.php/IcoFoam // iteratively correct for non-orthogonality. The non-orthogonal part of the Laplacian is calculated from the most recent // solution for pressure, using a deferred-correction approach.
Any explanation beyond this (that I could find) is on this thesis:
Quote:
 Originally Posted by http://openfoamwiki.net/index.php/IcoFoam Hrvoje Jasak, PhD 1996, PDF of thesis posted at: Error analysis and estimation in the Finite Volume method with applications to fluid flows.
... which I don't have time to read and study :(.

Best regards,
Bruno

 sharonyue August 25, 2013 23:55

Hi ,

http://www.cfd-online.com/Forums/ope...tml#post447985
I think this will make it clear.
It is related to quality of grid generation and the non-orthogonal correction in the diffusion term, you can dig it in page.83 of Jasak's thesis.

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