Next Article in Journal
Fast Fault Line Selection Technology of Distribution Network Based on MCECA-CloFormer
Previous Article in Journal
Study on the Effects of Influence Factors on the Stress and Deformation Characteristics of Ultra-High CFRDs
Previous Article in Special Issue
Modeling Polymer Microencapsulation Processes Using CFD and Population Balance Models
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Improvement on Compressible Multiple-Reference-Frame Solver in OpenFOAM for Gas Turbine Flow Analysis

Aero Propulsion Research Division, Korea Aerospace Research Institute, Daejeon 34133, Republic of Korea
*
Author to whom correspondence should be addressed.
Appl. Sci. 2024, 14(18), 8269; https://doi.org/10.3390/app14188269
Submission received: 10 August 2024 / Revised: 31 August 2024 / Accepted: 6 September 2024 / Published: 13 September 2024
(This article belongs to the Special Issue Advances and Applications of CFD (Computational Fluid Dynamics))

Abstract

:
This study analyzes the turbomachinery flow of a gas turbine using OpenFOAM, an open-source CFD code. While foam-extend, a version of OpenFOAM, includes tools for turbomachinery analysis, some of its codes are incomplete, resulting in incorrect results. Consequently, this study required the investigation and correction of the solvers and libraries. Specifically, foam-extend-4.1 and a compressible multi-reference-frame solver were utilized. Two primary errors related to temperature calculation were identified. The first error involved temperature discontinuity at the interface between the stator and rotor domain when using the mixingPlane. The second error was related to temperature rising at the wall. To address the temperature discontinuity problem, the rothalpy jump equation in the enthalpyJump code was modified from a scalar product to an inner product of vectors. To resolve the high-temperature problem at the wall, modifications were made to the energy equation code in iEqn.H. A rothalpy separation was introduced, and the rothalpy equation was adjusted to mimic the enthalpy equation. The results obtained with the corrected codes were consistent with those from the commercial code, demonstrating the effectiveness of the modifications.

1. Introduction

1.1. Background

High-fidelity analysis is essential for various flow analyses, including those in gas turbine fields. For instance, Kang [1,2] demonstrated that using the LES turbulence model for cooling hole analysis in a cooled turbine can yield results closely matching experimental data for cooling flow and vortex behavior. Similarly, Jun’s research [3] indicated that, when analyzing a high-pressure turbine, the entire turbine, including the airfoil shape, the cooling flow path, and the cooling holes, is often modeled simultaneously with tens of millions of meshes. To analyze increasingly complex gas turbine components, especially those with cooling holes, fine grids are required. Consequently, a large number of grids are used, and turbulence models like LES, which require significant computation time, may be necessary to achieve accurate analysis results. For such large-scale analyses, parallel calculation is preferred. Using an open-source software can be a cost-effective alternative for large-scale parallel calculations, as it is free from license fees. In this study, we used OpenFOAM, a well-known open-source CFD code, to conduct the numerical analysis of gas turbine turbomachinery flows. Additionally, we modified some solver and library codes to improve the accuracy of calculation by addressing errors that the original codes may have introduced.

1.2. Gas Turbine Engine and Turbomachinery Flow Analysis

Gas turbine engines are typically divided into three main components: the compressor, the combustor, and the turbine. Among these, the compressor and the turbine are turbomachinery components, usually consisting of multiple stages, with the airfoils at each stage sharing the same shape and periodicity. To analyze the flow within a compressor or turbine effectively, it is preferable to connect the domains of a single airfoil’s geometry at each stage in a sequence, enabling the analysis of the entire stages by defining the appropriate boundary conditions, as shown in Figure 1. Therefore, a utility is required to establish periodic conditions between the airfoils within a stage and the interface condition between different stages.
Additionally, to analyze the flow field of the gas turbine turbomachinery, a compressible solver that accounts for compressible flow and a multiple-reference-frame (MRF) solver that considers rotation are required. Such comprehensive analysis techniques are available in the foam-extend version of OpenFOAM [4]. The foam-extend version, being community-driven, features a variety of specialized solvers tailored for specific purposes. However, users may frequently encounter calculation errors or conflicts because the solvers or libraries from different contributors are not always well tuned.

