def main(): '''This program runs SU2 and ensures that the output matches specified values. This will be used to do checks when code is pushed to github to make sure nothing is broken. ''' test_list = [] ########################## ### Compressible Euler ### ########################## # Channel channel = TestCase('channel') channel.cfg_dir = "euler/channel" channel.cfg_file = "inv_channel_RK.cfg" channel.test_iter = 20 channel.test_vals = [-2.667328, 2.797437, 0.018714, 0.006906] test_list.append(channel) # NACA0012 naca0012 = TestCase('naca0012') naca0012.cfg_dir = "euler/naca0012" naca0012.cfg_file = "inv_NACA0012_Roe.cfg" naca0012.test_iter = 20 naca0012.test_vals = [-4.023999, -3.515034, 0.339426, 0.022217] test_list.append(naca0012) # Supersonic wedge wedge = TestCase('wedge') wedge.cfg_dir = "euler/wedge" wedge.cfg_file = "inv_wedge_HLLC.cfg" wedge.test_iter = 20 wedge.test_vals = [-0.942862, 4.784581, -0.208106, 0.036665] test_list.append(wedge) # ONERA M6 Wing oneram6 = TestCase('oneram6') oneram6.cfg_dir = "euler/oneram6" oneram6.cfg_file = "inv_ONERAM6.cfg" oneram6.test_iter = 10 oneram6.test_vals = [0.281703, 0.011821] test_list.append(oneram6) # Fixed CL NACA0012 fixedCL_naca0012 = TestCase('fixedcl_naca0012') fixedCL_naca0012.cfg_dir = "fixed_cl/naca0012" fixedCL_naca0012.cfg_file = "inv_NACA0012.cfg" fixedCL_naca0012.test_iter = 10 fixedCL_naca0012.test_vals = [-7.374806, -1.872330, 0.300000, 0.019471] test_list.append(fixedCL_naca0012) # HYPERSONIC FLOW PAST BLUNT BODY bluntbody = TestCase('bluntbody') bluntbody.cfg_dir = "euler/bluntbody" bluntbody.cfg_file = "blunt.cfg" bluntbody.test_iter = 20 bluntbody.test_vals = [0.540010, 6.916656, 0.000027, 1.869004] test_list.append(bluntbody) ########################## ### Compressible N-S ### ########################## # Laminar flat plate flatplate = TestCase('flatplate') flatplate.cfg_dir = "navierstokes/flatplate" flatplate.cfg_file = "lam_flatplate.cfg" flatplate.test_iter = 20 flatplate.test_vals = [ -4.680775, 0.781235, -0.135957, 0.022978, 2.8549e-03, 2.3621e+00, -2.3592e+00 ] test_list.append(flatplate) # Laminar cylinder (steady) cylinder = TestCase('cylinder') cylinder.cfg_dir = "navierstokes/cylinder" cylinder.cfg_file = "lam_cylinder.cfg" cylinder.test_iter = 25 cylinder.test_vals = [-6.765429, -1.297425, 0.019571, 0.310232] test_list.append(cylinder) # Laminar cylinder (low Mach correction) cylinder_lowmach = TestCase('cylinder_lowmach') cylinder_lowmach.cfg_dir = "navierstokes/cylinder" cylinder_lowmach.cfg_file = "cylinder_lowmach.cfg" cylinder_lowmach.test_iter = 25 cylinder_lowmach.test_vals = [-6.850130, -1.388096, -0.056036, 108.140811] test_list.append(cylinder_lowmach) # 2D Poiseuille flow (body force driven with periodic inlet / outlet) poiseuille = TestCase('poiseuille') poiseuille.cfg_dir = "navierstokes/poiseuille" poiseuille.cfg_file = "lam_poiseuille.cfg" poiseuille.test_iter = 10 poiseuille.test_vals = [-5.048282, 0.650814, 0.008714, 13.677678] test_list.append(poiseuille) # 2D Poiseuille flow (inlet profile file) poiseuille_profile = TestCase('poiseuille_profile') poiseuille_profile.cfg_dir = "navierstokes/poiseuille" poiseuille_profile.cfg_file = "profile_poiseuille.cfg" poiseuille_profile.test_iter = 10 poiseuille_profile.test_vals = [-12.494752, -7.712204, -0.000000, 2.085796] test_list.append(poiseuille_profile) ########################## ### Compressible RANS ### ########################## # RAE2822 SA rae2822_sa = TestCase('rae2822_sa') rae2822_sa.cfg_dir = "rans/rae2822" rae2822_sa.cfg_file = "turb_SA_RAE2822.cfg" rae2822_sa.test_iter = 20 rae2822_sa.test_vals = [-2.020123, -5.269330, 0.807147, 0.060499] test_list.append(rae2822_sa) # RAE2822 SST rae2822_sst = TestCase('rae2822_sst') rae2822_sst.cfg_dir = "rans/rae2822" rae2822_sst.cfg_file = "turb_SST_RAE2822.cfg" rae2822_sst.test_iter = 20 rae2822_sst.test_vals = [-0.510635, 4.871104, 0.811904, 0.061614] test_list.append(rae2822_sst) # RAE2822 SST_SUST rae2822_sst_sust = TestCase('rae2822_sst_sust') rae2822_sst_sust.cfg_dir = "rans/rae2822" rae2822_sst_sust.cfg_file = "turb_SST_SUST_RAE2822.cfg" rae2822_sst_sust.test_iter = 20 rae2822_sst_sust.test_vals = [-2.430589, 4.871104, 0.811903, 0.061614] test_list.append(rae2822_sst_sust) # Flat plate turb_flatplate = TestCase('turb_flatplate') turb_flatplate.cfg_dir = "rans/flatplate" turb_flatplate.cfg_file = "turb_SA_flatplate.cfg" turb_flatplate.test_iter = 20 turb_flatplate.test_vals = [-4.157169, -6.737133, -0.176253, 0.057446] test_list.append(turb_flatplate) # ONERA M6 Wing turb_oneram6 = TestCase('turb_oneram6') turb_oneram6.cfg_dir = "rans/oneram6" turb_oneram6.cfg_file = "turb_ONERAM6.cfg" turb_oneram6.test_iter = 10 turb_oneram6.test_vals = [-2.388836, -6.689414, 0.230320, 0.157640] test_list.append(turb_oneram6) # NACA0012 (SA, FUN3D finest grid results: CL=1.0983, CD=0.01242) turb_naca0012_sa = TestCase('turb_naca0012_sa') turb_naca0012_sa.cfg_dir = "rans/naca0012" turb_naca0012_sa.cfg_file = "turb_NACA0012_sa.cfg" turb_naca0012_sa.test_iter = 10 turb_naca0012_sa.test_vals = [ -8.627052, -10.377936, 1.064491, 0.019710, 20.000000, -1.763095, 20.000000, -4.794176 ] test_list.append(turb_naca0012_sa) # NACA0012 (SST, FUN3D finest grid results: CL=1.0840, CD=0.01253) turb_naca0012_sst = TestCase('turb_naca0012_sst') turb_naca0012_sst.cfg_dir = "rans/naca0012" turb_naca0012_sst.cfg_file = "turb_NACA0012_sst.cfg" turb_naca0012_sst.test_iter = 10 turb_naca0012_sst.test_vals = [ -11.450475, -12.797872, -5.863655, 1.049989, 0.019163, -1.856263 ] test_list.append(turb_naca0012_sst) # NACA0012 (SST_SUST, FUN3D finest grid results: CL=1.0840, CD=0.01253) turb_naca0012_sst_sust = TestCase('turb_naca0012_sst_sust') turb_naca0012_sst_sust.cfg_dir = "rans/naca0012" turb_naca0012_sst_sust.cfg_file = "turb_NACA0012_sst_sust.cfg" turb_naca0012_sst_sust.test_iter = 10 turb_naca0012_sst_sust.test_vals = [ -11.367051, -12.640670, -5.746919, 1.005233, 0.019017, -1.913905 ] test_list.append(turb_naca0012_sst_sust) # NACA0012 (SST, fixed values for turbulence quantities) turb_naca0012_sst_fixedvalues = TestCase('turb_naca0012_sst_fixedvalues') turb_naca0012_sst_fixedvalues.cfg_dir = "rans/naca0012" turb_naca0012_sst_fixedvalues.cfg_file = "turb_NACA0012_sst_fixedvalues.cfg" turb_naca0012_sst_fixedvalues.test_iter = 10 turb_naca0012_sst_fixedvalues.test_vals = [ -5.192502, -9.575898, -1.568269, 1.022571, 0.040527, -2.384329 ] test_list.append(turb_naca0012_sst_fixedvalues) # NACA0012 (SST, explicit Euler for flow and turbulence equations) turb_naca0012_sst_expliciteuler = TestCase( 'turb_naca0012_sst_expliciteuler') turb_naca0012_sst_expliciteuler.cfg_dir = "rans/naca0012" turb_naca0012_sst_expliciteuler.cfg_file = "turb_NACA0012_sst_expliciteuler.cfg" turb_naca0012_sst_expliciteuler.test_iter = 10 turb_naca0012_sst_expliciteuler.test_vals = [ -3.532228, -3.157766, 3.364025, 1.124824, 0.501717, -float("inf") ] test_list.append(turb_naca0012_sst_expliciteuler) # PROPELLER propeller = TestCase('propeller') propeller.cfg_dir = "rans/propeller" propeller.cfg_file = "propeller.cfg" propeller.test_iter = 10 propeller.test_vals = [-3.389575, -8.409529, 0.000048, 0.056329] test_list.append(propeller) ####################################### ### Axisymmetric Compressible RANS ### ####################################### # Axisymmetric air nozzle (transonic) axi_rans_air_nozzle = TestCase('axi_rans_air_nozzle') axi_rans_air_nozzle.cfg_dir = "axisymmetric_rans/air_nozzle" axi_rans_air_nozzle.cfg_file = "air_nozzle.cfg" axi_rans_air_nozzle.test_iter = 10 axi_rans_air_nozzle.test_vals = [ -12.093575, -6.630426, -8.798725, -2.399130 ] test_list.append(axi_rans_air_nozzle) ################################# ## Compressible RANS Restart ### ################################# # NACA0012 SST Multigrid restart turb_naca0012_sst_restart_mg = TestCase('turb_naca0012_sst_restart_mg') turb_naca0012_sst_restart_mg.cfg_dir = "rans/naca0012" turb_naca0012_sst_restart_mg.cfg_file = "turb_NACA0012_sst_multigrid_restart.cfg" turb_naca0012_sst_restart_mg.test_iter = 20 turb_naca0012_sst_restart_mg.ntest_vals = 5 turb_naca0012_sst_restart_mg.test_vals = [ -7.652987, -7.729472, -1.981061, -0.000015, 0.079061 ] test_list.append(turb_naca0012_sst_restart_mg) ############################# ### Compressibele RANS UQ ### ############################# # NACA0012 1c turb_naca0012_1c = TestCase('turb_naca0012_1c') turb_naca0012_1c.cfg_dir = "rans_uq/naca0012" turb_naca0012_1c.cfg_file = "turb_NACA0012_uq_1c.cfg" turb_naca0012_1c.test_iter = 10 turb_naca0012_1c.test_vals = [-4.980749, 1.139261, 0.244644, -0.112857] test_list.append(turb_naca0012_1c) # NACA0012 2c turb_naca0012_2c = TestCase('turb_naca0012_2c') turb_naca0012_2c.cfg_dir = "rans_uq/naca0012" turb_naca0012_2c.cfg_file = "turb_NACA0012_uq_2c.cfg" turb_naca0012_2c.test_iter = 10 turb_naca0012_2c.test_vals = [-5.483337, 0.968887, 0.212057, -0.120310] test_list.append(turb_naca0012_2c) # NACA0012 3c turb_naca0012_3c = TestCase('turb_naca0012_3c') turb_naca0012_3c.cfg_dir = "rans_uq/naca0012" turb_naca0012_3c.cfg_file = "turb_NACA0012_uq_3c.cfg" turb_naca0012_3c.test_iter = 10 turb_naca0012_3c.test_vals = [-5.584300, 0.931383, 0.205113, -0.120892] test_list.append(turb_naca0012_3c) # NACA0012 p1c1 turb_naca0012_p1c1 = TestCase('turb_naca0012_p1c1') turb_naca0012_p1c1.cfg_dir = "rans_uq/naca0012" turb_naca0012_p1c1.cfg_file = "turb_NACA0012_uq_p1c1.cfg" turb_naca0012_p1c1.test_iter = 10 turb_naca0012_p1c1.test_vals = [-5.133233, 1.075372, 0.337556, -0.077868] test_list.append(turb_naca0012_p1c1) # NACA0012 p1c2 turb_naca0012_p1c2 = TestCase('turb_naca0012_p1c2') turb_naca0012_p1c2.cfg_dir = "rans_uq/naca0012" turb_naca0012_p1c2.cfg_file = "turb_NACA0012_uq_p1c2.cfg" turb_naca0012_p1c2.test_iter = 10 turb_naca0012_p1c2.test_vals = [-5.554619, 0.943693, 0.226386, -0.116553] test_list.append(turb_naca0012_p1c2) ###################################### ### Harmonic Balance ### ###################################### # Description of the regression test harmonic_balance = TestCase('harmonic_balance') harmonic_balance.cfg_dir = "harmonic_balance" harmonic_balance.cfg_file = "HB.cfg" harmonic_balance.test_iter = 25 harmonic_balance.test_vals = [-1.589740, 3.922578, 0.006703, 0.099632] harmonic_balance.new_output = False test_list.append(harmonic_balance) # Turbulent pitching NACA 64a010 airfoil hb_rans_preconditioning = TestCase('hb_rans_preconditioning') hb_rans_preconditioning.cfg_dir = "harmonic_balance/hb_rans_preconditioning" hb_rans_preconditioning.cfg_file = "davis.cfg" hb_rans_preconditioning.test_iter = 25 hb_rans_preconditioning.test_vals = [ -1.902111, -5.949288, 0.007768, 0.128060 ] hb_rans_preconditioning.new_output = False test_list.append(hb_rans_preconditioning) ############################# ### Incompressible Euler ### ############################# # NACA0012 Hydrofoil inc_euler_naca0012 = TestCase('inc_euler_naca0012') inc_euler_naca0012.cfg_dir = "incomp_euler/naca0012" inc_euler_naca0012.cfg_file = "incomp_NACA0012.cfg" inc_euler_naca0012.test_iter = 20 inc_euler_naca0012.test_vals = [-4.858287, -3.810487, 0.491850, 0.007002] inc_euler_naca0012.new_output = True test_list.append(inc_euler_naca0012) # C-D nozzle with pressure inlet and mass flow outlet inc_nozzle = TestCase('inc_nozzle') inc_nozzle.cfg_dir = "incomp_euler/nozzle" inc_nozzle.cfg_file = "inv_nozzle.cfg" inc_nozzle.test_iter = 20 inc_nozzle.test_vals = [-5.971249, -4.910844, -0.000196, 0.121635] inc_nozzle.new_output = True test_list.append(inc_nozzle) ############################# ### Incompressible N-S ### ############################# # Laminar cylinder inc_lam_cylinder = TestCase('inc_lam_cylinder') inc_lam_cylinder.cfg_dir = "incomp_navierstokes/cylinder" inc_lam_cylinder.cfg_file = "incomp_cylinder.cfg" inc_lam_cylinder.test_iter = 10 inc_lam_cylinder.test_vals = [-4.004277, -3.227956, 0.003851, 7.626583] inc_lam_cylinder.new_output = True test_list.append(inc_lam_cylinder) # Buoyancy-driven cavity inc_buoyancy = TestCase('inc_buoyancy') inc_buoyancy.cfg_dir = "incomp_navierstokes/buoyancy_cavity" inc_buoyancy.cfg_file = "lam_buoyancy_cavity.cfg" inc_buoyancy.test_iter = 20 inc_buoyancy.test_vals = [-4.432484, 0.507522, 0.000000, 0.000000] inc_buoyancy.new_output = True test_list.append(inc_buoyancy) # Laminar heated cylinder with polynomial fluid model inc_poly_cylinder = TestCase('inc_poly_cylinder') inc_poly_cylinder.cfg_dir = "incomp_navierstokes/cylinder" inc_poly_cylinder.cfg_file = "poly_cylinder.cfg" inc_poly_cylinder.test_iter = 20 inc_poly_cylinder.test_vals = [-7.851512, -2.093420, 0.029974, 1.921595] inc_poly_cylinder.new_output = True test_list.append(inc_poly_cylinder) # X-coarse laminar bend as a mixed element CGNS test inc_lam_bend = TestCase('inc_lam_bend') inc_lam_bend.cfg_dir = "incomp_navierstokes/bend" inc_lam_bend.cfg_file = "lam_bend.cfg" inc_lam_bend.test_iter = 10 inc_lam_bend.test_vals = [-3.436191, -3.098014, -0.017338, -0.193981] test_list.append(inc_lam_bend) ############################ ### Incompressible RANS ### ############################ # NACA0012, SA inc_turb_naca0012 = TestCase('inc_turb_naca0012') inc_turb_naca0012.cfg_dir = "incomp_rans/naca0012" inc_turb_naca0012.cfg_file = "naca0012.cfg" inc_turb_naca0012.test_iter = 20 inc_turb_naca0012.test_vals = [-4.788405, -11.040493, 0.000008, 0.309506] inc_turb_naca0012.new_output = True test_list.append(inc_turb_naca0012) # NACA0012, SST_SUST inc_turb_naca0012_sst_sust = TestCase('inc_turb_naca0012_sst_sust') inc_turb_naca0012_sst_sust.cfg_dir = "incomp_rans/naca0012" inc_turb_naca0012_sst_sust.cfg_file = "naca0012_SST_SUST.cfg" inc_turb_naca0012_sst_sust.test_iter = 20 inc_turb_naca0012_sst_sust.test_vals = [ -7.276424, 0.145860, 0.000003, 0.312011 ] test_list.append(inc_turb_naca0012_sst_sust) ###################################### ### Moving Wall ### ###################################### # Lid-driven cavity cavity = TestCase('cavity') cavity.cfg_dir = "moving_wall/cavity" cavity.cfg_file = "lam_cavity.cfg" cavity.test_iter = 25 cavity.test_vals = [-5.627934, -0.164469, 0.052000, 2.547063] test_list.append(cavity) # Spinning cylinder spinning_cylinder = TestCase('spinning_cylinder') spinning_cylinder.cfg_dir = "moving_wall/spinning_cylinder" spinning_cylinder.cfg_file = "spinning_cylinder.cfg" spinning_cylinder.test_iter = 25 spinning_cylinder.test_vals = [-8.001289, -2.607956, 1.501322, 1.488559] test_list.append(spinning_cylinder) ###################################### ### Unsteady ### ###################################### # Square cylinder square_cylinder = TestCase('square_cylinder') square_cylinder.cfg_dir = "unsteady/square_cylinder" square_cylinder.cfg_file = "turb_square.cfg" square_cylinder.test_iter = 3 square_cylinder.test_vals = [-1.162564, 0.066401, 1.399788, 2.220402] square_cylinder.unsteady = True test_list.append(square_cylinder) # Gust sine_gust = TestCase('sine_gust') sine_gust.cfg_dir = "gust" sine_gust.cfg_file = "inv_gust_NACA0012.cfg" sine_gust.test_iter = 5 sine_gust.test_vals = [-1.977520, 3.481804, -0.012402, -0.007454] sine_gust.unsteady = True test_list.append(sine_gust) # Aeroelastic aeroelastic = TestCase('aeroelastic') aeroelastic.cfg_dir = "aeroelastic" aeroelastic.cfg_file = "aeroelastic_NACA64A010.cfg" aeroelastic.test_iter = 2 aeroelastic.test_vals = [0.074433, 0.033108, -0.001650, -0.000127] aeroelastic.unsteady = True test_list.append(aeroelastic) # Delayed Detached Eddy Simulation ddes_flatplate = TestCase('ddes_flatplate') ddes_flatplate.cfg_dir = "ddes/flatplate" ddes_flatplate.cfg_file = "ddes_flatplate.cfg" ddes_flatplate.test_iter = 10 ddes_flatplate.test_vals = [-2.714758, -5.883004, -0.215005, 0.023783] ddes_flatplate.unsteady = True test_list.append(ddes_flatplate) # unsteady pitching NACA0015, SA unst_inc_turb_naca0015_sa = TestCase('unst_inc_turb_naca0015_sa') unst_inc_turb_naca0015_sa.cfg_dir = "unsteady/pitching_naca0015_rans_inc" unst_inc_turb_naca0015_sa.cfg_file = "config_incomp_turb_sa.cfg" unst_inc_turb_naca0015_sa.test_iter = 1 unst_inc_turb_naca0015_sa.test_vals = [ -3.008629, -6.888974, 1.435193, 0.433537 ] unst_inc_turb_naca0015_sa.unsteady = True test_list.append(unst_inc_turb_naca0015_sa) # unsteady pitching NACA0012, Euler, Deforming unst_deforming_naca0012 = TestCase('unst_deforming_naca0012') unst_deforming_naca0012.cfg_dir = "disc_adj_euler/naca0012_pitching_def" unst_deforming_naca0012.cfg_file = "inv_NACA0012_pitching_deform.cfg" unst_deforming_naca0012.test_iter = 5 unst_deforming_naca0012.test_vals = [ -3.665120, -3.793643, -3.716518, -3.148310 ] unst_deforming_naca0012.unsteady = True test_list.append(unst_deforming_naca0012) ###################################### ### NICFD ### ###################################### # Rarefaction shock wave edge_VW edge_VW = TestCase('edge_VW') edge_VW.cfg_dir = "nicf/edge" edge_VW.cfg_file = "edge_VW.cfg" edge_VW.test_iter = 100 edge_VW.test_vals = [-5.040287, 1.124488, -0.000009, 0.000000] test_list.append(edge_VW) # Rarefaction shock wave edge_PPR edge_PPR = TestCase('edge_PPR') edge_PPR.cfg_dir = "nicf/edge" edge_PPR.cfg_file = "edge_PPR.cfg" edge_PPR.test_iter = 100 edge_PPR.test_vals = [-5.401601, 0.738205, -0.000035, 0.000000] test_list.append(edge_PPR) ###################################### ### Turbomachinery ### ###################################### # Jones APU Turbocharger Jones_tc = TestCase('jones_turbocharger') Jones_tc.cfg_dir = "turbomachinery/APU_turbocharger" Jones_tc.cfg_file = "Jones.cfg" Jones_tc.test_iter = 5 Jones_tc.test_vals = [-5.279930, 0.379651, 72.212100, 1.277439] Jones_tc.new_output = False test_list.append(Jones_tc) # Jones APU Turbocharger restart Jones_tc_rst = TestCase('jones_turbocharger_restart') Jones_tc_rst.cfg_dir = "turbomachinery/APU_turbocharger" Jones_tc_rst.cfg_file = "Jones_rst.cfg" Jones_tc_rst.test_iter = 5 Jones_tc_rst.test_vals = [-4.625251, -1.568824, 33.995140, 10.181940] Jones_tc_rst.new_output = False test_list.append(Jones_tc_rst) # 2D axial stage axial_stage2D = TestCase('axial_stage2D') axial_stage2D.cfg_dir = "turbomachinery/axial_stage_2D" axial_stage2D.cfg_file = "Axial_stage2D.cfg" axial_stage2D.test_iter = 20 axial_stage2D.test_vals = [-1.933139, 5.380376, 73.357910, 0.925874] axial_stage2D.new_output = False test_list.append(axial_stage2D) # 2D transonic stator transonic_stator = TestCase('transonic_stator') transonic_stator.cfg_dir = "turbomachinery/transonic_stator_2D" transonic_stator.cfg_file = "transonic_stator.cfg" transonic_stator.test_iter = 20 transonic_stator.test_vals = [-0.565608, 5.833408, 96.476150, 0.062517] transonic_stator.new_output = False test_list.append(transonic_stator) # 2D transonic stator restart transonic_stator_rst = TestCase('transonic_stator_restart') transonic_stator_rst.cfg_dir = "turbomachinery/transonic_stator_2D" transonic_stator_rst.cfg_file = "transonic_stator_rst.cfg" transonic_stator_rst.test_iter = 20 transonic_stator_rst.test_vals = [-6.619122, -0.615716, 5.002986, 0.002951] transonic_stator_rst.new_output = False test_list.append(transonic_stator_rst) ###################################### ### Sliding Mesh ### ###################################### # Uniform flow uniform_flow = TestCase('uniform_flow') uniform_flow.cfg_dir = "sliding_interface/uniform_flow" uniform_flow.cfg_file = "uniform_NN.cfg" uniform_flow.test_iter = 5 uniform_flow.test_vals = [5.000000, 0.000000, -0.188748, -10.631524] uniform_flow.unsteady = True uniform_flow.multizone = True test_list.append(uniform_flow) # Channel_2D channel_2D = TestCase('channel_2D') channel_2D.cfg_dir = "sliding_interface/channel_2D" channel_2D.cfg_file = "channel_2D_WA.cfg" channel_2D.test_iter = 2 channel_2D.test_vals = [2.000000, 0.000000, 0.397972, 0.352756, 0.405398] channel_2D.unsteady = True channel_2D.multizone = True test_list.append(channel_2D) # Channel_3D channel_3D = TestCase('channel_3D') channel_3D.cfg_dir = "sliding_interface/channel_3D" channel_3D.cfg_file = "channel_3D_WA.cfg" channel_3D.test_iter = 2 channel_3D.test_vals = [2.000000, 0.000000, 0.620171, 0.505178, 0.415313] channel_3D.unsteady = True channel_3D.multizone = True test_list.append(channel_3D) # Pipe pipe = TestCase('pipe') pipe.cfg_dir = "sliding_interface/pipe" pipe.cfg_file = "pipe_NN.cfg" pipe.test_iter = 2 pipe.test_vals = [0.150024, 0.491949, 0.677759, 0.963991, 1.006947] pipe.unsteady = True pipe.multizone = True test_list.append(pipe) # Rotating cylinders rotating_cylinders = TestCase('rotating_cylinders') rotating_cylinders.cfg_dir = "sliding_interface/rotating_cylinders" rotating_cylinders.cfg_file = "rot_cylinders_WA.cfg" rotating_cylinders.test_iter = 3 rotating_cylinders.test_vals = [ 3.000000, 0.000000, 0.777568, 1.134807, 1.224137 ] rotating_cylinders.unsteady = True rotating_cylinders.multizone = True test_list.append(rotating_cylinders) # Supersonic vortex shedding supersonic_vortex_shedding = TestCase('supersonic_vortex_shedding') supersonic_vortex_shedding.cfg_dir = "sliding_interface/supersonic_vortex_shedding" supersonic_vortex_shedding.cfg_file = "sup_vor_shed_WA.cfg" supersonic_vortex_shedding.test_iter = 5 supersonic_vortex_shedding.test_vals = [ 5.000000, 0.000000, 1.216554, 1.639119 ] supersonic_vortex_shedding.unsteady = True supersonic_vortex_shedding.multizone = True test_list.append(supersonic_vortex_shedding) # Bars_SST_2D bars_SST_2D = TestCase('bars_SST_2D') bars_SST_2D.cfg_dir = "sliding_interface/bars_SST_2D" bars_SST_2D.cfg_file = "bars.cfg" bars_SST_2D.test_iter = 13 bars_SST_2D.test_vals = [13.000000, -0.619686, -1.564595] bars_SST_2D.multizone = True test_list.append(bars_SST_2D) # Sliding mesh with incompressible flows (steady) slinc_steady = TestCase('slinc_steady') slinc_steady.cfg_dir = "sliding_interface/incompressible_steady" slinc_steady.cfg_file = "config.cfg" slinc_steady.test_iter = 19 slinc_steady.test_vals = [19.000000, -1.800401, -2.114687] slinc_steady.multizone = True test_list.append(slinc_steady) ########################## ### FEA - FSI ### ########################## # Static beam, 3d statbeam3d = TestCase('statbeam3d') statbeam3d.cfg_dir = "fea_fsi/StatBeam_3d" statbeam3d.cfg_file = "configBeam_3d.cfg" statbeam3d.test_iter = 0 statbeam3d.test_vals = [-2.378370, -1.585252, -2.028505, 64359.000000] test_list.append(statbeam3d) # Dynamic beam, 2d dynbeam2d = TestCase('dynbeam2d') dynbeam2d.cfg_dir = "fea_fsi/DynBeam_2d" dynbeam2d.cfg_file = "configBeam_2d.cfg" dynbeam2d.test_iter = 6 dynbeam2d.test_vals = [-3.240015, 2.895057, -0.353146, 66127.000000] dynbeam2d.unsteady = True test_list.append(dynbeam2d) # FSI, 2d fsi2d = TestCase('fsi2d') fsi2d.cfg_dir = "fea_fsi/WallChannel_2d" fsi2d.cfg_file = "configFSI.cfg" fsi2d.test_iter = 4 fsi2d.test_vals = [4.000000, 0.000000, -3.743227, -4.133479] fsi2d.multizone = True fsi2d.unsteady = True test_list.append(fsi2d) # FSI, Static, 2D, new mesh solver stat_fsi = TestCase('stat_fsi') stat_fsi.cfg_dir = "fea_fsi/stat_fsi" stat_fsi.cfg_file = "config.cfg" stat_fsi.test_iter = 7 stat_fsi.test_vals = [-5.403596, -5.722583, 0.000000, 10.000000] stat_fsi.multizone = True test_list.append(stat_fsi) # FSI, Dynamic, 2D, new mesh solver dyn_fsi = TestCase('dyn_fsi') dyn_fsi.cfg_dir = "fea_fsi/dyn_fsi" dyn_fsi.cfg_file = "config.cfg" dyn_fsi.test_iter = 4 dyn_fsi.test_vals = [-4.355806, -4.060582, 0.000000, 102.000000] dyn_fsi.multizone = True dyn_fsi.unsteady = True test_list.append(dyn_fsi) # FSI, Static, 2D, new mesh solver, restart stat_fsi_restart = TestCase('stat_fsi_restart') stat_fsi_restart.cfg_dir = "fea_fsi/stat_fsi" stat_fsi_restart.cfg_file = "config_restart.cfg" stat_fsi_restart.test_iter = 1 stat_fsi_restart.test_vals = [-3.474082, -4.242343, 0.000000, 37.000000] stat_fsi_restart.multizone = True test_list.append(stat_fsi_restart) ############################################## ### Method of Manufactured Solutions (MMS) ### ############################################## # FVM, compressible, laminar N-S mms_fvm_ns = TestCase('mms_fvm_ns') mms_fvm_ns.cfg_dir = "mms/fvm_navierstokes" mms_fvm_ns.cfg_file = "lam_mms_roe.cfg" mms_fvm_ns.test_iter = 20 mms_fvm_ns.test_vals = [-2.851428, 2.192348, 0.000000, 0.000000] test_list.append(mms_fvm_ns) # FVM, incompressible, euler mms_fvm_inc_euler = TestCase('mms_fvm_inc_euler') mms_fvm_inc_euler.cfg_dir = "mms/fvm_incomp_euler" mms_fvm_inc_euler.cfg_file = "inv_mms_jst.cfg" mms_fvm_inc_euler.test_iter = 20 mms_fvm_inc_euler.test_vals = [-9.128033, -9.441406, 0.000000, 0.000000] test_list.append(mms_fvm_inc_euler) # FVM, incompressible, laminar N-S mms_fvm_inc_ns = TestCase('mms_fvm_inc_ns') mms_fvm_inc_ns.cfg_dir = "mms/fvm_incomp_navierstokes" mms_fvm_inc_ns.cfg_file = "lam_mms_fds.cfg" mms_fvm_inc_ns.test_iter = 20 mms_fvm_inc_ns.test_vals = [-7.414944, -7.631546, 0.000000, 0.000000] test_list.append(mms_fvm_inc_ns) ###################################### ### RUN TESTS ### ###################################### for test in test_list: test.su2_exec = "SU2_CFD -t 2" test.timeout = 600 test.tol = 1e-4 #end pass_list = [test.run_test() for test in test_list] # Tests summary print('==================================================================') print('Summary of the hybrid parallel tests') print('python version:', sys.version) for i, test in enumerate(test_list): if (pass_list[i]): print(' passed - %s' % test.tag) else: print('* FAILED - %s' % test.tag) if all(pass_list): sys.exit(0) else: sys.exit(1)
def main(): '''This program runs SU2 and ensures that the output matches specified values. This will be used to do checks when code is pushed to github to make sure nothing is broken. ''' test_list = [] ########################## ### Compressible Euler ### ########################## # Channel channel = TestCase('channel') channel.cfg_dir = "euler/channel" channel.cfg_file = "inv_channel_RK.cfg" channel.test_iter = 20 channel.test_vals = [-2.667326, 2.797439, 0.018717, 0.006906] test_list.append(channel) # NACA0012 naca0012 = TestCase('naca0012') naca0012.cfg_dir = "euler/naca0012" naca0012.cfg_file = "inv_NACA0012_Roe.cfg" naca0012.test_iter = 20 naca0012.test_vals = [-4.023999, -3.515034, 0.339426, 0.022217] test_list.append(naca0012) # Supersonic wedge wedge = TestCase('wedge') wedge.cfg_dir = "euler/wedge" wedge.cfg_file = "inv_wedge_HLLC.cfg" wedge.test_iter = 20 wedge.test_vals = [-0.942862, 4.784581, -0.208106, 0.036665] test_list.append(wedge) # ONERA M6 Wing oneram6 = TestCase('oneram6') oneram6.cfg_dir = "euler/oneram6" oneram6.cfg_file = "inv_ONERAM6.cfg" oneram6.test_iter = 10 oneram6.test_vals = [0.281704, 0.011821] test_list.append(oneram6) # Fixed CL NACA0012 fixedCL_naca0012 = TestCase('fixedcl_naca0012') fixedCL_naca0012.cfg_dir = "fixed_cl/naca0012" fixedCL_naca0012.cfg_file = "inv_NACA0012.cfg" fixedCL_naca0012.test_iter = 10 fixedCL_naca0012.test_vals = [-12.130189, -6.702728, 0.300000, 0.019470] test_list.append(fixedCL_naca0012) # HYPERSONIC FLOW PAST BLUNT BODY bluntbody = TestCase('bluntbody') bluntbody.cfg_dir = "euler/bluntbody" bluntbody.cfg_file = "blunt.cfg" bluntbody.test_iter = 20 bluntbody.test_vals = [0.540010, 6.916656, 0.000027, 1.869004] test_list.append(bluntbody) ########################## ### Compressible N-S ### ########################## # Laminar flat plate flatplate = TestCase('flatplate') flatplate.cfg_dir = "navierstokes/flatplate" flatplate.cfg_file = "lam_flatplate.cfg" flatplate.test_iter = 20 flatplate.test_vals = [-4.680775, 0.781235, -0.135957, 0.022978] test_list.append(flatplate) # Laminar cylinder (steady) cylinder = TestCase('cylinder') cylinder.cfg_dir = "navierstokes/cylinder" cylinder.cfg_file = "lam_cylinder.cfg" cylinder.test_iter = 25 cylinder.test_vals = [-6.765432, -1.297428, 0.019596, 0.310240] test_list.append(cylinder) # Laminar cylinder (low Mach correction) cylinder_lowmach = TestCase('cylinder_lowmach') cylinder_lowmach.cfg_dir = "navierstokes/cylinder" cylinder_lowmach.cfg_file = "cylinder_lowmach.cfg" cylinder_lowmach.test_iter = 25 cylinder_lowmach.test_vals = [-6.850130, -1.388096, -0.056203, 108.140819] test_list.append(cylinder_lowmach) # 2D Poiseuille flow (body force driven with periodic inlet / outlet) poiseuille = TestCase('poiseuille') poiseuille.cfg_dir = "navierstokes/poiseuille" poiseuille.cfg_file = "lam_poiseuille.cfg" poiseuille.test_iter = 10 poiseuille.test_vals = [-5.048282, 0.650814, 0.008714, 13.677678] test_list.append(poiseuille) # 2D Poiseuille flow (inlet profile file) poiseuille_profile = TestCase('poiseuille_profile') poiseuille_profile.cfg_dir = "navierstokes/poiseuille" poiseuille_profile.cfg_file = "profile_poiseuille.cfg" poiseuille_profile.test_iter = 10 poiseuille_profile.test_vals = [-12.494721, -7.712408, -0.000000, 2.085796] test_list.append(poiseuille_profile) ########################## ### Compressible RANS ### ########################## # RAE2822 SA rae2822_sa = TestCase('rae2822_sa') rae2822_sa.cfg_dir = "rans/rae2822" rae2822_sa.cfg_file = "turb_SA_RAE2822.cfg" rae2822_sa.test_iter = 20 rae2822_sa.test_vals = [-2.021224, -5.268445, 0.807582, 0.060731] test_list.append(rae2822_sa) # RAE2822 SST rae2822_sst = TestCase('rae2822_sst') rae2822_sst.cfg_dir = "rans/rae2822" rae2822_sst.cfg_file = "turb_SST_RAE2822.cfg" rae2822_sst.test_iter = 20 rae2822_sst.test_vals = [-0.510637, 4.876603, 0.812485, 0.061969] test_list.append(rae2822_sst) # RAE2822 SST_SUST rae2822_sst_sust = TestCase('rae2822_sst_sust') rae2822_sst_sust.cfg_dir = "rans/rae2822" rae2822_sst_sust.cfg_file = "turb_SST_SUST_RAE2822.cfg" rae2822_sst_sust.test_iter = 20 rae2822_sst_sust.test_vals = [-2.429813, 4.876602, 0.812485, 0.061969] test_list.append(rae2822_sst_sust) # Flat plate turb_flatplate = TestCase('turb_flatplate') turb_flatplate.cfg_dir = "rans/flatplate" turb_flatplate.cfg_file = "turb_SA_flatplate.cfg" turb_flatplate.test_iter = 20 turb_flatplate.test_vals = [-4.157169, -6.737133, -0.176253, 0.057446] test_list.append(turb_flatplate) # ONERA M6 Wing turb_oneram6 = TestCase('turb_oneram6') turb_oneram6.cfg_dir = "rans/oneram6" turb_oneram6.cfg_file = "turb_ONERAM6.cfg" turb_oneram6.test_iter = 10 turb_oneram6.test_vals = [-2.388851, -6.689340, 0.230320, 0.157649] test_list.append(turb_oneram6) # NACA0012 (SA, FUN3D finest grid results: CL=1.0983, CD=0.01242) turb_naca0012_sa = TestCase('turb_naca0012_sa') turb_naca0012_sa.cfg_dir = "rans/naca0012" turb_naca0012_sa.cfg_file = "turb_NACA0012_sa.cfg" turb_naca0012_sa.test_iter = 10 turb_naca0012_sa.test_vals = [-11.537781, -14.899750, 1.064330, 0.019756] test_list.append(turb_naca0012_sa) # NACA0012 (SST, FUN3D finest grid results: CL=1.0840, CD=0.01253) turb_naca0012_sst = TestCase('turb_naca0012_sst') turb_naca0012_sst.cfg_dir = "rans/naca0012" turb_naca0012_sst.cfg_file = "turb_NACA0012_sst.cfg" turb_naca0012_sst.test_iter = 10 turb_naca0012_sst.test_vals = [-12.797090, -5.872763, 1.049989, 0.019163] test_list.append(turb_naca0012_sst) # NACA0012 (SST_SUST, FUN3D finest grid results: CL=1.0840, CD=0.01253) turb_naca0012_sst_sust = TestCase('turb_naca0012_sst_sust') turb_naca0012_sst_sust.cfg_dir = "rans/naca0012" turb_naca0012_sst_sust.cfg_file = "turb_NACA0012_sst_sust.cfg" turb_naca0012_sst_sust.test_iter = 10 turb_naca0012_sst_sust.test_vals = [ -12.640091, -5.751854, 1.005233, 0.019017 ] test_list.append(turb_naca0012_sst_sust) # PROPELLER propeller = TestCase('propeller') propeller.cfg_dir = "rans/propeller" propeller.cfg_file = "propeller.cfg" propeller.test_iter = 10 propeller.test_vals = [-3.389576, -8.409529, 0.000048, 0.056329] test_list.append(propeller) # PROPELLER VARIBLE LOAD propeller_var_load = TestCase('propeller_variable_load') propeller_var_load.cfg_dir = "rans/actuatordisk_variable_load" propeller_var_load.cfg_file = "propeller_variable_load.cfg" propeller_var_load.test_iter = 20 propeller_var_load.test_vals = [-1.808010, -4.535613, 0.000190, 0.172483] test_list.append(propeller_var_load) ################################# ## Compressible RANS Restart ### ################################# # NACA0012 SST Multigrid restart turb_naca0012_sst_restart_mg = TestCase('turb_naca0012_sst_restart_mg') turb_naca0012_sst_restart_mg.cfg_dir = "rans/naca0012" turb_naca0012_sst_restart_mg.cfg_file = "turb_NACA0012_sst_multigrid_restart.cfg" turb_naca0012_sst_restart_mg.test_iter = 20 turb_naca0012_sst_restart_mg.ntest_vals = 5 turb_naca0012_sst_restart_mg.test_vals = [ -7.653296, -7.729472, -1.981061, -0.000016, 0.079062 ] test_list.append(turb_naca0012_sst_restart_mg) ############################# ### Compressibele RANS UQ ### ############################# # NACA0012 1c turb_naca0012_1c = TestCase('turb_naca0012_1c') turb_naca0012_1c.cfg_dir = "rans_uq/naca0012" turb_naca0012_1c.cfg_file = "turb_NACA0012_uq_1c.cfg" turb_naca0012_1c.test_iter = 10 turb_naca0012_1c.test_vals = [-4.979389, 1.140070, 1.211965, 0.194237] test_list.append(turb_naca0012_1c) # NACA0012 2c turb_naca0012_2c = TestCase('turb_naca0012_2c') turb_naca0012_2c.cfg_dir = "rans_uq/naca0012" turb_naca0012_2c.cfg_file = "turb_NACA0012_uq_2c.cfg" turb_naca0012_2c.test_iter = 10 turb_naca0012_2c.test_vals = [-5.484195, 0.969789, 1.310525, 0.231240] test_list.append(turb_naca0012_2c) # NACA0012 3c turb_naca0012_3c = TestCase('turb_naca0012_3c') turb_naca0012_3c.cfg_dir = "rans_uq/naca0012" turb_naca0012_3c.cfg_file = "turb_NACA0012_uq_3c.cfg" turb_naca0012_3c.test_iter = 10 turb_naca0012_3c.test_vals = [-5.586959, 0.932359, 1.535455, 0.315820] test_list.append(turb_naca0012_3c) # NACA0012 p1c1 turb_naca0012_p1c1 = TestCase('turb_naca0012_p1c1') turb_naca0012_p1c1.cfg_dir = "rans_uq/naca0012" turb_naca0012_p1c1.cfg_file = "turb_NACA0012_uq_p1c1.cfg" turb_naca0012_p1c1.test_iter = 10 turb_naca0012_p1c1.test_vals = [-5.132081, 1.076462, 1.178093, 0.181595] test_list.append(turb_naca0012_p1c1) # NACA0012 p1c2 turb_naca0012_p1c2 = TestCase('turb_naca0012_p1c2') turb_naca0012_p1c2.cfg_dir = "rans_uq/naca0012" turb_naca0012_p1c2.cfg_file = "turb_NACA0012_uq_p1c2.cfg" turb_naca0012_p1c2.test_iter = 10 turb_naca0012_p1c2.test_vals = [-5.556648, 0.945129, 1.240986, 0.205071] test_list.append(turb_naca0012_p1c2) ###################################### ### Harmonic Balance ### ###################################### # Description of the regression test harmonic_balance = TestCase('harmonic_balance') harmonic_balance.cfg_dir = "harmonic_balance" harmonic_balance.cfg_file = "HB.cfg" harmonic_balance.test_iter = 25 harmonic_balance.test_vals = [-1.589755, 3.922207, 0.006725, 0.099455] harmonic_balance.new_output = False test_list.append(harmonic_balance) # Turbulent pitching NACA 64a010 airfoil hb_rans_preconditioning = TestCase('hb_rans_preconditioning') hb_rans_preconditioning.cfg_dir = "harmonic_balance/hb_rans_preconditioning" hb_rans_preconditioning.cfg_file = "davis.cfg" hb_rans_preconditioning.test_iter = 25 hb_rans_preconditioning.test_vals = [ -1.902391, -5.950120, 0.007786, 0.128110 ] hb_rans_preconditioning.new_output = False test_list.append(hb_rans_preconditioning) ###################################### ### Moving Wall ### ###################################### # Lid-driven cavity cavity = TestCase('cavity') cavity.cfg_dir = "moving_wall/cavity" cavity.cfg_file = "lam_cavity.cfg" cavity.test_iter = 25 cavity.test_vals = [-5.627934, -0.164469, 0.051998, 2.547065] test_list.append(cavity) # Spinning cylinder spinning_cylinder = TestCase('spinning_cylinder') spinning_cylinder.cfg_dir = "moving_wall/spinning_cylinder" spinning_cylinder.cfg_file = "spinning_cylinder.cfg" spinning_cylinder.test_iter = 25 spinning_cylinder.test_vals = [-7.996313, -2.601764, 1.510692, 1.493876] test_list.append(spinning_cylinder) ###################################### ### Unsteady ### ###################################### # Square cylinder square_cylinder = TestCase('square_cylinder') square_cylinder.cfg_dir = "unsteady/square_cylinder" square_cylinder.cfg_file = "turb_square.cfg" square_cylinder.test_iter = 3 square_cylinder.test_vals = [-1.162572, 0.066371, 1.399790, 2.220393] square_cylinder.unsteady = True test_list.append(square_cylinder) # Gust sine_gust = TestCase('sine_gust') sine_gust.cfg_dir = "gust" sine_gust.cfg_file = "inv_gust_NACA0012.cfg" sine_gust.test_iter = 5 sine_gust.test_vals = [-1.977520, 3.481804, -0.012404, -0.007452] sine_gust.unsteady = True test_list.append(sine_gust) # Aeroelastic aeroelastic = TestCase('aeroelastic') aeroelastic.cfg_dir = "aeroelastic" aeroelastic.cfg_file = "aeroelastic_NACA64A010.cfg" aeroelastic.test_iter = 2 aeroelastic.test_vals = [0.074525, 0.033127, -0.001650, -0.000127] aeroelastic.unsteady = True test_list.append(aeroelastic) # Delayed Detached Eddy Simulation ddes_flatplate = TestCase('ddes_flatplate') ddes_flatplate.cfg_dir = "ddes/flatplate" ddes_flatplate.cfg_file = "ddes_flatplate.cfg" ddes_flatplate.test_iter = 10 ddes_flatplate.test_vals = [-2.714758, -5.883004, -0.215005, 0.023783] ddes_flatplate.unsteady = True test_list.append(ddes_flatplate) ###################################### ### NICFD ### ###################################### # Rarefaction shock wave edge_VW edge_VW = TestCase('edge_VW') edge_VW.cfg_dir = "nicf/edge" edge_VW.cfg_file = "edge_VW.cfg" edge_VW.test_iter = 100 edge_VW.test_vals = [-5.040283, 1.124491, -0.000009, 0.000000] test_list.append(edge_VW) # Rarefaction shock wave edge_PPR edge_PPR = TestCase('edge_PPR') edge_PPR.cfg_dir = "nicf/edge" edge_PPR.cfg_file = "edge_PPR.cfg" edge_PPR.test_iter = 100 edge_PPR.test_vals = [-5.401640, 0.738165, -0.000035, 0.000000] test_list.append(edge_PPR) ###################################### ### Turbomachinery ### ###################################### # Jones APU Turbocharger Jones_tc = TestCase('jones_turbocharger') Jones_tc.cfg_dir = "turbomachinery/APU_turbocharger" Jones_tc.cfg_file = "Jones.cfg" Jones_tc.test_iter = 5 Jones_tc.test_vals = [-5.280316, 0.379651, 72.207590, 1.277638] Jones_tc.new_output = False test_list.append(Jones_tc) # Jones APU Turbocharger restart Jones_tc_rst = TestCase('jones_turbocharger_restart') Jones_tc_rst.cfg_dir = "turbomachinery/APU_turbocharger" Jones_tc_rst.cfg_file = "Jones_rst.cfg" Jones_tc_rst.test_iter = 5 Jones_tc_rst.test_vals = [-4.625330, -1.568896, 33.995140, 10.181610] Jones_tc_rst.new_output = False test_list.append(Jones_tc_rst) # 2D axial stage axial_stage2D = TestCase('axial_stage2D') axial_stage2D.cfg_dir = "turbomachinery/axial_stage_2D" axial_stage2D.cfg_file = "Axial_stage2D.cfg" axial_stage2D.test_iter = 20 axial_stage2D.test_vals = [-1.933200, 5.379973, 73.357900, 0.925878] axial_stage2D.new_output = False test_list.append(axial_stage2D) # 2D transonic stator transonic_stator = TestCase('transonic_stator') transonic_stator.cfg_dir = "turbomachinery/transonic_stator_2D" transonic_stator.cfg_file = "transonic_stator.cfg" transonic_stator.test_iter = 20 transonic_stator.test_vals = [-0.562430, 5.828446, 96.436050, 0.062506] transonic_stator.new_output = False test_list.append(transonic_stator) # 2D transonic stator restart transonic_stator_rst = TestCase('transonic_stator_restart') transonic_stator_rst.cfg_dir = "turbomachinery/transonic_stator_2D" transonic_stator_rst.cfg_file = "transonic_stator_rst.cfg" transonic_stator_rst.test_iter = 20 transonic_stator_rst.test_vals = [-6.621626, -0.614379, 5.002986, 0.002951] transonic_stator_rst.new_output = False test_list.append(transonic_stator_rst) ###################################### ### Sliding Mesh ### ###################################### # Uniform flow uniform_flow = TestCase('uniform_flow') uniform_flow.cfg_dir = "sliding_interface/uniform_flow" uniform_flow.cfg_file = "uniform_NN.cfg" uniform_flow.test_iter = 5 uniform_flow.test_vals = [5.000000, 0.000000, -0.188748, -10.631530] uniform_flow.unsteady = True uniform_flow.multizone = True test_list.append(uniform_flow) # Channel_2D channel_2D = TestCase('channel_2D') channel_2D.cfg_dir = "sliding_interface/channel_2D" channel_2D.cfg_file = "channel_2D_WA.cfg" channel_2D.test_iter = 2 channel_2D.test_vals = [2.000000, 0.000000, 0.398089, 0.352762, 0.405397] channel_2D.unsteady = True channel_2D.multizone = True test_list.append(channel_2D) # Channel_3D channel_3D = TestCase('channel_3D') channel_3D.cfg_dir = "sliding_interface/channel_3D" channel_3D.cfg_file = "channel_3D_WA.cfg" channel_3D.test_iter = 2 channel_3D.test_vals = [2.000000, 0.000000, 0.620151, 0.505157, 0.415249] channel_3D.unsteady = True channel_3D.multizone = True test_list.append(channel_3D) # Pipe pipe = TestCase('pipe') pipe.cfg_dir = "sliding_interface/pipe" pipe.cfg_file = "pipe_NN.cfg" pipe.test_iter = 2 pipe.test_vals = [0.150024, 0.491949, 0.677757, 0.963990, 1.006944] pipe.unsteady = True pipe.multizone = True test_list.append(pipe) # Rotating cylinders rotating_cylinders = TestCase('rotating_cylinders') rotating_cylinders.cfg_dir = "sliding_interface/rotating_cylinders" rotating_cylinders.cfg_file = "rot_cylinders_WA.cfg" rotating_cylinders.test_iter = 3 rotating_cylinders.test_vals = [ 3.000000, 0.000000, 0.777567, 1.134807, 1.224136 ] rotating_cylinders.unsteady = True rotating_cylinders.multizone = True test_list.append(rotating_cylinders) # Supersonic vortex shedding supersonic_vortex_shedding = TestCase('supersonic_vortex_shedding') supersonic_vortex_shedding.cfg_dir = "sliding_interface/supersonic_vortex_shedding" supersonic_vortex_shedding.cfg_file = "sup_vor_shed_WA.cfg" supersonic_vortex_shedding.test_iter = 5 supersonic_vortex_shedding.test_vals = [ 5.000000, 0.000000, 1.216554, 1.639121 ] supersonic_vortex_shedding.unsteady = True supersonic_vortex_shedding.multizone = True test_list.append(supersonic_vortex_shedding) # Bars_SST_2D bars_SST_2D = TestCase('bars_SST_2D') bars_SST_2D.cfg_dir = "sliding_interface/bars_SST_2D" bars_SST_2D.cfg_file = "bars.cfg" bars_SST_2D.test_iter = 13 bars_SST_2D.test_vals = [13.000000, -0.619179, -1.564701] bars_SST_2D.multizone = True test_list.append(bars_SST_2D) ########################## ### FEA - FSI ### ########################## # Static beam, 3d statbeam3d = TestCase('statbeam3d') statbeam3d.cfg_dir = "fea_fsi/StatBeam_3d" statbeam3d.cfg_file = "configBeam_3d.cfg" statbeam3d.test_iter = 0 statbeam3d.test_vals = [-2.378370, -1.585252, -2.028505, 6.4359e+04] test_list.append(statbeam3d) # Dynamic beam, 2d dynbeam2d = TestCase('dynbeam2d') dynbeam2d.cfg_dir = "fea_fsi/DynBeam_2d" dynbeam2d.cfg_file = "configBeam_2d.cfg" dynbeam2d.test_iter = 6 dynbeam2d.test_vals = [-3.240015, 2.895057, -0.353146, 66127.000000] dynbeam2d.unsteady = True test_list.append(dynbeam2d) # FSI, 2d fsi2d = TestCase('fsi2d') fsi2d.cfg_dir = "fea_fsi/WallChannel_2d" fsi2d.cfg_file = "configFSI.cfg" fsi2d.test_iter = 4 fsi2d.test_vals = [4.000000, 0.000000, -3.764089, -4.081119] fsi2d.multizone = True fsi2d.unsteady = True test_list.append(fsi2d) # FSI, Static, 2D, new mesh solver stat_fsi = TestCase('stat_fsi') stat_fsi.cfg_dir = "fea_fsi/stat_fsi" stat_fsi.cfg_file = "config.cfg" stat_fsi.test_iter = 7 stat_fsi.test_vals = [-3.242834, -4.866608, 0.000000, 11.000000] stat_fsi.multizone = True test_list.append(stat_fsi) # FSI, Dynamic, 2D, new mesh solver dyn_fsi = TestCase('dyn_fsi') dyn_fsi.cfg_dir = "fea_fsi/dyn_fsi" dyn_fsi.cfg_file = "config.cfg" dyn_fsi.test_iter = 4 dyn_fsi.test_vals = [-4.379823, -4.005990, 0.000000, 74.000000] dyn_fsi.multizone = True dyn_fsi.unsteady = True test_list.append(dyn_fsi) # FSI, Static, 2D, new mesh solver, restart stat_fsi_restart = TestCase('stat_fsi_restart') stat_fsi_restart.cfg_dir = "fea_fsi/stat_fsi" stat_fsi_restart.cfg_file = "config_restart.cfg" stat_fsi_restart.test_iter = 1 stat_fsi_restart.test_vals = [-3.474239, -4.250710, 0.000000, 36.000000] stat_fsi_restart.multizone = True test_list.append(stat_fsi_restart) ############################################## ### Method of Manufactured Solutions (MMS) ### ############################################## # FVM, compressible, laminar N-S mms_fvm_ns = TestCase('mms_fvm_ns') mms_fvm_ns.cfg_dir = "mms/fvm_navierstokes" mms_fvm_ns.cfg_file = "lam_mms_roe.cfg" mms_fvm_ns.test_iter = 20 mms_fvm_ns.test_vals = [-2.851428, 2.192348, 0.000000, 0.000000] test_list.append(mms_fvm_ns) ###################################### ### RUN TESTS ### ###################################### for test in test_list: test.su2_exec = "SU2_CFD -t 2" test.timeout = 600 test.tol = 1e-4 #end pass_list = [test.run_test() for test in test_list] # Tests summary print('==================================================================') print('Summary of the parallel tests') print('python version:', sys.version) for i, test in enumerate(test_list): if (pass_list[i]): print(' passed - %s' % test.tag) else: print('* FAILED - %s' % test.tag) if all(pass_list): sys.exit(0) else: sys.exit(1)