CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > SU2

SU2 vs CFX - comparison

Register Blogs Community New Posts Updated Threads Search

Like Tree2Likes
  • 1 Post By cristopher_morales
  • 1 Post By cristopher_morales

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   December 5, 2024, 06:47
Default SU2 vs CFX - comparison
  #1
Member
 
Giovanni Bettega
Join Date: Sep 2014
Posts: 34
Rep Power: 12
gbettega is on a distinguished road
Hello forum,
I did a run on a simple fluid domain with SU2:
Incompressible flow of air in a pipe with three bends.
I have the results of the same run (same BCs, "approximatly" same grid density), obtained with CFX.

I would like to known what are your opinion about the results,
most of all about TKE and Pressure distributions.

See the attached pdf file.
Regards
Giovanni
Attached Files
File Type: pdf SU2vsCFX.pdf (188.8 KB, 13 views)

Last edited by gbettega; December 5, 2024 at 09:31. Reason: typo
gbettega is offline   Reply With Quote

Old   December 5, 2024, 14:04
Default
  #2
Senior Member
 
bigfoot
Join Date: Dec 2011
Location: Netherlands
Posts: 676
Rep Power: 21
bigfootedrockmidget is on a distinguished road
It does not look like the setup is the same. The su2 case does not show flow separation in the bend like the cfx case, or the pipe bend tutorial. What is the Reynolds number supposed to be? Do you have an image of the cross section of the mesh? Do you have an inflation layer on the wall?
bigfootedrockmidget is offline   Reply With Quote

Old   December 5, 2024, 16:23
Default No separation vx CFX
  #3
Member
 
Giovanni Bettega
Join Date: Sep 2014
Posts: 34
Rep Power: 12
gbettega is on a distinguished road
Quote:
Originally Posted by bigfootedrockmidget View Post
It does not look like the setup is the same. The su2 case does not show flow separation in the bend like the cfx case, or the pipe bend tutorial. What is the Reynolds number supposed to be? Do you have an image of the cross section of the mesh? Do you have an inflation layer on the wall?
Thank you very much for your quick reply.
I attached a pdf file in which I show: the mesh used for SU2 (cross sectional views), the mesh used by CFX.

This time I => intentionally <= did not generate inflation layers in CFX and for the SU2 mesh.

In the file I also show the results of the same run, with CFX, BUT with a coarser mesh (much coarser, most of all at bends). Obviously the results are different with respect to the original CFX results (with the fine mesh), but again, a separation at bends is captured, and "qualitatively" the difference wrt Su2 results remains

I summarize the BCs for both the codes:

SST model for turbulence

Inlet: 1 m/s 0,05 turb intensity, 10.0 turbToLaminarRatio
Outlet: 0 Pa
Wall: standard wall functions for SU2, automatic wall treatment for CFX

Convergence level: RMS 10^-10 for SU2, <1e-6 RMS for CFX.

Since fluid is air, and pipe diameter 0.1 m Re ~ 1.2 x 0.1 x 1.0 / 1.7 x 10^-5 ~ 7000

Sorry for the quality of the pdf, only for staying within the file size limit
Regards
Giovanni
Attached Files
File Type: pdf SU2vsCFX_meshDetails.pdf (143.9 KB, 5 views)

Last edited by gbettega; December 6, 2024 at 03:06. Reason: typo errors
gbettega is offline   Reply With Quote

Old   December 6, 2024, 03:28
Default
  #4
New Member
 
Join Date: Feb 2022
Posts: 23
Rep Power: 5
cristopher_morales is on a distinguished road
Quote:
Originally Posted by gbettega View Post
Thank you very much for your quick reply.
I attached a pdf file in which I show: the mesh used for SU2 (cross sectional views), the mesh used by CFX.

This time I => intentionally <= did not generate inflation layers in CFX and for the SU2 mesh.

In the file I also show the results of the same run, with CFX, BUT with a coarser mesh (much coarser, most of all at bends). Obviously the results are different with respect to the original CFX results (with the fine mesh), but again, a separation at bends is captured, and "qualitatively" the difference wrt Su2 results remains

I summarize the BCs for both the codes:

SST model for turbulence

Inlet: 1 m/s 0,05 turb intensity, 10.0 turbToLaminarRatio
Outlet: 0 Pa
Wall: standard wall functions for SU2, automatic wall treatment for CFX

Convergence level: RMS 10^-10 for SU2, <1e-6 RMS for CFX.

