
[Sponsors] 
April 20, 2023, 15:25 
SU2 incompressible laminar flow

#1 
New Member
Join Date: Apr 2023
Posts: 2
Rep Power: 0 
Hello,
I'm working on a problem, where I need to simulate the laminar base flow around an object on a flat plate. In order to reduce computational time, I prescribe the already developed Blasiusprofile at the inlet. The rest of the boundary conditions are symmetries on the sides, 0 pressure outlets on the top and end of the domain, and noslip walls at the object and the flat plate. This worked while using CFX, but I would like to migrate the process to SU2, to avoid license issues on HPCs. As such, I tried creating a simple problem to test my .cfg file, which I based on the laminar backwardsfacing step example. This simple problem is a cube (without the roughness element inside), with the same BCs as listed above. But I ran into some problems, for which I would like to ask for some help. The first problem is, that although I prescribe symmetry markers at the sides, the velocity has a small z component, which should be zero, as it is normal to the symmetry plane. This can be seen on the picture named vel_z, the other side has the same velocity magnitude with opposite signs. The second problem is, the pressure field seems to behave in a wierd way as well. For example on the outlets, nonzero pressure can be observed (outlet_p.png). I tried plotting the imported inlet profiles, and found that a small amount of z component gets added to the inlet, even though my profile does not contain z components. The other two component, (x, y) are imported as intended. My guess is, that the prescribed boundary conditions seem to effect each other in a negative way, causing these anomalies, but have no idea how to fix it. My .cfg file: Code:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % % SU2 configuration file % % Case description: _________________________________________________________ % % Author: ___________________________________________________________________ % % Institution: ______________________________________________________________ % % Date: __________ % % File Version 7.5.1 "Blackbird" % % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %  DIRECT, ADJOINT, AND LINEARIZED PROBLEM DEFINITION % % % Solver type (EULER, NAVIER_STOKES, RANS, % INC_EULER, INC_NAVIER_STOKES, INC_RANS, % NEMO_EULER, NEMO_NAVIER_STOKES, % FEM_EULER, FEM_NAVIER_STOKES, FEM_RANS, FEM_LES, % HEAT_EQUATION_FVM, ELASTICITY) SOLVER= INC_NAVIER_STOKES % % Mathematical problem (DIRECT, CONTINUOUS_ADJOINT, DISCRETE_ADJOINT) % Defaults to DISCRETE_ADJOINT for the SU2_*_AD codes, and to DIRECT otherwise. MATH_PROBLEM= DIRECT % Restart solution (NO, YES) RESTART_SOL= NO % % System of measurements (SI, US) % International system of units (SI): ( meters, kilograms, Kelvins, % Newtons = kg m/s^2, Pascals = N/m^2, % Density = kg/m^3, Speed = m/s, % Equiv. Area = m^2 ) % United States customary units (US): ( inches, slug, Rankines, lbf = slug ft/s^2, % psf = lbf/ft^2, Density = slug/ft^3, % Speed = ft/s, Equiv. Area = ft^2 ) SYSTEM_MEASUREMENTS= SI % %  SOLVER CONTROL % % % Number of iterations for singlezone problems ITER= 1 % % Maximum number of inner iterations INNER_ITER= 9999 % % Convergence field CONV_FIELD= RMS_PRESSURE, RMS_VELOCITYX, RMS_VELOCITYY, RMS_VELOCITYZ % % Min value of the residual (log10 of the residual) CONV_RESIDUAL_MINVAL= 12 % % Start convergence criteria at iteration number CONV_STARTITER= 10 % % Number of elements to apply the criteria CONV_CAUCHY_ELEMS= 100 % % Epsilon to control the series convergence CONV_CAUCHY_EPS= 1E10 % %  INCOMPRESSIBLE FLOW CONDITION DEFINITION % % % Density model within the incompressible flow solver. % Options are CONSTANT (default), BOUSSINESQ, or VARIABLE. If VARIABLE, % an appropriate fluid model must be selected. INC_DENSITY_MODEL= CONSTANT % % Initial density for incompressible flows % (1.2886 kg/m^3 by default (air), 998.2 Kg/m^3 (water)) INC_DENSITY_INIT= 1.225 % % Initial velocity for incompressible flows (1.0,0,0 m/s by default) INC_VELOCITY_INIT= ( 6.0, 0.0174, 0.0 ) % % List of inlet types for incompressible flows. List length must % match number of inlet markers. Options: VELOCITY_INLET, PRESSURE_INLET. INC_INLET_TYPE= VELOCITY_INLET % % Damping coefficient for iterative updates at pressure inlets. (0.1 by default) INC_INLET_DAMPING= 0.1 % % Nondimensionalization scheme for incompressible flows. Options are % INITIAL_VALUES (default), REFERENCE_VALUES, or DIMENSIONAL. % INC_*_REF values are ignored unless REFERENCE_VALUES is chosen. INC_NONDIM= DIMENSIONAL % % List of outlet types for incompressible flows. List length must % match number of outlet markers. Options: PRESSURE_OUTLET, MASS_FLOW_OUTLET INC_OUTLET_TYPE= PRESSURE_OUTLET, PRESSURE_OUTLET % % Damping coefficient for iterative updates at mass flow outlets. (0.1 by default) INC_OUTLET_DAMPING= 0.1 % %  VISCOSITY MODEL % % % Viscosity model (SUTHERLAND, CONSTANT_VISCOSITY, POLYNOMIAL_VISCOSITY). VISCOSITY_MODEL= CONSTANT_VISCOSITY % % Molecular Viscosity that would be constant (1.716E5 by default) MU_CONSTANT= 0.00001789357 % %  BOUNDARY CONDITION DEFINITION % % % Symmetry boundary marker(s) (NONE = no marker) % Implementation identical to MARKER_EULER. %MVG két olalán MARKER_SYM= ( sym_l, sym_r ) % % 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 ) % % Internal boundary marker(s) e.g. no boundary condition (NONE = no marker) %MARKER_INTERNAL= ( NONE ) % % Inlet boundary type (TOTAL_CONDITIONS, MASS_FLOW) %INLET_TYPE= TOTAL_CONDITIONS % % Read inlet profile from a file (YES, NO) default: NO SPECIFIED_INLET_PROFILE= YES % % File specifying inlet profile INLET_FILENAME= blasius_prof.dat % % Inlet boundary marker(s) with the following formats (NONE = no marker) % Total Conditions: (inlet marker, total temp, total pressure, flow_direction_x, % flow_direction_y, flow_direction_z, ... ) where flow_direction is % a unit vector. % Mass Flow: (inlet marker, density, velocity magnitude, flow_direction_x, % flow_direction_y, flow_direction_z, ... ) where flow_direction is % a unit vector. % Inc. Velocity: (inlet marker, temperature, velocity magnitude, flow_direction_x, % flow_direction_y, flow_direction_z, ... ) where flow_direction is % a unit vector. % Inc. Pressure: (inlet marker, temperature, total pressure, flow_direction_x, % flow_direction_y, flow_direction_z, ... ) where flow_direction is % a unit vector. MARKER_INLET= ( inlet, 1.0, 1.0, 1.0, 1.0, 0.0 ) % % Outlet boundary marker(s) (NONE = no marker) % Compressible: ( outlet marker, back pressure (static thermodynamic), ... ) % Inc. Pressure: ( outlet marker, back pressure (static gauge in Pa), ... ) % Inc. Mass Flow: ( outlet marker, mass flow target (kg/s), ... ) MARKER_OUTLET= ( outlet_end, 0.0, outlet_top, 0.0 ) % %  SURFACES IDENTIFICATION % % % Marker(s) of the surface in the surface flow solution file, %IT can be exported to csv files MARKER_PLOTTING = ( outlet_end ) % % Marker(s) of the surface where the nondimensional coefficients are evaluated. MARKER_MONITORING = ( wall ) % %  COMMON PARAMETERS DEFINING THE NUMERICAL METHOD % % % Numerical method for spatial gradients (GREEN_GAUSS, WEIGHTED_LEAST_SQUARES) NUM_METHOD_GRAD= GREEN_GAUSS % % CFL number (initial value for the adaptive CFL number) CFL_NUMBER= 15.0 % % Adaptive CFL number (NO, YES) CFL_ADAPT= NO % % Parameters of the adaptive CFL number (factordown, factorup, CFL min value, CFL max value, acceptable linear solver convergence) % Local CFL increases by factorup until max if the solution rate of change is not limited, % and acceptable linear convergence is achieved. It is reduced if rate is limited, or if there % is not enough linear convergence, or if the nonlinear residuals are stagnant and oscillatory. % It is reset back to min when linear solvers diverge, or if nonlinear residuals increase too much. CFL_ADAPT_PARAM= ( 1.5, 0.5, 25.0, 10000.0 ) % % RungeKutta alpha coefficients RK_ALPHA_COEFF= ( 0.66667, 0.66667, 1.000000 ) % %  SLOPE LIMITER DEFINITION % % % Coefficient for the limiter VENKAT_LIMITER_COEFF= 0.05 % % Coefficient for the sharp edges limiter ADJ_SHARP_LIMITER_COEFF= 3.0 % % Reference coefficient (sensitivity) for detecting sharp edges. REF_SHARP_EDGES= 3.0 % % Remove sharp edges from the sensitivity evaluation (NO, YES) SENS_REMOVE_SHARP= NO % %  LINEAR SOLVER DEFINITION % % % Linear solver for implicit formulations (BCGSTAB, FGMRES) LINEAR_SOLVER= FGMRES % % Preconditioner of the Krylov linear solver (JACOBI, LINELET, LU_SGS) LINEAR_SOLVER_PREC= ILU % % Linael solver ILU preconditioner fillin level (0 by default) LINEAR_SOLVER_ILU_FILL_IN= 0 % % Minimum error of the linear solver for implicit formulations LINEAR_SOLVER_ERROR= 1E15 % % Max number of iterations of the linear solver for the implicit formulation LINEAR_SOLVER_ITER= 20 % %  FLOW NUMERICAL METHOD DEFINITION % % % Convective numerical method (JST, LAXFRIEDRICH, CUSP, ROE, AUSM, HLLC, % TURKEL_PREC, MSW) CONV_NUM_METHOD_FLOW= FDS % % Monotonic Upwind Scheme for Conservation Laws (TVD) in the flow equations. % Required for 2nd order upwind schemes (NO, YES) MUSCL_FLOW= YES % % Slope limiter (VENKATAKRISHNAN, MINMOD) SLOPE_LIMITER_FLOW= NONE % % 2nd and 4th order artificial dissipation coefficients JST_SENSOR_COEFF= ( 0.0, 0.02 ) % % Time discretization (RUNGEKUTTA_EXPLICIT, EULER_IMPLICIT, EULER_EXPLICIT) TIME_DISCRE_FLOW= EULER_IMPLICIT % %  INPUT/OUTPUT FILE INFORMATION % % % Mesh input file MESH_FILENAME= test_mesh.su2 % % Mesh input file format (SU2, CGNS) MESH_FORMAT= SU2 % % Mesh output file MESH_OUT_FILENAME= mesh_out.su2 % % Restart flow input file SOLUTION_FILENAME= solution_flow.dat % % Restart adjoint input file SOLUTION_ADJ_FILENAME= solution_adj.dat % % Output tabular file format (TECPLOT, CSV) TABULAR_FORMAT= CSV % % Files to output % Possible formats : (TECPLOT_ASCII, TECPLOT, SURFACE_TECPLOT_ASCII, % SURFACE_TECPLOT, CSV, SURFACE_CSV, PARAVIEW_ASCII, PARAVIEW_LEGACY, SURFACE_PARAVIEW_ASCII, % SURFACE_PARAVIEW_LEGACY, PARAVIEW, SURFACE_PARAVIEW, RESTART_ASCII, RESTART, CGNS, SURFACE_CGNS, STL_ASCII, STL_BINARY) % default : (RESTART, PARAVIEW, SURFACE_PARAVIEW) OUTPUT_FILES= (RESTART, PARAVIEW, CSV, SURFACE_CSV SURFACE_PARAVIEW) % % Output file convergence history (w/o extension) CONV_FILENAME= history % % Output file restart flow RESTART_FILENAME= restart_flow.dat % % Output file restart adjoint RESTART_ADJ_FILENAME= restart_adj.dat % % Output file flow (w/o extension) variables VOLUME_FILENAME= flow % % Output file adjoint (w/o extension) variables VOLUME_ADJ_FILENAME= adjoint % % Output file surface flow coefficient (w/o extension) SURFACE_FILENAME= surface_flow % % Output file surface adjoint coefficient (w/o extension) SURFACE_ADJ_FILENAME= surface_adjoint % %  SCREEN/HISTORY VOLUME OUTPUT % % % Screen output fields (use 'SU2_CFD d <config_file>' to view list of available fields) SCREEN_OUTPUT= (INNER_ITER, RMS_PRESSURE, RMS_VELOCITYX, RMS_VELOCITYY, RMS_VELOCITYZ) % % History output groups (use 'SU2_CFD d <config_file>' to view list of available fields) HISTORY_OUTPUT= (ITER, RMS_RES) % % Volume output fields/groups (use 'SU2_CFD d <config_file>' to view list of available fields) VOLUME_OUTPUT= (COORDINATES, SOLUTION) % % 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= 1 % HISTORY_WRT_FREQ_OUTER= 1 % HISTORY_WRT_FREQ_TIME= 1 % % list of writing frequencies corresponding to the list in OUTPUT_FILES OUTPUT_WRT_FREQ= 75, 75, 75 % % Output the performance summary to the console at the end of SU2_CFD WRT_PERFORMANCE= YES % % Overwrite or append iteration number to the restart files when saving WRT_RESTART_OVERWRITE= YES % % Overwrite or append iteration number to the surface files when saving WRT_SURFACE_OVERWRITE= YES % % Overwrite or append iteration number to the volume files when saving WRT_VOLUME_OVERWRITE= YES blasius_prof.dat test_mesh.su2 Any help would be appriciated. Thanks in advance! 

