From OpenFOAMWiki
Revision as of 18:29, 3 November 2018 by MAlletto (Talk | contribs)


   Solver for steady or transient fluid flow and solid heat conduction, with
   conjugate heat transfer between regions, buoyancy effects, turbulence,
   reactions and radiation modelling.

1 Equations

For each region defined as fluid, the according equation for the fluid is solved and the same is done for each solid region. The regions are coupled by a thermal boundary condition.

1.1 Equations Fluid

For each fluid region the compressible Navier Stokes equation are solved.

1.1.1 Mass conservation

The variable-density continuity equation is

\frac{\partial \rho}{\partial t} +   \frac{\partial {\rho u}_j}{\partial x_j} = 0

The source code can be found in src/finiteVolume/cfdTools/compressible/rhoEqn.H:

    fvScalarMatrix rhoEqn
      + fvc::div(phi)

1.1.2 Momentum conservation

    \frac{ \partial (\rho {u}_i)}{\partial t} + \frac{\partial}{\partial x_j} \left( \rho {u}_j u_i \right) = 

   - \frac{\partial p_{rgh}} {\partial{x_i}} - \frac{\partial \rho g_j x_j}{\partial x_i}  + \frac{\partial}{\partial x_j} \left( \tau_{ij} + \tau_{t_{ij}} \right)

 u represent the velocity,  g_i the gravitational acceleration,  p_{rgh} = p - \rho g_j x_j the pressure minus the hydrostatic pressure and  \tau_{ij}  and  \tau_{t_{ij}}  are the viscose and turbulent stresses.

The source code can be found in Ueqn.H:

    // Solve the Momentum equation
    tmp<fvVectorMatrix> tUEqn
        fvm::ddt(rho, U) + fvm::div(phi, U)
      + MRF.DDt(rho, U)
      + turbulence.divDevRhoReff(U)
        fvOptions(rho, U)
    fvVectorMatrix& UEqn = tUEqn.ref();
    if (pimple.momentumPredictor())
                  - ghf*fvc::snGrad(rho)
                  - fvc::snGrad(p_rgh)
        K = 0.5*magSqr(U);

1.1.3 Energy conservation

The energy equation can be found in:

The total energy of a fluid element can be seen as the sum of kinetic energy  k = 0.5 u_i u_i and internal energy  e . The rate of change of the kinetic energy within a fluid element is the work done on this fluid element by the viscous forces, the pressure and eternal volume forces like the gravity:

    \frac{ \partial (\rho k)}{\partial t} + \frac{\partial}{\partial x_j} \left( \rho {u}_j k \right) =     - \frac{\partial p u_j} {\partial{x_i} }- \rho g_j u_j  + 
\frac{\partial}{\partial x_j}\left( \tau_{ij} u_i \right)

The rate of change of the internal energy  e of a fluid element is the heat transferred to this fluid element by diffusion plus the heat source term  r plus the heat source by radiation  Rad  :

    \frac{ \partial (\rho e)}{\partial t} + \frac{\partial}{\partial x_j} \left( \rho {u}_j e \right) =     - \frac{\partial q_i} {\partial{x_i} } +  \rho r  + Rad

The change rate of the total energy is the sum of the above two equations:

    \frac{ \partial (\rho e)}{\partial t} + \frac{\partial}{\partial x_j} \left( \rho {u}_j e \right) + \frac{ \partial (\rho k)}{\partial t} + \frac{\partial}{\partial x_j} \left( \rho {u}_j k \right)   =     - \frac{\partial q_i} {\partial{x_i} } +  \rho r  + Rad    - \frac{\partial p u_j} {\partial{x_i} }- \rho g_j u_j  + 
\frac{\partial}{\partial x_j}\left( \tau_{ij} u_i \right)

Instead of the internal energy  e there is also the option to solve the equation for the enthalpy  h =  e + p/\rho :

    \frac{ \partial (\rho h)}{\partial t} + \frac{\partial}{\partial x_j} \left( \rho {u}_j h \right) + \frac{ \partial (\rho k)}{\partial t} + \frac{\partial}{\partial x_j} \left( \rho {u}_j k \right)   =     - \frac{\partial q_i} {\partial{x_i} } +  \rho r  + Rad    + \frac{\partial p} {\partial{t} }- \rho g_j u_j  + 
\frac{\partial}{\partial x_j}\left( \tau_{ij} u_i \right)

1.2 Equations Solid

2 Source Code