Since fluid is air, and pipe diameter 0.1 m Re ~ 1.2 x 0.1 x 1.0 / 1.7 x 10^-5 ~ 7000

Sorry for the quality of the pdf, only for staying within the file size limit
Regards
Giovanni
Dear Giovanni,

Thanks for your questions, I have some question, I saw that you wrote in the pdf beta=4.1(default value), which beta do you mean?
also, which first order upwind for are you using in SU2? FDS or JST? Are you using bounded scalar as a convective scheme for SST? Which SST model are you using? V1994m or V2003m?

Best regards,

Cristopher Morales
gbettega likes this.
cristopher_morales is offline   Reply With Quote

Old   December 6, 2024, 03:37
Default
  #5
Member
 
Giovanni Bettega
Join Date: Sep 2014
Posts: 34
Rep Power: 12
gbettega is on a distinguished road
Quote:
Originally Posted by cristopher_morales View Post
Dear Giovanni,

Thanks for your questions, I have some question, I saw that you wrote in the pdf beta=4.1(default value), which beta do you mean?
also, which first order upwind for are you using in SU2? FDS or JST? Are you using bounded scalar as a convective scheme for SST? Which SST model are you using? V1994m or V2003m?

Best regards,

Cristopher Morales
Hello Cristopher,
thank you very much for reading my post.
Beta for artificial compressibility is written and left unchanged wrt default value.
No bounded scalar correction used

[...]
KIND_TURB_MODEL= SST
SST_OPTIONS= V2003m

[...]
CONV_NUM_METHOD_FLOW= FDS
MUSCL_FLOW= NO

[...]
BETA_FACTOR= 4.1

Regards
Giovanni

Last edited by gbettega; December 6, 2024 at 03:52. Reason: typo
gbettega is offline   Reply With Quote

Old   December 6, 2024, 04:02
Default
  #6
Senior Member
 
bigfoot
Join Date: Dec 2011
Location: Netherlands
Posts: 676
Rep Power: 21
bigfootedrockmidget is on a distinguished road
Do you have the mesh and the .cfg file available? To me it looks like the Reynolds number in SU2 is much lower because of the lack of flow separation, so I think there is a setting wrong.
bigfootedrockmidget is offline   Reply With Quote

Old   December 6, 2024, 06:24
Default input file
  #7
Member
 
Giovanni Bettega
Join Date: Sep 2014
Posts: 34
Rep Power: 12
gbettega is on a distinguished road
Quote:
Originally Posted by bigfootedrockmidget View Post
Do you have the mesh and the .cfg file available? To me it looks like the Reynolds number in SU2 is much lower because of the lack of flow separation, so I think there is a setting wrong.
Thank you for your answer. I'm sorry for being late, but regularly I cannot access CFDonline starting from 9:30. Can't undestand why

I copy here a .cfg file, suitable for this grids:

coarse: https://drive.google.com/file/d/10q4...usp=drive_link

medium: https://drive.google.com/file/d/1gmJ...ew?usp=sharing

fine: https://drive.google.com/file/d/1K2i...usp=drive_link

just obviously remove the final part _<...> indicating the fineness level.

Regards
Giovanni




