From 1d93885257c4b655e7ad10e3d385698ab8f2b2ea Mon Sep 17 00:00:00 2001 From: andy Date: Tue, 26 Nov 2013 15:01:53 +0000 Subject: [PATCH] ENH: surface film - updated Courant number calculation --- .../kinematicSingleLayer/kinematicSingleLayer.C | 15 +++++++++------ .../kinematicSingleLayer/kinematicSingleLayer.H | 3 +++ 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/src/regionModels/surfaceFilmModels/kinematicSingleLayer/kinematicSingleLayer.C b/src/regionModels/surfaceFilmModels/kinematicSingleLayer/kinematicSingleLayer.C index 26e2936f31..347e3ddb89 100644 --- a/src/regionModels/surfaceFilmModels/kinematicSingleLayer/kinematicSingleLayer.C +++ b/src/regionModels/surfaceFilmModels/kinematicSingleLayer/kinematicSingleLayer.C @@ -440,6 +440,7 @@ kinematicSingleLayer::kinematicSingleLayer cumulativeContErr_(0.0), deltaSmall_("deltaSmall", dimLength, SMALL), + deltaCoLimit_(solution().lookupOrDefault("deltaCoLimit", 1e-4)), rho_ ( @@ -898,15 +899,17 @@ scalar kinematicSingleLayer::CourantNumber() const if (regionMesh().nInternalFaces() > 0) { - const scalarField sumPhi(fvc::surfaceSum(mag(phi_))); + const scalarField sumPhi + ( + fvc::surfaceSum(mag(phi_))().internalField() + / (deltaRho_.internalField() + ROOTVSMALL) + ); - const scalarField& V = regionMesh().V(); - - forAll(deltaRho_, i) + forAll(delta_, i) { - if (deltaRho_[i] > SMALL) + if (delta_[i] > deltaCoLimit_) { - CoNum = max(CoNum, sumPhi[i]/deltaRho_[i]/V[i]); + CoNum = max(CoNum, sumPhi[i]/(delta_[i]*magSf()[i])); } } diff --git a/src/regionModels/surfaceFilmModels/kinematicSingleLayer/kinematicSingleLayer.H b/src/regionModels/surfaceFilmModels/kinematicSingleLayer/kinematicSingleLayer.H index 197895c844..181a58b68b 100644 --- a/src/regionModels/surfaceFilmModels/kinematicSingleLayer/kinematicSingleLayer.H +++ b/src/regionModels/surfaceFilmModels/kinematicSingleLayer/kinematicSingleLayer.H @@ -100,6 +100,9 @@ protected: //- Small delta const dimensionedScalar deltaSmall_; + //- Film thickness above which Courant number calculation in valid + scalar deltaCoLimit_; + // Thermo properties