|
[Sponsors] |
December 7, 2015, 05:38 |
Multiple AMI rotations not working
|
#1 |
New Member
Martin
Join Date: Oct 2013
Location: Newcastle
Posts: 21
Rep Power: 13 |
Hi,
I've been working on simulating flow past a rotor using PimpleDyMFoam for a while now and got everything working so far. Now I'm trying to add a second rotor to my case and run into troubles rotating both at the same time. It seems from a few test cases, with up to 4 AMI zones, that only the AMI zone that is last mentioned in my case files is actually rotating. Has anyone managed to have seperate rotating regions within a single domain, what is the correct way of defining the dynamic mesh regions? Any input would be much appreciated. Edit: Just came across multiSolidBodyMotionFvMesh. I'll leave this here as I did not come across much mentioning of this, maybe someone else will stumble over this and find it helpful. This is the changed dynamicMeshDict for multiple AMI (slightly changed format compared to before) Code:
dynamicFvMesh multiSolidBodyMotionFvMesh; motionSolverLibs ( "libfvMotionSolvers.so" ); multiSolidBodyMotionFvMeshCoeffs { cylinder { solidBodyMotionFunction rotatingMotion; rotatingMotionCoeffs { origin (0 0 0); axis (1 0 0); omega -110; // rad/s } } cylinderR { solidBodyMotionFunction rotatingMotion; rotatingMotionCoeffs { origin (0.84 0.42 0); axis (1 0 0); omega -110; // rad/s } } cylinderL { solidBodyMotionFunction rotatingMotion; rotatingMotionCoeffs { origin (3.36 0.84 0); axis (1 0 0); omega -110; // rad/s } } } Martin Last edited by mahtin360; December 11, 2015 at 11:07. Reason: Solution found |
|
March 30, 2018, 23:55 |
|
#2 |
New Member
Join Date: Jun 2017
Posts: 15
Rep Power: 9 |
Hi,
I am having the same issue, did you manage to solve it? Thank you! |
|
April 6, 2018, 01:56 |
box2D_moveDynamicMesh tutorial
|
#3 |
Member
|
Hello,
in OpenFOAM1712 (https://www.openfoam.com/releases/openfoam-v1712/) you can find the tutorial OpenFOAM/OpenFOAM-v1712/tutorials/mesh/moveDynamicMesh/relativeMotion inside take a look at the file : OpenFOAM-v1712/tutorials/mesh/moveDynamicMesh/relativeMotion/box2D_moveDynamicMesh/constant/dynamicMeshDict You need to put your rotating components inside the "dynamicMultiMotionSolverFvMeshCoeffs" subdictionary. For convenience I copy below the dictionary Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: plus | | \\ / A nd | Web: www.OpenFOAM.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; location "system"; object dynamicMeshDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dynamicFvMesh dynamicMultiMotionSolverFvMesh; //dynamicMotionSolverFvMesh; // Specification of rotation around centre rotation1 { solidBodyMotionFunction rotatingMotion; rotatingMotionCoeffs { origin (0 0 0); axis (0 0 1); omega 10; // rad/s, 1rad/s=9.5rpm } } dynamicMultiMotionSolverFvMeshCoeffs { rotor1 { solver solidBody; cellZone rotor; solidBodyCoeffs { $rotation1; } } dualWing1 { cellZone dualWing; // Solve displacement on top of solid-body rotation solver solidBodyDisplacementLaplacian; solidBodyDisplacementLaplacianCoeffs { solidBodyMotionFunction multiMotion; multiMotionCoeffs { rotation_1 { $rotation1; } rotation_2 { // Apply counter rotation to keep dualWing aligned solidBodyMotionFunction rotatingMotion; rotatingMotionCoeffs { origin (-0.43 0 0); axis (0 0 1); omega -10; // rad/s, 1rad/s=9.5rpm } } } diffusivity quadratic inverseDistance (wing2); } } } // ************************************************************************* // Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: plus | | \\ / A nd | Web: www.OpenFOAM.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; location "system"; object dynamicMeshDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dynamicFvMesh dynamicMultiMotionSolverFvMesh; dynamicMultiMotionSolverFvMeshCoeffs { rotor1 { solver solidBody; cellZone cylinder1; solidBodyCoeffs { solidBodyMotionFunction rotatingMotion; rotatingMotionCoeffs { origin (5 0 0); axis (0 0 1); omega 100; // rad/s, 1rad/s=9.5rpm } } } rotor2 { solver solidBody; cellZone cylinder2; solidBodyCoeffs { solidBodyMotionFunction rotatingMotion; rotatingMotionCoeffs { origin (-5 0 0); axis (0 0 1); omega -100; // minus 100 since contra-rotating blades } } } } // ************************************************************************* // Last edited by donQi; April 6, 2018 at 03:18. |
|
April 19, 2018, 08:44 |
|
#4 |
New Member
Martin
Join Date: Oct 2013
Location: Newcastle
Posts: 21
Rep Power: 13 |
In addition to the details given by Al, I had issues with my mesh generation and the specification of the AMI surfaces. What happened was that the cells were still attached to each other and deformed with each step of rotation, leading to the calculation to fail after a while (my time steps were very small).
Using mergeOrSplitBaffles -split -overwrite solved the issues for me. |
|
January 3, 2021, 10:50 |
|
#5 |
New Member
mark
Join Date: Jan 2021
Posts: 1
Rep Power: 0 |
I tried the given multi rotor library with openFoam 7, and it is showing error, may you please let me know on which version of this library is accessible.
Thank you |
|
Tags |
ami, dynamicmeshdict, rotation |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
AMI speed performance | danny123 | OpenFOAM | 21 | October 24, 2020 04:13 |
Flowrate at inlet and outlet not balancing ( centrifugal pump ) -- pimpleDyMFoam | coolcrasher | OpenFOAM Running, Solving & CFD | 20 | November 25, 2015 05:33 |
[swak4Foam] expressionField + execFlowFunctionObjects + AMI | pbachant | OpenFOAM Community Contributions | 0 | July 16, 2015 01:09 |
GGI -> AMI stability | jiejie | OpenFOAM Running, Solving & CFD | 10 | May 9, 2013 23:18 |
[Other] Problem when case with AMI | A.A. | OpenFOAM Meshing & Mesh Conversion | 1 | October 4, 2012 11:54 |