% -----------------------------------------------------------
% Su2 configuration file
% Date: 2024/12/06 Time: 11:22:28
% Fluid analysis 20241205110134687
% -----------------------------------------------------------
% -------------------
% Problem definition
% -------------------
MATH_PROBLEM= DIRECT
TIME_DOMAIN= NO
ITER= 250
% ------------------------------------------
% Incompressible flow conditions definition
% ------------------------------------------
THERMODYNAMIC_PRESSURE= 101325
INC_DENSITY_MODEL= CONSTANT
INC_ENERGY_EQUATION= NO
% ----------------
% Viscosity model
% ----------------
VISCOSITY_MODEL= CONSTANT_VISCOSITY
MU_CONSTANT= 1.716e-05
% -----------------------
% Initialization options
% -----------------------
INC_DENSITY_INIT= 1.204
INC_VELOCITY_INIT= ( 1e-06, 1e-06, 1e-06 )
INC_TEMPERATURE_INIT= 288.15
INC_NONDIM= DIMENSIONAL
% ----------------------
% Body force definition
% ----------------------
BODY_FORCE= NO
BODY_FORCE_VECTOR= ( 0, 0, 0 )
% ------------
% Flow regime
% ------------
SOLVER= INC_RANS
KIND_TURB_MODEL= SST
SST_OPTIONS= V2003m
% ----------------------------
% Boundary conditions: inlets
% ----------------------------
MARKER_INLET= ( INLET_15250943004087258967, 0.000000, 1.000000, 1.000000, 0.000000, 0.000000 )
INC_INLET_TYPE= ( VELOCITY_INLET )
INC_INLET_DAMPING= 0.1
MARKER_INLET_TURBULENT= ( INLET_15250943004087258967, 0.050000, 10.000000 )
% -----------------------------
% Boundary conditions: outlets
% -----------------------------
MARKER_OUTLET= ( OUTLET_14173383059767514934, 0.000000 )
INC_OUTLET_TYPE= ( PRESSURE_OUTLET )
INC_OUTLET_DAMPING= 0.1
% ---------------------------
% Boundary conditions: walls
% ---------------------------
MARKER_HEATFLUX= ( WALL_7062369534381839284, 0.000000 )
MARKER_WALL_FUNCTIONS= ( WALL_7062369534381839284, STANDARD_WALL_FUNCTION )
% -------------------------------------
% Expert parameters for wall functions
% -------------------------------------
WALLMODEL_KAPPA= 0.410
WALLMODEL_B= 5.5
WALLMODEL_MINYPLUS= 5
WALLMODEL_MAXITER= 200
WALLMODEL_RELFAC= 0.5
BULK_MODULUS= 142000
BETA_FACTOR= 4.1
% -------------------------
% Linear solver definition
% -------------------------
LINEAR_SOLVER= FGMRES
LINEAR_SOLVER_PREC= LU_SGS
LINEAR_SOLVER_ERROR= 0.0001
LINEAR_SOLVER_ITER= 50
% ----------------------------
% Numerical method definition
% ----------------------------
CONV_NUM_METHOD_FLOW= FDS
MUSCL_FLOW= NO
SLOPE_LIMITER_FLOW= NONE
TIME_DISCRE_FLOW= EULER_IMPLICIT
CFL_NUMBER= 10
CFL_ADAPT= NO
NUM_METHOD_GRAD= WEIGHTED_LEAST_SQUARES
% ----------
% Multigrid
% ----------
MGLEVEL= 3
MGCYCLE= V_CYCLE
MG_PRE_SMOOTH= ( 1, 2, 3, 3 )
MG_POST_SMOOTH= ( 0, 0, 0, 0 )
MG_CORRECTION_SMOOTH= ( 0.000000, 0.000000, 0.000000, 0.000000 )
MG_DAMP_RESTRICTION= 0.75
MG_DAMP_PROLONGATION= 0.75
% --------------------------------------
% Turbulent numerical method definition
% --------------------------------------
CONV_NUM_METHOD_TURB= SCALAR_UPWIND
MUSCL_TURB= NO
SLOPE_LIMITER_TURB= NONE
TIME_DISCRE_TURB= EULER_IMPLICIT
CFL_REDUCTION_TURB= 1
% ------------------------
% Transitional turbulence
% ------------------------
KIND_TRANS_MODEL= NONE
% -----------------------
% Convergence parameters
% -----------------------
CONV_RESIDUAL_MINVAL= -10
CONV_FIELD= RMS_PRESSURE, RMS_VELOCITY-X, RMS_VELOCITY-Y, RMS_VELOCITY-Z, RMS_TEMPERATURE, RMS_TKE, RMS_DISSIPATION
WINDOW_CAUCHY_CRIT= NO
INNER_ITER= 250
CONV_STARTITER= 10
% -------------------------
% Input/Output information
% -------------------------
MESH_FILENAME= 'C:/ProgramData/WB/Wgeom_files/CFD_RES/20241205110134687/Su2_20241205110134687.su2'
MESH_FORMAT= SU2
CONV_FILENAME= 'C:/ProgramData/WB/Wgeom_files/CFD_RES/20241205110134687/convergence_history'
VOLUME_FILENAME= 'C:/ProgramData/WB/Wgeom_files/CFD_RES/20241205110134687/results_flow'
OUTPUT_FILES= RESTART, TECPLOT_ASCII
RESTART_FILENAME= 'C:/ProgramData/WB/Wgeom_files/CFD_RES/20241205110134687/restart_flow'
WRT_RESTART_OVERWRITE= YES
RESTART_SOL= NO
SCREEN_OUTPUT= ( TIME_ITER, INNER_ITER, RMS_PRESSURE, RMS_VELOCITY-X, RMS_VELOCITY-Y, RMS_VELOCITY-Z, RMS_TKE, RMS_DISSIPATION, LINSOL_ITER, LINSOL_RESIDUAL, LINSOL_ITER_TURB, LINSOL_RESIDUAL_TURB )
HISTORY_OUTPUT = ( TIME_ITER, INNER_ITER, RMS_PRESSURE, RMS_VELOCITY-X, RMS_VELOCITY-Y, RMS_VELOCITY-Z, RMS_TKE, RMS_DISSIPATION )
WRT_VOLUME_OVERWRITE= YES
COMM_LEVEL= MINIMAL
gbettega is offline   Reply With Quote