1.3. Basic Information

Although several studies have dealt with turbomachinery analysis, studies on compressible turbomachinery with OpenFOAM are relatively few. Among them, the studies of Jasak [5], Beaudoin [6], Nilsson [7], and so on researched compressible MRF solvers and interfaces for turbomachinery, and most of the issues they tackled were solved using the foam-extend version. In particular, the axial turbine problem was dealt with in the study of De Dominicis [8]. Therefore, in this study, a gas turbine analysis was performed using the steadyUniversalMRFFoam solver from foam-extend-4.1, as utilized in the study by De Dominicis. The solver and libraries were modified to correct issues that arose during calculations, allowing for a more accurate analysis.
The steadyUniversalMRFFoam solver is based on the PISO solver, so PISO-related coefficients must be set in the fvSolution file. In this study, nCorrectors 2 and nNonOrthogonalCorrectors 1 were used as the default settings. In addition, 0.5 was set for all parameters when setting up relaxationFactors.
For this study, the Korea Institute of Science and Technology Information (KISTI)’s fifth super-computer Nurion [9] was used. In the foam-extend-4.1 version, there is an issue whereby parallel nodes cannot be calculated. Therefore, this calculation was performed using up to 68 cores at one node.
Mesh generation was performed using ANSYS TurboGrid. The mesh was then converted to a Fluent mesh format and subsequently transformed into an OpennFOAM mesh using the utility “fluentMeshToFoam”.
Two geometries were used for this study: one uncooled turbine stage developed by the Korea Aerospace Research Institute, KARI, and two or five stages of the NASA/GE Energy Efficient Engine (E3) Low-Pressure Turbine (LPT) [10,11,12]. The comparison of the two geometries is described in Table 1 and shown in Figure 2.
The energy equation of the steadyUniversalMRFFoam solver of the original code contains a viscous heating term. However, in this paper, the calculation results are shown excluding this term, except for several specific cases.

2. Fundamental Theories

De Dominici [8] emphasizes that the compressible MRF solver is designed to conduct calculations using rothalpy instead of enthalpy, so the energy equation is also solved through the iEqn.H file rather than hEqn.H. In addition, they also emphasize that the rothalpy jump is applied at the interface between the stator and the rotor. Therefore, it is necessary to provide a brief summary of the rothalpy in order to understand this solver.
The definition of the torque is τ = r × F , which, assuming a steady state, can be rearranged by Reynolds transform theorem as follows:
τ = r 2 × U θ 2 m 2 ˙ r 1 × U θ 1 m 1 ˙
meaning the time rate of change in the angular momentum of the working fluid through 1 to 2, around some axis A-A, as depicted in Figure 3, where U is the fluid’s absolute velocity, Uθ is the fluid’s tangential velocity, r is the radius, and m ˙ is the mass flow rate. Therefore, the power P is derived as follows [13]:
P = τ Ω = m ˙ U R o t 2 U θ 2 U R o t 1 U θ 1
where the rotational blade speed is U R o t = Ω r , and Ω is the angular velocity [rad/s]. The specific work is equal to the power divided by the mass flow rate or the change in total enthalpy between the outlet and the inlet, expressed as follows:
w = P m ˙ = U R o t 2 U θ 2 U R o t 1 U θ 1 = h 02 h 01
The work conducted on the fluid is positive (∆w > 0) when it involves a compressor or pump rotor, and the work carried out on the rotor by the fluid is negative (∆w < 0) when it involves a turbine. After rearranging Equation (3), we obtain the following:
h 01 U R o t 1 U θ 1 = h 02 U R o t 2 U θ 2 = C o n s t .
In this way, each side has the same value, which means that it has a constant value along the flow in the rotating body. Therefore,
i 0 = h 0 U R o t U θ
or
i 0 = h + 1 2 U 2 U R o t U θ
where h 0 = h + 1 2 U 2 . This i 0 is defined as the rothalpy, and, in this paper, the symbol i 0 is used to emphasize the relationship with the stagnation property. If there is no rotation, the value of the URot is 0, so rothalpy = total enthalpy. In other words, the rothalpy can be understood as the total enthalpy with an additional term by rotation, and this additional term URotUθ is called a rothalpy jump, because it creates a discontinuous value between the stator and the rotor.
The rothalpy can be redefined using the static enthalpy and the velocity triangle, as follows:
i 0 = h + 1 2 U R e l 2 U R o t 2

