|
[Sponsors] |
sixDoFRigidBodyMotion with AMI in rotating system |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
September 24, 2017, 08:30 |
sixDoFRigidBodyMotion with AMI in rotating system
|
#1 |
New Member
Dae-young(Dan)
Join Date: Jan 2017
Location: South Korea
Posts: 6
Rep Power: 9 |
Dear foamers,
I am trying to simulate a flow over a cylinder which is rotating with z-axis. In this case, I set up the dynamicMeshDict and blockMesh as following. dynamicMeshDict file is Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.3.1 | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; location "constant"; object dynamicMeshDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dynamicFvMesh dynamicMotionSolverFvMesh; motionSolverLibs ( "libfvMotionSolvers.so" "libsixDoFRigidBodyMotion.so" ); //solver displacementLaplacian; solver sixDoFRigidBodyMotion; /* displacementLaplacianCoeffs { diffusivity uniform (cylinder); } */ sixDoFRigidBodyMotionCoeffs { patches (cylinder); innerDistance 1; outerDistance 4; centreOfMass (0 0 0); momentOfInertia (0.3333 0.3333 0.3333); mass 2; orientation ( 1 0 0 0 1 0 0 0 1 ); veloicity (0 0 0); acceleration (0 0 0); angularMomentum (0 0 0); torque (0 0 0); gravity (0 0 0); rho rhoInf; rhoInf 1; report on; solver { type CrankNicolson; } constraints { yLine { sixDoFRigidBodyMotionConstraint point; centreOfRotation (0 0 0); // direction (0 0 1); } angular { sixDoFRigidBodyMotionConstraint axis; axis (0 0 1); //centreOfRotation (0 0 0); //direction (0 1 0); } } restraints { /* S1 { sixDoFRigidBodyMotionRestraint linearSpring; anchor (0 0 0); refAttachmentPt (0 0 0); stiffness 35.0919; damping 0; restLength 0; } */ S3 { sixDoFRigidBodyMotionRestraint sphericalAngularDamper; coeff 0; } } } /* solver sixDoFRigidBodyMotion; 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; } } } */ /* sixDoFRigidBodyMotionCoeffs { centreOfMass (0 0 0); momentOfInertia (0.2917 0.2917 0.25); mass 2; patches (cylinder); innerDistance 0; outerDistance 4; orientation ( 1 0 0 0 1 0 0 0 1 ); veloicity (0 0 0); acceleration (0 0 0); angularMomentum (0 0 0); torque (0 0 0); gravity (0 0 0); rhoName rhoInf; rhoInf 1; report on; diffusivity inverseDistance (cylinder); } */ // ************************************************************************* // Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 4.1 | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class polyBoundaryMesh; location "constant/polyMesh"; object boundary; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // 11 ( outlet { type patch; nFaces 240; startFace 210120; } sym1 { type patch; nFaces 360; startFace 210360; } sym2 { type patch; nFaces 360; startFace 210720; } inlet { type patch; nFaces 240; startFace 211080; } cylinder { type wall; inGroups 1(wall); nFaces 320; startFace 211320; } back { type empty; inGroups 1(empty); nFaces 80000; startFace 211640; } back-calulated { type empty; inGroups 1(empty); nFaces 25600; startFace 291640; } front { type empty; inGroups 1(empty); nFaces 80000; startFace 317240; } front-calculated { type empty; inGroups 1(empty); nFaces 25600; startFace 397240; } AMI_master { type cyclicAMI; inGroups 1(cyclicAMI); nFaces 320; startFace 422840; matchTolerance 0.0001; transform noOrdering; neighbourPatch AMI_slave; } AMI_slave { type cyclicAMI; inGroups 1(cyclicAMI); nFaces 320; startFace 423160; matchTolerance 0.0001; transform noOrdering; neighbourPatch AMI_master; } ) // ************************************************************************* // and I know I can rotate the mesh by applying omega in dynamicMesh, but in my case, I cannot use omega and it is calculated by the moment of inertia. In this case, the mesh around body is morphed badly. As attached I want to change it to rotate as a rigid body motion. any suggestion for this problem I would be happy. Thank you in advance. |
|
March 13, 2018, 16:20 |
|
#2 |
New Member
David Balam
Join Date: Sep 2016
Posts: 1
Rep Power: 0 |
Maybe the wingMotion Tutorial can help you
|
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Free Fall Rotating Solid Object (layeradditionremoval + sixDoFRigidBodyMotion + AMI) | chujeh2020 | OpenFOAM | 2 | June 14, 2015 21:08 |
[snappyHexMesh] 2D AMI Moving Mesh with sHM; How hard can this be? | ADGlassby | OpenFOAM Meshing & Mesh Conversion | 18 | June 18, 2013 07:07 |
planetary hollow cylinder rotating system | antonio | FLUENT | 1 | March 9, 2007 14:35 |
Need ideas-fuel discharge system | Jan | FLUENT | 1 | October 11, 2006 00:05 |
Code with reliable free surface capability in a rotating system | Subhasish Roy Choudhury | Main CFD Forum | 1 | September 4, 1998 19:47 |