Old   December 6, 2024, 06:41
Default
  #8
New Member
 
Join Date: Feb 2022
Posts: 23
Rep Power: 5
cristopher_morales is on a distinguished road
Quote:
Originally Posted by gbettega View Post
Thank you for your answer. I'm sorry for being late, but regularly I cannot access CFDonline starting from 9:30. Can't undestand why

I copy here a .cfg file, suitable for this grids:

coarse: https://drive.google.com/file/d/10q4...usp=drive_link

medium: https://drive.google.com/file/d/1gmJ...ew?usp=sharing

fine: https://drive.google.com/file/d/1K2i...usp=drive_link

just obviously remove the final part _<...> indicating the fineness level.

Regards
Giovanni




% -----------------------------------------------------------
% Su2 configuration file
% Date: 2024/12/06 Time: 11:22:28
% Fluid analysis 20241205110134687
% -----------------------------------------------------------
% -------------------
% Problem definition
% -------------------
MATH_PROBLEM= DIRECT
TIME_DOMAIN= NO
ITER= 250
% ------------------------------------------
% Incompressible flow conditions definition
% ------------------------------------------
THERMODYNAMIC_PRESSURE= 101325
INC_DENSITY_MODEL= CONSTANT
INC_ENERGY_EQUATION= NO
% ----------------
% Viscosity model
% ----------------
VISCOSITY_MODEL= CONSTANT_VISCOSITY
MU_CONSTANT= 1.716e-05
% -----------------------
% Initialization options
% -----------------------
INC_DENSITY_INIT= 1.204
INC_VELOCITY_INIT= ( 1e-06, 1e-06, 1e-06 )
INC_TEMPERATURE_INIT= 288.15
INC_NONDIM= DIMENSIONAL
% ----------------------
% Body force definition
% ----------------------
BODY_FORCE= NO
BODY_FORCE_VECTOR= ( 0, 0, 0 )
% ------------
% Flow regime
% ------------
SOLVER= INC_RANS
KIND_TURB_MODEL= SST
SST_OPTIONS= V2003m
% ----------------------------
% Boundary conditions: inlets
% ----------------------------
MARKER_INLET= ( INLET_15250943004087258967, 0.000000, 1.000000, 1.000000, 0.000000, 0.000000 )
INC_INLET_TYPE= ( VELOCITY_INLET )
INC_INLET_DAMPING= 0.1
MARKER_INLET_TURBULENT= ( INLET_15250943004087258967, 0.050000, 10.000000 )
% -----------------------------
% Boundary conditions: outlets
% -----------------------------
MARKER_OUTLET= ( OUTLET_14173383059767514934, 0.000000 )
INC_OUTLET_TYPE= ( PRESSURE_OUTLET )
INC_OUTLET_DAMPING= 0.1
% ---------------------------
% Boundary conditions: walls
% ---------------------------
MARKER_HEATFLUX= ( WALL_7062369534381839284, 0.000000 )
MARKER_WALL_FUNCTIONS= ( WALL_7062369534381839284, STANDARD_WALL_FUNCTION )
% -------------------------------------
% Expert parameters for wall functions
% -------------------------------------
WALLMODEL_KAPPA= 0.410
WALLMODEL_B= 5.5
WALLMODEL_MINYPLUS= 5
WALLMODEL_MAXITER= 200
WALLMODEL_RELFAC= 0.5
BULK_MODULUS= 142000
BETA_FACTOR= 4.1
% -------------------------
% Linear solver definition
% -------------------------
LINEAR_SOLVER= FGMRES
LINEAR_SOLVER_PREC= LU_SGS
LINEAR_SOLVER_ERROR= 0.0001
LINEAR_SOLVER_ITER= 50
% ----------------------------
% Numerical method definition
% ----------------------------
CONV_NUM_METHOD_FLOW= FDS
MUSCL_FLOW= NO
SLOPE_LIMITER_FLOW= NONE
TIME_DISCRE_FLOW= EULER_IMPLICIT
CFL_NUMBER= 10
CFL_ADAPT= NO
NUM_METHOD_GRAD= WEIGHTED_LEAST_SQUARES
% ----------
% Multigrid
% ----------
MGLEVEL= 3
MGCYCLE= V_CYCLE
MG_PRE_SMOOTH= ( 1, 2, 3, 3 )
MG_POST_SMOOTH= ( 0, 0, 0, 0 )
MG_CORRECTION_SMOOTH= ( 0.000000, 0.000000, 0.000000, 0.000000 )
MG_DAMP_RESTRICTION= 0.75
MG_DAMP_PROLONGATION= 0.75
% --------------------------------------
% Turbulent numerical method definition
% --------------------------------------
CONV_NUM_METHOD_TURB= SCALAR_UPWIND
MUSCL_TURB= NO
SLOPE_LIMITER_TURB= NONE
TIME_DISCRE_TURB= EULER_IMPLICIT
CFL_REDUCTION_TURB= 1
% ------------------------
% Transitional turbulence
% ------------------------
KIND_TRANS_MODEL= NONE
% -----------------------
% Convergence parameters
% -----------------------
CONV_RESIDUAL_MINVAL= -10
CONV_FIELD= RMS_PRESSURE, RMS_VELOCITY-X, RMS_VELOCITY-Y, RMS_VELOCITY-Z, RMS_TEMPERATURE, RMS_TKE, RMS_DISSIPATION
WINDOW_CAUCHY_CRIT= NO
INNER_ITER= 250
CONV_STARTITER= 10
% -------------------------
% Input/Output information
% -------------------------
MESH_FILENAME= 'C:/ProgramData/WB/Wgeom_files/CFD_RES/20241205110134687/Su2_20241205110134687.su2'
MESH_FORMAT= SU2
CONV_FILENAME= 'C:/ProgramData/WB/Wgeom_files/CFD_RES/20241205110134687/convergence_history'
VOLUME_FILENAME= 'C:/ProgramData/WB/Wgeom_files/CFD_RES/20241205110134687/results_flow'
OUTPUT_FILES= RESTART, TECPLOT_ASCII
RESTART_FILENAME= 'C:/ProgramData/WB/Wgeom_files/CFD_RES/20241205110134687/restart_flow'
WRT_RESTART_OVERWRITE= YES
RESTART_SOL= NO
SCREEN_OUTPUT= ( TIME_ITER, INNER_ITER, RMS_PRESSURE, RMS_VELOCITY-X, RMS_VELOCITY-Y, RMS_VELOCITY-Z, RMS_TKE, RMS_DISSIPATION, LINSOL_ITER, LINSOL_RESIDUAL, LINSOL_ITER_TURB, LINSOL_RESIDUAL_TURB )
HISTORY_OUTPUT = ( TIME_ITER, INNER_ITER, RMS_PRESSURE, RMS_VELOCITY-X, RMS_VELOCITY-Y, RMS_VELOCITY-Z, RMS_TKE, RMS_DISSIPATION )
WRT_VOLUME_OVERWRITE= YES
COMM_LEVEL= MINIMAL
Dear Giovanni,