3. Improvement for mixingPlane

3.1. Interface Setting

When analyzing turbomachinery in foam-extend, setting the interface is required. When dealing with periodic planes, cyclicGgi is used. When dealing with interfaces between the stator and the rotor, two typical utilities are employed: overlapGgi and mixingPlane.
The overlapGgi method passes the upstream value directly downstream, whereas the mixingPlane method averages the values in the rotation direction for each layer before passing them on. In actual experiments, measurements are typically averaged. Given that this study assumes steady-state conditions with the Reynolds-averaged Navier–Stokes (RANS) turbulent model, using mixingPlane for the interface is reasonable.
However, when using interface utilities like mixingPlane or overlapGgi with the compressible MRF solver in foam-extend-4.1, some adjustments are required. Variables such as URel, URot, and UTheta, which are used in the interface utility, are not defined in the solver- and MRF-related codes. Additionally, since Linux is case-sensitive, these variables are not read correctly if the code is written in lower case such as Urel, etc., resulting in outputs without the rothalpy jump.
Many users have discussed this issue in online forums. Here, we adopted a solution from one such post [14], which involves modifying the MRFzone files and createFiles.H and iEqn.H files in the solver directory. As a result, the rothalpy jump worked, and the temperature had a continuous value at the interface of the one-stage turbine.

3.2. Rothalpy Jump for Multi-Stage Turbine

In the case of a turbine which has a large turning angle, unlike the compressor, URot and UTheta are in the same vector plane but in the opposite direction, as depicted in the example in Figure 4. If the directions of UTheta and URot are opposite, a negative value should be calculated, but the scalar product of the absolute value always yields a positive value, so the rothalpy jump cannot be properly reflected. The actual velocity components of each node of OpenFOAM are expressed as vectors. Therefore, when calculating the rothalpy jump, the two values must be calculated by the inner product rather than the scalar product to reflect each velocity component properly.
The rothalpy jump is calculated in mixingPlaneEnthalpyJumpFvPatchFields.C, and it is also manipulated. The jump term is calculated only when equipped with URot and UTheta, and it gives a negative term if it is rotating and a positive term if it is not rotating. In our study, each jump term was corrected to be an inner product of vector components, as shown in the next paragraph. As an example, the multi-stage turbine of E3 LPT was calculated using the manipulated code, and the result is shown in Figure 5. It shows that the rothalpy has a constant value at each domain and a continuous temperature value at each interface.
……
else
{
        const fvPatchVectorField& URotp =
            lookupPatchField<volVectorField, vector>(URotName);
/*        const fvPatchScalarField& UThetap =
            lookupPatchField<volScalarField, scalar>(UThetaName);*/
        const fvPatchVectorField& UThetap =
            lookupPatchField<volVectorField, vector>(UThetaName);
        if  (rotating_)
        {
          // We can either make jump_ on neighbour field and interpolate (in
          // jumpOverlapGgi) or interpolate first, then add jump_ for
          // internalField
          /*const scalarField UThetaIn = UThetap.patchInternalField();*/
            jump_ =  - (
                        /* mag(UThetaIn)
                        *mag(URotp.patchInternalField()) */
                         UThetap.patchInternalField()
                        &URotp.patchInternalField() //modified
                       );
        }
        else
        {
            /*const scalarField UThetaIn = UThetap.patchNeighbourField();*/
            jump_ = (
                       /* mag(UThetaIn)
                       *mag(URotp.patchNeighbourField()) */
                        UThetap.patchNeighbourField()
                       &URotp.patchNeighbourField() //modified
                     );
        }
    }

