3 rd OpenFOAM Workshop 11 th July 2008 AeroFoam: an accurate inviscid compressible solver for aerodynamic applications Giulio Romanelli Elisa Serioli Paolo Mantegazza Aerospace Engineering Department Politecnico di Milano [email protected][email protected][email protected]AeroFoam: an accurate inviscid compressible solver for aerodynamic applications
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
3rd OpenFOAM Workshop 11th July 2008
AeroFoam: an accurate inviscid compressiblesolver for aerodynamic applications
Giulio RomanelliElisa Serioli
Paolo Mantegazza
Aerospace Engineering DepartmentPolitecnico di Milano
AeroFoam: an accurate inviscid compressible solver for aerodynamic applications
Introduction Numerical scheme Test problems Work in progress Future work
Table of contents
1 Introduction
2 Numerical scheme
3 Test problems
4 Work in progress
5 Future work
AeroFoam: an accurate inviscid compressible solver for aerodynamic applications
Introduction Numerical scheme Test problems Work in progress Future work
Outline
Objective
Develop a new accurate inviscid compressible Godunov-type coupled solver foraerodynamic (and aeroelastic) applications in transonic and supersonic regime
centralFoam by L. Gasparini: inviscid compressible central (or central-upwind)coupled solver, 2nd order formulation of Kurganov, Noelle and Petrova (KNP)
GASDYN+OpenFOAM 1D/3D formulation by Dipartimento di Energetica,Politecnico di Milano: inviscid compressible Godunov-type coupled solver,1st order Harten, Lax and vanLeer (HLL/C) Riemann solver
AeroFoam: an accurate inviscid compressible solver for aerodynamic applications
Introduction Numerical scheme Test problems Work in progress Future work
Conservative variables vector and inviscid flux function tensor:
u =
ρ
m
Et
=
ρ
ρ v
ρe + 12ρ|v|2
f =
m
mρ ⊗m + P [ I ]
mρ (Et + P )
Polytropic Ideal Gas (PIG) thermodynamic model: γ = Cp/Cv, R = Ru/M
AeroFoam: an accurate inviscid compressible solver for aerodynamic applications
Introduction Numerical scheme Test problems Work in progress Future work
FV Framework
Sh = ∂Vh
Ωi Ωj
Γij nij
On each Ωi cell: averaged conservative variablesvector (2×volumeScalarField, 1×volumeVectorField)
Ui(t) =1
|Ωi|
∫Ωi
u(x, t) dV
On each Γij interface: numerical fluxes vector(2×surfaceScalarField, 1×surfaceVectorField)
Fij(t) =1
|Γij |
∫Γij
f(u) · n(x, t) dS
On each Ωi cell: cell-centered spatially discretized Euler equations ODE system
dUi
dt+
1
|Ωi|
Nf∑j=1
|Γij |Fij = 0 Targets:
Monotone and sharp solution
near discontinuities
2nd order of accuracy in space
in smooth flow regions?
AeroFoam: an accurate inviscid compressible solver for aerodynamic applications
Introduction Numerical scheme Test problems Work in progress Future work
Monotone numerical fluxes
Several Godunov-type monotone 1st order expressions for the numerical fluxesvector presented in Literature in the form: Fij = Fij(Ui, Uj)
Implemented in AeroFoam:
Approximate Riemann Solver (ARS)
Convective Upwind and Split Pressure (CUSP)
Harten-Lax-vanLeer (HLL/C)
Osher-Solomon (OS)
Euler equations rotational invariance
From a 3D problem in global reference frame G (X − Y − Z) to an 1D equivalentproblem in local reference frame L (x− y − z)
PSfrag
Γij
Ωi
x, u
y, v
z, w
X, vX
Y, vY
Z, vZ
R(nG
ij)
nij
G
L
local solutions ULi = R(bnij)UG
i
local fluxes FLij = FL
ij (ULi ,UL
j )
back to global fluxes FGij = R(bnij)
−1 FLij
AeroFoam: an accurate inviscid compressible solver for aerodynamic applications
Introduction Numerical scheme Test problems Work in progress Future work
Approximate Riemann Solver
Roe (1981): local linearization at each interface Γij of the governing equationsand exact solution of the resulting Riemann problem (e.g. 1D)
Γijxi xj
Ui
Uj
∂u
∂t+ A
∂u
∂x= 0
Projected Jacobian matrix evaluated at Roe’s intermediate state A = ∂f∂u
∣∣bU · nij
satisfying the following properties:
1 bA −→ A(U) smoothly as Ui, Uj −→ U
2 bA = bR bΛ bR−1 diagonalizable with real eigenvalues and orthogonal eigenvectors
3 consistency: bA (Uj −Ui) =ˆf(Uj)− f(Ui)
˜· bnij
Monotone 1st order numerical fluxes vector (generalization of upwind method):
FARSij =
f(Ui) + f(Uj)
2· nij −
1
2R |Λ| R−1 (Uj −Ui)
AeroFoam: an accurate inviscid compressible solver for aerodynamic applications
Introduction Numerical scheme Test problems Work in progress Future work
High resolution numerical fluxes
Idea: combine a monotone 1st order numerical flux FIij (works fine near shocks)
and a 2nd order numerical flux FIIij (works fine in smooth flow regions) by means
of a flux-limiter function Φ
FHRij = FI
ij + Φ (FIIij − FI
ij ) = FIij + Aij ,
Implemented in AeroFoam
Lax-Wendroff (LW)
Jameson-Schmidt-Turkel (JST)
Remark
To build the antidissipative numerical fluxes vector Aij(Ui, Uj ; Ui∗ , Uj∗)solutions Ui∗ and Uj∗ on extended cells Ωi∗ and Ωj∗ are also needed
AeroFoam: an accurate inviscid compressible solver for aerodynamic applications
Introduction Numerical scheme Test problems Work in progress Future work
Extended cells connectivity
Idea: continue Ωi and Ωj cells along nij , e.g. Ωj∗ : Ωq ∈ B(Pj) = Ωq|Pj ∈ Ωqsuch that ∆⊥ = ‖(xq − xij)− (xq − xij) · nij nij‖ is minimum
Extended cells connectivity data structures (2× labelField) are initialized in thepre-processing stage with the following algorithms (meshSearch library is used):
Ωi ΩjΩi∗ Ωj∗Pi
Pj
Γijnij
A. Incremental search algorithm(works fine on structured meshes)
initial guess xA = sA bnij
Ωj∗ : Ωq such that xA ∈ Ωq
if Ωj∗ ≡ Ωj update sA = 2 sA
B. Nonincremental search algorithm(works fine on unstructured meshes)
xB = sB bnij where sB = 4|Ωj |/|Γij |Ωj∗ : Ωq such that xB ∈ Ωq
AeroFoam: an accurate inviscid compressible solver for aerodynamic applications
Introduction Numerical scheme Test problems Work in progress Future work
Lax-Wendroff
Lax-Wendroff (1961): the following antidissipative numerical fluxes vector Aij
is added to ARS monotone 1st order numerical fluxes vector FARSij
AeroFoam: an accurate inviscid compressible solver for aerodynamic applications
Introduction Numerical scheme Test problems Work in progress Future work
Riemann boundary conditions
At asymptotic/external boundary subset S∞
Boundarytype
Flow type NbcAssignedvariables
Extrapolatedvariables
Sinflow
vij · bnij < 0
Supersonic flow
vij · bnij > cij
(∼SupersonicInlet)
Nd + 2 T, v, P −
Subsonic flow
vij · bnij < cij
(∼Inlet)
Nd + 1 T, v P
Soutflow
vij · bnij > 0
Supersonic flow
vij · bnij > cij
(∼ExtrapolatedOutlet)
0 − T, v, P
Subsonic flow
vij · bnij < cij
(∼Outlet)
1 T v, P
AeroFoam: an accurate inviscid compressible solver for aerodynamic applications
Introduction Numerical scheme Test problems Work in progress Future work
Slip boundary conditions
At solid/impermeable boundary subset Sbody
linear extrapolation of solution UGCj and UGC
j∗ on ghost cells ΩGCj and ΩGC
j∗
set to zero normal velocity component and update conservative variables
vj = vj − (vj · nij) nij Etj = Et
j −1
2ρj |vj |2 +
1
2ρj |vj |2
Generalization: transpiration boundary conditions
The geometric and kinematic effects of a given body displacement law s(x, t)(rigid and deformative) can be simulated by means of a transpiration velocity:
vj = vj − (vj · nij) nij
∣∣∣ + Vn nij
∣∣∣Vn = −vj · ∆n︸ ︷︷ ︸
geometric
+ s · n0︸ ︷︷ ︸kinematic
+ s · ∆n︸ ︷︷ ︸mixed
Mesh is not deformed runtime (expensive) but only in the post-processing stagewith the implemented utility showDisplacement (motionSolver library is used)
AeroFoam: an accurate inviscid compressible solver for aerodynamic applications
Introduction Numerical scheme Test problems Work in progress Future work