thanks for sharing your cfg.file,
What temperature are you imposing at the inlet? it is 288.15? I cannot see it in your cfg file
also, why do you initialie the velocity using these values INC_VELOCITY_INIT= ( 1e-06, 1e-06, 1e-06 )?
best regards,

Cristopher Morales
gbettega likes this.
cristopher_morales is offline   Reply With Quote

Old   December 6, 2024, 06:42
Arrow
  #9
Member
 
Giovanni Bettega
Join Date: Sep 2014
Posts: 34
Rep Power: 12
gbettega is on a distinguished road
Number of iterations has to be changed according tò the mesh size.
Beta factor is not in the correct group:
it has been added for testing purposes

Last edited by gbettega; December 6, 2024 at 07:02. Reason: Typo
gbettega is offline   Reply With Quote

Old   December 6, 2024, 06:45
Default
  #10
Member
 
Giovanni Bettega
Join Date: Sep 2014
Posts: 34
Rep Power: 12
gbettega is on a distinguished road
Hi
Energy eq Is not active, so temperature Is only a placeholder. In this case the Value at inlet does not enter the calculation. Values 1e-6 are initialization for velocity components. Other can be used.
Thanks
Giovanni

Last edited by gbettega; December 6, 2024 at 07:16. Reason: imprecisione
gbettega is offline   Reply With Quote