4. Improvement for Energy Equation

4.1. Wall Temperature Rise Issue

After solving the mixing plane issues, the KARI uncooled turbine was analyzed using the steadyUniversalMRFFoam solver.
Figure 6 shows that the results from OpenFOAM are consistent with the ones from the commercial code in terms of pressure and velocity, but not for the temperature. It turned out that the compressible MRF solver of OpenFOAM had calculated the wall temperature to be high, affecting the temperature of the flow field. Since the viscous heating term was included in this solver’s energy equation, the wall temperature rose. But, even when the term was excluded, the wall temperature was still higher than that of the commercial code’s result, as shown in Figure 7. In addition, the wall temperature in the rotor’s rotating area was high, so the wall boundary condition was suspected, but the temperature of the non-rotating area of the stator was also high, indicating that the reason was not a boundary condition, but the energy equation.

4.2. Derivation of Energy Equation

The energy equation was derived in order to compare it with the one used in OpenFOAM. The derivation of the energy equation in the integral form is as follows:
d E d t = d d t C V e ρ d V + C S e ρ U · n d A = d Q d t d W d t + S o u r c e
d d t C V e ρ d V + C S e ρ U · n d A = Q ˙ W ˙ p r e s s u r e + W ˙ v i s c o u s   s t r e s s + S o u r c e
Hence, the energy equation in the integral form is the following:
d d t C V e ρ d V + C S e ρ U · n d A = Q ˙ C S p U · n d A C S τ · U d A + S o u r c e
where e = e i n t e r n a l + e k i n e t i c + e p o t e n t i a l = u ^ + 1 2 U 2 + g z , and the potential energy is negligible.
From Equation (8), the derivation of the energy equation in the differential form is as follows:
L . H . S . = t ρ e + x ρ u e + y ρ v e + z ρ w e d x d y d z = t ρ e + · ρ U e d x d y d z
R . H . S . = · k T · U p + · U · τ i j + s o u r c e d x d y d z
Hence, the energy equation in the differential form is the following:
t ρ e + · ρ U e = · k T · U p + · U · τ i j + s o u r c e
where
Q ˙ = x q x + y q y + z q z d x d y d z = · q d x d y d z = · k T d x d y d z ; e = u ^ + K ;   K = 1 2 U 2 .  
Then, Equation (9) is expanded as follows:
t ρ u ^ + K + · ρ U u ^ + K + p ρ = · k T + · U · τ i j + s o u r c e
Equation (10) is written in the internal energy form as follows:
t ρ u ^ + t ρ K + · ρ U u ^ + · ρ U K + · U p = · ρ α C p C v u ^ + · U · τ i j + s o u r c e
where α = k ρ C p ; C p = d h d T ; and C v = d u ^ d T .
Equation (11) is written in the enthalpy form as follows:
t ρ h p ρ + t ρ K + · ρ U h + · ρ U K = · ρ α h + · U · τ i j + s
where h = u ^ + p ρ .

4.3. The Modified Energy Equation

