CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > OpenFOAM Running, Solving & CFD

conpressibleInterFoam for non-isothermal non-newtonian high-viscous flows

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

Reply
 
LinkBack Thread Tools Display Modes
Old   May 30, 2010, 21:37
Default conpressibleInterFoam for non-isothermal non-newtonian high-viscous flows
  #1
Member
 
Jitao Liu
Join Date: Mar 2009
Location: Jinan , China
Posts: 64
Rep Power: 8
awacs is on a distinguished road
Dear foamers,

I am trying to simulate two compressible, non-isothermal, non-newtonian (high viscous), laminar, and immiscible fluids flow. There is already a compressibleInterFoam solver for 2 compressible, isothermal immiscible fluids using a VOF (volume of fluid) phase-fraction based interface capturing approach. I want to create a new compressibleNonIsothermalInterFoam. Tait state equation is used to express the fuid dencity varing with temperature and pressure:
Attached Images
File Type: jpeg Tait-equation.jpeg (17.0 KB, 114 views)
awacs is offline   Reply With Quote

Old   May 30, 2010, 21:44
Default
  #2
Member
 
Jitao Liu
Join Date: Mar 2009
Location: Jinan , China
Posts: 64
Rep Power: 8
awacs is on a distinguished road
Is it possible to modify the compressibleInterFoam solver to take the temperature into account for non-isothermal compressible laminar flows? Any suggestions will be appreciated.

Best regards,
Jitao
awacs is offline   Reply With Quote

Old   June 11, 2010, 14:30
Default Adding the temperature equation to compressibleInterFoam
  #3
New Member
 
Dan Gadensgaard
Join Date: Apr 2010
Posts: 13
Rep Power: 7
dgadensg is on a distinguished road
Hi Jitao.

I have succesfully implemented the temperature equation in the interFoam solver, and the procedure should be somewhat the same for the compressible case.
  1. First you have to add the appropriate constants and fields to the createFields.H file. This is best done by looking at step 3 in the guide provided here.
  2. Next you should add the temperature equation to the compressibleInterFoam solver algorithm. I did this by making a new file "TEqn.H" and then included this just after the PISO loop. The contents of the "TEqn.H" i added is shown below:

    Code:
    volScalarField mu //dynamic viscosity (at cell centers!)
        (
            "mu",
            twoPhaseProperties.mu()
        );
    
    volTensorField gradU = fvc::grad(U); //velocity gradient.
    
    volTensorField tau = mu * (gradU + gradU.T()); // viscous stress tensor
    
    //Temperature equation (with viscous dissipation):
    fvScalarMatrix TEqn
    	(
    		
    		rho * cp * (fvm::ddt(T) + fvm::div(phi,T))
    		- fvm::laplacian(kT,T) 
    		- ( tau && gradU ) //viscous dissipation heating.
    	);
    
    TEqn.solve();
    You should note that the above temperature equation is for an incompressible flow with constant thermal conductivity and specifik heat. Furthermore the equation takes the viscous dissipation heating into account.

    You should use a compressible version of this equation, which can be found in the litterature (e.g. Transport Phenomena by R. Byron Bird et al. - ISBN: 978-0-470-11539-8). Also note that the stress tensor should be corrected to the compressible case as well, but you should consider whether it is necessary for you to add the viscous dissipation term in your application.
  3. When this is done you should be able to compile the new solver and have a nonisothermal version of the compressibleInterFoam. Before running a case, be sure to add the appropriate boundary conditions for the temperature, as well as to choose the schemes for the new terms in "fvSchemes" and a solver algorithm in "fvSolution".

Let me know if there is any further questions! Have you implemented the Tait state equation yet? If you have, i would like to know/see how you have done this?

With Kind Regards

Dan
dgadensg is offline   Reply With Quote

Old   June 23, 2010, 23:19
Default
  #4
Member
 
Jitao Liu
Join Date: Mar 2009
Location: Jinan , China
Posts: 64
Rep Power: 8
awacs is on a distinguished road
Hi Dan,

I have added temperature field into compressibleInterFoam. The new solver works well in two-phase (polymer and air) flow simulation. Constant thermal conductivity and specifik heat are assumed in this silver.

The compressiblility is implemented in pEqn.H:
rho1 = rho10 + psi1*p;
rho2 = rho20 + psi2*p;
I am trying to take into account the effects of temperature on dencity. The aforementioned Tait state equation is such a model defining dencity as a function of temperature and pressure.

Sincerely,
Jitao
awacs is offline   Reply With Quote

Old   January 24, 2011, 13:10
Default
  #5
Senior Member
 