Old   December 6, 2024, 07:56
Default
  #11
New Member
 
Join Date: Feb 2022
Posts: 23
Rep Power: 5
cristopher_morales is on a distinguished road
Quote:
Originally Posted by gbettega View Post
Hi
Energy eq Is not active, so temperature Is only a placeholder. In this case the Value at inlet does not enter the calculation. Values 1e-6 are initialization for velocity components. Other can be used.
Thanks
Giovanni
Thanks for your reply,

from my own experience as a SU2 user, I would use less linear iterations

% -------------------------
% Linear solver definition
% -------------------------
LINEAR_SOLVER= FGMRES
LINEAR_SOLVER_PREC= LU_SGS
LINEAR_SOLVER_ERROR= 0.0001
LINEAR_SOLVER_ITER= 10

Increase the number of iterations (1000 or more):

ITER= 2000

Also, I would initialize the velocity as the same velocity of your inlet.

INC_VELOCITY_INIT= ( 1.00, 0.0, 0.0 )

regarding turbulent model, I would use bounded scalar:

% Turbulent numerical method definition
% --------------------------------------
CONV_NUM_METHOD_TURB= BOUNDED_SCALAR

although you are not solving the energy equation, to avoid possible inconsistencies within the solver, I would provide at the inlet the same value of the temperature that you are using as INC_INIT_TEMP=288.15:
% Boundary conditions: inlets
% ----------------------------
MARKER_INLET= ( INLET_15250943004087258967, 288.15, 1.000000, 1.000000, 0.000000, 0.000000 )
INC_INLET_TYPE= ( VELOCITY_INLET )

I hope this helps.

Best regards,

Cristopher Morales Ubal
cristopher_morales is offline   Reply With Quote

Old   December 6, 2024, 09:46
Default SU2 vs CFX - la saga continua
  #12
Member
 
Giovanni Bettega
Join Date: Sep 2014
Posts: 34
Rep Power: 12
gbettega is on a distinguished road
Thank you for your observations

Actually I choosed an "S" shaped domain =>also<= for avoiding that the user could initialize the field using unique and meaningful values of the velocity components: indeed here the flows enters the domain along the positive x direction, and exits along the negative x direction, so setting an initial velocity x-component as a single value is certainly possible, but it is very "far" from the solution that will be found.
By the way, the solution is iterative, and it => ideally <= an unique one will be found, independently on the initial conditions set at the beginning of the iterative process: I would like to stress the point => in absence of bifurcations <=. But fortunately here I think it is not the case.
I attach the flow result obtained with the settings you suggest.
As you can see, another time there no separation is observed, and the solution is qualitatively the same as the previous, quite different wrt the CFX solution.

As final notes:

(1) The solution could be not perfectly converged after 250, or 1000, or more iterations, but also at these "intermediate" convergence levels one should have indications of the flow separation. So 2000 iterations is quite correct, but here, only for observing the development of a flow separation, 250/500 iterations could be enough. Incidentally consider that CFX reached RMS < 10^-6 in less than 100 iterations (perhaps has internally a "tuned" multigrid for doing that)

(2) If one sets

LINEAR_SOLVER_ERROR= 0.0001
LINEAR_SOLVER_ITER= 50

the linear solver works (continues iterating) until it has reached the limit 0.0001: could be for less or much less than 50 iterations.
In this case, for example the 0.0001 level is reached both for flow and both for turbulence in 3 - 5 iterations. So, setting LINEAR_SOLVER_ITER= 50, does not affect the solution time: it only gives the iterative solver the possibility to work up to 50 iterations. The convergence limit 10^-4 in an interative context as an important role, but it could be lowered, because of the preconditioning stage.

************************************************** **********
I realize, and I apologize, that what I wrote simply de-focus from the initial question: how, with the same turbulence model, boundary conditions, the SU2 and CFX solutions are so different?
1 m/s at inlet, 0.05 turbulence intentisity, 10.0 turbtolaminarRatio
0 Pa at outlet
no slip wall with standard wall functions (SU2) and automatic wall treatment (CFX)
************************************************** **********
I'm not discussing about correctness of a solution wrt another: after all I do not have at home such a pipe and instrumentation for doing the experiment, and I do not want to have it, so it could be the CFX solution not correct, and "deviate" from the SU2 one.
I do not expect exactly the same distributions, with the same max and min and average, but I expect, for the same modeling, qualitatively similar results. I suspect that the differences I'm observing depend on me.
Thank you