When comparing the energy equation defined in Section 4.2 with the energy equation code of any other compressible solver by the ESI group or the OpenFOAM Foundation, they match each other. It should be noted that alphaEff in OpenFOAM is the effective thermal turbulent diffusivity, which is defined as the value of the normal thermal diffusion coefficient multiplied by the density or Mu/Pr, and the unit is [kg/m/s]. However, the energy equation codes of the compressible solver of foam-extend are different from the above equations. For example, for the steady state and neglecting the viscous heating term and the source term, Equation (12) should be as follows:
· ρ U h + · ρ U K ρ α 2 h = 0
However, in the case of rhoSimpleFoam in foam-extend, the kinetic energy term is lacking, so that there is no temperature boundary layer on the wall, along with the velocity boundary layer. Therefore, adding the kinetic energy term, the equation code is completed as follows:
{
    fvScalarMatrix hEqn
    (
      fvm::div(phi, h)
//    - fvm::Sp(fvc::div(phi), h) //neglected
     + fvc::div(phi, volScalarField("K", 0.5*magSqr(U))) //Added
     - fvm::laplacian(turbulence->alphaEff(), h)
//     ==
/*        fvc::div(phi/fvc::interpolate(rho), rho/psi, "div(U,p)")
     - (rho/psi)*fvc::div(phi/fvc::interpolate(rho))*/ //neglected
    );
    hEqn.relax();
    hEqn.solve();
    thermo.correct();
}
where fvm::(finite volume method) is a namespace which includes the discretization-implicit operators and is added to the coefficient matrix, and fvc::(finite volume calculus) is a namespace which includes the differential-explicit operators and is added to right-hand side of the matrix equation.
The result following the modified code is then compared with the result of the original one, as shown in Figure 8.
On the other hand, the energy equation code of steadyUniversalMRFFoam defined in foam-extend-4.1 is as follows:
fvScalarMatrix iEqn
(
    fvm::div(phi, i)
  + fvm::SuSp(-fvc::div(phi), i)
  - fvm::laplacian(turbulence->alphaEff(), i)
 ==
  // Viscous heating: note sign (devRhoReff has a minus in it)
  - (turbulence->devRhoReff() && fvc::grad(U))
);
iEqn.relax();
iEqn.solve();
// From rothalpy, calculate enthalpy after solution of rothalpy equation
h = i + 0.5*(magSqr(Urot) - magSqr(Urel));
However, this code is different from the energy equation while lacking the kinetic energy term. This code calculates the divergence of the rothalpy, which includes static enthalpy and kinetic energy, but it is same as calculating the total enthalpy.
Therefore, it is advisable to modify the rothalpy equation properly and then modify the code accordingly. First, it is necessary to separate the rothalpy. The rothalpy can be separated by the kinetic energy term relative to the velocity, as follows:
i 0 = i + 1 2 U r e l 2 = h 0 U r o t U θ = h + 1 2 U r e l 2 1 2 U r o t 2
i = h 1 2 U r o t 2
Equation (14) has the same form as static enthalpy from the total enthalpy, and accordingly, a new relationship between the separated rothalpy and the static enthalpy is formed in Equation (15). If the above relation is used, the rothalpy equation can be modified as follows:
· ρ U i + · ρ U 0.5 U r e l 2 ρ α 2 i = 0
This equation resembles the general enthalpy equation, and the energy equation is solved exactly the same as the enthalpy equation in the stationary domain, and the rothalpy separated from the kinetic energy is solved in the rotating domain. The energy equation code iEqn.H, considering Equation (16), is as follows:
fvScalarMatrix iEqn
(
    fvm::div(phi, i)
  + fvc::div(phi, volScalarField("K", 0.5*magSqr(Urel)))
  - fvm::laplacian(turbulence->alphaEff(), i)
);
iEqn.relax();
iEqn.solve();
// From rothalpy, calculate enthalpy after solution of rothalpy equation
h = i + 0.5*(magSqr(Urot));
This code yields the final enthalpy, which yields the temperature of the whole flow field.
When using the separated rothalpy and the modified code, the libraries for the boundary conditions must be modified, too. Typically, when using fixedEthalpy and gradientEnthalpy, the newly defined separated rothalpy relation equation should be applied.
When analyzing the KARI uncooled turbine with 1.7 million meshes using the code, the analysis results of the OpenFOAM and the commercial code are almost the same as those shown in Figure 9. In addition, the wall temperature value mid span is shown in Figure 10, and an average error within 0.1% occurs in the stator, and within 1% in the rotor. The error in the rotor is likely due to a mass flow rate discrepancy at the interface, which affects the temperature value.
In addition, the NASA/GE E3 five-stage LPT with 8 million meshes was analyzed, and the wall temperature distribution mid plane is shown in Figure 11, the pressure distribution of the airfoil mid plane in Figure 12, and the temperature distribution of the airfoil mid plane in Figure 13. In this geometry, the mass flow rate error occurred less, and, thus, there was no temperature shift such as that observed in the KARI turbine. Therefore, it can be seen that the temperature results of OpenFOAM and the commercial code match exactly, not only the pressure results.

