30 0 3MB
Page |1
Page |2
ME-322 CEP Fluid Mechanics II Simulation Report
CFD ANALYSIS OF A NACA 0012 AIRFOIL HASSAN (2018144) 0012 AYUB AIRFOIL M. MAAZ SIDDIQUI (2018297)
Page |3
Flow Around an Inclined NACA 0012 Airfoil
Author
COMSOL
Report date
Jun 5, 2021 12:58:31 PM
SUMMARY This example simulates the flow around an inclined NACA 0012 airfoil at different angles of attack using the SST turbulence model.
Page |4
Contents 1.
Global Definitions..............................................................................................................................4
1.1. 2.
Parameters................................................................................................................................................................. 4
Component 1.....................................................................................................................................5
2.1.
Definitions................................................................................................................................................................. 5
2.2.
Geometry 1................................................................................................................................................................ 5
2.3.
Materials..................................................................................................................................................................... 8
2.4.
Laplace Equation..................................................................................................................................................... 9
2.5.
Turbulent Flow, SST............................................................................................................................................. 15
2.6.
Mesh 1...................................................................................................................................................................... 44
3.
Study 1..............................................................................................................................................57
3.1.
Stationary................................................................................................................................................................ 57
3.2.
Solver Configurations......................................................................................................................................... 57
4.
Study 2..............................................................................................................................................60
4.1.
Wall Distance Initialization................................................................................................................................ 60
4.2.
Stationary................................................................................................................................................................ 60
4.3.
Solver Configurations......................................................................................................................................... 61
5.
Results...............................................................................................................................................68
5.1.
Datasets................................................................................................................................................................... 68
5.2.
Derived Values....................................................................................................................................................... 70
5.3.
Tables........................................................................................................................................................................ 70
5.4.
Plot Groups............................................................................................................................................................. 74
Page |5
1 Global Definitions Autho r
COMSOL
Date
June 5, 2021 11:48:01 AM
Global settings
Name
Naca0012 airfoil (1).mph
Path
C:\Users\maaz\Downloads\naca0012_airfoil (1).mph
Version
COMSOL Multiphysics 5.6 (Build: 280)
Used products
COMSOL Multiphysics CFD Module Computer information
CPU
Intel64 Family 6 Model 165 Stepping 2, 4 cores
Operating system
Windows 10
1.1 PARAMETERS Parameters 1
Name
Expression
Value
Description
U_inf
50[m*s^ - 1]
50 m/s
Free-stream velocity
rho_inf
1.2043[kg*m^ - 3]
1.2043 kg/m³
Free-stream density
mu_inf
1.81397e-5[kg*m^ - 1*s^ - 1]
1.814E−5 kg/(m·s)
Free-stream dynamic viscosity
L
180[m]
180 m
Domain reference length
c
1.8[m]
1.8 m
Chord length
k_inf
0.1*mu_inf*U_inf/(rho_inf*L)
4.184E−7 m²/s²
Free-stream turbulent kinetic energy
om_inf
10*U_inf/L
2.7778 1/s
Free-stream specific dissipation rate
alpha
0
0
Angle of attack
Page |6
2 Component 1 Settings
Descriptio n
Value
Unit system
Same as global system (SI)
2.1 DEFINITIONS 2.1.1
Coordinate Systems
Boundary System 1 Coordinate system type
Boundary system
Tag
sys1
Coordinate names
First
Second
Third
t1
n
to
2.2 GEOMETRY 1
Geometry 1 Units
Length unit
m
Angular
deg
Page |7 unit Geometry statistics
Description
Value
Space dimension
2
Number of domains
1
Number of boundaries
4
Number of vertices
4
2.2.1
Circle 1 (c1)
Position
Descriptio n
Value
Position
{0, 0}
Rotation angle
Descriptio n
Value
Rotation
90
Size and shape
Description
Value
Radius
L
Sector angle
90
2.2.2
Parametric Curve 1 (pc1)
Position
Descriptio n
Value
Position
{-c, 0}
Parameter
Description
Value
Name
s
Minimum
0
Maximum
1
Expressions
{c*s, c*0.594689181*(0.298222773*sqrt(s) - 0.127125232*s - 0.357907906*s^2 + 0.291984971*s^3 - 0.105174696*s^4)}
Page |8
2.2.3
Rectangle 1 (r1)
Position
Descriptio n
Value
Position
{0, 0}
Size
Descriptio n
Value
Width
L
Height
L
2.2.4
Mirror 1 (mir1)
Settings
Description
Value
Keep input objects
On
Point on line of reflection
Description
Value
Point in plane
{0, 0}
Normal vector to line of reflection
Description
Value
Plane normal
{0, 1}
Page |9
2.3 MATERIALS 2.3.1
Air
Air Selection
Geometric entity level
Domain
Selection
Geometry geom1: Dimension 2: All domains
Material parameters
Name
Value
Unit
Dynamic viscosity
eta(T)
Pa·s
Density
rho(pA,T )
kg/m³
Basic
Description
Value
Coefficient of thermal expansion
{{alpha_p(pA, T), 0, 0}, {0, alpha_p(pA, T), 0}, {0, 0, alpha_p(pA, T)}}
Mean molar mass
0.02897[kg/mol]
Bulk viscosity
muB(T)
thermalexpansioncoefficient_symmetry
3
molarmass_symmetry
0
bulkviscosity_symmetry
0
P a g e | 10 Description
Value
Dynamic viscosity
eta(T)
dynamicviscosity_symmetry
0
Ratio of specific heats
1.4
ratioofspecificheat_symmetry
0
Electrical conductivity
{{0[S/m], 0, 0}, {0, 0[S/m], 0}, {0, 0, 0[S/m]}}
electricconductivity_symmetry
3
Heat capacity at constant pressure
Cp(T)
heatcapacity_symmetry
0
Density
rho(pA, T)
density_symmetry
0
Thermal conductivity
{{k(T), 0, 0}, {0, k(T), 0}, {0, 0, k(T)}}
thermalconductivity_symmetry
3
Speed of sound
cs(T)
soundspeed_symmetry
0
Nonlinear model
Description
Value
Parameter of nonlinearity
(def.gamma + 1)/2
BA_symmetry
0
Ideal gas
Description
Value
Specific gas constant
R_const/Mn
Rs_symmetry
0
Heat capacity at constant pressure
Cp(T)
heatcapacity_symmetry
0
Ratio of specific heats
1.4
ratioofspecificheat_symmetry
0
Mean molar mass
0.02897
molarmass_symmetry
0
2.4 LAPLACE EQUATION Used products
COMSOL Multiphysics
P a g e | 11
Laplace Equation Selection
Geometric entity level
Domain
Selection
Geometry geom1: Dimension 2: All domains
2.4.1
Interface Settings
Discretization Settings
Description
Value
Shape function type
Lagrange
Element order
Quadratic
Frame
Spatial
Units Dependent variable quantity
Unit
Custom unit
m^2/s
Source term quantity
Unit
Custom unit
s^-1
P a g e | 12
2.4.2
Variables
Name
Expression
lpeq.nx
Description
Selection
Details
nx
Normal vector, x component
Boundaries 1–4
Meta
lpeq.ny
ny
Normal vector, y component
Boundaries 1–4
Meta
lpeq.nz
root.nz
Normal vector, z component
Boundaries 1–4
Meta
lpeq.nxmesh
nxmesh
Normal vector (mesh), x component
Boundaries 1–4
Meta
lpeq.nymesh
nymesh
Normal vector (mesh), y component
Boundaries 1–4
Meta
lpeq.nzmesh
root.nzmesh
Normal vector (mesh), z component
Boundaries 1–4
Meta
2.4.3
Unit
Laplace Equation 1
Laplace Equation 1 Selection
Geometric entity level
Domain
Selection
Geometry geom1: Dimension 2: All domains
Equations
P a g e | 13 Variables Name
Expression
Unit
Description
Selection
domflux.phix
-d(phi,x)
m/s
Domain flux, x component
Domain 1
domflux.phi y
-d(phi,y)
m/s
Domain flux, y component
Domain 1
Shape functions Name phi
Shape function Lagrange (Quadratic)
2.4.4
Unit
Description
Shape frame
Selection
m²/s
Dependent variable phi
Spatial
Domain 1
Zero Flux 1
Zero Flux 1 Selection
Geometric entity level
Boundary
Selection
Geometry geom1: Dimension 1: All boundaries
Equations
P a g e | 14
2.4.5
Initial Values 1
Initial Values 1 Selection
Geometric entity level
Domain
Selection
Geometry geom1: Dimension 2: All domains
Settings
Description
Value
Initial value for phi
0
Initial time derivative of phi
0
P a g e | 15
2.4.6
Dirichlet Boundary Condition 1
Dirichlet Boundary Condition 1 Selection
Geometric entity level
Boundary
Selection
Geometry geom1: Dimension 1: Boundary 2
Equations
Settings
Description
Value
Value on boundary
0
Prescribed value of phi
On
Constraints Constrain t
Constraint force
Shape function
Selection
Details
-phi
-test(phi)
Lagrange (Quadratic)
Boundary 2
Elemental
P a g e | 16
2.4.7
Flux/Source 1
Flux/Source 1 Selection
Geometric entity level
Boundary
Selection
Geometry geom1: Dimension 1: Boundary 1
Equations
Settings
Description
Value
Boundary absorption/impedance term
0
Boundary flux/source
-nx*U_inf
Variables Name
Expression
Unit
Description
Selection
Details
lpeq.g_ph i
-nx*U_inf
m/s
Boundary flux/source
Boundary 1
+ operation
2.5 TURBULENT FLOW, SST Used products
P a g e | 17 COMSOL Multiphysics CFD Module
Turbulent Flow, SST Selection
Geometric entity level
Domain
Selection
Geometry geom1: Dimension 2: All domains
Equations
P a g e | 18
2.5.1
Interface Settings
Discretization Settings
Description
Value
Discretization of fluids
P1 + P1
Physical Model Settings
Description
Value
Compressibility
Compressible flow (Ma=10,1. 3^min(10+niterCMP,7),0)+if( niterCMP>=35,9*1.3^ min(35+niterCMP,9),0)+if( niterCMP>=65,90*1.3 ^min(65+niterCMP,9),0)
Local CFL number
Domain 1
spf.locCFL
CFLCMP
1
Local CFL number
Domain 1
spf.geometryLength Scale
90
m
Geometry length scale
Domain 1
spf.time_step_inv
max(sqrt(emetric_spati al(u,v)*2^gmg_level^2 ),spf.nu/spf.geometryL engthScale^2)
Hz
Inverse time step
Domain 1
spf.tsti
nojac(spf.time_step_in v/spf.locCFL)
1/s
Help variable
Domain 1
spf.nx
dnx
1
Normal vector, x component
Boundaries 1– 4
spf.ny
dny
1
Normal vector, y component
Boundaries 1– 4
spf.nz
0
1
Normal vector, z component
Boundaries 1– 4
spf.nxmesh
dnxmesh
1
Normal vector,
Boundaries 1–
+ operation
P a g e | 22 Name
Expression
Unit
Description
Selection
x component
4
spf.nymesh
dnymesh
1
Normal vector, y component
Boundaries 1– 4
spf.nzmesh
0
1
Normal vector, z component
Boundaries 1– 4
2.5.3
Fluid Properties 1
Fluid Properties 1 Selection
Geometric entity level
Domain
Selection
Geometry geom1: Dimension 2: All domains
Equations
Fluid Properties Settings
Details
P a g e | 23 Description
Value
Density
From material
Dynamic viscosity
From material
Distance Equation Settings
Description
Value
Reference length scale
Manual
Reference length scale
0.2
Model Input Settings
Description
Value
Temperatur e
Common model input
Properties from material
Property
Materia l
Property group
Density
Air
Basic
Dynamic viscosity
Air
Basic
Variables Name
Expression
Unit
Description
Selection
Details
spf.geometryLengt hScale
0.5*spf.lref
m
Geometry length scale
Domain 1
spf.mu
material.mu
Pa·s
Dynamic viscosity
Domain 1
Meta
spf.rho
subst(material.rho,spf.f p1.minput_temperatur e,spf.Trho,spf.fp1.minp ut_pressure,spf.prho)
kg/m³
Density
Domain 1
Meta
spf.lref
0.2
m
Reference length scale
Domain 1
spf.Trho
spf.fp1.minput_temper ature
K
Temperature for density evaluation
Domain 1
spf.prho
spf.fp1.minput_pressur e
Pa
Pressure for the evaluation of density
Domain 1
P a g e | 24 Name
Expression
Unit
Description
Selection
Details
spf.rhoref
subst(material.rho,spf.f p1.minput_temperatur e,spf.Tref,spf.fp1.minp ut_pressure,spf.pref)
kg/m³
Reference density
Domain 1
Meta
spf.mumat
material.mu
Pa·s
Dynamic viscosity
Domain 1
Meta
spf.srijxx
ux
1/s
Strain rate tensor, xx component
Domain 1
spf.srijyx
0.5*(vx+uy)
1/s
Strain rate tensor, yx component
Domain 1
spf.srijzx
0
1/s
Strain rate tensor, zx component
Domain 1
spf.srijxy
0.5*(uy+vx)
1/s
Strain rate tensor, xy component
Domain 1
spf.srijyy
vy
1/s
Strain rate tensor, yy component
Domain 1
spf.srijzy
0
1/s
Strain rate tensor, zy component
Domain 1
spf.srijxz
0
1/s
Strain rate tensor, xz component
Domain 1
spf.srijyz
0
1/s
Strain rate tensor, yz component
Domain 1
spf.srijzz
0
1/s
Strain rate tensor, zz component
Domain 1
spf.rrijxx
0
1/s
Rotation rate tensor, xx component
Domain 1
Domain 1
spf.rrijyx
0.5*(vx-uy)
1/s
Rotation rate tensor, yx component
spf.rrijzx
0
1/s
Rotation rate tensor, zx component
Domain 1
Domain 1
spf.rrijxy
0.5*(uy-vx)
1/s
Rotation rate tensor, xy component
spf.rrijyy
0
1/s
Rotation rate tensor, yy component
Domain 1
spf.rrijzy
0
1/s
Rotation rate tensor, zy component
Domain 1
1/s
Rotation rate tensor, xz component
Domain 1
spf.rrijxz
0
P a g e | 25 Name
Expression
Unit
Description
Selection Domain 1
Details
spf.rrijyz
0
1/s
Rotation rate tensor, yz component
spf.rrijzz
0
1/s
Rotation rate tensor, zz component
Domain 1
spf.sr
sqrt(2*spf.srijxx^2+2*s pf.srijxy^2+2*spf.srijxz ^2+2*spf.srijyx^2+2*s pf.srijyy^2+2*spf.srijyz ^2+2*spf.srijzx^2+2*s pf.srijzy^2+2*spf.srijzz ^2+eps)
1/s
Shear rate
Domain 1
spf.rr
sqrt(2*spf.rrijxx^2+2*s pf.rrijxy^2+2*spf.rrijxz ^2+2*spf.rrijyx^2+2*s pf.rrijyy^2+2*spf.rrijyz ^2+2*spf.rrijzx^2+2*s pf.rrijzy^2+2*spf.rrijzz ^2+eps)
1/s
Rotation rate
Domain 1
spf.divu
ux+vy
1/s
Divergence of velocity field
Domain 1
spf.Fx
0
N/m³
Volume force, x component
Domain 1
+ operation
spf.Fy
0
N/m³
Volume force, y component
Domain 1
+ operation
spf.Fz
0
N/m³
Volume force, z component
Domain 1
+ operation
spf.U
sqrt(u^2+v^2)
m/s
Velocity magnitude
Domain 1
spf.vorticityx
0
1/s
Vorticity field, x component
Domain 1
spf.vorticityy
0
1/s
Vorticity field, y component
Domain 1
spf.vorticityz
vx-uy
1/s
Vorticity field, z component
Domain 1
spf.vort_magn
sqrt(spf.vorticityx^2+s pf.vorticityy^2+spf.vor ticityz^2)
1/s
Vorticity magnitude
Domain 1
spf.cellRe
0.25*spf.rho*sqrt(emet ric_spatial(ud(x,TIME),vd(y,TIME))/emetric2_s patial)/spf.mu
1
Cell Reynolds number
Domain 1
P a g e | 26 Name
Expression
Unit
Description
Selection
Details
spf.nu
spf.mu/spf.rho
m²/s
Kinematic viscosity
Domain 1
spf.betaT
d(spf.rho,p)/spf.rho
1/Pa
Isothermal compressibility coefficient
Domain 1
spf.Qm
0
kg/(m³·s)
Source term
Domain 1
+ operation
spf.Fgtotx
0
N/m³
Gravity force, x component
Domain 1
+ operation
spf.Fgtoty
0
N/m³
Gravity force, y component
Domain 1
+ operation
spf.Fgtotz
0
N/m³
Gravity force, z component
Domain 1
+ operation
spf.mu_eff
spf.mu+spf.muT
Pa·s
Dynamic viscosity
Domain 1
spf.muT
nojac(min(spf.rho*spf.l substar*sqrt(spf.k_nn), spf.rho*spf.a1*spf.k_n n/ (max(sqrt(2*(ux^2+0.5 *(uy+vx)^2+vy^2)),ep s)*spf.fv2)))
Pa·s
Turbulent dynamic viscosity
Domain 1
spf.T_stress_tensorx x
spf.K_stress_tensorxxp-2*spf.rho*k/3
N/m²
Total stress tensor, xx component
Domain 1
+ operation
Domain 1
+ operation
spf.T_stress_tensory x
spf.K_stress_tensoryx
N/m²
Total stress tensor, yx component
spf.T_stress_tensorz x
spf.K_stress_tensorzx
N/m²
Total stress tensor, zx component
Domain 1
+ operation
spf.T_stress_tensorx y
spf.K_stress_tensorxy
N/m²
Total stress tensor, xy component
Domain 1
+ operation
spf.T_stress_tensory y
spf.K_stress_tensoryyp-2*spf.rho*k/3
N/m²
Total stress tensor, yy component
Domain 1
+ operation
spf.T_stress_tensorz y
spf.K_stress_tensorzy
N/m²
Total stress tensor, zy component
Domain 1
+ operation
Domain 1
+ operation
Domain 1
+ operation
spf.T_stress_tensorx z
spf.K_stress_tensorxz
N/m²
Total stress tensor, xz component
spf.T_stress_tensory z
spf.K_stress_tensoryz
N/m²
Total stress tensor, yz component
P a g e | 27 Name
Expression
Unit
Description
Selection
Details
spf.T_stress_tensorz z
spf.K_stress_tensorzzp-2*spf.rho*k/3
N/m²
Total stress tensor, zz component
Domain 1
+ operation
spf.K_stress_tensor xx
spf.mu_eff*(2*ux2*spf.divu/3)
N/m²
Viscous stress tensor, xx component
Domain 1
+ operation
Domain 1
+ operation
spf.K_stress_tensor yx
spf.mu_eff*(vx+uy)
N/m²
Viscous stress tensor, yx component
spf.K_stress_tensorz x
0
N/m²
Viscous stress tensor, zx component
Domain 1
+ operation
spf.K_stress_tensor xy
spf.mu_eff*(uy+vx)
N/m²
Viscous stress tensor, xy component
Domain 1
+ operation
spf.K_stress_tensor yy
spf.mu_eff*(2*vy2*spf.divu/3)
N/m²
Viscous stress tensor, yy component
Domain 1
+ operation
spf.K_stress_tensorz y
0
N/m²
Viscous stress tensor, zy component
Domain 1
+ operation
Domain 1
+ operation
spf.K_stress_tensor xz
0
N/m²
Viscous stress tensor, xz component
spf.K_stress_tensor yz
0
N/m²
Viscous stress tensor, yz component
Domain 1
+ operation
spf.K_stress_tensorz z
2*spf.mu_eff*spf.divu/ 3
N/m²
Viscous stress tensor, zz component
Domain 1
+ operation
spf.K_stress_tensor_ testxx
spf.mu_eff*(2*test(ux)2*test(ux+vy)/3)
N/m²
Viscous stress tensor test, xx component
Domain 1
+ operation
spf.K_stress_tensor_ testyx
spf.mu_eff*(test(vx) +test(uy))
N/m²
Viscous stress tensor test, yx component
Domain 1
+ operation
Domain 1
+ operation
Domain 1
+ operation
Domain 1
+ operation
spf.K_stress_tensor_ testzx
0
N/m²
Viscous stress tensor test, zx component
spf.K_stress_tensor_ testxy
spf.mu_eff*(test(uy) +test(vx))
N/m²
Viscous stress tensor test, xy component
spf.K_stress_tensor_ testyy
spf.mu_eff*(2*test(vy)2*test(ux+vy)/3)
N/m²
Viscous stress tensor test, yy
P a g e | 28 Name
Expression
Unit
Description
Selection
Details
Domain 1
+ operation
component spf.K_stress_tensor_ testzy
0
N/m²
Viscous stress tensor test, zy component
spf.K_stress_tensor_ testxz
0
N/m²
Viscous stress tensor test, xz component
Domain 1
+ operation
Domain 1
+ operation
spf.K_stress_tensor_ testyz
0
N/m²
Viscous stress tensor test, yz component
spf.K_stress_tensor_ testzz
2*spf.mu_eff*test(ux+v y)/3
N/m²
Viscous stress tensor test, zz component
Domain 1
+ operation
spf.upwind_helpx
u-d(x,TIME)
m/s
Upwind term, x component
Domain 1
+ operation
spf.upwind_helpy
v-d(y,TIME)
m/s
Upwind term, y component
Domain 1
+ operation
spf.upwind_helpz
0
m/s
Upwind term, z component
Domain 1
+ operation
spf.muinit
subst(material.mu,spf.f p1.minput_temperatur e,spf.Tref,spf.fp1.minp ut_pressure,spf.pref)
Pa·s
Dynamic viscosity
Domain 1
Meta
spf.rhoinit
spf.rho
kg/m³
Density
Domain 1
spf.om_global
if(spf.Wall_spf,spf.om_ w,om)
1/s
Specific dissipation rate, (all cells)
Domain 1
spf.om_w
if(spf.Wall_spf,nojac(6* spf.mu/ (spf.rho*spf.beta1*spf.l _w2Pos)),0)
1/s
Specific dissipation rate, wall region
Domain 1
spf.k_nn
max(k,0)
m²/s²
Regularized turbulent kinetic energy
Domain 1
Domain 1
Domain 1
spf.k_pos
spf.k_nn+eps
m²/s²
Regularized turbulent kinetic energy
spf.om_nn
max(spf.om_global,0)
1/s
Regularized turbulent dissipation rate
spf.om_pos
spf.om_nn+eps
1/s
spf.Sxx
ux-(ux+vy)/3
1/s
Strain rate, xx component
Domain 1
+ operation
spf.Syx
0.5*(vx+uy)
1/s
Strain rate, yx
Domain 1
+ operation
Domain 1
P a g e | 29 Name
Expression
Unit
Description
Selection
Details
component spf.Szx
0
1/s
Strain rate, zx component
Domain 1
+ operation
spf.Sxy
0.5*(uy+vx)
1/s
Strain rate, xy component
Domain 1
+ operation
spf.Syy
vy-(ux+vy)/3
1/s
Strain rate, yy component
Domain 1
+ operation
spf.Szy
0
1/s
Strain rate, zy component
Domain 1
+ operation
spf.Sxz
0
1/s
Strain rate, xz component
Domain 1
+ operation
spf.Syz
0
1/s
Strain rate, yz component
Domain 1
+ operation
spf.Szz
-(ux+vy)/3
1/s
Strain rate, zz component
Domain 1
+ operation
spf.AbsS
sqrt(max(spf.Sxx^2+s pf.Sxy^2+spf.Sxz^2+s pf.Syx^2+spf.Syy^2+s pf.Syz^2+spf.Szx^2+s pf.Szy^2+spf.Szz^2,0) )
1/s
Absolute strain rate
Domain 1
spf.rF
sqrt(2)/ (3*max(spf.AbsS,eps))
s
Help variable
Domain 1
spf.rFInv
3*spf.AbsS/sqrt(2)
1/s
Help variable
Domain 1
spf.lcore
min(sqrt(spf.k_nn)/spf. om_pos,sqrt(spf.k_nn)* spf.rF)
m
Help variable
Domain 1
spf.lsubstar
nojac(min(spf.lcore,2*s pf.l_w))
m
Limited mixing length
Domain 1
spf.nuT
spf.muT/spf.rho
m²/s
Turbulent kinematic viscosity
Domain 1
spf.linSCk
nojac(spf.rho*(spf.om_nn*sp f.beta0smin(spf.Pkb_mul,0)/m ax(spf.rho,eps)))
kg/(m³·s)
Linear source term coefficient, kequation
Domain 1
spf.linSCom
nojac(spf.rho*(spf.beta*spf.o m_nnmin(spf.Pomb_mul,0)/ max(spf.rho,eps)))
kg/(m³·s)
Linear source term coefficient
Domain 1
spf.PCore
2*ux^2+uy*(uy+vx) +vx*(uy+vx)+2*vy^22*(ux+vy)^2/3
1/s²
Turbulent kinetic energy source term
Domain 1
+ operation
P a g e | 30 Name
Expression
Unit
Description
Selection
spf.Pk
nojac(max(min(ux*spf. tauxx+uy*spf.tauxy+vx *spf.tauyx+vy*spf.tauy y,10*spf.beta0s*spf.rh o*spf.om_nn*spf.k_nn) ,0)) +nojac(max(spf.Pkb_m ul,0)*k)
W/m³
Turbulent kinetic energy source term
Domain 1
spf.Pom
nojac(spf.gamma*spf. Pk*spf.rho/max(spf.mu T,eps)) +nojac(max(spf.Pomb_ mul,0)*om)
kg/(m³·s²)
spf.kinit
(100*spf.muinit/ (spf.rhoinit*spf.lref))^2
m²/s²
Turbulent kinetic energy
Domain 1
spf.omInit
10*spf.kinit^0.5/spf.lre f
1/s
Turbulent dissipation rate
Domain 1
spf.l_w
nojac(max(spf.Dw,0))
m
Closest wall distance
Domain 1
spf.l_w2Pos
max(spf.l_w^2,spf.lref ^2*eps)
m²
Intermediate variable
Domain 1
spf.l_mix_lim
2*spf.l_w
m
Mixing length limit
Domain 1
spf.lsupstar
spf.l_w*(spf.rho*spf.o m_global/spf.mu)^0.5
1
Dimensionless wall distance
Domain 1
spf.cd_kom
max(2*spf.rho*spf.sig maom2*(kx*d(log(spf. om_pos),x) +ky*d(log(spf.om_pos) ,y)),1.0E-10)
Turbulence help variable
Domain 1
spf.f_om1
tanh(min(max(spf.frac 1,spf.frac2),spf.frac3)^ 4)
Turbulence help variable
Domain 1
spf.f_om2
tanh(max(2*spf.frac1,s pf.frac2)^2)
Turbulence help variable
Domain 1
spf.frac1
sqrt(spf.k_nn)/ (spf.beta0s*spf.om_po s*sqrt(spf.l_w2Pos))
1
Turbulence help variable
Domain 1
spf.frac2
500*spf.nu/ (spf.l_w2Pos*spf.om_p os)
1
Turbulence help variable
Domain 1
spf.frac3
4*spf.rho*spf.sigmaom 2*spf.k_nn/ (spf.cd_kom*spf.l_w2P
kg/(m³·s²)
Domain 1
Turbulence help variable
Domain 1
Details
P a g e | 31 Name
Expression
Unit
Description
Selection
Details
os) spf.fv2
nojac(spf.f_om2)
Turbulence help variable
Domain 1
spf.fv1
nojac(spf.f_om1)
Turbulence help variable
Domain 1
spf.beta
spf.fv1*spf.beta1+(1spf.fv1)*spf.beta2
1
Turbulence model parameter
Domain 1
spf.gamma
spf.fv1*spf.gamma1+( 1-spf.fv1)*spf.gamma2
1
Turbulence model parameter
Domain 1
spf.sigmak
spf.fv1*spf.sigmak1+(1 -spf.fv1)*spf.sigmak2
1
Turbulence model parameter
Domain 1
spf.sigmaom
spf.fv1*spf.sigmaom1 +(1spf.fv1)*spf.sigmaom2
1
Turbulence model parameter
Domain 1
spf.tauxx
2*spf.muT*spf.Sxx2*spf.rho*spf.k_nn/3
Pa
Strain rate, xx component
Domain 1
+ operation
spf.tauyx
2*spf.muT*spf.Syx
Pa
Strain rate, yx component
Domain 1
+ operation
spf.tauzx
2*spf.muT*spf.Szx
Pa
Strain rate, zx component
Domain 1
+ operation
spf.tauxy
2*spf.muT*spf.Sxy
Pa
Strain rate, xy component
Domain 1
+ operation
spf.tauyy
2*spf.muT*spf.Syy2*spf.rho*spf.k_nn/3
Pa
Strain rate, yy component
Domain 1
+ operation
spf.tauzy
2*spf.muT*spf.Szy
Pa
Strain rate, zy component
Domain 1
+ operation
spf.tauxz
2*spf.muT*spf.Sxz
Pa
Strain rate, xz component
Domain 1
+ operation
spf.tauyz
2*spf.muT*spf.Syz
Pa
Strain rate, yz component
Domain 1
+ operation
spf.tauzz
2*spf.muT*spf.Szz2*spf.rho*spf.k_nn/3
Pa
Strain rate, zz component
Domain 1
+ operation
spf.crossDiff
nojac(2*(1spf.fv1)*spf.rho*spf.sig maom2*(kx*d(log(spf. om_pos),x) +ky*d(log(spf.om_pos) ,y)))
kg/(m³·s²)
Cross diffusion term
Domain 1
spf.gammaT
nojac(spf.beta0s*max( spf.om_nn,spf.rFInv))
1/s
Turbulence help variable
Domain 1
spf.tauT
1/nojac(spf.beta0s*ma x(spf.om_pos,spf.rFInv) )
s
Turbulence time scale
Domain 1
P a g e | 32 Name
Expression
Unit
Description
Selection
Details
Domain 1
+ operation
spf.Pkb
spf.Pkb_mul*k
W/m³
Buoyancy-induced production of turbulence kinetic energy
spf.Pkb_mul
0
kg/(m³·s)
Help variable
Domain 1
+ operation
spf.Pomb_mul
0
kg/(m³·s)
Help variable
Domain 1
+ operation
spf.ep
spf.beta0s*k*om
m²/s³
Turbulent dissipation rate
Domain 1
spf.l_wPlus
spf.lsupstarInv(spf.lsup star)
Wall distance in viscous units
Domain 1
spf.G0
nojac(2/spf.lref)
1/m
Auxiliary wall variable
Domain 1
spf.Dw
1/max(G,eps)-1/spf.G0
m
Wall distance
Domain 1
spf.Ddirx
Gx/sqrt(max(Gx^2+Gy ^2,eps))
1
Direction toward nearest wall, x component
Domain 1
spf.Ddiry
Gy/sqrt(max(Gx^2+Gy ^2,eps))
1
Direction toward nearest wall, y component
Domain 1
spf.Ddirz
0
1
Direction toward nearest wall, z component
Domain 1
spf.tau_vdxx
2*spf.mu*spf.srijxx+2* spf.muT*spf.srijxx2*spf.mu*(ux+vy)/32*spf.muT*(ux+vy)/3
Pa
Viscous stress tensor, xx component
Domain 1
+ operation
spf.tau_vdyx
2*spf.srijyx*(spf.mu+s pf.muT)
Pa
Viscous stress tensor, yx component
Domain 1
+ operation
spf.tau_vdzx
2*spf.srijzx*(spf.mu+s pf.muT)
Pa
Viscous stress tensor, zx component
Domain 1
+ operation
spf.tau_vdxy
2*spf.srijxy*(spf.mu+s pf.muT)
Pa
Viscous stress tensor, xy component
Domain 1
+ operation
spf.tau_vdyy
2*spf.mu*spf.srijyy+2* spf.muT*spf.srijyy2*spf.mu*(ux+vy)/32*spf.muT*(ux+vy)/3
Pa
Viscous stress tensor, yy component
Domain 1
+ operation
spf.tau_vdzy
2*spf.srijzy*(spf.mu+s pf.muT)
Pa
Viscous stress tensor, zy component
Domain 1
+ operation
Domain 1
+ operation
spf.tau_vdxz
2*spf.srijxz*(spf.mu+s pf.muT)
Pa
Viscous stress tensor, xz
P a g e | 33 Name
Expression
Unit
Description
Selection
Details
Domain 1
+ operation
component spf.tau_vdyz
2*spf.srijyz*(spf.mu+s pf.muT)
Pa
Viscous stress tensor, yz component
spf.tau_vdzz
2*spf.mu*spf.srijzz+2* spf.muT*spf.srijzz2*spf.mu*(ux+vy)/32*spf.muT*(ux+vy)/3
Pa
Viscous stress tensor, zz component
Domain 1
+ operation
spf.Qvd
spf.tau_vdxx*ux+spf.ta u_vdxy*uy+spf.tau_vd yx*vx+spf.tau_vdyy*vy
W/m³
Viscous dissipation
Domain 1
+ operation
spf.epsilon_p
1
1
Porosity
Domain 1 Domain 1
+ operation
spf.Fst_tensorxx
0
N/m²
Surface tension force, xx component
spf.Fst_tensoryx
0
N/m²
Surface tension force, yx component
Domain 1
+ operation
spf.Fst_tensorzx
0
N/m²
Surface tension force, zx component
Domain 1
+ operation
spf.Fst_tensorxy
0
N/m²
Surface tension force, xy component
Domain 1
+ operation
spf.Fst_tensoryy
0
N/m²
Surface tension force, yy component
Domain 1
+ operation
Domain 1
+ operation
spf.Fst_tensorzy
0
N/m²
Surface tension force, zy component
spf.Fst_tensorxz
0
N/m²
Surface tension force, xz component
Domain 1
+ operation
spf.Fst_tensoryz
0
N/m²
Surface tension force, yz component
Domain 1
+ operation
spf.Fst_tensorzz
0
N/m²
Surface tension force, zz component
Domain 1
+ operation
spf.continuityEquat ion
d(spf.rho*spf.epsilon_ p,t)+d(spf.rho*u,x) +d(spf.rho*v,y)
kg/(m³·s)
Continuity equation
Domain 1
spf.contCoeff
spf.rho
kg/m³
Help variable
Domain 1
spf.res_k
-
W/m³
Turbulent kinetic
Domain 1
P a g e | 34 Name
Expression
Unit
(spf.mu+spf.muT*spf.s igmak)*(kxx+kyy)spf.linSCk*kspf.Pk+spf.rho*u*kx+s pf.rho*v*ky
Description
Selection
Details
energy equation residual
spf.res_om
(spf.mu+spf.muT*spf.s igmaom)*(omxx+omy y)spf.linSCom*om+spf.r ho*u*omx+spf.rho*v* omy-spf.Pomspf.crossDiff
kg/(m³·s²)
Specific dissipation rate equation residual
Domain 1
spf.res_u
if(spf.isFluidHasBeenS olved==0,0,px+spf.rh o*u*ux+spf.rho*v*uy(d(2*ux-2*spf.divu/3,x) +d(uy+vx,y))*(spf.mu+ spf.muT)spf.Fx+2*d(spf.rho*ma x(k,0),x)/3)
N/m³
Equation residual
Domain 1
spf.res_v
if(spf.isFluidHasBeenS olved==0,0,spf.rho*u* vx+py+spf.rho*v*vy(d(vx+uy,x)+d(2*vy2*spf.divu/3,y))*(spf.m u+spf.muT)spf.Fy+2*d(spf.rho*ma x(k,0),y)/3)
N/m³
Equation residual
Domain 1
spf.res_p
spf.rho*spf.divu+u*d(s pf.rho,x) +v*d(spf.rho,y)
kg/(m³·s)
Pressure equation residual
Domain 1
Shape functions Name
Shape function
Unit
Description
Shape frame
Selection
u
Lagrange (Linear)
m/s
Velocity field, x component
Spatial
Domain 1
v
Lagrange (Linear)
m/s
Velocity field, y component
Spatial
Domain 1
p
Lagrange (Linear)
Pa
Pressure
Spatial
Domain 1
k
Lagrange (Linear)
m²/s²
Turbulent kinetic energy
Spatial
Domain 1
om
Lagrange (Linear)
1/s
Specific dissipation rate
Spatial
Domain 1
G
Lagrange (Linear)
1/m
Reciprocal wall distance
Spatial
Domain 1
P a g e | 35
2.5.4
Initial Values 1
Initial Values 1 Selection
Geometric entity level
Domain
Selection
Geometry geom1: Dimension 2: All domains
Initial Values Settings
Description
Value
Velocity field, x component
-phix
Velocity field, y component
-phiy
Velocity field, z component
0
Pressure
-spf.rho/2*(phix^2 + phiy^2)
Turbulent kinetic energy
k_inf
Specific dissipation rate
om_inf
Reciprocal wall distance
spf.G0
Coordinate System Selection Settings
Description
Value
Coordinate system
Global coordinate system
P a g e | 36 Variables Name
Expression
Unit
Description
Selection
spf.u_initx
-phix
m/s
Velocity field, x component
Domain 1
spf.u_inity
-phiy
m/s
Velocity field, y component
Domain 1
spf.u_initz
0
m/s
Velocity field, z component
Domain 1
spf.p_init
-0.5*spf.rho*(phix^2+phiy^2)
Pa
Pressure
Domain 1
spf.G_init
spf.G0
1/m
Reciprocal wall distance
Domain 1
spf.k_init
k_inf
m²/s²
Turbulent kinetic energy
Domain 1
spf.om_init
om_inf
1/s
Specific dissipation rate
Domain 1
2.5.5
Wall 1
Wall 1 Selection
Geometric entity level
Boundary
Selection
Geometry geom1: Dimension 1: All boundaries
Equations
P a g e | 37
Boundary Condition Settings
Description
Value
Wall condition
No slip
Wall Movement Settings
Description
Value
Translational velocity
Automatic from frame
Sliding wall
Off
Variables Name
Expression
Unit
Description
Selection
spf.k0
0
m²/s²
Turbulent kinetic energy
Boundaries 3– 4 Boundaries 3– 4
spf.ubndx
spf.utrx+spf.usx
m/s
Velocity at boundary, x component
spf.ubndy
spf.utry+spf.usy
m/s
Velocity at boundary, y component
Boundaries 3– 4
spf.ubndz
spf.utrz+spf.usz
m/s
Velocity at boundary, z component
Boundaries 3– 4
spf.usx
0
m/s
Velocity of sliding wall, x component
Boundaries 3– 4
spf.usy
0
m/s
Velocity of sliding wall, y component
Boundaries 3– 4 Boundaries 3– 4
spf.usz
0
m/s
Velocity of sliding wall, z component
spf.utrx
0
m/s
Velocity of moving wall, x component
Boundaries 3– 4
spf.utry
0
m/s
Velocity of moving wall, y component
Boundaries 3– 4
Details
P a g e | 38 Name
Expression
Unit
Description
Selection Boundaries 3– 4
Details
spf.utrz
0
m/s
Velocity of moving wall, z component
spf.uLeakagex
0
m/s
Leakage velocity, x component
Boundaries 3– 4
+ operation
Boundaries 3– 4
+ operation
+ operation
spf.uLeakagey
0
m/s
Leakage velocity, y component
spf.uLeakagez
0
m/s
Leakage velocity, z component
Boundaries 3– 4
spf.noSlipWall
1
1
Help variable
Boundaries 3– 4
spf.tau_w
sqrt((spf.T_stressx(spf.T_stressx*spf.nxme sh+spf.T_stressy*spf.ny mesh+spf.T_stressz*spf .nzmesh)*spf.nxmesh)^ 2+(spf.T_stressy(spf.T_stressx*spf.nxme sh+spf.T_stressy*spf.ny mesh+spf.T_stressz*spf .nzmesh)*spf.nymesh)^ 2+(spf.T_stressz(spf.T_stressx*spf.nxme sh+spf.T_stressy*spf.ny mesh+spf.T_stressz*spf .nzmesh)*spf.nzmesh)^ 2)
N/m²
Wall shear stress
Boundaries 3– 4
spf.u_tau
sqrt(spf.tau_w/down(sp f.rho))
m/s
Friction velocity
Boundaries 3– 4
spf.lplus_cc
down(spf.rho)*spf.u_ta u*down(root.comp1.sp f.elemint(spf.l_w)/root.c omp1.spf.elemint(1))/d own(spf.mu)
1
Distance to cell center in viscous units
Boundaries 3– 4
Boundaries 3– 4 Boundaries 3– 4
spf.WRHeightExpr
spf.Delta_wPlus
1
Wall resolution height expression
spf.Delta_wPlus
2*spf.lplus_cc
1
Wall resolution in viscous units
P a g e | 39
2.5.6
Inlet 1
Inlet 1 Selection
Geometric entity level
Boundary
Selection
Geometry geom1: Dimension 1: Boundary 1
Equations
Boundary Condition Settings
Description
Value
Boundary condition
Velocity
Velocity Settings
Description
Value
Velocity field componentwise
Velocity field
Velocity field, x component
U_inf*cos(alpha*pi/180)
Velocity field, y component
U_inf*sin(alpha*pi/180)
P a g e | 40 Description
Value
Velocity field, z component
0
Turbulence Conditions Settings
Description
Value Specify turbulence variables
Turbulent kinetic energy
k_inf
Specific dissipation rate
om_inf
Variables Name
Expression
Unit
Description
Selection
spf.k0
k_inf
m²/s²
Turbulent kinetic energy
Boundary 1
spf.om0
om_inf
1/s
Specific dissipation rate
Boundary 1
spf.k0_init
0.005
m²/s²
Turbulent kinetic energy
Boundary 1
spf.om0_init
20
1/s
Specific dissipation rate
Boundary 1
spf.zeta0_init
2/3
1
Turbulent relative fluctuations
Boundary 1
spf.alpha0_init
1
1
Elliptic blending function
Boundary 1
spf.u0x
U_inf*cos(alpha*pi/180)
m/s
Velocity field, x component
Boundary 1
spf.u0y
U_inf*sin(alpha*pi/180)
m/s
Velocity field, y component
Boundary 1
spf.u0z
0
m/s
Velocity field, z component
Boundary 1
spf.inl1.dz
spf.dz
m
Channel thickness
Boundary 1
spf.inl1.volumeFlowRate
spf.inl1.intop((u*spf.nxmesh+v *spf.nymesh)*spf.inl1.dz)
m³/s
Outward volume flow rate across feature selection
Global
spf.inl1.massFlowRate
spf.inl1.intop(spf.rho*(u*spf.nx mesh+v*spf.nymesh)*spf.inl1. dz)
kg/s
Outward mass flow rate across feature selection
Global
Pa
Pressure average over feature selection
Global
spf.inl1.pAverage
spf.inl1.aveop(p)
P a g e | 41
2.5.7
Open Boundary 1
Open Boundary 1 Selection
Geometric entity level
Boundary
Selection
Geometry geom1: Dimension 1: Boundary 2
Equations
Boundary Condition Settings
Description
Value
Boundary condition
Normal stress
Normal stress
0
Turbulence Conditions Settings
Description
Value Specify turbulence variables
Turbulent kinetic energy
k_inf
P a g e | 42 Description
Value
Specific dissipation rate
om_inf
Variables Name
Expression
Unit
Description
Selection
spf.meshVol
meshvol_spatial
m
spf.meshVolInt
down(meshvol_spatial)
m²
Volume of interior mesh element
Boundary 2
spf.k0
k_inf
m²/s²
Turbulent kinetic energy
Boundary 2
spf.om0
om_inf
1/s
Specific dissipation rate
Boundary 2
spf.k0_init
0.0025
m²/s²
Turbulent kinetic energy
Boundary 2
spf.om0_init
0.5
1/s
Specific dissipation rate
Boundary 2
spf.zeta0_init
2/3
1
Turbulent relative fluctuations
Boundary 2
spf.alpha0_init
1
1
Elliptic blending function
Boundary 2
spf.f0
0
N/m²
Normal stress
Boundary 2
spf.kjumpext
k-spf.k0
m²/s²
Boundary 2
spf.Dk
down(spf.mu) +spf.muT*spf.sigmak
Pa·s
Boundary 2
spf.gammakn_ext
spf.Dk*(kx*spf.nxmesh+ky* spf.nymesh)*test(k)
kg·m²/s⁵
Boundary 2
spf.gammakn_ext_test
spf.Dk*(test(kx)*spf.nxmesh +test(ky)*spf.nymesh)*spf.k jumpext
kg·m²/s⁵
Boundary 2
spf.ck_here
12*nojac(spf.Dk)*spf.mesh Vol/spf.meshVolInt
Pa·s/m
spf.sigma_dgext_k
4*spf.ck_here
Pa·s/m
spf.upwindext_k
if(spf.upwind_helpx*spf.nx mesh+spf.upwind_helpy*s pf.nymesh+spf.upwind_hel pz*spf.nzmesh