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

problem restarting dynamic mesh cases

Register Blogs Community New Posts Updated Threads Search

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   June 17, 2018, 02:15
Default
  #21
`e`
Senior Member
 
Join Date: Mar 2015
Posts: 892
Rep Power: 18
`e` is on a distinguished road
Quote:
Originally Posted by diggee View Post
Yes, like I said the center position is stored by Fluent's 6DOF solver and the co-ordinates before restarting are what they were when I stopped the simulation.
The centroid of the cylinder? Suppose the cylinder is located at \textbf{x}_\textrm{cylinder} and the equilibrium position of the spring is at \textbf{x}_\textrm{equilibrium}, then the restoring force is:

\textbf{F} = -k (\textbf{x}_\textrm{cylinder} - \textbf{x}_\textrm{equilibrium})

As you have already determined, the \textbf{x}_\textrm{cylinder} position is consistent after restarting Fluent, but what about \textbf{x}_\textrm{equilibrium}?
`e` is offline   Reply With Quote

Old   June 17, 2018, 02:19
Default
  #22
Member
 
Join Date: Sep 2016
Posts: 43
Rep Power: 10
diggee is on a distinguished road
Quote:
Originally Posted by RaiderDoctor View Post
Would you be comfortable posting your initial setup so that we can try to run it ourselves? It sounds like you know this simulaiton inside and out and are knowledgable about ANSYS, so I'd like to get up to speed with you.
Yea sure why not.
  1. The domain is 40DX20D in dimensions where D is the cylinder diameter. 40D and 20D are measured from the cylinder's center. D = 1m.
  2. Give an inlet velocity of 6m/s.
  3. SST k-w turbulence model with default values.
  4. Standard pressure outlet BC.
  5. As for the spanwise boundaries, far-field pressure BC. Change the mach no to 0.01. Since it is pressure far-field, you will need to change air density to ideal gas formulation. As a result, energy equation will be enabled but you should disable it from being solved in the factors menu.
  6. Finally, switch on dynamic meshing but only the 6DOF model option. In 6DOF, create a model with only 1DOF motion, mass as 4 kg and spring constant k as 280 N/m. Enable the option to write motion history. This is the file that will give you the center co-ordinates.
  7. Create dynamic mesh zones. For the cylinder wall, give it rigid body motion and select the 6dof model. Check 'on' but not passive option. Give center position as the cylinder's initial center co-ordinates. Initial velocity = 0. For all other zones, do the same but check passive too.
  8. Select PISO, and all second order methods. Time step 0.004 s. Inner iterations = 20. Rest everything default values.


Please don't go out of your way to do this but. If you have some time to kill only then do it cos it will take a day easily. That was very kind of you to offer to simulate it yourself.
diggee is offline   Reply With Quote

Old   June 17, 2018, 02:20
Default
  #23
Member
 
Join Date: Sep 2016
Posts: 43
Rep Power: 10
diggee is on a distinguished road
Quote:
Originally Posted by `e` View Post

As you have already determined, the \textbf{x}_\textrm{cylinder} position is consistent after restarting Fluent, but what about \textbf{x}_\textrm{equilibrium}?
And how do I check what this is in Fluent?
diggee is offline   Reply With Quote

Old   June 17, 2018, 02:24
Default
  #24
`e`
Senior Member
 
Join Date: Mar 2015
Posts: 892
Rep Power: 18
`e` is on a distinguished road
Quote:
Originally Posted by diggee View Post
And how do I check what this is in Fluent?
I have not used the Six DOF solver before, and I do not have this version of ANSYS installed to have a quick check. Is there any mention in the Fluent guides? Otherwise have a look around the GUI?

Quote:
Originally Posted by `e` View Post
Ultimately, if this displacement cannot be retrieved or corrected on restart, then you may need to create a UDF for the cylinder motion (which seems straightforward, you have linked to posts on this forum elsewhere with the code).
`e` is offline   Reply With Quote

