How to Include particle implicit and EXPLICIT source terms in VOF momentum equation
2 Attachment(s)
hello
i intend to couple VOF (interFoam) & DPMFOAM but have some problems in including particle implicit and explicit terms in VOF momentum equation. i have ask my questions in bold and underined style within the codes. i really appreciate annnnny help my momentum question is (4.53): Attachment 41544 so i wrote the equation as: Code:
1. fvVectorMatrix UEqn with regards |
annyy reply!
oh pleassssse! :( |
OK, here is any reply: I am stuck, too.
However, may I show how far I got. I introduced the kinematicCollidingCloud in the beginning of the interFoam.C and added the necessary fields in createFields.H: tmp<surfaceScalarField> tphiAlphaCorr0; word kinematicCloudName("kinematicCloud"); args.optionReadIfPresent("cloudName", kinematicCloudName); Info<< "Constructing kinematicCloud " << kinematicCloudName << endl; basicKinematicCollidingCloud kinematicCloud //basicKinematicCollidingCloud ( kinematicCloudName, rhoInf, U, mu, g ); IOobject Hheader ( "H", runTime.timeName(), mesh, IOobject::MUST_READ, IOobject::AUTO_WRITE ); autoPtr<volVectorField> HPtr; if (Hheader.headerOk()) { Info<< "\nReading field H\n" << endl; HPtr.reset(new volVectorField (Hheader, mesh)); } IOobject HdotGradHheader ( "HdotGradH", runTime.timeName(), mesh, IOobject::MUST_READ, IOobject::AUTO_WRITE ); autoPtr<volVectorField> HdotGradHPtr; if (HdotGradHheader.headerOk()) { Info<< "Reading field HdotGradH" << endl; HdotGradHPtr.reset(new volVectorField(HdotGradHheader, mesh)); } #include "createNonInertialFrameFields.H" For my first approach I neglected the alpha phase reduction due to particles present. I added in interFoam.C simply after the alpha transport equations: mu = threePhaseProperties.nu()*rhoInfValue; // needed for cloud, adapt to phases kinematicCloud.evolve(); fvVectorMatrix cloudSU(kinematicCloud.SU(U));//rate of momentum exchange per volume volVectorField cloudVolSUSu ( IOobject ( "cloudVolSUSu", runTime.timeName(), mesh ), mesh, dimensionedVector ( "0", cloudSU.dimensions()/dimVolume, vector::zero ), zeroGradientFvPatchVectorField::typeName ); cloudVolSUSu.internalField() = -cloudSU.source()/mesh.V(); cloudVolSUSu.correctBoundaryConditions(); cloudSU.source() = vector::zero; Info<<min(kinematicCloud.UTrans())<<endl; Info<<min(kinematicCloud.UCoeff())<<endl; Info<<max(kinematicCloud.UTrans())<<endl; Info<<max(kinematicCloud.UCoeff())<<endl; and in the UEqun the corresponding momentum as ' == cloudSU'. The solver runs with particles colliding at the walls but crashes when particles collide with each other. However, that might be due to my little knowledge about lagrangian cloud stability... |
All times are GMT -4. The time now is 21:17. |