CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM (https://www.cfd-online.com/Forums/openfoam/)
-   -   Momentum predictor (https://www.cfd-online.com/Forums/openfoam/90500-momentum-predictor.html)

Andrea_85 July 12, 2011 10:25

Momentum predictor
 
Hi all,
i have 2 questions about the solution procedure in interFoam.
The predicted fluxes are bulid in pEqn.H, if i'm not wrong:

Code:

volScalarField rAU(1.0/UEqn.A());
00003    surfaceScalarField rAUf(fvc::interpolate(rAU));
00004
00005    U = rAU*UEqn.H();
00006    surfaceScalarField phiU
00007    (
00008        "phiU",
00009        (fvc::interpolate(U) & mesh.Sf())
00010      + fvc::ddtPhiCorr(rAU, rho, U, phi)
00011    );
00012
00013    adjustPhi(phiU, U, p_rgh);
00014
00015    phi = phiU +
00016    (
00017        fvc::interpolate(interface.sigmaK())*fvc::snGrad(alpha1)
00018      - ghf*fvc::snGrad(rho)
00019    )*rAUf*mesh.magSf();

what is the difference between switch on or switch off the momentum predictor in uEqn.H and how it affects the predicted velocities?. What does OF calculate in:

Code:

00019    if (pimple.momentumPredictor())
00020    {
00021        solve
00022        (
00023            UEqn
00024          ==
00025            fvc::reconstruct
00026            (
00027                (
00028                    fvc::interpolate(interface.sigmaK())*fvc::snGrad(alpha1)
00029                  - ghf*fvc::snGrad(rho)
00030                  - fvc::snGrad(p_rgh)
00031                ) * mesh.magSf()
00032            )
00033        );
00034    }

the second quesiton is: What does it mean
fvc::ddtPhiCorr(rAU, rho, U, phi) in the phiU calculation?

thanks a lot in advance

andrea

santiagomarquezd July 19, 2011 18:52

Andrea, predicted velocity is taken into account in H method (check Hrv Thesis). ddtPhiCorr is intended to apply a correction to Rhie-Chow interpolation due temporal scheme.

Regards.

Andrea_85 July 20, 2011 03:49

Hi Santiago and thanks to your reply.
If i'm not wrong, H is a function of U (it takes into into account the velocities of the neighboring cells). So, if the momentum predictor is turned off, which is the velocity used to bulid up H?
Or in another way, are these lines (below) used to calculate a velocity or are used only to do an update of the coefficients of the matrices A and H?

00019 if (pimple.momentumPredictor())
00020 {
00021 solve
00022 (
00023 UEqn
00024 ==
00025 fvc::reconstruct
00026 (
00027 (
00028 fvc::interpolate(interface.sigmaK())*fvc::snGrad(alpha1)
00029 - ghf*fvc::snGrad(rho)
00030 - fvc::snGrad(p_rgh)
00031 ) * mesh.magSf()
00032 )
00033 );
00034 }

santiagomarquezd July 20, 2011 09:29

Andrea, if momentum predictor is turned off, U from previous time-step is used, if it is on once the solve method is executed U is refreshed and then used in H method.

Regards.

Andrea_85 July 20, 2011 09:35

Ok, now it's totally clear!!

many thanks

andrea

Andrea_85 July 22, 2011 07:04

Hi Santiago,
i'm still a little bit confused about the velocity reconstruction after the pressure solution.

U += rAU*fvc::reconstruct((phi - phiU)/rAUf);

Why phiU is substracted from the fluxes?
phiU is defined as the sum of the predicted velocity interpolated to the faces and the temporal correction. The contribution of H/A is included in the new velocity because of "+=", so which contribution is substructed? Is the temporal correction?

thanks again

andrea

giack March 11, 2013 04:09

Quote:

Originally Posted by Andrea_85 (Post 317067)
Hi Santiago,
i'm still a little bit confused about the velocity reconstruction after the pressure solution.

U += rAU*fvc::reconstruct((phi - phiU)/rAUf);

Why phiU is substracted from the fluxes?
phiU is defined as the sum of the predicted velocity interpolated to the faces and the temporal correction. The contribution of H/A is included in the new velocity because of "+=", so which contribution is substructed? Is the temporal correction?

thanks again

andrea

do you find a solution to this question? I'am the same question..i tried to compare it with the PISO algorithm but in the PISO algorithm the this U reconstruction is as follow:
U -= rUA*fvc::grad(p);

thanks for help


All times are GMT -4. The time now is 23:27.