CFD Online Logo CFD Online URL
Home > Forums > Software User Forums > SU2

pyAMG-SU2 - Freeze viscous layers for grid adaptation?

Register Blogs Members List Search Today's Posts Mark Forums Read

Like Tree1Likes
  • 1 Post By A.Roy

LinkBack Thread Tools Search this Thread Display Modes
Old   December 3, 2023, 20:50
Default pyAMG-SU2 - Freeze viscous layers for grid adaptation?
New Member
A Roy
Join Date: Sep 2022
Posts: 15
Rep Power: 3
A.Roy is on a distinguished road

I am using the feature_adap branch to make some preliminary grid adaptation runs on in-tunnel high-lift flows.
I am wondering if there is any config option to be able to freeze the viscous layers in some form so that adaptation is only carried out beyond that (perhaps so that only tris are adapted, and detected quads are left as-is or something?)

I see from Brian's commits to the feat_adap_dev branch that there is a script to split quads and / or output them to a file...but I can't seem to find if there's an option that allows to let those quads remain untouched (or unaware if that is a feature added to the dev branch) if anyone might know?

If the above isn't possible, is there any open-source (or perhaps academic available) software that allows for reading SU2 output mesh and re-inserting viscous layers?

Thank you!
Attached Images
File Type: jpg split_quad_commits.jpg (15.9 KB, 9 views)
File Type: jpg original_grid_viscous_layers.jpg (108.2 KB, 14 views)
File Type: jpg adapted_grid_viscous_layers_removed.jpg (193.3 KB, 12 views)
A.Roy is offline   Reply With Quote

Old   December 7, 2023, 12:48
New Member
A Roy
Join Date: Sep 2022
Posts: 15
Rep Power: 3
A.Roy is on a distinguished road

I was unable to find the option for frozen boundary layers (as shown in the 2018 presentation: pdf link), however, I used a slightly modified version of the split_quads script from the feat_adap_dev branch with the 7.0.3-feature_adap branch as mentioned to append an NCORNERS section to freeze those nodes (NCORNERS as shown in the 2020 presentation: pdf link).

Some notes from my implementation:
- The split_quads script has been rewritten to accept tris as input also (as opposed to a quad-only mesh), to output the tris and split the quads into new tris, and to output the vertices of the former quad elements into the NCORNERS section.

NOTE 1: This assumes that the inviscid "volume" (well, surface in 2D) mesh is composed of tris only as all quads are assumed to be part of the viscous layers.

NOTE 2: This is a strictly 2D script so far, as splitting hex and pyramid elements into tets requires quite a bit more effort since the corresponding quad surface elements must also be split. As a result, in the near future I am using ICEM to convert 3D hex and pyramid elements to tris and using the bottom portion of the script to output the vertices to NCORNERS. There appears to me to also be the some diminishing returns in 3D at least in terms of number of elements as each hex is split into 6 tet elements compared to each quad being split to 2 tris, significantly ballooning the initial element count.

NOTE 3: The script is written for su2 meshes with a tab character '\t' after the element identification (5 for tris, 9 for quads) as output by conversion from SU2_DEF; if this is applied on gmsh output su2 meshes, those use a space character ' ' instead. This would need some simple logic change / modification to flexible to both kinds of meshes; for consistency, I have been running all meshes through SU2_DEF before applying split_quads_2D.

- This implementation by using frozen corner nodes is not perfect as the amg algorithm still carries out some splits and merges in high gradient sections of the viscous layer (while generally respecting the frozen nodes) - resulting in some deterioration of the first off-wall node spacing.

The modified script I used and some images of the Mach-based adaption are attached.
Attached Images
File Type: jpg mach_based_adaptation.jpg (206.1 KB, 15 views)
File Type: jpg mach_based_detail.jpg (174.3 KB, 14 views)
Attached Files
File Type: txt (3.3 KB, 5 views)
giovanni.medici likes this.
A.Roy is offline   Reply With Quote


Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

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
[Salome] Viscous Layers 2D around corner johanesp OpenFOAM Meshing & Mesh Conversion 0 September 27, 2021 03:29
[Salome] Viscous layers with combined thickness greater than background mesh cell crashes MikeWorth OpenFOAM Meshing & Mesh Conversion 0 May 17, 2021 10:59
Salome Viscous Layers ancolli OpenFOAM Pre-Processing 8 March 16, 2021 03:56
Viscous layers in Salome 9.3.0 OskarT Main CFD Forum 0 September 10, 2019 10:49
Viscous Layers generating defaultFaces NoradFirst2 OpenFOAM Pre-Processing 4 June 21, 2018 05:49

All times are GMT -4. The time now is 13:27.