
[Sponsors] 
April 22, 2020, 11:49 
Problems with Inviscid simulation

#1 
Member
Join Date: Dec 2019
Posts: 30
Rep Power: 3 
I have been having trouble running a simulations for a hypersonic nozzle. Any suggestions on what I should do to get it running and why I am having difficulty?
I am using SU2 v7.0.3. I have iterated through the following options: JST coefficients: 0.5, 0.02 (default); 0.5, 0.025; 0.2, 0.01 Turbulence Model: SA, SST, NONE (EULER) Fluid Solver: Euler, RANS CFL number: range from 1 to 15 (no adapt), 0.01 (explicit) time stepping scheme: Euler implicit; rungekutta explicit; euler explicit linear solver: BGSTAB, FGMRES MUSCL FLOW: no; yes, venkatakrishnan; none (slope limiters) MUSCL TURB: no; yes, venkatakrishnan; none (slope limiters) I created my mesh using Pointwise. I have checked my mesh, and everything seems fine. The minimum included angle is larger than 70 degrees and the max is less than 110. The max aspect ratio is around 5.5. I have tried various grid solvers in Pointwise to promote orthogonality. I have attached a picture of my mesh. I am using the following BC's: farfield inflow (throat) supersonic outlet (nozzle exit) axisymmetric euler wall (slip) Below is a copy of one of the configuration files for my simulation: % File Version 7.0.3 "Blackbird" %  DIRECT, ADJOINT, AND LINEARIZED PROBLEM DEFINITION % % Solver type (EULER, NAVIER_STOKES, RANS, % INC_EULER, INC_NAVIER_STOKES, INC_RANS % FEM_EULER, FEM_NAVIER_STOKES, FEM_RANS, FEM_LES, % HEAT_EQUATION_FVM, ELASTICITY) SOLVER= RANS KIND_TURB_MODEL= SA % Specify turbulence model (NONE, SA, SA_NEG, SST, SA_E, SA_COMP, SA_E_COMP, SST_SUST) MATH_PROBLEM= DIRECT % Mathematical problem (DIRECT, CONTINUOUS_ADJOINT, DISCRETE_ADJOINT) AXISYMMETRIC= YES % Axisymmetric simulation, only compressible flows (NO, YES) RESTART_SOL= NO % Restart solution (NO, YES) SYSTEM_MEASUREMENTS= SI %  SOLVER CONTROL % ITER= 500000 % Maximum number of inner iterations CONV_FIELD= RMS_DENSITY % Convergence field CONV_RESIDUAL_MINVAL= 20 % Min value of the residual (log10 of the residual) CONV_STARTITER= 1 % Start convergence criteria at iteration number CONV_CAUCHY_ELEMS= 100 % Number of elements to apply the criteria CONV_CAUCHY_EPS= 1E10 % Epsilon to control the series convergence %  TIMEDEPENDENT SIMULATION % TIME_DOMAIN= NO % Time domain simulation %  COMPRESSIBLE FREESTREAM DEFINITION % MACH_NUMBER= 1.0565 % Mach number (nondimensional, based on the freestream values) % Init option to choose between Reynolds (default) or thermodynamics quantities % for initializing the solution (REYNOLDS, TD_CONDITIONS) INIT_OPTION= TD_CONDITIONS % Freestream option to choose between density and temperature (default) for % initializing the solution (TEMPERATURE_FS, DENSITY_FS) FREESTREAM_OPTION= TEMPERATURE_FS FREESTREAM_PRESSURE= 1853900 % Freestream pressure (101325.0 N/m^2, 2116.216 psf by default) FREESTREAM_TEMPERATURE= 1639.4 % Freestream temperature (288.15 K, 518.67 R by default) % Compressible flow nondimensionalization (DIMENSIONAL, FREESTREAM_PRESS_EQ_ONE, % FREESTREAM_VEL_EQ_MACH, FREESTREAM_VEL_EQ_ONE) REF_DIMENSIONALIZATION= DIMENSIONAL %  IDEAL GAS, POLYTROPIC, VAN DER WAALS AND PENG ROBINSON CONSTANTS % % Fluid model (STANDARD_AIR, IDEAL_GAS, VW_GAS, PR_GAS, % CONSTANT_DENSITY, INC_IDEAL_GAS, INC_IDEAL_GAS_POLY) FLUID_MODEL= IDEAL_GAS % Ratio of specific heats (1.4 default and the value is hardcoded % for the model STANDARD_AIR, compressible only) GAMMA_VALUE= 1.3448 % Specific gas constant (287.058 J/kg*K default and this value is hardcoded % for the model STANDARD_AIR, compressible only) GAS_CONSTANT= 283.22845 % Temperature polynomial coefficients (up to quartic) for specific heat Cp. % Format > Cp(T) : b0 + b1*T + b2*T^2 + b3*T^3 + b4*T^4 CP_POLYCOEFFS= (926.55709422388, 0.169323866173782, 1.26310949215E4, 1.07657580419E7, 2.10452345942872E11) %  VISCOSITY MODEL % VISCOSITY_MODEL= SUTHERLAND % Viscosity model (SUTHERLAND, CONSTANT_VISCOSITY, POLYNOMIAL_VISCOSITY). MU_REF= 1.762690163418573e05 % Sutherland Viscosity Ref (1.716E5 default value for AIR SI) MU_T_REF= 273 % Sutherland Temperature Ref (273.15 K default value for AIR SI) SUTHERLAND_CONSTANT= 140.3321773281668 % Sutherland constant (110.4 default value for AIR SI) %  THERMAL CONDUCTIVITY MODEL % % Laminar Conductivity model (CONSTANT_CONDUCTIVITY, CONSTANT_PRANDTL, % POLYNOMIAL_CONDUCTIVITY). CONDUCTIVITY_MODEL= CONSTANT_PRANDTL PRANDTL_LAM= 0.7377 % Laminar Prandtl number (0.72 (air), only for CONSTANT_PRANDTL) % Temperature polynomial coefficients (up to quartic) for conductivity. % Format > Kt(T) : b0 + b1*T + b2*T^2 + b3*T^3 + b4*T^4 % KT_POLYCOEFFS= (6.22054491931E1, 2.89460469859E4, 3.30992530520E7, 1.54377673179E10, 2.52938929691E14) % Definition of the turbulent thermal conductivity model for RANS TURBULENT_CONDUCTIVITY_MODEL= CONSTANT_PRANDTL_TURB % (CONSTANT_PRANDTL_TURB by default, NONE). PRANDTL_TURB= 0.90 % Turbulent Prandtl number (0.9 (air) by default) %  BOUNDARY CONDITION DEFINITION % % Euler wall boundary marker(s) (NONE = no marker) MARKER_EULER= ( Wall ) % NavierStokes (noslip), constant heat flux wall marker(s) (NONE = no marker) % Format: ( marker name, constant heat flux (J/m^2), ... ) %MARKER_HEATFLUX= ( Wall, 0.0 ) MARKER_FAR= ( Inflow ) % Farfield boundary marker(s) (NONE = no marker) % Supersonic inlet boundary marker(s) (NONE = no marker) % Format: (inlet marker, temperature, static pressure, velocity_x, % velocity_y, velocity_z, ... ), i.e. primitive variables specified. %MARKER_SUPERSONIC_INLET= ( Inflow, 1853900, 1639.4, 834.851544183, 0, 0 ) MARKER_SUPERSONIC_OUTLET= ( Outflow ) % Supersonic outlet boundary marker(s) (NONE = no marker) %INLET_TYPE= TOTAL_CONDITIONS % Inlet boundary type (TOTAL_CONDITIONS, MASS_FLOW) % Riemann boundary marker(s) (NONE = no marker) % Format: (marker, data kind flag, list of data) %MARKER_RIEMANN= ( Inflow, TOTAL_CONDITIONS_PT, 1853900, 1639.4, 1.0, 0.0, 0.0, Outflow, STATIC_PRESSURE, 2022.55 0.0, 0.0, 0.0, 0.0) MARKER_SYM= ( Symmetry ) % Symmetry boundary marker(s) (NONE = no marker) %  COMMON PARAMETERS DEFINING THE NUMERICAL METHOD % NUM_METHOD_GRAD= GREEN_GAUSS % Numerical method for spatial gradients (GREEN_GAUSS, WEIGHTED_LEAST_SQUARES) CFL_NUMBER= 4 % CFL number (initial value for the adaptive CFL number) CFL_ADAPT= YES % Adaptive CFL number (NO, YES) % Parameters of the adaptive CFL number (factor down, factor up, CFL min value, % CFL max value ) CFL_ADAPT_PARAM= ( 0.5, 1.0, 1.0, 15.0 ) MAX_DELTA_TIME= 1E6 % Maximum Delta Time in local time stepping simulations RK_ALPHA_COEFF= ( 0.66667, 0.66667, 1.000000 ) % RungeKutta alpha coefficients %  SLOPE LIMITER AND DISSIPATION SENSOR DEFINITION % % Monotonic Upwind Scheme for Conservation Laws (TVD) in the flow equations. % Required for 2nd order upwind schemes (NO, YES) MUSCL_FLOW= NO % Slope limiter (NONE, VENKATAKRISHNAN, VENKATAKRISHNAN_WANG, % BARTH_JESPERSEN, VAN_ALBADA_EDGE) SLOPE_LIMITER_FLOW= VENKATAKRISHNAN % Monotonic Upwind Scheme for Conservation Laws (TVD) in the turbulence equations. % Required for 2nd order upwind schemes (NO, YES) MUSCL_TURB= NO % Slope limiter (NONE, VENKATAKRISHNAN, VENKATAKRISHNAN_WANG, % BARTH_JESPERSEN, VAN_ALBADA_EDGE) SLOPE_LIMITER_TURB= VENKATAKRISHNAN % Coefficient for the Venkat's limiter (upwind scheme). A larger values decrease % the extent of limiting, values approaching zero cause % lowerorder approximation to the solution (0.05 by default) VENKAT_LIMITER_COEFF= 0.05 LIMITER_ITER= 9999999 % Freeze the value of the limiter after a number of iterations % 2nd and 4th order artificial dissipation coefficients for % the JST method ( 0.5, 0.02 by default ) JST_SENSOR_COEFF= ( 0.5, 0.02 ) %  LINEAR SOLVER DEFINITION % % Linear solver or smoother for implicit formulations: % BCGSTAB, FGMRES, RESTARTED_FGMRES, CONJUGATE_GRADIENT (selfadjoint problems only), SMOOTHER. LINEAR_SOLVER= BCGSTAB LINEAR_SOLVER_PREC= LU_SGS % Preconditioner of the Krylov linear solver or type of smoother (ILU, LU_SGS, LINELET, JACOBI) LINEAR_SOLVER_ILU_FILL_IN= 0 % Linael solver ILU preconditioner fillin level (0 by default) LINEAR_SOLVER_ERROR= 1E6 % Minimum error of the linear solver for implicit formulations LINEAR_SOLVER_ITER= 100 % Max number of iterations of the linear solver for the implicit formulation LINEAR_SOLVER_RESTART_FREQUENCY= 10 % Restart frequency for RESTARTED_FGMRES LINEAR_SOLVER_SMOOTHER_RELAXATION= 1.0 % Relaxation factor for smoothertype solvers (LINEAR_SOLVER= SMOOTHER) %  MULTIGRID PARAMETERS % MGLEVEL= 0 % Multigrid levels (0 = no multigrid) %  FLOW NUMERICAL METHOD DEFINITION % % Convective numerical method (JST, LAXFRIEDRICH, CUSP, ROE, AUSM, AUSMPLUSUP, % AUSMPLUSUP2, HLLC, TURKEL_PREC, MSW, FDS, SLAU, SLAU2) CONV_NUM_METHOD_FLOW= JST % Entropy fix coefficient (0.0 implies no entropy fixing, 1.0 implies scalar % artificial dissipation) ENTROPY_FIX_COEFF= 0.1 % Higher values than 1 (3 to 4) make the global Jacobian of central schemes (compressible flow % only) more diagonal dominant (but mathematically incorrect) so that higher CFL can be used. CENTRAL_JACOBIAN_FIX_FACTOR= 1.0 TIME_DISCRE_FLOW= EULER_IMPLICIT % Time discretization (RUNGEKUTTA_EXPLICIT, EULER_IMPLICIT, EULER_EXPLICIT) %  TURBULENT NUMERICAL METHOD DEFINITION % CONV_NUM_METHOD_TURB= SCALAR_UPWIND % Convective numerical method (SCALAR_UPWIND) TIME_DISCRE_TURB= EULER_IMPLICIT % Time discretization (EULER_IMPLICIT) CFL_REDUCTION_TURB= 1.0 % Reduction factor of the CFL coefficient in the turbulence problem %  HEAT NUMERICAL METHOD DEFINITION % THERMAL_DIFFUSIVITY= 2.6583e05 % Value of the thermal diffusivity %  SCREEN/HISTORY VOLUME OUTPUT % SCREEN_OUTPUT= (INNER_ITER, WALL_TIME, RMS_DENSITY, RMS_ENERGY, AVG_CFL) % Screen output fields (use 'SU2_CFD d <config_file>' to view list of available fields) HISTORY_OUTPUT= (ITER, RMS_RES, CFL_NUMBER, NONPHYSICAL_POINTS) % History output groups (use 'SU2_CFD d <config_file>' to view list of available fields) VOLUME_OUTPUT= (COORDINATES, SOLUTION, PRIMITIVE) % Volume output fields/groups (use 'SU2_CFD d <config_file>' to view list of available fields) % Writing frequency for screen output SCREEN_WRT_FREQ_INNER= 1 SCREEN_WRT_FREQ_OUTER= 1 SCREEN_WRT_FREQ_TIME= 1 % Writing frequency for history output HISTORY_WRT_FREQ_INNER= 10000 HISTORY_WRT_FREQ_OUTER= 1 HISTORY_WRT_FREQ_TIME= 1 OUTPUT_WRT_FREQ= 10000 % Writing frequency for volume/surface output %  INPUT/OUTPUT FILE INFORMATION % MESH_FILENAME= iter_6.1.1_84k.su2 % Mesh input file MESH_FORMAT= SU2 % Mesh input file format (SU2, CGNS) MESH_OUT_FILENAME= mesh_out.su2 % Mesh output file SOLUTION_FILENAME= restart_flow.dat % Restart flow input file TABULAR_FORMAT= TECPLOT % Output tabular file format (TECPLOT, CSV) OUTPUT_FILES= (RESTART, TECPLOT, SURFACE_TECPLOT) % Files to output CONV_FILENAME= history % Output file convergence history (w/o extension) BREAKDOWN_FILENAME= forces_breakdown.dat % Output file with the forces breakdown RESTART_FILENAME= restart_flow.dat % Output file restart flow VOLUME_FILENAME= flow % Output file flow (w/o extension) variables SURFACE_FILENAME= surface_flow % Output file surface flow coefficient (w/o extension) READ_BINARY_RESTART= YES % Read binary restart files (YES, NO) REORIENT_ELEMENTS= YES % Reorient elements based on potential negative volumes 