Old   June 17, 2018, 02:30
Default
  #25
Member
 
Join Date: Sep 2016
Posts: 43
Rep Power: 10
diggee is on a distinguished road
Quote:
Originally Posted by `e` View Post
I have not used the Six DOF solver before, and I do not have this version of ANSYS installed to have a quick check. Is there any mention in the Fluent guides? Otherwise have a look around the GUI?
Yea, will do that. I have restarted a simulation for another case to see if this happens in that too. If it does, then next time I will use the UDF approach. But honestly, I would expect the same thing to happen there too cos the UDF will only have the mass, spring constant and 1dof as parameters, not initial equilibrium position.
diggee is offline   Reply With Quote

Old   June 17, 2018, 02:47
Default
  #26
`e`
Senior Member
 
Join Date: Mar 2015
Posts: 892
Rep Power: 18
`e` is on a distinguished road
Quote:
Originally Posted by diggee View Post
But honestly, I would expect the same thing to happen there too cos the UDF will only have the mass, spring constant and 1dof as parameters, not initial equilibrium position.
Not quite. Consider the restoring force from earlier:

\textbf{F} = -k (\textbf{x}_\textrm{cylinder} - \textbf{x}_\textrm{equilibrium})

If you only want a single DOF such that the restoring force of the spring acts purely in the y-direction, then the force on the cylinder could be calculated with:

Code:
force = -k*(DT_CG(dt)[1] - x_equilibrium[1]);
where the DT_CG macro is the centre of gravity vector of the dynamic thread zone and x_equilibrium is the vector where the spring is at equilibrium (defined within the UDF). The UDF manual has examples and details for further clarification and reference.

Note: remember that indexing in C starts from zero instead of one, so DT_CG(dt)[1] corresponds to the second spatial coordinate (y for Cartesian).
`e` is offline   Reply With Quote

Old   June 17, 2018, 02:51
Default
  #27
Member
 
Join Date: Sep 2016
Posts: 43
Rep Power: 10
diggee is on a distinguished road
Quote:
Originally Posted by `e` View Post
Not quite. Consider the restoring force from earlier:

\textbf{F} = -k (\textbf{x}_\textrm{cylinder} - \textbf{x}_\textrm{equilibrium})

If you only want a single DOF such that the restoring force of the spring acts purely in the y-direction, then the force on the cylinder could be calculated with:

Code:
force = -k*(DT_CG(dt)[1] - x_equilibrium[1]);
where the DT_CG macro is the centre of gravity vector of the dynamic thread zone and x_equilibrium is the vector where the spring is at equilibrium (defined within the UDF). The UDF manual has examples and details for further clarification and reference.

Note: remember that indexing in C starts from zero instead of one, so DT_CG(dt)[1] corresponds to the second spatial coordinate (y for Cartesian).
Oh yea I can definitely do that. Thanks a lot, even if I don't get a reason as to why this is happening, what you suggested should work. I will update this thread once I do use a UDF for future purpose.
diggee is offline   Reply With Quote

Old   June 17, 2018, 04:36
Default
  #28
Member
 
Join Date: Sep 2016
Posts: 43
Rep Power: 10
diggee is on a distinguished road
Quote:
Originally Posted by diggee View Post
Yea, will do that. I have restarted a simulation for another case to see if this happens in that too. If it does, then next time I will use the UDF approach. But honestly, I would expect the same thing to happen there too cos the UDF will only have the mass, spring constant and 1dof as parameters, not initial equilibrium position.
Just check for a different case, same thing happens there too. You can see in the image attached that the cylinder starts oscillating about the yellow dashed line (instead of the green line) which was the y co-ordinate of the cylinder center when I stopped the simulation. It also starts solving as if it has just begun to oscillate; notice the increasing amplitude. This is so weird. I just hope using a UDF solves this cos I have to do 3D simulations next and I really cannot afford this then.
Attached Images
File Type: jpg case3.jpg (90.9 KB, 9 views)
diggee is offline   Reply With Quote