Giovanni
Attached Files
File Type: pdf SU2vsCFX_suggestedSettings.pdf (98.8 KB, 6 views)

Last edited by gbettega; December 8, 2024 at 18:27. Reason: espressioni esagerate and typo
gbettega is offline   Reply With Quote

Old   December 11, 2024, 06:29
Default
  #13
Member
 
Giovanni Bettega
Join Date: Sep 2014
Posts: 34
Rep Power: 12
gbettega is on a distinguished road
Hello,
absolutely not able to remove the inconsistency between the two codes.
Tryed SU2 V2003m, V1994m, but the inconsistency remains.
In attachment last run: TKE using V1994m.
Any idea?
Did someone of you perform this kind of comparison? V&V contains
only one case, in 2D, and nothing else...
Thank you
Giovanni
Attached Images
File Type: jpg v1994m.jpg (80.0 KB, 9 views)

Last edited by gbettega; December 11, 2024 at 06:44. Reason: typo, and an additional question
gbettega is offline   Reply With Quote

Old   December 11, 2024, 18:57
Default
  #14
Senior Member
 
bigfoot
Join Date: Dec 2011
Location: Netherlands
Posts: 676
Rep Power: 21
bigfootedrockmidget is on a distinguished road
Quote:
Originally Posted by gbettega View Post
(1) The solution could be not perfectly converged
Giovanni
That's the problem. You cannot draw any conclusions based on intermediate results. Also do not expect to see any 'expected' flow behavior in 'partially converged' results.

The reason that the solution does not converge well is because the mesh is really bad and quite coarse. The fine mesh is about the minimum that I'd use. Next to the mesh size, you should also use inflation layers on the wall. Without inflation layers your skin friction, pressure drop, tke, will all be wrong. They will also be wrong in CFX. When comparing the two codes with each other you should not only make sure that they are numerically converged, but also converged in the sense that your results are mesh-independent.

For this mesh, it is relatively easy to create a high quality structured mesh using gmsh (check the tutorial of the 90 degree bend for instance). Create a good mesh on the inlet face, including inflation layers, and then extrude the mesh to create the triple bend.

CFX has been around since the 1980's and was commercialized by the end of the 1980's. Commercial codes try very hard to give you a solution, at the expense of accuracy.



bigfootedrockmidget is offline   Reply With Quote

Old   December 12, 2024, 02:55
Default
  #15
Senior Member
 
bigfoot
Join Date: Dec 2011
Location: Netherlands
Posts: 676
Rep Power: 21
bigfootedrockmidget is on a distinguished road
You can increase the accuracy of the solution by either making a finer/better mesh or by using a higher order scheme. Usually higher order schemes lead to more stability issues, but for this case, it is perfectly fine to switch on the MUSCL scheme.


The multigrid method in SU2 is quite basic, so if anything goes wrong regarding convergence, I would first switch this off. Actually, for this setup it's fine, I just added the prolongation/correction smoothing steps
Code:
MUSCL_FLOW= YES
CFL_NUMBER= 25MG_POST_SMOOTH= ( 1, 1, 1, 1 )
MG_CORRECTION_SMOOTH= ( 1, 1, 1, 1)
bigfootedrockmidget is offline   Reply With Quote

Old   December 13, 2024, 06:07
Default
  #16
Member
 
Giovanni Bettega
Join Date: Sep 2014
Posts: 34
Rep Power: 12
gbettega is on a distinguished road
Thank you for reading my considerations: sorry for reading yours now.

Actually, I do not want to draw any conclusion based on intermediate result: indeed the results I posted are all "officially" well converged: RMS = -10 for SU2, and RMS < -7 for CFX (incidentally, for this case this corresponds to 10^-4 for inbalances).
I would like to say, and that, in case of a steady state run, in a simple domain, if that run converges up to R = -10, in say N = 10000 iterations, when you check intermediate results at N = 5000 (obviously not at N = 50...), and residuals are "low enough" (even if not perfectly at -10) a clear trend in "under construction" results, can "often" be identified. If you know in advance that a flow separation has to realize and you do not see it at one half of the simulation, it is advisable to press stop and take a meditation coffeee.

Also my problem was not that my simulations did not converge well, indeed they converge, up to R = -10, and fortunately for all the meshes. It's clear then even if numerically converged, a solution could - also strongly - deviate from what actually happens in the real world, most of all when discretization is bad ("bad" representation is established on the basis of the underlying physics)