April 22, 2020, 15:12 

#2 
Member
Zach Davis
Join Date: Jan 2010
Location: Huntsville, AL
Posts: 98
Rep Power: 13 
You need to specify a supersonic inflow boundary condition (i.e., fixed primitives) at the inlet. As given in your configuration file, the format should be (marker_name, temperature, pressure, u, v, w).
FGMRES should be your preferred linear solver with either the ILU or LU_SGS preconditioner. You're going to want to use something like the HLLC or AUSM convective schemes here, and you're also going to want to use a limiter. I prefer VAN_ALBADA_EDGE, but the devs have a preference for VENKATAKRISHNAN or VENKATAKRISHNAN_WANG, which does require that you have some idea of what the length scale is; though, the limiter coefficient values you have set are a good starting point. You can run it first order a few hundred iterations to get the flow setup, but eventually you're going to want to restart from the first order solution with MUSCL_FlOW = YES. I would turn off the CFL_ADAPT feature, and you can adjust the ENTROPY_FIX_COEFF higher if you're still struggling with getting a converged solution. You don't need 100 linear solver iterations. You should use something on the order of 5. Certainly less than 10. Also the linear solver error should probably be fine between 0.001 and 0.05 unless your grid has problems, which it doesn't sound like it does. 

April 22, 2020, 15:43 

