CFD Online Logo CFD Online URL
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Running, Solving & CFD

Released RBF motion solver

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

Like Tree4Likes
  • 2 Post By lr103476
  • 2 Post By sandeepsubbu

LinkBack Thread Tools Display Modes
Old   February 12, 2009, 06:02
Default Dear OpenFOAM users! I am
Senior Member
Frank Bos
Join Date: Mar 2009
Location: The Netherlands
Posts: 340
Rep Power: 11
lr103476 is on a distinguished road
Dear OpenFOAM users!

I am proud to announce that we have released the new RBF motion solver in the OpenFOAM-1.5-dev version.

This RBF motion solver uses Radial Basis Functions to interpolate the motion of boundary points onto the whole domain. First an inverse of the connectivity matrix is obtained and secondly this matrix is applied on the internal nodes to obtain a newPoints field. To increase the efficiency of this method, all fixed outer boundary points are neglected and of the moving boundary points we only take a subset as moving control points (which is particular fast when the moving body does not deform).

This mesh motion solver comes in 3 parts:
1) /src/OpenFOAM/interpolations/RBFInterpolation
2) /src/dynamicMesh/meshMotion/RBFMotionSolver
3) /tutorials/icoDyMFoam/movingBlockRBF

In RBFInterpolation you will find different RBF functions, add your own if you like. In movingBlockRBF you will find a RBFMotionFunction object which calls the RBFMotionSolver for you when you use icoDyMFoam or moveDynamicMesh.

That's all for now. Enjoy this new RBF motion solver and thanks to Hrvoje.


Btw, it does work in parallel, as long as every processor has enough control points. This will be improved in the future.
jiec827 and hua1015 like this.
Frank Bos
lr103476 is offline   Reply With Quote

Old   February 26, 2010, 01:18
Senior Member
Join Date: May 2009
Location: Melbourne
Posts: 101
Rep Power: 10
rieuk is on a distinguished road
Hey Frank, I hope your PhD presentation went well. I was just wondering whether you could offer any documentation or papers to help me to use the RBF motion solver in OF-1.5-dev (understanding the various coefficients and parameters) because at the moment I am clueless.

rieuk is offline   Reply With Quote

Old   June 25, 2014, 11:23
Default RBF mesh motion solver in parallel
New Member
Join Date: Apr 2013
Posts: 2
Rep Power: 0
sandeepsubbu is on a distinguished road
When I try to run icoDyMFoam with RBF mesh motion solver in parallel, it shows the following message:

[1] Singular matrix
[1] From function scalarSquareMatrix::LUdecompose(scalarSquareMatrix & matrix, labelList& rowIndices)
[1] in file matrices/scalarMatrices/scalarSquareMatrix.C at line 94.
FOAM parallel run exiting
Inverting RBF motion matrix

Does anyone know the reason behind this?
sandeepsubbu is offline   Reply With Quote

Old   December 5, 2016, 02:59
New Member
Join Date: Nov 2016
Posts: 1
Rep Power: 0
Xiaoyao is on a distinguished road
Hi, sandeepsubbu
Did you have solved this problem? And how to solve it?
Thank you!
Xiaoyao is offline   Reply With Quote

Old   December 5, 2016, 11:15
New Member
Join Date: Apr 2013
Posts: 2
Rep Power: 0
sandeepsubbu is on a distinguished road
I suggest you read this paper: Bos, Frank M., Bas W. van Oudheusden, and Hester Bijl. "Radial basis function based mesh deformation applied to simulation of flow around flapping wings." Computers & Fluids 79 (2013): 167-177 (Pg. 3 in particular).

The paper discusses how the RBF interpolation is done. The singular matrix arises while trying to find a solution to Eq.8. While decomposing the mesh for parallel run, you need to make sure each partition has atleast one boundary point that is on the moving boundary, if not you get a singular matrix while performing the interpolation.

If your domain is large and if you cannot have boundary points for each partition, then you can solve the problem by modifying the solver. I modified the solver by making the points on the moving boundary accessible to all the processors. Then I performed interpolation for each partition using all the boundary points. This ensures that the matrix in Eq.8 is always invertible for finding the interpolation coefficients.

Hope this helps.
aswathy and RaSu96 like this.
sandeepsubbu is offline   Reply With Quote

Old   May 26, 2017, 12:16
New Member
Collin Strassburger
Join Date: Feb 2017
Location: Oak Ridge, TN, USA
Posts: 10
Rep Power: 2
Collin is on a distinguished road
Thank you for the explanation, sandeepsubbu!

In regards to the implementation for large domains, I keep finding all sorts of information saying openFoam (and its derivatives) cannot share information across processor patches without a great deal of work. If you're willing to share, could you share some additional details on your implementation?
Collin is offline   Reply With Quote


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
Motion diffusivity solver has problems with patches moving toward each other bfa OpenFOAM Running, Solving & CFD 2 July 8, 2009 21:35
Modeling shaking motion Vs Rotational motion jaswi OpenFOAM Running, Solving & CFD 2 July 19, 2007 22:44
Is CFX 11 ever going to be released? Pete CFX 1 January 26, 2007 00:48
Automatic Mesh Motion solver michele OpenFOAM Running, Solving & CFD 10 September 26, 2005 08:21

All times are GMT -4. The time now is 08:02.