|
[Sponsors] |
July 3, 2015, 07:27 |
Particle tracking in and after MRF
|
#1 |
New Member
Andreas V.
Join Date: Jul 2014
Posts: 15
Rep Power: 12 |
Hi
I am trying to simulate a particle laden air flow in a turbomachinery setup. The setup is a rectangular tunnel with a rotor and a nacelle in the middle. To simulate the rotation of the rotor I am using a multiple reference frame (MRF) approach (in defined in snappyHexmMesh and fvOptions). The solver is simpleReactingParcleFoam. snappyHexMesh: Code:
geometry { Dynamic6.stl {type triSurfaceMesh; name Dynamic;} Nacelle.stl {type triSurfaceMesh; name Nacelle;} MRFcylinder { type searchableCylinder; point1 (7.9 0 0); point2 (9.1 0 0); radius 1.27; name MRFcylinder; } cylinder {type searchableCylinder; point1 (9.1 0 0); point2 (11.8 0 0); radius 1.27;} }; //----------------------------------------- castellatedMeshControls { // Refinement parameters maxLocalCells 10000000; maxGlobalCells 20000000; minRefinementCells 10; maxLoadUnbalance 0.10; nCellsBetweenLevels 3; // Explicit feature edge refinement features ( // {file "Dynamic_advanced.eMesh"; level 4;} {file "Dynamic6.eMesh"; level 2;} {file "Nacelle.eMesh"; level 2;} ); // Surface based refinement refinementSurfaces { Dynamic {level (5 6); patchInfo {type wall;}} Nacelle {level (5 6); patchInfo {type wall;}} MRFcylinder { level (5 6); patchInfo {type patch;} faceZone MRF; //name of faceZone cellZone MRF; // name of cellZone cellZoneInside inside; // to include all cells inside enclosed cyl. } } Code:
MRF1 { type MRFSource; active true; selectionMode cellZone; cellZone MRF; MRFSourceCoeffs { nonRotatingPatches ( inlet outlet walls Nacelle ); // Fixed patches (by default they 'move' with the MRF zone) origin (10 0 0); //1.2 axis (1 0 0); omega constant 260;//=1900rpm (V=d*pi*n; v=omega*r) } } Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.3.0 | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; location "constant"; object reactingCloud1Properties; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // solution { active true; coupled true; transient no;//no; calcFrequency 10; maxTrackTime 5; maxCo 0.3; cellValueSourceCorrection on; sourceTerms { resetOnStartup false; schemes { rho semiImplicit 1; U semiImplicit 1; Yi semiImplicit 1; h semiImplicit 1; radiation semiImplicit 1; } } interpolationSchemes { rho cell; U cellPoint; thermo:mu cell; T cell; Cp cell; kappa cell; p cell; } integrationSchemes { U Euler; T analytical; } } constantProperties { rho0 1000; T0 350; Cp0 4100; constantVolume false; } subModels { particleForces { sphereDrag; gravity; } injectionModels { model1 { type patchInjection; massFlowRate 0.8e-05; parcelBasisType mass; patchName inlet; parcelsPerSecond 500; duration 1; // NOTE: set to 1 for steady state U0 (300 0 0); position (0 0 0); direction (1 0 0); flowRateProfile constant 1; sizeDistribution { type general; //fixedValue; generalDistribution //fixedValueDistribution { distribution ( (10e-07 0.0025) (15e-07 0.0528) (20e-07 0.2795) (25e-07 1.0918) (30e-07 2.3988) (35e-07 4.4227) (40e-07 6.3888) (45e-07 8.6721) (50e-07 10.3153) (55e-07 11.6259) (60e-07 12.0030) (65e-07 10.4175) (70e-07 10.8427) (75e-07 8.0016) (80e-07 6.1333) (85e-07 3.8827) (90e-07 3.4688) ); } } } } dispersionModel stochasticDispersionRAS; patchInteractionModel none;//standardWallInteraction; heatTransferModel none;//RanzMarshall; compositionModel singleMixtureFraction; phaseChangeModel none; //liquidEvaporation; devolatilisationModel none; surfaceReactionModel none; stochasticCollisionModel none; surfaceFilmModel none; radiation off; standardWallInteractionCoeffs { type rebound; } /*RanzMarshallCoeffs { BirdCorrection off; }*/ singleMixtureFractionCoeffs { phases ( gas { } liquid { } solid { ash 1; } ); YGasTot0 0; YLiquidTot0 0; YSolidTot0 1; } /*liquidEvaporationCoeffs { enthalpyTransfer enthalpyDifference; activeLiquids ( H2O ); }*/ } cloudFunctions { patchPostProcessing1 { type patchPostProcessing; maxStoredParcels 200; //100 patches ( inlet ); //( outlet ); } particleTracks1 { type particleTracks; trackInterval 5; //5; maxSamples 100000; resetOnWrite yes; } } My problem is that the flow profile and the streamlines look quite ok, but the particle "stuck" somehow at the dynamic part. Also there is a small discontinuity in the the streamline at the dynamic part. I checked nearly every single setting option (variation in rotational speed, size of the particles, different inlet velocities, k and epsilon values etc.) without success. I would be more than grateful if someone of you experienced openFoam experts could take a look into my settings or if someone has a hint how to get rid of this effect. Thank you! Andreas |
|
July 6, 2015, 09:36 |
|
#2 |
New Member
Andreas V.
Join Date: Jul 2014
Posts: 15
Rep Power: 12 |
Does nobody has a suggestion or idea??
I would be very much thankful.. |
|
|
|