|
[Sponsors] |
Incorrect calculations of overset small-gap-multifloats |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
November 25, 2023, 04:31 |
Incorrect calculations of overset small-gap-multifloats
|
#1 |
New Member
Tianyuan Wang
Join Date: Oct 2023
Posts: 4
Rep Power: 3 |
I recently used OF to simulate a coaxial double-float device. The inner float does not move (it will move later, so it is made into an overset), the outer float initial displacement is -1m to do the free decay test.
The inner float overset is larger and wraps around the outer float overset. The current calculations show that the outer floater has a negative velocity for the first few seconds, which is non-physical. Outer floater alone / inner floater alone / outer floater overset + inner floater background are all normal. I tried to modify oversetInterpolation method, add oversetInterpolationSuppressed and oversetInterpolationRequired, add oversetAdjustPhi in PIMPLE, and modtify dynamicMeshDict. None of them work. I'm assuming it's caused by overset interpolation. Could anyone give me some advice on it? fvSchemes /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: v2306 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; object fvSchemes; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // ddtSchemes { default Euler; } gradSchemes { default Gauss linear; } divSchemes { div(rhoPhi,U) Gauss limitedLinearV 1; div(U) Gauss linear; div(phi,alpha) Gauss vanLeer; div(phirb,alpha) Gauss linear; div(((rho*nuEff)*dev2(T(grad(U))))) Gauss linear; div(phi,k) Gauss upwind; div(phi,epsilon) Gauss upwind; div(phi,omega) Gauss upwind; } laplacianSchemes { default Gauss linear corrected; } interpolationSchemes { default linear; } snGradSchemes { default corrected; } oversetInterpolation { method inverseDistance; } fluxRequired { default no; p_rgh; pcorr; alpha.water; } wallDist { method meshWave; //method Poisson; } oversetInterpolationSuppressed { grad(p_rgh); surfaceIntegrate(phiHbyA); } /* oversetInterpolationRequired { k; epsilon; omega; nut; alpha.water; } */ // ************************************************** *********************** //[/CODE] fvSolution /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: v2306 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; object fvSolution; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // solvers { "cellDisplacement.*" { solver PCG; preconditioner DIC; tolerance 1e-06; relTol 0; maxIter 100; } "alpha.water.*" { nAlphaCorr 2; nAlphaSubCycles 1; cAlpha 1; icAlpha 0; MULESCorr yes; nLimiterIter 5; alphaApplyPrevCorr no; solver smoothSolver; smoother symGaussSeidel; tolerance 1e-08; relTol 0; } "pcorr.*" { solver PCG; preconditioner DIC; tolerance 1e-09; relTol 0; } p_rgh { solver PBiCGStab; preconditioner DILU; tolerance 1e-09; relTol 0.01; } p_rghFinal { $p_rgh; relTol 0; } "(U|k|omega|epsilon).*" { solver smoothSolver; smoother symGaussSeidel; tolerance 1e-08; relTol 0; } yPsi { solver PBiCGStab; preconditioner DILU; tolerance 1e-6; relTol 0.0; } yPsiFinal { $yPsi; relTol 0; } } PIMPLE { momentumPredictor no; nOuterCorrectors 5; nCorrectors 2; nNonOrthogonalCorrectors 1; ddtCorr yes; correctPhi no; moveMeshOuterCorrectors no; turbOnFinalIterOnly no; oversetAdjustPhi yes; } relaxationFactors { fields { } equations { ".*" 1; } } cache { grad(U); } // ************************************************** *********************** //[/CODE] dynamicMeshDict /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: v2306 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; object dynamicMeshDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dynamicFvMesh dynamicOversetFvMesh; solvers { dynamicPlatform { motionSolverLibs (libfvMotionSolvers); motionSolver multiSolidBodyMotionSolver; multiSolidBodyMotionSolverCoeffs { zonePlatform { solidBodyMotionFunction linearMotion; linearMotionCoeffs { velocity (0 0 0); } } } } dynamicWECMiddle { motionSolverLibs (librigidBodyMeshMotion); motionSolver rigidBodyMotion; report on; cellSet cellWECMiddle; cOfGdisplacement CofG; bodyIdCofG 1; solver { type Newmark; } accelerationRelaxation 0.8; accelerationDamping 0.9; nIter 3; bodies { dynamicWECMiddle { type rigidBody; parent root; mass 2.0126e+06; centreOfMass (0 0 0); // COG in the local coordinate system, based on transform inertia (1.3312e+08 0 0 1.3312e+08 0 2.1384e+08); // (Ixx Ixy Ixz Iyy Iyz Izz) transform (1 0 0 0 1 0 0 0 1) (0 0 -1); joint { type Pz; } patches ( WECMiddle ); innerDistance 100; outerDistance 101; } } restraints { } /* motionSolverLibs (sixDoFRigidBodyMotion); motionSolver sixDoFRigidBodyMotion; cellSet cellWECMiddle; patches (WECMiddle); innerDistance 100; outerDistance 101; centreOfMass (0 0 -1); cOfGdisplacement CofG; mass 2.0126e+06; momentOfInertia (1.3312e+08 1.3312e+08 2.1384e+08); report on; accelerationRelaxation 0.8; accelerationDamping 0.9; solver { type Newmark; } constraints { zAxis { sixDoFRigidBodyMotionConstraint line; direction (0 0 1); } } */ } } // ************************************************** *********************** //[/CODE] 0 /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: v2306 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class volScalarField; object alpha.water; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dimensions [0 0 0 0 0 0 0]; internalField uniform 0; boundaryField { #includeEtc "caseDicts/setConstraintTypes" inlet { type zeroGradient; } outlet { type zeroGradient; } "(rightSide|leftSide)" { type zeroGradient; } lowerSide { type zeroGradient; } atmosphere { type inletOutlet; inletValue $internalField; value $internalField; } oversetWECMiddle { type overset; } WECMiddle { type zeroGradient; } oversetPlatform { type overset; } platform { type zeroGradient; } } // ************************************************** *********************** // /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: v2306 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class volScalarField; object p_rgh; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dimensions [1 -1 -2 0 0 0 0]; internalField uniform 0; boundaryField { #includeEtc "caseDicts/setConstraintTypes" inlet { type fixedFluxPressure; value $internalField; } outlet { type fixedFluxPressure; value $internalField; } "(rightSide|leftSide)" { type fixedFluxPressure; value $internalField; } lowerSide { type fixedFluxPressure; value $internalField; } atmosphere { type totalPressure; p0 $internalField; } oversetWECMiddle { type overset; } WECMiddle { type fixedFluxPressure; } oversetPlatform { type overset; } platform { type fixedFluxPressure; } } // ************************************************** *********************** // /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: v2306 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class pointVectorField; object pointDisplacement; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dimensions [0 1 0 0 0 0 0]; internalField uniform (0 0 0); boundaryField { #includeEtc "caseDicts/setConstraintTypes" inlet { type fixedValue; value $internalField; } outlet { type fixedValue; value $internalField; } "(rightSide|leftSide)" { type fixedValue; value $internalField; } lowerSide { type fixedValue; value $internalField; } atmosphere { type fixedValue; value $internalField; } oversetWECMiddle { patchType overset; type zeroGradient; } WECMiddle { type calculated; value $internalField; } oversetPlatform { patchType overset; type zeroGradient; } platform { type fixedValue; value $internalField; } } // ************************************************** *********************** // /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: v2306 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class volVectorField; object U; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dimensions [0 1 -1 0 0 0 0]; internalField uniform (0 0 0); boundaryField { #includeEtc "caseDicts/setConstraintTypes" inlet { type waveVelocity; value $internalField; } outlet { type waveVelocity; value $internalField; } "(rightSide|leftSide)" { type waveVelocity; value $internalField; } lowerSide { type fixedValue; value $internalField; } atmosphere { type pressureInletOutletVelocity; value $internalField; } oversetWECMiddle { type overset; } WECMiddle { type movingWallVelocity; value $internalField; } oversetPlatform { type overset; } platform { type fixedValue; value $internalField; } } // ************************************************** *********************** // |
|
November 25, 2023, 08:23 |
|
#2 |
New Member
Tianyuan Wang
Join Date: Oct 2023
Posts: 4
Rep Power: 3 |
Hello Dr. Tobias https://www.cfd-online.com/Forums/blogs/tobi/
Could you give me some help on this issue? Many thanks Tianyuan |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
[snappyHexMesh] .STL: non-closed manifold surface | giulio.topazio | OpenFOAM Meshing & Mesh Conversion | 32 | November 25, 2016 04:15 |
[snappyHexMesh] No layers in a small gap | bobburnquist | OpenFOAM Meshing & Mesh Conversion | 6 | August 26, 2015 10:38 |
[snappyHexMesh] Meshing a small gap between walls | staustrahltriebwerk | OpenFOAM Meshing & Mesh Conversion | 1 | July 23, 2012 12:46 |
Compressible Flow through small gap | Andreas | FLUENT | 0 | May 19, 2006 11:11 |
turbulence model for oil flow thr' small gap | carno | Siemens | 2 | August 31, 2005 09:12 |