5. Conclusions

In this study, OpenFOAM was utilized to analyze the turbomachinery flow of gas turbine engines, with specific attention given to correcting errors which arise when using the compressible MRF solver in the foam-extend version. First, in the mixingPlane which handles the interface, the rothalpy jump was modified from a scalar product of the absolute value to an inner product, which is more consistent with the fundamental theory, in order to prevent the temperature discontinuity that can occur at the interface between different stages.
Additionally, the solver exhibited an issue where the wall temperature increased due to the absence of the kinetic energy term in the energy equation. To address this, the kinetic energy term was separated from the rothalpy. When these revised rothalpy and kinetic energy terms were applied, the wall temperature was calculated correctly, yielding results consistent with those obtained from commercial code analysis.
However, there are still unsolved issues, such as the mass flow rate error through the mixing plane and the need for corrections related to viscous heating. These areas require further research.

Author Contributions

Conceptualization, S.-H.K. and Y.S.K.; methodology, S.-H.K. and Y.S.K.; software, S.-H.K.; validation, S.-H.K. and Y.S.K.; formal analysis, S.-H.K. and Y.S.K.; investigation, S.-H.K. and Y.S.K.; resources, S.-H.K. and Y.S.K.; data curation, S.-H.K. and Y.S.K.; writing—original draft preparation, S.-H.K.; writing—review and editing, S.-H.K., D.-H.R. and Y.S.K.; visualization, S.-H.K.; supervision, D.-H.R. and Y.S.K.; project administration, D.-H.R. and Y.S.K.; and funding acquisition, D.-H.R. and Y.S.K. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported by the Korea Research Institute for Defense Technology Planning and Advancement (KRIT), with a grant funded by the Defense Acquisition Program Administration (DAPA) (KRIT-CT-22-053).

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Data can be requested from the authors upon agreement.

Acknowledgments

This work was supported by the National Supercomputing Center through supercomputing resources, including technical support (KSC-2023-CRE-0286).

Conflicts of Interest

The authors declare no conflicts of interest.

