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

simulation flapper movement with mesh deformation in CFX

Register Blogs Community New Posts Updated Threads Search

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   December 9, 2013, 17:18
Default simulation flapper movement with mesh deformation in CFX
  #1
Member
 
Sara S.
Join Date: May 2010
Location: NJ, USA
Posts: 41
Rep Power: 15
sakalido is on a distinguished road
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
sakalido is offline   Reply With Quote

Old   December 9, 2013, 20:27
Default
  #2
Super Moderator
 
Glenn Horrocks
Join Date: Mar 2009
Location: Sydney, Australia
Posts: 17,703
Rep Power: 143
ghorrocks is just really niceghorrocks is just really niceghorrocks is just really niceghorrocks is just really nice
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.
ghorrocks is offline   Reply With Quote

Old   December 10, 2013, 09:40
Default
  #3
Member
 
Sara S.
Join Date: May 2010
Location: NJ, USA
Posts: 41
Rep Power: 15
sakalido is on a distinguished road
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
sakalido is offline   Reply With Quote

Old   December 10, 2013, 17:02
Default
  #4
Super Moderator
 
Glenn Horrocks
Join Date: Mar 2009
Location: Sydney, Australia
Posts: 17,703
Rep Power: 143
ghorrocks is just really niceghorrocks is just really niceghorrocks is just really niceghorrocks is just really nice
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.
ghorrocks is offline   Reply With Quote

Old   December 31, 2013, 15:15
Default hinged flapper, mesh deformation, negative volume
  #5
Member
 
Sara S.
Join Date: May 2010
Location: NJ, USA
Posts: 41
Rep Power: 15
sakalido is on a distinguished road
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
sakalido is offline   Reply With Quote

Old   January 1, 2014, 04:17
Default
  #6
Super Moderator
 
Glenn Horrocks
Join Date: Mar 2009
Location: Sydney, Australia
Posts: 17,703
Rep Power: 143
ghorrocks is just really niceghorrocks is just really niceghorrocks is just really niceghorrocks is just really nice
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.
ghorrocks is offline   Reply With Quote

Old   January 2, 2014, 11:06
Default
  #7
Member
 
Sara S.
Join Date: May 2010
Location: NJ, USA
Posts: 41
Rep Power: 15
sakalido is on a distinguished road
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
Attached Images
File Type: jpg flapper.jpg (29.1 KB, 58 views)
sakalido is offline   Reply With Quote

Old   January 3, 2014, 05:26
Default
  #8
Super Moderator
 
Glenn Horrocks
Join Date: Mar 2009
Location: Sydney, Australia
Posts: 17,703
Rep Power: 143
ghorrocks is just really niceghorrocks is just really niceghorrocks is just really niceghorrocks is just really nice
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.
ghorrocks is offline   Reply With Quote

Old   January 6, 2014, 17:23
Default
  #9
Member
 
Sara S.
Join Date: May 2010
Location: NJ, USA
Posts: 41
Rep Power: 15
sakalido is on a distinguished road
Hi Glenn,

Quote:
Originally Posted by ghorrocks View Post
2) Use an immersed solid to model the flapper. Then you do not need to move the mesh at all!
I cannot use immersed solid to model the flapper since I am modeling two phase flow (water and air). I have free surface on the tank opening.

Quote:
Originally Posted by ghorrocks View Post
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.
I am currently applying conditional open state in my interface. I have defined that whenever the angle between the flapper and opening is greater than zero, the interface should be open.

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
sakalido is offline   Reply With Quote

Old   January 7, 2014, 16:57
Default
  #10
Member
 
Sara S.
Join Date: May 2010
Location: NJ, USA
Posts: 41
Rep Power: 15
sakalido is on a distinguished road
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:
Originally Posted by ghorrocks View Post
1) Use dynamic remeshing as often as required to keep the mesh under control.
What is dynamic remeshing? Is it the same as mesh deformation? by the way I am using ANSYS workbench meshing.

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?
Attached Images
File Type: jpg opened flapper mesh.jpg (29.4 KB, 16 views)

Last edited by sakalido; January 7, 2014 at 18:34.
sakalido is offline   Reply With Quote

Old   January 12, 2014, 06:08
Default
  #11
Super Moderator
 
Glenn Horrocks
Join Date: Mar 2009
Location: Sydney, Australia
Posts: 17,703
Rep Power: 143
ghorrocks is just really niceghorrocks is just really niceghorrocks is just really niceghorrocks is just really nice
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.
ghorrocks is offline   Reply With Quote

Old   January 27, 2014, 14:28
Default
  #12
Member
 
Sara S.
Join Date: May 2010
Location: NJ, USA
Posts: 41
Rep Power: 15
sakalido is on a distinguished road
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"
sakalido is offline   Reply With Quote

Reply

Tags
flapper movement, mesh deformation, negative volume, specified open state


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
how to set periodic boundary conditions Ganesh FLUENT 15 November 18, 2020 06:09
Problem in initializing transient simulation with a finer mesh sidd CFX 8 April 29, 2016 02:25
[ICEM] Mesh Decoupled Mesh Movement in ICEM Julian K. ANSYS Meshing & Geometry 0 October 26, 2011 16:06
Mesh deformation using user fortran matled CFX 3 February 18, 2010 16:49
CFX mesh & ICEM mike CFX 3 April 27, 2006 15:27


All times are GMT -4. The time now is 18:12.