April 24, 2023, 05:34 

#2 
Senior Member
bigfoot
Join Date: Dec 2011
Location: Netherlands
Posts: 333
Rep Power: 15 
It is difficult to get a symmetry plane to act as a perfect mirror. What you see here is probably a limitation of the current implementation of the symmetry plane in the case that a single cell shares a symmetry, an inlet and a wall (the corner cell).
You might see some improvement when you make the cells lying on the wall smaller in the direction normal to the wall. 

April 25, 2023, 12:12 

#3  
New Member
Join Date: Apr 2023
Posts: 2
Rep Power: 0 
Quote:


April 30, 2023, 22:59 

#4 
Senior Member
Pedro Gomes
Join Date: Dec 2017
Posts: 458
Rep Power: 12 
You can try using translational periodicity instead of symmetry along the sides.
Having a part of the bottom wall as an inviscid wall should also help (so that the inlet doesn't hit the plate directly). 

Thread Tools  Search this Thread 
Display Modes  


Similar Threads  
Thread  Thread Starter  Forum  Replies  Last Post 
CFX Treatment of Laminar and Turbulent Flows  Jade M  CFX  18  September 15, 2022 07:08 
Will the results of steady state solver and transient solver be same?  carye  OpenFOAM Running, Solving & CFD  9  December 28, 2019 05:21 
3D Windturbine simulation in SU2  k.vimalakanthan  SU2  14  February 8, 2019 14:43 
High velocity in Laminar flow  Manojmech  FLUENT  0  November 3, 2016 04:37 
Incompressible laminar poiseuille flow  samarth  OpenFOAM Running, Solving & CFD  20  July 13, 2010 03:38 