Skip to content
Snippets Groups Projects

Amaury

Merged Bilocq Amaury requested to merge (removed):amaury into feature_vii
3 unresolved threads
5 files
+ 59
66
Compare changes
  • Side-by-side
  • Inline
Files
5
+ 18
18
@@ -21,13 +21,13 @@
# Amaury Bilocq
# Test the viscous-inviscid interaction scheme
# Reference to the master's thesis: http://hdl.handle.net/2268/252195
# Reference test cases with Naca0012:
# Reference test cases with Naca0012 (different from master's thesis):
# 1) Incompressible: Re = 1e7, M_inf = 0, alpha = 5°, p = 2, m = 7, tol = 10^-4, msTE = 0.01, msLE = 0.001
# -> nIt = 41, Cl = 0.58, Cd = 0.0062, xtrTop = 0.0555, xtrBot = 0.7397
# -> nIt = 32, Cl = 0.55, Cd = 0.0061, xtrTop = 0.0611, xtrBot = 0.7392
# 2) Compressible: Re = 1e7, M_inf = 5, alpha = 5°, p = 2, m = 7, tol = 10^-4, msTE = 0.01, msLE = 0.001
# -> nIt = , Cl = 0.69, Cd = 0.0067, xtrTop = 0.0384, xtrBot = 0.7364
# 3) Separated: Re = 1e7, M_inf = 0, alpha = 12°, p = 2, m = 11, tol = 5.2*10^-3, msTE = 0.01, msLE = 0.00075
# -> nIt = , Cl = 1.39 , Cd = 0.011, xtrTop = 0.008, xtrBot = 1
# -> nIt = 45, Cl = 0.64, Cd = 0.0065, xtrTop = 0.0497, xtrBot = 0.7338
# 3) Separated: Re = 1e7, M_inf = 0, alpha = 12°, p = 2, m = 5, tol = 2.5*10^-3, msTE = 0.01, msLE = 0.00075
# -> nIt = 39, Cl = 1.30 , Cd = 0.011, xtrTop = 0.010, xtrBot = 1
#
# CAUTION
# This test is provided to ensure that the solver works properly.
@@ -36,8 +36,8 @@
import math
import flow.utils as floU
import flow.default as floD
import flow.viscous.Solver as floVS
import flow.viscous.Coupler as floVC
import flow.viscous.solver as floVS
import flow.viscous.coupler as floVC
import tbox
import tbox.utils as tboxU
import fwk
@@ -53,14 +53,14 @@ def main():
Re = 1e7
alpha = 5*math.pi/180
U_inf = [math.cos(alpha), math.sin(alpha)] # norm should be 1
M_inf = 0.5
M_inf = 0.0
M_crit = 5 # Squared critical Mach number (above which density is modified)
c_ref = 1
dim = 2
# define filter parameters and tolerance of the VII
p = 2
m = 7
m = 5
tol = 1e-4
# mesh the geometry
@@ -75,7 +75,7 @@ def main():
pbl, _, _, bnd, blw = floD.problem(msh, dim, alpha, 0., M_inf, M_crit, c_ref, c_ref, 0.25, 0., 0., 'airfoil', te = 'te', vsc = True)
tms['pre'].stop()
# solve inviscid problem
# solve viscous problem
print(ccolors.ANSI_BLUE + 'PySolving...' + ccolors.ANSI_RESET)
tms['solver'].start()
isolver = floD.newton(pbl)
@@ -106,22 +106,22 @@ def main():
print(ccolors.ANSI_BLUE + 'PyTesting...' + ccolors.ANSI_RESET)
tests = CTests()
if Re == 1e7 and M_inf == 0 and alpha == 5*math.pi/180:
tests.add(CTest('Cl', isolver.Cl, 0.58, 5e-2))
tests.add(CTest('Cl', isolver.Cl, 0.55, 5e-2)) # Xfoil 0.58
tests.add(CTest('Cd', vsolver.Cd, 0.0062, 0.01))
tests.add(CTest('Cdp', vsolver.Cdp, 0.0018, 0.01))
tests.add(CTest('xtr_top', vsolver.xtr[0], 0.056, 0.05))
tests.add(CTest('xtr_top', vsolver.xtr[0], 0.061, 0.05)) # Xfoil 0.056
tests.add(CTest('xtr_bot', vsolver.xtr[1], 0.740, 0.05))
elif Re == 1e7 and M_inf == 0.5 and alpha == 5*math.pi/180:
tests.add(CTest('Cl', isolver.Cl, 0.69, 5e-2))
tests.add(CTest('Cl', isolver.Cl, 0.65, 5e-2)) # Xfoil 0.69
tests.add(CTest('Cd', vsolver.Cd, 0.0067, 0.01))
tests.add(CTest('Cdp', vsolver.Cdp, 0.0025, 0.01))
tests.add(CTest('xtr_top', vsolver.xtr[0], 0.038, 0.05))
tests.add(CTest('xtr_top', vsolver.xtr[0], 0.049, 0.05)) # Xfoil 0.038
tests.add(CTest('xtr_bot', vsolver.xtr[1], 0.736, 0.05))
elif Re == 1e7 and M_inf == 0 and alpha == 12*math.pi/180:
tests.add(CTest('Cl', isolver.Cl, 1.39, 5e-2))
tests.add(CTest('Cl', isolver.Cl, 1.30, 5e-2)) # Xfoil 1.39
tests.add(CTest('Cd', vsolver.Cd, 0.0011, 0.01))
tests.add(CTest('Cdp', vsolver.Cdp, 0.0025, 0.01))
tests.add(CTest('xtr_top', vsolver.xtr[0], 0.008, 0.05))
tests.add(CTest('Cdp', vsolver.Cdp, 0.0064, 0.01))
tests.add(CTest('xtr_top', vsolver.xtr[0], 0.010, 0.05)) # Xfoil 0.008
tests.add(CTest('xtr_bot', vsolver.xtr[1], 1.000, 0.05))
else:
raise Exception('Test not defined for this flow')
@@ -132,4 +132,4 @@ def main():
print('')
if __name__ == "__main__":
main()
main()
\ No newline at end of file
Loading