The same considerations apply to CFX runs on the same fluid domain, with approximately the same grid density, with or without prismatic layers at walls: they always converge up to RMS = -7
What I would like to say is that in CFX, I you start with 50000 cells (obviously not 1000...), and go up to 10^6 or 2x10^6 cells (and more, even if in that case resolving very small scales could be a problem...), results are "qualitatively" very very similar: three distinct regions of flow separations are evidenced, and pressure, velocity fields - obviously less for TKE - can be overlapped (also in min/max ranges and ave value sense).

I will post this results, for 3/4 CFX runs, and also for SU2, for which the "stability of results wrt mesh density seems to be weak.

Let me the time to add to my mesher the boundary layer generation tool: I could indefinely refine mesh close to wall using tets, and this would be ok, but I would like to compare bananas with bananas, so CFX hydrid meshes at wall with SU2 hybrid meshes at wall; and tet at the interior.
In my knowlegde, gmsh (not known by me the end of the Hextreme mesh project, and after all my gmsh usage is very poor) cannot do it: only unstructured tet meshes, or structured ones, like yours in the tutorial, by block, with geometry subdivision, which is absolutely not flexible (I mean,"fast")

I would like to thank you again for your observations.
Giovanni

Last edited by gbettega; December 14, 2024 at 03:48.
gbettega is offline   Reply With Quote

Old   Yesterday, 02:42
Default additional observation - mesh layers at walls
  #17
Member
 
Giovanni Bettega
Join Date: Sep 2014
Posts: 34
Rep Power: 12
gbettega is on a distinguished road
Quote:
Originally Posted by bigfootedrockmidget View Post
That's the problem. You cannot draw any conclusions based on intermediate results. Also do not expect to see any 'expected' flow behavior in 'partially converged' results.

The reason that the solution does not converge well is because the mesh is really bad and quite coarse. The fine mesh is about the minimum that I'd use. Next to the mesh size, you should also use inflation layers on the wall. Without inflation layers your skin friction, pressure drop, tke, will all be wrong. They will also be wrong in CFX. When comparing the two codes with each other you should not only make sure that they are numerically converged, but also converged in the sense that your results are mesh-independent.

For this mesh, it is relatively easy to create a high quality structured mesh using gmsh (check the tutorial of the 90 degree bend for instance). Create a good mesh on the inlet face, including inflation layers, and then extrude the mesh to create the triple bend.

CFX has been around since the 1980's and was commercialized by the end of the 1980's. Commercial codes try very hard to give you a solution, at the expense of accuracy.




Hello,
just added a prismatic layer generation tool to my mesh engine: not an extruded mesh, like in gmsh, but prisms inflation at walls (with a small number of tetrahedra, and some pyramids), so the mesh used for SU2 and the CFX are hybrid, and a results comparison has more sense.
I would like to stress the fact that in SU2 a very different behavior is observed when inflation (I generater 6/8 layers for testing purposes) are introduced, wrt to the case in which mesh density is similar but layer not present. In CFX, but very generally speaking, flow separation is observed also when prismatic layers are not used.
Finally, using layers at walls, here very important, SU2 results matches CFX ones (qualitatively I mean).
I attached some pics of one of SU2 meshes with inflation, a CFX result with a coarse mesh, intentionally without inflation, an a link to a results summary comparying three runs.
Giovanni


https://drive.google.com/file/d/1_bN...usp=drive_link
Attached Images
File Type: png mesh00.PNG (119.2 KB, 3 views)
File Type: png mesh01.png (63.3 KB, 4 views)
File Type: png mesh02.png (23.9 KB, 5 views)
File Type: jpg CFX_results_fullyTetrahedralMesh.jpg (171.4 KB, 4 views)

Last edited by gbettega; Today at 10:28.
gbettega is offline   Reply With Quote

Reply

Tags
comparison, incompressible solver


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Tutorials not working abby10 SU2 Installation 1 December 28, 2021 07:35
Welcome to the Stanford University Unstructured (SU2) forum! economon SU2 0 January 7, 2013 03:48
comparison with analytical results (1D)and(3D) CFX Rogerio Fernandes Brito FLUENT 1 December 2, 2012 07:12
Pros and Cons for CFX, CFdesign, COMSOL Val Main CFD Forum 3 June 10, 2011 03:20
CFX 4.4 installation problem Pandu Sattvika CFX 1 December 1, 2001 05:07


All times are GMT -4. The time now is 14:56.