Illya Shevchuk
Join Date: Aug 2009
Location: Darmstadt, Germany
Posts: 174
Rep Power: 8
linch is on a distinguished road
Quote:
Originally Posted by awacs View Post
I am trying to take into account the effects of temperature on dencity. The aforementioned Tait state equation is such a model defining dencity as a function of temperature and pressure.
Hi Jitao,

have you succeeded with the implementation of the new equation of state with temperature and pressure depending density?

regards,
Ilya
linch is offline   Reply With Quote

Old   March 18, 2011, 12:21
Default
  #6
Senior Member
 
Ralph Moolenaar
Join Date: Aug 2010
Location: 's-Hertogenbosch, the Netherlands
Posts: 120
Rep Power: 7
Ralph M is on a distinguished road
Hello Dan and Jitao (and others),

I have some practical questions concerning the implementation of the heat equation.

First a remark: the laplacian in the code of Dan should be fvm::laplacian(DT,T) according to step 1..right?

I'm a but confused how DT and cp are calculated since both fluids have their own properties. Right now I'm adding read-terms in the "twoPhaseMixture"-files (both the .H and .C) to read these terms but I'm not sure whether this would be correct. these paramaters are then defined in the transportProperties-file?

Thanks for your support,

Ralph
__________________
CFD for marine applications? Go to http://www.marinecfd.com/ and join the OF Ship Hydromechanics Group: http://www.cfd-online.com/Forums/gro...mechanics.html
Ralph M is offline   Reply With Quote

Old   January 8, 2012, 08:44
Default
  #7
Senior Member
 
jeff osborne
Join Date: Mar 2010
Posts: 108
Rep Power: 7
ozzythewise is on a distinguished road
I realize that this thread is a little old, but I am in some desperate need of help. I'm trying to do the same thing that awacs was doing, that is implementing non-isothermal into the compressibleInterFoam solver, but am quite confused as to what to edit in the TEqn.H file. Isn't it when you account for compressibility you need to use enthalpy instead of temperature? That seems to be how all the built-in compressible solvers do for the rest of OF. I'm still trying to do it with TEqn.H, but I'm not sure how to edit it, would it be something like:

Code:
fvScalarMatrix TEqn
	(
		cp*(fvm::ddt(rho,T))
             + p*(fvm::div(U))
             -  fvm::laplacian(kT,T)
             - (tau && gradU)
	);
I really have no idea, please can someone help?

Thanks
Jeff
ozzythewise is offline   Reply With Quote

Old   June 23, 2015, 05:22
Default Solving for enthalpy/internal energy instead of temperature in compressibleInterFoam
  #8
New Member
 
Quinn Reynolds
Join Date: Jun 2014
Posts: 2
Rep Power: 0
kittychunk is on a distinguished road
Quote:
Originally Posted by ozzythewise View Post
Isn't it when you account for compressibility you need to use enthalpy instead of temperature? That seems to be how all the built-in compressible solvers do for the rest of OF.
I'm having the same issue. Unless I'm missing something, the compressible multiphase flow solvers shipping with OF as of version 2.4.0 seem to assume that internal energy e = Cv*T (rather than the usual integral over T), implying that Cv is constant with temperature. In general this is not the case, and a formulation of the energy conservation equation should rather use enthalpy or internal energy directly as the raw field variable; this is the way it's done in OF's vanilla compressible flow solvers. It looks like a few others have noticed this, but I couldn't find any useful answers on to how to address the issue

It's not even possible to create a reference to (for example) the mixture.he() field and then write your own "EEqn.H" for compressibleInterFoam - the solver will happily compile if you do this, but when you run a case you'll find that it will throw a "Not Implemented" error. This is because for some reason he as a field reference is not implemented in the twoPhaseMixtureThermo and multiPhaseMixtureThermo libraries. For example in "multiphaseMixtureThermo.H":

Code:
//- Enthalpy/Internal energy [J/kg]
//  Non-const access allowed for transport equations
virtual volScalarField& he()
{
    notImplemented("multiphaseMixtureThermo::he()");
    return phases_[0]->thermo().he();
}

//- Enthalpy/Internal energy [J/kg]
virtual const volScalarField& he() const
{
    notImplemented("multiphaseMixtureThermo::he() const");
    return phases_[0]->thermo().he();
}
Short of writing one's own phase mixing thermo library, I'm wondering if is there any clever way to address this?

-q
kittychunk is offline   Reply With Quote

Reply

Thread Tools
Display Modes

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 Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
y+ in high Pr flows vishyaroon Main CFD Forum 0 April 15, 2010 14:24
Oil (high Pr) flows: Near wall mesh resolution vishyaroon Main CFD Forum 0 April 13, 2010 09:37
Flows at High Angles of Attack Sarah C. FLUENT 2 March 18, 2009 08:39
High speed flows Raj FLUENT 4 January 10, 2006 05:14
Multicomponent fluid Andrea CFX 2 October 11, 2004 05:12


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