|
[Sponsors] |
January 26, 2015, 23:04 |
Problem with dynamic mesh (EXTERNAL - 3D)
|
#1 |
New Member
Frederik
Join Date: Apr 2010
Posts: 18
Rep Power: 16 |
Hi everyone,
I’m currently trying to simulate a pitching airfoil attached to a fixed body. As SU2 does not support non-conformal interfaces, the only option available within the existing SU2 code is to use the external kind of grid movement (can't use rigid motion, rotating frames or moving walls). Unfortunately, I’m having trouble with the external mesh motion type, especially in 3D: the mesh smoother keeps diverging (?), even with very small changes in the pitch angle (0.05 degrees crashes the solver). I actually get negative volume cells even if my original grid does not contain any. The grid currently used is viscous and is built to have a y+ value of 1. Wall cell height is therefore small (2.5e-6 m). Prior to running these 3D cases, I tested SU2 features in 2D. While testing, I have found weird grid solver behavior when running parallel 2D test cases. In fact, the volume grid solver requires more linear iterations as the number of partitions is increased, as seen in the table below. The number of cells for the 2D case is 47600. Code:
np avg niter 1 326 4 360 32 381 84 389 252 409 I had a look in the code, but couldn’t find anything. Does anyone have any idea of what’s happening? Has anyone else encountered such problem? I'll check if I can reproduce the problem with a grid in the TestCases folder with a new configuration file and update accordingly. Regards, Frederik |
|
February 23, 2015, 00:22 |
Update...
|
#2 |
New Member
Frederik
Join Date: Apr 2010
Posts: 18
Rep Power: 16 |
Hello everyone,
I was able to continue my investigations on the dynamic mesh external errors I’ve encountered so far. Also sorry about the length of this post... The problem seems to happen when the following conditions are all met:
Here is my test case details, as the bug is not easily demonstrable using the grids included in the TestCases suite. In fact, grids with boundary layers crash instantly and unstructured grids work fine.
Grid properties: Code:
Prop Grid A Grid B Grid C Grid D DS 2E-06 2E-05 2E-04 2E-03 AR 2250 227 24.1 3.28 VR 1.59 1.58 1.59 1.65 #cells 139k 108k 79.2k 50.4k y+ 1 10 100 1000 #layers 58 45 33 21 Code:
Parts Grid A Grid B Grid C Grid D 1 Ok Ok Ok Ok 2 Fail Ok Ok Ok 4 Fail Ok Ok Ok 8 Fail OK Ok Ok 16 Fail Fail Ok Ok 32 Fail Fail Ok Ok 64 Fail Fail Ok Ok Code:
Parts Grid A Grid B Grid C Grid D 1 3450 2462 1663 1113 2 19596 15279 953 589 4 11865 8649 784 327 8 10004 7043 904 241 16 6502 4485 3481 149 32 4672 4027 2685 109 64 5168 4394 3125 127 ...continued... |
|
February 23, 2015, 00:37 |
Update #2...
|
#3 |
New Member
Frederik
Join Date: Apr 2010
Posts: 18
Rep Power: 16 |
...continued...
Some observations too:
Additionally, I had initially investigated 2D tests on high aspect ratio cells (impact of linear and non-linear interactions and solver) with the following results. There is no problem here per se, it could just be useful for other people. |
|
February 23, 2015, 00:53 |
|
#4 | |
Senior Member
|
Quote:
Thank you for sharing your experience here. I just have some questions regarding your problem. From your post I understood you are using external grid solver in your process, right? If so could you please provide more information on your grid procedure. Are you remeshing the entire domain in every time step or updating your mesh? Besides, I think it is possible to create a series of mesh that is marched in time and mapping the solution between them in a simulation like yours. Is there a gap in your geometry between the pitching airfoil and the solid body? You may consider using FFD box to deform your pitching airfoil for simulating its movement. I haven't used this feature of SU2 yet, but more information on your dynamic mesh process including how you are linking your external grid solver and how you are updating the mesh will help. Bests, Payam |
||
February 23, 2015, 11:16 |
|
#5 | |
New Member
Frederik
Join Date: Apr 2010
Posts: 18
Rep Power: 16 |
Thanks for the reply. I'm not currently at home and my images are not showing... can you see the images?
I'm using this: Code:
GRID_MOVEMENT= YES GRID_MOVEMENT_KIND= EXTERNAL To create my grid, I used Pointwise. Then I exported the grid in a SU2 format. I used some Matlab tools (included in SU2 source in /MeshTools/Matlab/) and made some of my own. I simply read the grid file, recorded what nodes are located in the surface boundaries and deplaced them. I'm not remeshing the entire domain, I'm deforming it. I update the mesh every time step by moving the boundaries. SU2 deforms the interior volumes. Regards, Frédérik Quote:
|
||
February 23, 2015, 14:20 |
|
#6 | |||
Senior Member
|
Quote:
Quote:
If you want to use the deformation, I suggest you to create a FFD box around your pitching component and move that component in every time step. The mesh will deform automatically. The FFD box is used in optimization problems as parametrization technique, but you can trick this technique to move the component instead. There will be no crash like what you have gotten here, except you might confront with negative volume mesh problems, which might be resolved by decreasing the time step size. Meanwhile, I suggest you to check this thread as well: 2D NACA 6412 Tutorial Extrusion Problem You will see pictures like yours in which a kind of meshy explosion happened due to use of single precision display rendering. Additionally, there are other approaches to move that component in a simulation: 1] You can create a series of structured mesh with constant resolution in specific time steps separately, in which your component is moving. Then, for your simulation which is marching in time, map the solution from one to another respectfully. It sometimes called quasi-static approach. 2] You can create a small overset structured block around your component, then define a unstructured interface between the solid body and the moving component. It results a hybrid grid in overall. For the movement, move the component with its overset structured boundary layer block, and just remesh, deform or update the unstructured block alone. This approach maintains the grid quality, and also resolves the meshy-explosion-liked problem. 3] As already mentioned, you can use FFD box around your moving component to simulate its motion. The fully-structured grid will be deformed. Meanwhile, you can combine this approach with the second aforementioned approach. For this purpose, define a FFD box around your moving component with its structured block for simulating the motion. Quote:
Meanwhile, developer's guide here will help you to find out how one can access these factors in the grid module. These are my suggestions for your case. I hope they help you. Good Luck, Payam |
||||
February 23, 2016, 07:57 |
|
#7 |
New Member
Mehmet SAHIN
Join Date: Dec 2011
Posts: 12
Rep Power: 15 |
As l understand from grid_movement_structure.cpp source code motion_filename should include global vertex index, x-location, y-location for boundary nodes at each time step. However, when l run parallel the vertex index from the solution file is different compared to that of *.su2 mesh file due to reordering. Therefore, do l need any further modification for parallel run?
Best Mehmet |
|
Tags |
divergence, dynamic mesh, external, grid smoothing, su2 |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
dynamic mesh for multi-region problem | alundilong | OpenFOAM Programming & Development | 6 | June 5, 2023 20:13 |
Dynamic mesh update problem. | David | FLUENT | 3 | March 15, 2012 06:02 |
Dynamic mesh problem | jojo | FLUENT | 7 | November 18, 2011 05:22 |
problem on dynamic mesh zone | erkan | FLUENT | 2 | January 8, 2009 17:01 |
CFD-3D flow problem using Dynamic mesh method. | Sar_mech | FLUENT | 1 | November 27, 2008 22:17 |