Previous: Internal motion Up: Internal motion Next: Dynamic mesh refinement
This is an automatically generated documentation by LaTeX2HTML utility. In case of any issue, please, contact us at info@cfdsupport.com.
Test case: wingMotion
- This dynamic mesh method deals with internal mesh organization
- Copy tutorial test case wingMotion:
# run
# cp -r $FOAM_TUTORIALS/incompressible/pimpleFoam/RAS/wingMotion ./ - Test case is already set up
- Test case is two-dimensional
- Simple incompressible flow around the airfoil. The profile moves due to the fluid flow forces
Figure: wingMotion geometry
- The case is split into three directories:
wingMotion2D_pimpleFoam
wingMotion2D_simpleFoam
wingMotion_snappyHexMesh - Dynamic motion properties are set in dictionary:
wingMotion2D_pimpleFoam/constant/dynamicMeshDict :
dynamicFvMesh dynamicMotionSolverFvMesh; motionSolverLibs ("libsixDoFRigidBodyMotion.so"); solver sixDoFRigidBodyMotion;
- Parameter dynamicFvMesh specifies what kind of dynamic motions is used, for this test case it is dynamicMotionSolverFvMesh
- Parameter motionSolverLibs referes to the library to be used
- Parameter solver sets the solver for mesh reordering, for this test case it is sixDoFRigidBodyMotion
- Section sixDoFRigidBodyMotionCoeffs sets displacement properties of wing
sixDoFRigidBodyMotionCoeffs { patches (wing); innerDistance 0.3; outerDistance 1; mass 22.9; centreOfMass (0.4974612746 -0.01671895744 0.125); momentOfInertia (1.958864357 3.920839234 2.057121362); orientation ( 0.9953705935 0.09611129781 0 -0.09611129781 0.9953705935 0 0 0 1 ); angularMomentum (0 0 -2); g (0 -9.81 0); rho rhoInf; rhoInf 1; report on; solver { type symplectic; } constraints { yLine { sixDoFRigidBodyMotionConstraint line; centreOfRotation (0.25 0.007 0.125); direction (0 1 0); } zAxis { sixDoFRigidBodyMotionConstraint axis; axis (0 0 1); } } restraints { verticalSpring { sixDoFRigidBodyMotionRestraint linearSpring; anchor (0.25 0.007 0.125); refAttachmentPt (0.25 0.007 0.125); stiffness 4000; damping 2; restLength 0; } axialSpring { sixDoFRigidBodyMotionRestraint linearAxialAngularSpring; axis (0 0 1); stiffness 700; damping 0.5; referenceOrientation $orientation; } } }
- The test case is precomputed by steady-state solver simpleFoam, results are used as initial conditions for following pimpleFoam computation
- Run the test case:9.1
# ./Allrun
# cd wingMotion2D_pimpleFoam
# paraFoam
Figure: Different times of dynamic motion
Previous: Internal motion Up: Internal motion Next: Dynamic mesh refinement