CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Running, Solving & CFD (https://www.cfd-online.com/Forums/openfoam-solving/)
-   -   To modify the interFoam solver for cavitating (https://www.cfd-online.com/Forums/openfoam-solving/59480-modify-interfoam-solver-cavitating.html)

 zjucfd July 10, 2007 09:02

The equation I have used is bo

The equation I have used is borrowed from the paper by Wei Shyy.

Jiongyang Wu, Yogen Utturkar, Wei Shyy. ASSESSMENT OF MODELING STRATEGIES FOR CAVITATING FLOW AROUND A HYDROFOIL, CAV2003.

/attach{eq.jpg}

 zjucfd July 10, 2007 09:05

http://www.cfd-online.com/Open

 zjucfd July 11, 2007 12:26

Could anybody give me some hin

Could anybody give me some hints?

 sek July 18, 2007 09:55

For stable solution of Gamma,

For stable solution of Gamma, you will need Sp as well in case the source term becomes negative.

 zjucfd July 18, 2007 10:43

I have also tried this form:

I have also tried this form:

volScalarField Sp = Cdest*rho2*min(pvap-pvap,pd-pvap)/(rho1*(rho1*Uref*Uref*0.5)*tref)

volScalarField Su = Cprod*rho2*gamma*gamma*(scalar(1)-gamma)/(rho1*tref);

MULES::explicitSolve01(gamma, phi, phiGamma, Sp, Su);

 morteza August 26, 2007 08:03

Hi, I are attempted to implem

Hi,
I are attempted to implement SINGHAL cavitation model into lesInterFoam in order to model a supercavitation condition over a wedge.
So, I modified the gamma.H according to the SINGHAL model in the solver.
here is the gamma.H code:

for (int gCorr=0; gCorr<nGammaCorr; gCorr++)
{

# include "rhoPhiGamma.H"

fvScalarMatrix gammaEqn
(
fvm::ddt(gamma)
+ fvm::div(phi, gamma)
+ fvm::div
(
-fvc::flux(-phir, scalar(1) - gamma, gammarScheme),
gamma,
gammarScheme
)
==
mdote
- fvm::Sp(mdote+mdotc,gamma)
);

gammaEqn.solve();

rhoPhi = gammaEqn.flux()*(rho1 - rho2) + phi*rho2;
}

-------------------------------------------------------------------------------- -------
where rhoPhiGamma.H is:

volScalarField Kinetic=turbulence->k();

forAll (mesh.C(),i)
{
if ( pd[i] < psat.value() )
{
mdote[i] = Ce.value()*rho1.value()*rho2.value()/0.02*sqrt( float( 2*Kinetic[i]*(psat.value()-pd[i])/(3*rho2.value())));
mdotc[i] = 0.0;
}
else
{
mdotc[i] = Cc.value()*rho2.value()*rho2.value()/0.02*sqrt( float( 2*Kinetic[i]*(pd[i]-psat.value())/(3*rho2.value())));
mdote[i] = 0.0;
}
}

Could anybody give me some help?
thanks!

 All times are GMT -4. The time now is 13:06.