$FOAM_TUTORIALS/multiphase/interDyMFoam/ras/floatingObject
We calculate the motion of an object floating on the water surface for 6 seconds using deforming the mesh. Only the ceiling surface of the analysis domain is assumed to be open, while the other surfaces are walls.
The mesh deformation settings are specified in the file "constant/dynamicMeshDict" as follows. The mesh is deformed according to the result of the rigid body movement calculation based on the force acting on the object (region "floatingObject"). The Newmark method is used for the rigid body movement calculation.
dynamicFvMesh dynamicMotionSolverFvMesh; motionSolverLibs ("librigidBodyMeshMotion.so"); solver rigidBodyMotion; rigidBodyMotionCoeffs { report on; solver { type Newmark; } accelerationRelaxation 0.7; bodies { floatingObject { type cuboid; parent root; // Cuboid dimensions Lx 0.3; Ly 0.2; Lz 0.5; // Density of the cuboid rho 500; // Cuboid mass mass #calc "$rho*$Lx*$Ly*$Lz"; L ($Lx $Ly $Lz); centreOfMass (0 0 0.25); transform (1 0 0 0 1 0 0 0 1) (0.5 0.45 0.1); joint { type composite; joints ( { type Py; } { type Ry; } ); } patches (floatingObject); innerDistance 0.05; outerDistance 0.35; } } }
The meshes are as follows, and the number of mesh is 11640.
The calculation result is as follows.
We can see that the objects shaken by the waves are reproduced by deforming the mesh.
2分33.89 seconds *Single, Inter(R) Core(TM) i7-2600 CPU @ 3.40GHz 3.40GHz