References

  1. Kang, Y.S.; Jun, S.; Rhee, D.H. Large Eddy Simulations on Film Cooling Flow from a Fan-Shaped Cooling Hole on a Flat Plate. KSFM J. Fluid Mach. 2018, 21, 5–13. [Google Scholar] [CrossRef]
  2. Kang, Y.S.; Rhee, D.H.; Song, Y.J.; Kwak, J.S. Large Eddy Simulations on Film Cooling Flow Behaviors with Upstream Turbulent Boundary Layer Generated by Circular Cylinder. Energies 2021, 14, 7227. [Google Scholar] [CrossRef]
  3. Jun, S.; Rhee, D.H.; Kang, Y.S.; Chung, H.; Kim, J.H. Application of the Source Term Method and Fan-Shaped Hole for Cooling Performance Improvement in a High-Pressure Turbine. Energies 2022, 15, 6943. [Google Scholar] [CrossRef]
  4. Foam-Extend. Available online: https://sourceforge.net/projects/foam-extend/ (accessed on 11 July 2024).
  5. Jasak, H.; Beaudoin, M. OpenFOAM Turbo Tools: From General Purpose CFD to Turbomachinery Simulations. In Proceedings of the ASME-JSME-KSME 2011 Joint Fluids Engineering Conference: Volume 1, Symposia—Parts A, B, C, and D: 1801–1812, Hamamatsu, Japan, 24–29 July 2011. [Google Scholar] [CrossRef]
  6. Beaudoin, M.; Nilsson, H.; Page, M.; Magnan, R.; Jasak, H. Evaluation of an improved mixing plane interface for OpenFOAM. IOP Conf. Ser. Earth Environ. Sci. 2014, 22, 022004. [Google Scholar] [CrossRef]
  7. Nilsson, H.; Page, M.; Beaudoin, M.; Gschaider, B.; Jasak, H. The OpenFOAM Turbomachinery Working Group, and Conclusions from the Turbomachinery Session of the Third OpenFOAM Workshop. In Proceedings of the 24th IAHR Symposium on Hydraulic Machinery and Systems, Foz do Iguassu, Brazil, 27–31 October 2008. [Google Scholar]
  8. De Dominicis, I.; Cvijetić, G.; Willetts, M.; Jasak, H. Enhanced Turbomachinery Capabilities for Foam-Extend: Development and Validation; OpenFOAM®: Selected Papers of the 11th OpenFOAM Workshop; Springer Nature: Cham, Switzerland, 2019; pp. 145–155. [Google Scholar] [CrossRef]
  9. Nurion: 5th Supercomputer Summary. Available online: https://www.ksc.re.kr/eng/resources/nurion (accessed on 11 July 2024).
  10. Cherry, D.G.; Gay, C.H.; Lenahan, D.T. Energy Efficient Engine Low Pressure Turbine Test Hardware Detailed Design Report; NASA CR-167956; 1982. Available online: https://ntrs.nasa.gov/citations/19850002686 (accessed on 9 August 2024).
  11. Bridgeman, M.J.; Cherry, D.G.; Pedersen, J. NASA/GE Energy Efficient Engine Low Pressure Turbine Scaled Test Vehicle Performance Report; NASA CR-168290; 1983. Available online: https://ntrs.nasa.gov/citations/19900019247 (accessed on 9 August 2024).
  12. Hall, E.J.; Lynn, S.R.; Heidegger, N.J.; Delaney, R.A. Energy Efficient Engine Low Pressure Subsystem Flow Analysis; NASA/CR-1998-206597, April 1998. Available online: https://ntrs.nasa.gov/citations/19980232149 (accessed on 9 August 2024).
  13. Dixon, S.L. Fluid Mechanics, Thermodynamics of Turbomachinery, 4th ed.; Butterworth-Heinemann: Oxford, UK, 1998. [Google Scholar]
  14. A Forum about MRF Error. Available online: https://www.cfd-online.com/Forums/openfoam/210386-unphysical-temperature-mixing-plane.html#post779039 (accessed on 11 July 2024).
