
[Sponsors] 
conpressibleInterFoam for nonisothermal nonnewtonian highviscous flows 

LinkBack  Thread Tools  Display Modes 
May 30, 2010, 21:37 
conpressibleInterFoam for nonisothermal nonnewtonian highviscous flows

#1 
Member
Jitao Liu
Join Date: Mar 2009
Location: Jinan , China
Posts: 64
Rep Power: 10 
Dear foamers,
I am trying to simulate two compressible, nonisothermal, nonnewtonian (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) phasefraction 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: 

May 30, 2010, 21:44 

#2 
Member
Jitao Liu
Join Date: Mar 2009
Location: Jinan , China
Posts: 64
Rep Power: 10 
Is it possible to modify the compressibleInterFoam solver to take the temperature into account for nonisothermal compressible laminar flows? Any suggestions will be appreciated.
Best regards, Jitao 

June 11, 2010, 14:30 
Adding the temperature equation to compressibleInterFoam

#3 
New Member
Dan Gadensgaard
Join Date: Apr 2010
Posts: 13
Rep Power: 9 
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.
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 

June 23, 2010, 23:19 

#4 
Member
Jitao Liu
Join Date: Mar 2009
Location: Jinan , China
Posts: 64
Rep Power: 10 
Hi Dan,
I have added temperature field into compressibleInterFoam. The new solver works well in twophase (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 

January 24, 2011, 13:10 

#5  
Senior Member
Illya Shevchuk
Join Date: Aug 2009
Location: Darmstadt, Germany
Posts: 176
Rep Power: 9 
Quote:
have you succeeded with the implementation of the new equation of state with temperature and pressure depending density? regards, Ilya 

March 18, 2011, 12:21 

#6 
Senior Member
Ralph Moolenaar
Join Date: Aug 2010
Location: 'sHertogenbosch, the Netherlands
Posts: 120
Rep Power: 8 
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 readterms 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 transportPropertiesfile? Thanks for your support, Ralph
__________________
CFD for marine applications? Go to http://www.marinecfd.com/ and join the OF Ship Hydromechanics Group: http://www.cfdonline.com/Forums/gro...mechanics.html 

January 8, 2012, 08:44 

#7 
Senior Member
jeff osborne
Join Date: Mar 2010
Posts: 108
Rep Power: 9 
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 nonisothermal 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 builtin 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) ); Thanks Jeff 

June 23, 2015, 05:22 
Solving for enthalpy/internal energy instead of temperature in compressibleInterFoam

#8  
New Member
Quinn Reynolds
Join Date: Jun 2014
Posts: 6
Rep Power: 5 
Quote:
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] // Nonconst 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(); } q 

November 7, 2016, 02:52 

#9 
Member
Martin Aunskjaer
Join Date: Mar 2009
Location: Denmark
Posts: 52
Rep Power: 10 
The temperature equation in compressibleInterFoam (cIF) is derived under the assumption that the specific internal energy of each phase depends only on temperature and is given by e = c_v*T, where c_v is the constant isochoric specific heat capacity. Formally, this holds only for calorically perfect gases. It is not possible to use cIF in its current form for real gases or even thermally perfect gases (de = c_v(T)dT). In practice, this is enforced through the thermo library selection restricting what is available for the sensibleInternalEnergy energy variable required by cIF.
The use of enthalpy or energy as a primary unknown instead of temperature reflects its role as the conserved variable in the energy equation. This choice of primary unknown introduces complexity because many of the thermodynamic variables are given in terms of temperature. In particular, the functional form of the enthalpy/energy is he = he(p,T), which implicitly defines temperature as a function of pressure and enthalpy/energy. Temperature does not occur naturally in the conservation equations. For a compressible twophase VOFsolver like cIF the defining equation for temperature is then rho*he(p,T) = alpha1*rho1*he1(p,T) + alpha2*rho2*he2(p,T). Temperature must be found by an iterative approach to solving this equation, given that the flow solver produces all the values except the he1/2. Extending cIF to solve for the conserved variable in the energy equation (total enthalpy or energy) instead of temperature requires sorting out both implementation and numerical problems. With a view towards the current thermo library implementation in OF at least the following implementation issues arise:
The following numerical issues can be anticipated: In a segregated solver with no coupling between the energy and volume fraction advection equations there is no reason to expect that the enthalpy/energy field is in exact agreement with the phase volume fraction and density fields. Consequently, iterating temperature from these uncoupled fields is likely to produce unphysical values in cells/faces containing the interface. This will be exacerbated when the enthalpy/energy levels of the phases are very different. Consider as an example a cell containing the interface between dry air and liquid water. The absolute specific enthalpy of liquid water is about a factor of four higher than that of dry air at room temperature (both referred to the triple point of water). Thus, if the enthalpy in the cell as calculated by the energy equation is not in exact agreement with the liquid volume fraction, the contribution from water to the cell enthalpy will either be significantly too low or too high. Solving for the temperature will not produce the correct result. It is also conceivable that different numerical schemes will have different effects on the inconsistency between the density, volume fraction and enthalpy/energy fields. Hence, in general, unphysical temperature fluctuations are to be expected in interface cells when temperature is derived from the conserved energy variable in a VOFsolver. The energy BC’s should still work, I think, but it should at least be considered if a revision is necessary. To demonstrate the above problems I made a quick modification to cIF which replaces the current temperature equation with an enthalpy equation and implements its own thermo library . I simply undocked all the necessary thermo functions from the OF thermo tree, placed them in the twoPhaseMixtureThermo.H/C, adapted as needed and created a number of pseudoclasses to allow objects of this new thermo class to be recognized as a thermo library. Running this solver on a test case (toy water rocket in 2D) immediately shows the problem of unphysical temperatures in interface cells. Eventually, other fields will become unphysical. The same case (with appropriate modifications to the thermophysicalProperties dictionary) runs fine with cIF. Experimental solver and case attached. It is for OF2.2.x but easily portable to later versions. I stress that the solver is only meant to demonstrate the numerical problems – it does not address them. How to address these issues? This is an interesting problem. Perhaps a coupled solver is needed to ensure consistency between the fields. 

Thread Tools  
Display Modes  


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 