From 761ccd2bb3faab3ea4830b3ee7eceaf562bcd2f2 Mon Sep 17 00:00:00 2001 From: andy <a.heather@opencfd.co.uk> Date: Fri, 20 Feb 2009 19:12:27 +0000 Subject: [PATCH] updates --- .../InjectionModel/InjectionModel.C | 44 +++++++++++-------- .../InjectionModel/InjectionModel.H | 6 +-- 2 files changed, 29 insertions(+), 21 deletions(-) diff --git a/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/InjectionModel/InjectionModel.C b/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/InjectionModel/InjectionModel.C index 65d0ac295f7..e6729e18bb2 100644 --- a/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/InjectionModel/InjectionModel.C +++ b/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/InjectionModel/InjectionModel.C @@ -127,10 +127,10 @@ template<class CloudType> Foam::scalar Foam::InjectionModel<CloudType>::setNumberOfParticles ( const label parcels, - const scalar diameter, + const scalar volume const scalar volumeFraction, + const scalar diameter, const scalar rho, - const scalar volume ) { scalar nP = 0.0; @@ -294,30 +294,38 @@ void Foam::InjectionModel<CloudType>::inject(TrackData& td) vector pos = vector::zero; setPositionAndCell(iParcel, timeInj, owner_.meshInfo(), pos, cellI); - // Diameter of parcels - scalar d = d0(iParcel, timeInj); + if (cellI >= 0) + { + // Diameter of parcels + scalar d = d0(iParcel, timeInj); - // Number of particles per parcel - scalar nP = setNumberOfParticles - ( - newParcels, - d, - volFraction, - rho, - newVolume - ); + // Number of particles per parcel + scalar nP = setNumberOfParticles + ( + newParcels, + newVolume, + volFraction, + d, + rho + ); - // Velocity of parcels - vector U = velocity(iParcel, timeInj, owner_.meshInfo()); + // Velocity of parcels + vector U = velocity(iParcel, timeInj, owner_.meshInfo()); - if (cellI >= 0) - { + // Lagrangian timestep scalar dt = time - timeInj; - td.cloud().addNewParcel(pos, cellI, d, U, nP, dt); + // Add the new parcel + td.cloud().addNewParcel(pos, cellI, d, U, nP, dt); massInjected_ += nP*rho*mathematicalConstant::pi*pow3(d)/6.0; parcelsAdded_++; } + else + { + WarningIn("Foam::InjectionModel<CloudType>::inject(TrackData& td)") + << "Failed to inject new parcel:" << + << " id = " << iParcel << ", position = " pos << nl << endl; + } } postInjectCheck(); diff --git a/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/InjectionModel/InjectionModel.H b/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/InjectionModel/InjectionModel.H index aad8f1a6c66..0c6b9f69a7e 100644 --- a/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/InjectionModel/InjectionModel.H +++ b/src/lagrangian/intermediate/submodels/Kinematic/InjectionModel/InjectionModel/InjectionModel.H @@ -170,10 +170,10 @@ protected: scalar setNumberOfParticles ( const label parcels, - const scalar diameter, + const scalar volume, const scalar volumeFraction, - const scalar rho, - const scalar volume + const scalar diameter, + const scalar rho ); //- Post injection checks -- GitLab