Figure 1. An example of the turbomachinery flow domain for analysis: E3 LPT’s five stages.
Figure 1. An example of the turbomachinery flow domain for analysis: E3 LPT’s five stages.
Applsci 14 08269 g001
Figure 2. Two different turbine geometries: (a) KARI turbine and (b) E3 LPT.
Figure 2. Two different turbine geometries: (a) KARI turbine and (b) E3 LPT.
Applsci 14 08269 g002
Figure 3. Rotating domain.
Figure 3. Rotating domain.
Applsci 14 08269 g003
Figure 4. The example of the velocity triangle of the multi-stage turbine.
Figure 4. The example of the velocity triangle of the multi-stage turbine.
Applsci 14 08269 g004
Figure 5. An example of multi-stage turbine flow analysis of E3 LPT’s two stages: (a) rothalpy and (b) temperature.
Figure 5. An example of multi-stage turbine flow analysis of E3 LPT’s two stages: (a) rothalpy and (b) temperature.
Applsci 14 08269 g005
Figure 6. Comparison of KARI uncooled turbine flow analysis results mid span, with the viscous heating term by CFX and the OpenFoam (OF) compressible MRF solver: (a) CFX, pressure; (b) CFX, relative velocity; (c) CFX, temperature; (d) OF, pressure; (e) OF, relative velocity; and (f) OF, temperature.
Figure 6. Comparison of KARI uncooled turbine flow analysis results mid span, with the viscous heating term by CFX and the OpenFoam (OF) compressible MRF solver: (a) CFX, pressure; (b) CFX, relative velocity; (c) CFX, temperature; (d) OF, pressure; (e) OF, relative velocity; and (f) OF, temperature.
Applsci 14 08269 g006
Figure 7. Uncooled turbine wall temperature by (a) CFX and (b) OpenFOAM’s original compressible MRF solver.
Figure 7. Uncooled turbine wall temperature by (a) CFX and (b) OpenFOAM’s original compressible MRF solver.
Applsci 14 08269 g007
Figure 8. Comparison of temperature by rhoSimpleFoam of foam-extend-4.1: (a) original code and (b) modified code.
Figure 8. Comparison of temperature by rhoSimpleFoam of foam-extend-4.1: (a) original code and (b) modified code.
Applsci 14 08269 g008
Figure 9. Comparison of wall temperature by each solver: (a) CFX and (b) modified solver of OpenFOAM.
Figure 9. Comparison of wall temperature by each solver: (a) CFX and (b) modified solver of OpenFOAM.
Applsci 14 08269 g009
Figure 10. Mid-span wall temperature of the KARI uncooled turbine.
Figure 10. Mid-span wall temperature of the KARI uncooled turbine.
Applsci 14 08269 g010
Figure 11. Temperature of NASA/GE E3 five-stage LPT mid plane: (a) CFX and (b) modified solver of OpenFOAM.
Figure 11. Temperature of NASA/GE E3 five-stage LPT mid plane: (a) CFX and (b) modified solver of OpenFOAM.
Applsci 14 08269 g011
Figure 12. Mid-plane wall pressure of NASA/GE E3 five-stage LPT.
Figure 12. Mid-plane wall pressure of NASA/GE E3 five-stage LPT.
Applsci 14 08269 g012
Figure 13. Mid-plane wall temperature of NASA/GE E3 five-stage LPT.
Figure 13. Mid-plane wall temperature of NASA/GE E3 five-stage LPT.
Applsci 14 08269 g013
Table 1. Information on two turbines.
Table 1. Information on two turbines.
KARI TurbineE3 LPT
Stages15
Number of stator vanes5672/102/96/114/120
Number of rotor blades104120/122/122/156/110
RPM17,0003208.7
Inlet total T1673 K416.7 K
Inlet total p3.0685 MPa310 kPa
Outlet static p1.15 MPa65 kPa
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Kang, S.-H.; Rhee, D.-H.; Kang, Y.S. Improvement on Compressible Multiple-Reference-Frame Solver in OpenFOAM for Gas Turbine Flow Analysis. Appl. Sci. 2024, 14, 8269. https://doi.org/10.3390/app14188269

AMA Style

Kang S-H, Rhee D-H, Kang YS. Improvement on Compressible Multiple-Reference-Frame Solver in OpenFOAM for Gas Turbine Flow Analysis. Applied Sciences. 2024; 14(18):8269. https://doi.org/10.3390/app14188269

Chicago/Turabian Style

Kang, Seung-Hwan, Dong-Ho Rhee, and Young Seok Kang. 2024. "Improvement on Compressible Multiple-Reference-Frame Solver in OpenFOAM for Gas Turbine Flow Analysis" Applied Sciences 14, no. 18: 8269. https://doi.org/10.3390/app14188269

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop