CFD Online Discussion Forums

CFD Online Discussion Forums (http://www.cfd-online.com/Forums/)
-   OpenFOAM Running, Solving & CFD (http://www.cfd-online.com/Forums/openfoam-solving/)
-   -   InterPhaseChangeFoam: trying to simulate cavitation phenomena inside of nozzle (http://www.cfd-online.com/Forums/openfoam-solving/128723-interphasechangefoam-trying-simulate-cavitation-phenomena-inside-nozzle.html)

shipman January 20, 2014 02:53

InterPhaseChangeFoam: trying to simulate cavitation phenomena inside of nozzle
 
1 Attachment(s)
Dear Foam Users,

I am trying to simulate cavitation phenomena inside of nozzle and using interphasechangefoam. As you know that there are 3 transport models (Merkle, Kunz and Sauer) I have tried all of these 3 models with kwSST turbulence model however i have problems with the obtaining of cavitation region as follows;

1. If i set the initial cond. according to Velocity as follows:
==> 0/U
Code:

internalField  uniform (0 3.104 0);
boundaryField
{
    inlet
    {
        type            fixedValue;
        value          $internalField;
    }
      outlet
    {
        type            pressureInletOutletVelocity;
        phi            phi;
        value          $internalField;
    }
    wall
    {
        type            fixedValue;
        value            uniform (0 0 0);
    }

==>0/P
Code:

internalField  uniform 1e5;
boundaryField
{
  inlet
    {
        type          zeroGradient;
    }
    outlet
    {
        type            fixedValue;
        value          $internalField;
    }
    wall
    {
        type          zeroGradient;
    }
}

cavitation starts to form until to some level, however after that it disappears although flow rate is increasing. I didnt understand why this happens? (as seen in the attached fig.)

2.if i set the initial cond. according to pressure as follows:
==>0/P
Code:

internalField  uniform 1e5;
boundaryField
{
    inlet
    {
        type            fixedValue;
        value          uniform 2.8e5;
    }
    outlet
    {
        type            fixedValue;
        value          $internalField;
    }
  wall
    {
        type          zeroGradient;
    }

==>0/U
Code:

internalField  uniform (0 0 0);
boundaryField
{
    inlet
    {
        type            zeroGradient;
        value          uniform (0 0 0);
    }
    outlet
    {
        type            inletOutlet;
        inletValue      uniform (0 0 0);
    value        uniform (0 0 0);
    }
    wall
    {
        type            fixedValue;
        value            uniform (0 0 0);
    }

in this case no cavitation form obtained. Therefore i am confused. Could someone advice me something or give some insight what kind of reasons can result in these results? I increased mesh number, changed mass transport model( means i tried 3 of models) still gives same results...

In addition; For interphasechange solver (or more generally if we try simulation multiphase with mass transition which initial condition setting is more logical; pressure or velocity based?

Thanks in advance...

shipman January 20, 2014 02:55

Sorry I forgat to say that initial velocity and pressure values are taken from the experiment...

alexB April 23, 2015 08:46

Hi Baris,

are you still working on that issue?

regards
Alex

shipman April 23, 2015 15:42

Hi Alex,

Yes I am still working about same topic.

Do you have any question?

B

alexB April 24, 2015 09:51

I didn't realize, that you are sure pretty experienced, so I assume that you aren't stuck at the same place like one year before... :rolleyes:

I think i wanted to help you yeserday.

I currently try different things with InterPhaseChangeDyMFoam, but my problem is more a lack of c++ knowledge... thanks for your offered help and sorry for the unnecessary disturbance. ;)

regards
Alex

shipman April 24, 2015 10:45

Thank you for your kind consideration. Yes, i faced stability problem for a long time. However, finally i fixed and solved the problem.

I think that C++ is main problem for all new beginners. This can be also fixed in time with hard work ;)

Please keep in touch and let me know about your challenge and brief findings in InterPhaseChangeDyMFoam.

BR

Baris

alvariten May 19, 2015 07:09

Hi people,
I have seen you are using interPhaseChangeFoam to simulate cavitation phenomena inside nozzle. Actually I'm working in this topic too. I have a question about this solver I hope you could answer me: interPhaseChangeFoam works with a hydrostatic pressure definition, isn't it? Did you do your simulations with this pressure definition or did you do any change?
And... to make this change, is it necessary to modify the pEqn.H file, or is there another easy way?
Regards,
Alvaro.

alexB May 19, 2015 17:32

Hi Alvaro,

did you try to work with the cavitatingBullet tutorial multiphase/InterPhaseChangeFoam/cavitatingBullet ?
You can change the geometry and customize it for your case.

regards
Alex

shipman May 19, 2015 21:45

Hi Alvora,

Here hydrostatic pressure definition is just a kind of trick to simplify the boundary conditions and also increase the stability when the gravity should be considered. I just didnt understand why you want to change it? Finally, solver also calculate the total pressure as calculated and indicated in "CreateFields.H" P=p_rgh+rho*gh. As Alex said you can look at cavitatingBullet tutorial or last year i attended to CFD open course in Chalmers and already written a tutorial which explains cavitatingFoam and interPhaseChangeFoam for nozzle cavitation. You can also download and check it here: https://www.researchgate.net/publica...njector_Nozzle

BR.

Baris

alvariten May 20, 2015 07:42

Hi,

I've seen your work Baris, and looks fine. I've tried to implement the code but I have a problem in the step to compile "phaseChangeTwoPhaseMixtures". The terminal returns me the following error and I don't know how to solve it.
Code:

alvaro@AlvaroPC:~/OpenFOAM/alvaro-2.3.0/applications/solvers/multiphase/TransportCavitatingFoam/phaseChangeTwoPhaseMixtures$ wmake
linux64GccDPOpt/options:5: *** missing separator.  Stop.
wmake error: file 'Make/linux64GccDPOpt/objectFiles' could not be created in /home/alvaro/OpenFOAM/alvaro-2.3.0/applications/solvers/multiphase/TransportCavitatingFoam/phaseChangeTwoPhaseMixtures
alvaro@AlvaroPC:~/OpenFOAM/alvaro-2.3.0/applications/solvers/multiphase/TransportCavitatingFoam/phaseChangeTwoPhaseMixtures$

I have to warn you that I have no knowledge of C++ programming. This are the Make files.
Make/files
Code:

phaseChangeTwoPhaseMixture/phaseChangeTwoPhaseMixture.C
phaseChangeTwoPhaseMixture/newPhaseChangeTwoPhaseMixture.C
Kunz/Kunz.C

LIB = $(FOAM_USER_LIBBIN)/libphaseChangeTwoPhaseMixtures

Make/options
Code:

Kunz/Kunz.C

LIB_LIBS = \
    -L$(FOAM_USER_LIBBIN)

EXE_INC = \
    -I$(LIB_SRC)/transportModels/twoPhaseMixture/lnInclude \
    -I$(LIB_SRC)/transportModels \
    -I$(LIB_SRC)/transportModels/incompressible/lnInclude \
    -I$(LIB_SRC)/finiteVolume/lnInclude

LIB_LIBS = \
    -ltwoPhaseMixture \
    -ltwoPhaseProperties \
    -lincompressibleTransportModels \
    -lfiniteVolume

And the file options generated in the folder linux64GccDPOpt.

Code:

# 1 "options"
# 1 "<built-in>"
# 1 "<command-line>"
# 1 "options"
Kunz/Kunz.C

LIB_LIBS = -L$(FOAM_USER_LIBBIN)


EXE_INC = -I$(LIB_SRC)/transportModels/twoPhaseMixture/lnInclude -I$(LIB_SRC)/transportModels -I$(LIB_SRC)/transportModels/incompressible/lnInclude -I$(LIB_SRC)/finiteVolume/lnInclude

Could you help me to compile the case correctly?
Thanks.

alvariten May 21, 2015 04:13

Hi again,
I ran the simulation with interPhaseChangeFoam and I obtained high negative pressure values. I think it's wrong, but why does this happen? How can I avoid that?
Regards

alexB May 21, 2015 06:04

Hi alvaro,

negativ pressure values aren't bad if they don't exceed -1e+05 Pa (-1bar) . I never gave it a thought, because I think its effective pressure and not absolute pressure plotted by paraView.

regards
Alex

alexB July 16, 2015 04:43

I think I have to correct myself.
I read in some posts, that p is the absolute pressure in InterPhaseChangeFoam, so you have discovered really an error.

Edit:
Now I have to correct/clarify my correction.
My first suggestion
Quote:

negativ pressure values aren't bad if they don't exceed -1e+05 Pa (-1bar) . I never gave it a thought, because I think its effective pressure and not absolute pressure plotted by paraView.
is not wrong, but confusing, because my second statement
Quote:

p is the absolute pressure in InterPhaseChangeFoam
is also right.

As read here: http://www.cfd-online.com/Forums/ope...m-error-2.html
Quote:

Originally Posted by pEqn.H
p == p_rgh + rho*gh;

p is the absolute pressure
p_rgh is the relative/effective pressure that is plotted by paraFoam
rho*gh is the atmospheric pressure

so everything is fine in my computation. ;)

regards
Alex


All times are GMT -4. The time now is 18:30.