#3 
Member
Zach Davis
Join Date: Jan 2010
Location: Huntsville, AL
Posts: 98
Rep Power: 13 
Also, I'm not familiar with how your grid is setup, but I don't think you can apply a symmetry patch and also run an axisymmetric simulation...


April 22, 2020, 15:48 

#4 
Member
Join Date: Dec 2019
Posts: 30
Rep Power: 3 
setting the axis to "symmetry" is how I have run axisymmetric simulations in the past. I have been able to run simulations with a configuration file similar to the one I uploaded. The only difference I know of is the geometry.


April 22, 2020, 17:04 

#5  
Member
Zach Davis
Join Date: Jan 2010
Location: Huntsville, AL
Posts: 98
Rep Power: 13 
Quote:
The farfield boundary condition you're using for your inflow is a Riemann nonreflecting boundary condition. Nowhere in your configuration file is the velocity vector prescribed. The correct inflow boundary condition setting here is a fixed inflow boundary condition (i.e., supersonic inlet marker type). You have also specified that you want to run a RANS simulation with SA turbulence model, but you're using an Euler wall boundary condition. If you want to run an inviscid solution, then you should specify EULER for the SOLVER and NONE for the KIND_TURB_MODEL. Your choices here are going to determine what the most appropriate convective scheme is to use. For example, the JST scheme isn't wellsuited for a RANS simulation for hypersonic flow. Machine 0 is typically 1E15 on most 64bit systems. I don't think you're ever going to see an RMS_DENSITY value of 1E20, so your simulation is setup to run out 500,000 steps isn't practical. An inviscid nozzle flow simulation should converge in under 5000 cycles with a CFL value between 15 and 25. 

