CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > OpenFOAM

Reletive Motion

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

Like Tree1Likes
  • 1 Post By deepsterblue

Reply
 
LinkBack Thread Tools Display Modes
Old   April 26, 2011, 06:57
Default Reletive Motion
  #1
Member
 
Dan
Join Date: Oct 2010
Location: UK
Posts: 41
Rep Power: 6
dandalf is on a distinguished road
Hi all,

I am working on simulating the flow over a moving three dimensional body immersed in incompressible fluid.

In openFoam 1.7.0, I am using pimpleDyMFoam to achieve the local deformation of the body however I now need to simulate the net movement of the body. To minimize the mesh transformation cost and to keep my object of interest centered in my mesh, I wish to take a Eulerian approach, and simply update the relative free stream velocity at each iteration.

For this I need to update not just the relative boundary velocity values but also the velocities of the internal mesh.

Can anybody suggest a way to achieve this. Am I missing an obvious trick here?
dandalf is offline   Reply With Quote

Old   April 26, 2011, 15:17
Default
  #2
Senior Member
 
Pablo
Join Date: Mar 2009
Posts: 102
Rep Power: 8
pablodecastillo is on a distinguished road
Hi Dan,

I think that you can do it with solidbodymotion, it has SDA and SDK class, who let define movements for the domain. But they are very restrictives. So it seems that if you want to implement your own movements with ODE or similar, you can move your domain with fvMesh::movePoints.

fvMesh::movePoints will move your points and calculate volumen variation, phi variation etc... then this value will be used by makerelative or makeabsolute to take account the influence of the velocity body/domain in your problem.

In theory it will be done, if it is wrong i hope that somebody give light.

Do not forget say mesh.moving(true);, or makerelative and absolute is not going to work.

Pablo
pablodecastillo is offline   Reply With Quote

Old   April 26, 2011, 16:11
Default
  #3
Senior Member
 
Sandeep Menon
Join Date: Mar 2009
Location: Amherst, MA
Posts: 386
Rep Power: 15
deepsterblue will become famous soon enough
fvMesh::movePoints() calls polyMesh::movePoints(), which in-turn calls the moving(bool) member function, so there's no need to call the moving() function explicitly
pablodecastillo likes this.
__________________
Sandeep Menon
University of Massachusetts Amherst
https://github.com/smenon
deepsterblue is offline   Reply With Quote

Old   April 26, 2011, 17:38
Default
  #4
Senior Member
 
Pablo
Join Date: Mar 2009
Posts: 102
Rep Power: 8
pablodecastillo is on a distinguished road
And when/where is updated C() and Cf()?, i was trying to find it without succesful.

Pablo
pablodecastillo is offline   Reply With Quote

Old   April 26, 2011, 19:55
Default
  #5
Senior Member
 
Sandeep Menon
Join Date: Mar 2009
Location: Amherst, MA
Posts: 386
Rep Power: 15
deepsterblue will become famous soon enough
All geometry is demand-driven. Once movePoints is called, geometry information is cleared (using clearGeom()? Can't remember the function name), and reconstructed on-demand only when mesh.C(), etc is called the next time.

Look for calls to deleteDemandDrivenData() in the source-tree for clues...
__________________
Sandeep Menon
University of Massachusetts Amherst
https://github.com/smenon
deepsterblue is offline   Reply With Quote

Old   April 26, 2011, 22:24
Default
  #6
Senior Member
 
Pablo
Join Date: Mar 2009
Posts: 102
Rep Power: 8
pablodecastillo is on a distinguished road
So, i can not find what i am missing.
I am coding a solver based in interdymfoam, but using my own movement mesh.

The problem is that when i move all the domain, the free surface is moving with the domain, it is like flux relative was not working right for phi interface.

Any idea?

Pablo
pablodecastillo is offline   Reply With Quote

Old   April 27, 2011, 12:29
Default
  #7
Senior Member
 
Pablo
Join Date: Mar 2009
Posts: 102
Rep Power: 8
pablodecastillo is on a distinguished road
I go to try to explain my problem better;

The solver is solving the towing tank resistance for ships with trim and sink. It is using rigid body motion (motion for all the domain) to trim&sink.

The mistake is coming when solving the sink, when the boat (all the domain) goes up or down, the free surface is going with him (so if the body sink 10 cm all the domain is moving too 10 cm and the free surface level too). It means that the relative flux is not updating the free surface or i am not giving the properly boundary conditions.

Any idea??

Advanced thanks
pablodecastillo is offline   Reply With Quote

Old   April 27, 2011, 19:19
Default
  #8
Senior Member
 
Pablo
Join Date: Mar 2009
Posts: 102
Rep Power: 8
pablodecastillo is on a distinguished road
Hello again,

I found that i have no relative flux, i did it surfaceScalarField phi44 = fvc::meshPhi(U); and i got 0 for the average of phi44. It seems that phiPtr_ is not saving the old value. Anybody can help me to figurate what is happening?

Pablo
pablodecastillo is offline   Reply With Quote

Old   December 6, 2011, 13:08
Default
  #9
Senior Member
 
Arne Stahlmann
Join Date: Nov 2009
Location: Hanover, Germany
Posts: 209
Rep Power: 8
Arnoldinho is on a distinguished road
Hi Pablo,

I think I am facing a similar problem right now (but am still figuring out if it might be related to your situation): After modifying the point positions, the water in my flume is running out of it. Boundary conditions for U and alpha1 are still properly defined.

So: Did you figure out what the reason was, and could you fix it?

Greetings,
Arne
Arnoldinho is offline   Reply With Quote

Old   December 20, 2011, 08:08
Default
  #10
Senior Member
 
Pablo
Join Date: Mar 2009
Posts: 102
Rep Power: 8
pablodecastillo is on a distinguished road
Hi Arne,

Sorry this late reply. I fixed doing fix the velocity at the top and bottom of the domain, in my case it works pretty well.

Pablo
pablodecastillo is offline   Reply With Quote

Reply

Thread Tools
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 On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Mesh motion on inlet (2-way FSI) Lance CFX 2 August 13, 2009 05:31
Convergence moving mesh lr103476 OpenFOAM Running, Solving & CFD 30 November 19, 2007 15:09
tank motion on boat Tim FLUENT 0 May 23, 2007 11:50
large scale mesh motion sb FLUENT 1 April 27, 2007 22:23
Can I define grids motion as a time functions Darcy CFX 4 March 29, 2001 21:14


All times are GMT -4. The time now is 04:33.