|
[Sponsors] |
simulation flapper movement with mesh deformation in CFX |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
December 9, 2013, 18:18 |
simulation flapper movement with mesh deformation in CFX
|
#1 |
Member
Sara S.
Join Date: May 2010
Location: NJ, USA
Posts: 41
Rep Power: 16 |
Hello all,
I am trying to simulate a flapper movement, hinged at one side in CFX 14.5 using mesh deformation. I have defined the flapper movement as follows: flapper movement = horizontal location*tan(angle). The angle will be 0, 20, 40, 60 degrees in times 0, 1, 2, 3 seconds and then it closes. so the overall opening and closing will take 6 seconds. The flapper is actually a connection between two tanks, on top and bottom of the flapper which are each a separate domain. When the flapper opens it opens the connection between top and bottom tanks, so the flapper opening is the domain interface . I have defined a conditional connection control for this domain interface as "specified open state" which is with the logical expression of "angle>0". But I get "negative volume" error in my simulation. Is my definition of flapper movement correct? Thank you, Sara |
|
December 9, 2013, 21:27 |
|
#2 |
Super Moderator
Glenn Horrocks
Join Date: Mar 2009
Location: Sydney, Australia
Posts: 17,852
Rep Power: 144 |
This error is saying that the motion you defined has lead to the volume mesh turning inside out somewhere. You should output results files in the time steps leading up to the crash and have a close look in the post processor to see if you can spot where the problem is. This error is usually pretty obvious, as long as you look at the mesh just before it crashes.
|
|
December 10, 2013, 10:40 |
|
#3 |
Member
Sara S.
Join Date: May 2010
Location: NJ, USA
Posts: 41
Rep Power: 16 |
Thank you Glenn.
The problem is I get this error message right after I start the simulation so no results file is created to study. I understand that I get inside out mesh volume somewhere in my geometry but is this because of: 1. defining the flapper movement incorrectly. 2. assigning the mesh deformation areas incorrectly. Thank you, Sara |
|
December 10, 2013, 18:02 |
|
#4 |
Super Moderator
Glenn Horrocks
Join Date: Mar 2009
Location: Sydney, Australia
Posts: 17,852
Rep Power: 144 |
Incorrect motion can cause this error, so can assigning the mesh deformation area incorrectly, also bad mesh smoothing and several other factors.
If the error happens right at the start then make the time step size very small and output results files every time step (include the mesh, but do not have any variables in the transient results file). Then you will be able to see mesh evolve every time step. This is how I debug problem mesh motion simulations. |
|
December 31, 2013, 16:15 |
hinged flapper, mesh deformation, negative volume
|
#5 |
Member
Sara S.
Join Date: May 2010
Location: NJ, USA
Posts: 41
Rep Power: 16 |
I have two strategies to simulate this problem:
1. The hinged flapper is touching the opening and there is no gap between the hinged flapper and the opening when the flapper is closed. In this case when I subtract the flapper geometry from the tank (the flapper is basically the connection between two tanks, upper and lower), there is no surface remained in the opening area... the surface is removed with the flapper geometry... Therefore, I cannot define an interface between the two domains (upper and lower) tanks and hence, I cannot define a conditional open state for this interface. 2. I maintain a gap between the flapper in the closed situation and the opening area. I create a disk in this gap in a way that the bottom surface of the disk is the stationary interface between the upper and lower tanks and i Can define the conditional open state for it. The upper surface of the disk moves with the flapper. Side wall of the disk stretches when the flapper opens. This side wall must be defined as an interface between the disk and the upper tank with unspecified mesh motion so that I can have flow within this surface when the flapper opens but there is only one surface for this side wall disk. Therefore, I cannot define an interface. Does anyone have any suggestion how I should simulate the opening and closing of a hinged flapper without getting negative volume meshes while mesh deformation? Thank you, Sara |
|
January 1, 2014, 05:17 |
|
#6 |
Super Moderator
Glenn Horrocks
Join Date: Mar 2009
Location: Sydney, Australia
Posts: 17,852
Rep Power: 144 |
Can you post an image of what you are describing? That would be much clearer.
There are many approaches to model this but until I understand what you are trying to do I will not be able to help you much. |
|
January 2, 2014, 12:06 |
|
#7 |
Member
Sara S.
Join Date: May 2010
Location: NJ, USA
Posts: 41
Rep Power: 16 |
Hello Glenn,
I am attaching a picture of the moving flapper in the 20th iteration when simulation stops with negative volume error. This is a picture of the case when I consider a gap between the closed flapper and the opening. and I create a disc in this gap. In this video the disk between the flapper and the opening is visible. This disc stretches when the flapper opens. I should somehow define the side walls of the disk as interface through which fluid can flow. But if I define the disk and the tank in which the flapper moves as one domain, the sidewalls will automatically be assigned to wall boundary condition. If I define disk and tank as two separate domains, then the sidewalls only have one surface so I cannot define an interface with two surfaces in each domains. My questions are: 1. Am I using the correct strategy by creating this disk to simulate the flapper movement? 2. Do you have any suggestions on what method I should use other than defining this disk? 3. If creating this disk is correct, how can I define it in a way that fluid flows through the sidewalls when the flapper opens? Thank you, Sara |
|
January 3, 2014, 06:26 |
|
#8 |
Super Moderator
Glenn Horrocks
Join Date: Mar 2009
Location: Sydney, Australia
Posts: 17,852
Rep Power: 144 |
This is a tricky motion to model. It has a lot in common with modelling IC engine poppet valves closing and opening - do a search on the forum for this and you should find quite a few relevant threads.
Some suggestions on how you can model it: 1) Use dynamic remeshing as often as required to keep the mesh under control. You will have to assume the flapper is shut a small distance before it is physically shut and then assume it is fully closed after that - which sounds like what you have done with the mesh disc. 2) Use an immersed solid to model the flapper. Then you do not need to move the mesh at all! 3) Use an interface at the flapper interface which never fully shuts (ie the interface is always there so the flapper never fully shuts), but use the conditional connection of an interface to close off flow when it should be shut. 4) Same as for 3, but use a momentum sink. This is the old way of doing it where you force the flow velocity in the interface curtain to zero and that stops the flow. All of these approaches can be done as a single domain in your case. An interface does not need to connect different domains, it can connect the same domain. |
|
January 6, 2014, 18:23 |
|
#9 | ||
Member
Sara S.
Join Date: May 2010
Location: NJ, USA
Posts: 41
Rep Power: 16 |
Hi Glenn,
Quote:
Quote:
I noticed a new thing. I am defining the flapper movement in z-direction (vertical) as y*inside()@flapper*angle(t), where angle(t) is a user defined function. I modified my definitions in a way that the flapper moves with a smaller angle in smaller timestep. In other words, flapper opens 0.01 degree in 0.0001 timestep. Making this change, so far the simulation is working. I will keep the forum posted in a few hours. Thank you, Sara |
|||
January 7, 2014, 17:57 |
|
#10 | |
Member
Sara S.
Join Date: May 2010
Location: NJ, USA
Posts: 41
Rep Power: 16 |
Hello Glenn,
OK, I again get negative volume error after 70 iterations, i.e. , when the flapper opens 0.7 degree. In each time step, flapper is supposed to open 0.01 degree. and my time step is 0.0001. so I have 3 questions: 1. Currently I am using mesh deformation and mesh displacement is relative to the previous mesh (is that correct?). I am thinking I should somehow reload the new mesh, correct? or just using mesh deformation is enough? You mentioned: Quote:
2. Also, I am attaching a picture of the deformed mesh when the flapper opens. I am meshing the disk between the flapper and the opening by sweep method. and the rest of the tank has tetrahedron meshing. So one side of the disk wall interface has hex elements and one side has tet. elements. the connection is GGI. But I still think shouldn't the elements on both sides be similar? 3. When the flapper opens, I see that the mesh elements stretch but I think this should not be the case. I should actually some how create new additional mesh elements on the disk. Correct? How can I do that? Last edited by sakalido; January 7, 2014 at 19:34. |
||
January 12, 2014, 07:08 |
|
#11 |
Super Moderator
Glenn Horrocks
Join Date: Mar 2009
Location: Sydney, Australia
Posts: 17,852
Rep Power: 144 |
You appear to only have a single row of elements in the gap. You should only start the flow when at least a few rows of elements are present. I would delay the conditional opening of the flapper slightly after 0 until you have a few rows of elements.
Dynamic remeshing has some tutorial examples available. I think the ANSYS community site has some, otherwise contact CFX support. |
|
January 27, 2014, 15:28 |
|
#12 |
Member
Sara S.
Join Date: May 2010
Location: NJ, USA
Posts: 41
Rep Power: 16 |
Hello again,
I contacted ANSYS portal community and they sent me some documents about dynamic meshing in opening/closing a valve which should be very similar to my case. I understood that my method was not correct since I was not doing any re-meshing. I only defined moving mesh but I did not define any criteria to evaluate the mesh quality and re-mesh if the quality was not acceptable. So now I have made a new set up. In this new set up I have defined a configuration which specifies the interrupt condition based on the mesh quality (if the min value of the orthogonality angle is less than 14, the simulation is interrupted) and there is a python script that remeshes and updates geometry in design modeler. But my simulation stops after the first remeshing and I get the following error message that I haven't found the reason for it yet. Does anybody have any idea? " Error in subroutine get_MVFLOW_ELIP : Error calculating MVFLOW GETVAR originally called by subroutine GET_MFLOIP_ZIF +--------------------------------------------------------------------+ | Writing crash recovery file | +--------------------------------------------------------------------+ +--------------------------------------------------------------------+ | ERROR #001100279 has occurred in subroutine ErrAction. | | Message: | | Stopped in routine GV_ERROR" |
|
Tags |
flapper movement, mesh deformation, negative volume, specified open state |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
how to set periodic boundary conditions | Ganesh | FLUENT | 15 | November 18, 2020 07:09 |
Problem in initializing transient simulation with a finer mesh | sidd | CFX | 8 | April 29, 2016 03:25 |
[ICEM] Mesh Decoupled Mesh Movement in ICEM | Julian K. | ANSYS Meshing & Geometry | 0 | October 26, 2011 17:06 |
Mesh deformation using user fortran | matled | CFX | 3 | February 18, 2010 17:49 |
CFX mesh & ICEM | mike | CFX | 3 | April 27, 2006 16:27 |