April 22, 2020, 18:38 

#6 
Member
Join Date: Dec 2019
Posts: 30
Rep Power: 3 
This was only one of the iterations I tried running. I have tried Euler instead of RANS as well.
I do not look at the residuals to determine convergence. I use them as a good indicator of when the simulation starts to converge and check the variation in some flow parameter (Mach number along the axis in this case, skin friction coefficient in viscid cases) to determine convergence. I do not want the simulation to stop running when it reaches a specific residual value, which is why I have it set so low. I have a large number of iterations so I do not need to keep resubmitting the job. If I want to check for convergence, I usually cancel the job if it has not already reached the max number of iterations. I am trying implementing the suggestions you made, but no luck so far. 

April 22, 2020, 19:08 

#7 
Member
Zach Davis
Join Date: Jan 2010
Location: Huntsville, AL
Posts: 98
Rep Power: 13 
Well, if you can share the nozzle contour, or grid you're trying to run, then I can run the simulation for you and give you the config file that will run it appropriately. It's up to you.


April 23, 2020, 09:51 

#8 
Member
Join Date: Dec 2019
Posts: 30
Rep Power: 3 
I finally got a converged solution by using AUSM and changing the ENTROPY_FIX_COEFF to 1. I used this solution to initialize another run with the ENTROPY_FIX_COEFF at 0.8 and continued to ramp the value down until I reached 0.2.


Tags 
convergence, hypersonics, nozzle simulation 
Thread Tools  Search this Thread 
Display Modes  


Similar Threads  
Thread  Thread Starter  Forum  Replies  Last Post 
Inviscid simulation in rhoCentralFoam  chencw  OpenFOAM Running, Solving & CFD  0  April 13, 2018 15:49 
VOF SLOSHING SIMULATION ISSUE with inviscid  navi  CFX  7  February 27, 2017 05:52 
Inviscid flow Simulation in CFX  FAKHREDDINE  CFX  4  August 26, 2016 05:54 
Problems with an overexpanded nozzle simulation  nmtr  FLUENT  0  April 11, 2015 07:01 
Problems by starting Simulation with low y+  biro  CFX  8  November 24, 2014 16:43 