Old   June 17, 2018, 04:53
Default
  #29
`e`
Senior Member
 
Join Date: Mar 2015
Posts: 892
Rep Power: 18
`e` is on a distinguished road
Quote:
Originally Posted by diggee View Post
This is so weird.
Well, this result is consistent with what we consider the problem to be: that the equilibrium position of the spring is being reset on restarting Fluent. I would expect (or at least hope) that using the UDF would solve this issue, and would also give you greater control and transparency on what you are actually solving.

Yes, a 3-D simulation would be much more computationally expensive. Remember to optimise your mesh and you could also start with an initial condition based on your 2-D result to help reduce the time it takes for the flow/oscillations to fully develop.
`e` is offline   Reply With Quote

Old   June 17, 2018, 05:02
Default
  #30
Member
 
Join Date: Sep 2016
Posts: 43
Rep Power: 10
diggee is on a distinguished road
Quote:
Originally Posted by `e` View Post
Well, this result is consistent with what we consider the problem to be: that the equilibrium position of the spring is being reset on restarting Fluent. I would expect (or at least hope) that using the UDF would solve this issue, and would also give you greater control and transparency on what you are actually solving.

Yes, a 3-D simulation would be much more computationally expensive. Remember to optimise your mesh and you could also start with an initial condition based on your 2-D result to help reduce the time it takes for the flow/oscillations to fully develop.
I think I will just check the UDF approach with a 2D case before going on to 3D, better safe than sorry. Thanks for your input man, really appreciate it!
diggee is offline   Reply With Quote

Old   June 19, 2018, 07:50
Default
  #31
Member
 
Join Date: Sep 2016
Posts: 43
Rep Power: 10
diggee is on a distinguished road
Quote:
Originally Posted by `e` View Post
Not quite. Consider the restoring force from earlier:

\textbf{F} = -k (\textbf{x}_\textrm{cylinder} - \textbf{x}_\textrm{equilibrium})

If you only want a single DOF such that the restoring force of the spring acts purely in the y-direction, then the force on the cylinder could be calculated with:

Code:
force = -k*(DT_CG(dt)[1] - x_equilibrium[1]);
where the DT_CG macro is the centre of gravity vector of the dynamic thread zone and x_equilibrium is the vector where the spring is at equilibrium (defined within the UDF).
Hey, so I did this and it works perfectly fine now even after restarting. Thanks a ton for your suggestion, really really appreciate it. Cheers!
diggee is offline   Reply With Quote

Old   March 4, 2021, 01:37
Default
  #32
New Member
 
Join Date: Nov 2020
Posts: 5
Rep Power: 5
n.mai is on a distinguished road
Quote:
Originally Posted by diggee View Post
Hey, so I did this and it works perfectly fine now even after restarting. Thanks a ton for your suggestion, really really appreciate it. Cheers!
Hi. Do you succeed doing VIV simulation at cross-flow direction?
n.mai is offline   Reply With Quote

Reply

Tags
dynamic mesh, restart problem, viv


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
decomposePar problem: Cell 0contains face labels out of range vaina74 OpenFOAM Pre-Processing 37 July 20, 2020 06:38
Local mesh refinement definition in a DEFORMING dynamic mesh zone using Dynamic Mesh Emanuele88 FLUENT 0 February 9, 2016 12:39
[mesh manipulation] Importing Multiple Meshes thomasnwalshiii OpenFOAM Meshing & Mesh Conversion 18 December 19, 2015 19:57
Dynamic mesh simulation (pimpleDyMFoam) problem sidlof OpenFOAM Running, Solving & CFD 6 April 12, 2013 12:24
CFD-3D flow problem using Dynamic mesh method. Sar_mech FLUENT 1 November 27, 2008 22:17


All times are GMT -4. The time now is 19:21.