From f2d170a2150652335ee396713201fe338d8d1385 Mon Sep 17 00:00:00 2001 From: andy <a.heather@opencfd.co.uk> Date: Mon, 18 Oct 2010 17:41:31 +0100 Subject: [PATCH] ENH: Re-shuffled particle parcelTypeId label and radition flag --- .../Templates/KinematicCloud/KinematicCloud.C | 1 - .../Templates/KinematicCloud/KinematicCloud.H | 7 ------- .../KinematicCloud/KinematicCloudI.H | 7 ------- .../Templates/ThermoCloud/ThermoCloud.C | 2 +- .../KinematicParcel/KinematicParcel.H | 7 +++++++ .../KinematicParcel/KinematicParcelI.H | 11 ++++++++++- .../constant/coalCloud1Properties | 17 +++++++++++------ .../constant/limestoneCloud1Properties | 16 ++++++++++------ .../filter/constant/reactingCloud1Properties | 19 ++++++++++++------- .../constant/reactingCloud1Properties | 19 ++++++++++++------- .../constant/reactingCloud1Properties | 19 ++++++++++++------- .../constant/reactingCloud1Properties | 16 ++++++++++------ .../constant/reactingCloud1Properties | 18 +++++++++++------- .../constant/reactingCloud1Properties | 18 +++++++++++------- .../panel/constant/reactingCloud1Properties | 18 +++++++++++------- .../constant/reactingCloud1Properties | 18 +++++++++++------- .../constant/kinematicCloud1Properties | 6 ++++-- .../constant/thermoCloud1Properties | 16 ++++++++++------ 18 files changed, 143 insertions(+), 92 deletions(-) diff --git a/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloud.C b/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloud.C index bbb730bb626..f73a9229bed 100644 --- a/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloud.C +++ b/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloud.C @@ -318,7 +318,6 @@ Foam::KinematicCloud<ParcelType>::KinematicCloud solution_(mesh_, particleProperties_.subDict("solution")), constProps_(particleProperties_), subModelProperties_(particleProperties_.subDict("subModels")), - parcelTypeId_(readLabel(particleProperties_.lookup("parcelTypeId"))), cellValueSourceCorrection_ ( particleProperties_.lookup("cellValueSourceCorrection") diff --git a/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloud.H b/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloud.H index e86954ef810..f9a203b4ae6 100644 --- a/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloud.H +++ b/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloud.H @@ -201,10 +201,6 @@ protected: //- Sub-models dictionary const dictionary& subModelProperties_; - //- Parcel type id - used to flag the type of parcels issued by this - // cloud - const label parcelTypeId_; - //- Flag to correct cell values with latest transfer information // during the lagrangian timestep const Switch cellValueSourceCorrection_; @@ -361,9 +357,6 @@ public: // Cloud data - //- Return the parcel type id - inline label parcelTypeId() const; - //- Return refernce to the random object inline Random& rndGen(); diff --git a/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloudI.H b/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloudI.H index 7a924d6c65d..d3078fbb1b7 100644 --- a/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloudI.H +++ b/src/lagrangian/intermediate/clouds/Templates/KinematicCloud/KinematicCloudI.H @@ -93,13 +93,6 @@ inline bool Foam::KinematicCloud<ParcelType>::hasWallImpactDistance() const } -template<class ParcelType> -inline Foam::label Foam::KinematicCloud<ParcelType>::parcelTypeId() const -{ - return parcelTypeId_; -} - - template<class ParcelType> inline const Foam::fvMesh& Foam::KinematicCloud<ParcelType>::mesh() const { diff --git a/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloud.C b/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloud.C index 8571238db1c..6790c8bb12f 100644 --- a/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloud.C +++ b/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloud.C @@ -170,7 +170,7 @@ Foam::ThermoCloud<ParcelType>::ThermoCloud this->solution().integrationSchemes() ) ), - radiation_(this->particleProperties().lookup("radiation")), + radiation_(this->subModelProperties().lookup("radiation")), hsTrans_ ( IOobject diff --git a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.H b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.H index 7ff71216d80..f88672be6e2 100644 --- a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.H +++ b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.H @@ -96,6 +96,10 @@ public: //- Constant properties dictionary const dictionary dict_; + //- Parcel type id - used for post-processing to flag the type + // of parcels issued by this cloud + const label parcelTypeId_; + //- Minimum density [kg/m3] const scalar rhoMin_; @@ -122,6 +126,9 @@ public: //- Return const access to the constant properties dictionary inline const dictionary& dict() const; + //- Return const access to the parcel type id + inline label parcelTypeId() const; + //- Return const access to the minimum density inline scalar rhoMin() const; diff --git a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelI.H b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelI.H index 855c8add6ce..6b0cb76ba24 100644 --- a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelI.H +++ b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelI.H @@ -36,6 +36,7 @@ inline Foam::KinematicParcel<ParcelType>::constantProperties::constantProperties ) : dict_(parentDict.subDict("constantProperties")), + parcelTypeId_(readLabel(dict_.lookup("parcelTypeId"))), rhoMin_(readScalar(dict_.lookup("rhoMin"))), rho0_(readScalar(dict_.lookup("rho0"))), minParticleMass_(readScalar(dict_.lookup("minParticleMass"))), @@ -79,7 +80,7 @@ inline Foam::KinematicParcel<ParcelType>::KinematicParcel : Particle<ParcelType>(owner, position, cellI, tetFaceI, tetPtI), active_(true), - typeId_(owner.parcelTypeId()), + typeId_(owner.constProps().parcelTypeId()), nParticle_(0), d_(0.0), dTarget_(0.0), @@ -146,6 +147,14 @@ Foam::KinematicParcel<ParcelType>::constantProperties::dict() const } +template<class ParcelType> +inline Foam::label +Foam::KinematicParcel<ParcelType>::constantProperties::parcelTypeId() const +{ + return parcelTypeId_; +} + + template <class ParcelType> inline Foam::scalar Foam::KinematicParcel<ParcelType>::constantProperties::rhoMin() const diff --git a/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/constant/coalCloud1Properties b/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/constant/coalCloud1Properties index c965f964c8b..52dfc816b10 100644 --- a/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/constant/coalCloud1Properties +++ b/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/constant/coalCloud1Properties @@ -38,28 +38,31 @@ solution } } -radiation on; - -parcelTypeId 1; - constantProperties { + parcelTypeId 1; + rhoMin 1e-15; TMin 200; pMin 1000; minParticleMass 1e-15; + rho0 1000; - youngsModulus 2e9; - poissonsRatio 0.35; T0 300; cp0 4187; + + youngsModulus 2e9; + poissonsRatio 0.35; + epsilon0 1; f0 0.5; + Pr 0.7; Tvap 400; Tbp 400; LDevol 0; hRetentionCoeff 1; + constantVolume true; } @@ -97,6 +100,8 @@ subModels SurfaceFilmModel none; + radiation on; + ManualInjectionCoeffs { massTotal massTotal [ 1 0 0 0 0 ] 0.0001; diff --git a/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/constant/limestoneCloud1Properties b/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/constant/limestoneCloud1Properties index 0524272eb69..0d8c7a1bbda 100644 --- a/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/constant/limestoneCloud1Properties +++ b/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/constant/limestoneCloud1Properties @@ -37,22 +37,24 @@ solution } } -radiation on; - -parcelTypeId 2; - constantProperties { + parcelTypeId 2; + rhoMin 1e-15; TMin 200; minParticleMass 1e-15; + rho0 2500; - youngsModulus 40e9; - poissonsRatio 0.25; T0 300; cp0 900; + + youngsModulus 40e9; + poissonsRatio 0.25; + epsilon0 1; f0 0.5; + Pr 0.7; } @@ -82,6 +84,8 @@ subModels SurfaceFilmModel none; + radiation on; + ManualInjectionCoeffs { massTotal massTotal [ 1 0 0 0 0 ] 0.0001; diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/constant/reactingCloud1Properties b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/constant/reactingCloud1Properties index 8244491a541..7a779261f0e 100644 --- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/constant/reactingCloud1Properties +++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/constant/reactingCloud1Properties @@ -38,28 +38,31 @@ solution } } -radiation off; - -parcelTypeId 1; - constantProperties { + parcelTypeId 1; + rhoMin 1e-15; TMin 200; pMin 1000; - rho0 1000; - youngsModulus 1e9; - poissonsRatio 0.35; minParticleMass 1e-15; + + rho0 1000; T0 300; cp0 4100; + + youngsModulus 1e9; + poissonsRatio 0.35; + epsilon0 1; f0 0.5; + Pr 0.7; Tvap 273; Tbp 373; LDevol 0; hRetentionCoeff 1; + constantVolume false; } @@ -97,6 +100,8 @@ subModels CollisionModel none; + radiation off; + ReactingMultiphaseLookupTableInjectionCoeffs { massTotal massTotal [ 1 0 0 0 0 ] 1e-2; diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/constant/reactingCloud1Properties b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/constant/reactingCloud1Properties index 5a4ad7e9150..d94a42daa15 100644 --- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/constant/reactingCloud1Properties +++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/parcelInBox/constant/reactingCloud1Properties @@ -38,28 +38,31 @@ solution } } -radiation off; - -parcelTypeId 1; - constantProperties { + parcelTypeId 1; + rhoMin 1e-15; TMin 200; pMin 1000; - rho0 1000; - youngsModulus 1e9; - poissonsRatio 0.35; minParticleMass 1e-15; + + rho0 1000; T0 350; cp0 4100; + + youngsModulus 1e9; + poissonsRatio 0.35; + epsilon0 1; f0 0.5; + Tvap 284; Tbp 373; Pr 0.7; LDevol 0; hRetentionCoeff 1; + constantVolume false; } @@ -99,6 +102,8 @@ subModels CollisionModel none; + radiation off; + ManualInjectionCoeffs { massTotal massTotal [ 1 0 0 0 0 ] 5.23599e-10; // 1 droplet of density 1000 kg/m3 diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/constant/reactingCloud1Properties b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/constant/reactingCloud1Properties index 4c127591eb2..801cae7f952 100644 --- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/constant/reactingCloud1Properties +++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/verticalChannel/constant/reactingCloud1Properties @@ -38,28 +38,31 @@ solution } } -radiation off; - -parcelTypeId 1; - constantProperties { + parcelTypeId 1; + rhoMin 1e-15; TMin 200; pMin 1000; - rho0 1000; - youngsModulus 1e9; - poissonsRatio 0.35; minParticleMass 1e-15; + + rho0 1000; T0 350; cp0 4100; + + youngsModulus 1e9; + poissonsRatio 0.35; + epsilon0 1; f0 0.5; + Tvap 273; Tbp 373; Pr 0.7; LDevol 0; hRetentionCoeff 1; + constantVolume false; } @@ -99,6 +102,8 @@ subModels CollisionModel none; + radiation off; + PatchInjectionCoeffs { SOI 0.01; diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/evaporationTest/constant/reactingCloud1Properties b/tutorials/lagrangian/reactingParcelFilmFoam/evaporationTest/constant/reactingCloud1Properties index 33a3f9916d2..541dc8af58f 100644 --- a/tutorials/lagrangian/reactingParcelFilmFoam/evaporationTest/constant/reactingCloud1Properties +++ b/tutorials/lagrangian/reactingParcelFilmFoam/evaporationTest/constant/reactingCloud1Properties @@ -38,27 +38,29 @@ solution } } -radiation off; - -parcelTypeId 1; - constantProperties { + parcelTypeId 1; + rhoMin 1e-15; TMin 200; pMin 1000; - rho0 1000; minParticleMass 1e-15; + + rho0 1000; T0 300; cp0 4187; + epsilon0 1; f0 0.5; + Pr 0.7; Tvap 273; Tbp 373; - constantVolume false; youngsModulus 0; poissonsRatio 0; + + constantVolume false; } particleForces @@ -91,6 +93,8 @@ subModels SurfaceFilmModel ThermoSurfaceFilm; + radiation off; + StandardWallInteractionCoeffs { type rebound; diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/hotBoxes/constant/reactingCloud1Properties b/tutorials/lagrangian/reactingParcelFilmFoam/hotBoxes/constant/reactingCloud1Properties index 50a9d547465..97eeae1d513 100644 --- a/tutorials/lagrangian/reactingParcelFilmFoam/hotBoxes/constant/reactingCloud1Properties +++ b/tutorials/lagrangian/reactingParcelFilmFoam/hotBoxes/constant/reactingCloud1Properties @@ -38,26 +38,28 @@ solution } } -radiation off; - -parcelTypeId 1; - constantProperties { + parcelTypeId 1; + rhoMin 1e-15; TMin 200; pMin 1000; - rho0 1000; - youngsModulus 0; - poissonsRatio 0; minParticleMass 1e-15; + + rho0 1000; T0 300; cp0 4187; + + youngsModulus 0; + poissonsRatio 0; + epsilon0 1; f0 0.5; Pr 0.7; Tvap 273; Tbp 373; + constantVolume false; } @@ -91,6 +93,8 @@ subModels SurfaceFilmModel ThermoSurfaceFilm; // none; + radiation off; + ConeInjectionCoeffs { SOI 0.000; diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/constant/reactingCloud1Properties b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/constant/reactingCloud1Properties index 4eaa6683108..cf917e1058c 100644 --- a/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/constant/reactingCloud1Properties +++ b/tutorials/lagrangian/reactingParcelFilmFoam/multipleBoxes/constant/reactingCloud1Properties @@ -38,26 +38,28 @@ solution } } -radiation off; - -parcelTypeId 1; - constantProperties { + parcelTypeId 1; + rhoMin 1e-15; TMin 200; pMin 1000; - rho0 1000; - youngsModulus 1e9; - poissonsRatio 0.35; minParticleMass 1e-15; + + rho0 1000; T0 300; cp0 4187; + + youngsModulus 1e9; + poissonsRatio 0.35; + epsilon0 1; f0 0.5; Pr 0.7; Tvap 273; Tbp 373; + constantVolume false; } @@ -91,6 +93,8 @@ subModels SurfaceFilmModel ThermoSurfaceFilm; // none; + radiation off; + ConeInjectionMPCoeffs { SOI 0.000; diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/panel/constant/reactingCloud1Properties b/tutorials/lagrangian/reactingParcelFilmFoam/panel/constant/reactingCloud1Properties index dc73bbf25db..ae3045dec60 100644 --- a/tutorials/lagrangian/reactingParcelFilmFoam/panel/constant/reactingCloud1Properties +++ b/tutorials/lagrangian/reactingParcelFilmFoam/panel/constant/reactingCloud1Properties @@ -38,26 +38,28 @@ solution } } -radiation off; - -parcelTypeId 1; - constantProperties { + parcelTypeId 1; + rhoMin 1e-15; TMin 200; pMin 1000; - rho0 1000; - youngsModulus 1e9; - poissonsRatio 0.35; minParticleMass 1e-15; + + rho0 1000; T0 300; cp0 4187; + + youngsModulus 1e9; + poissonsRatio 0.35; + epsilon0 1; f0 0.5; Pr 0.7; Tvap 273; Tbp 373; + constantVolume false; } @@ -91,6 +93,8 @@ subModels SurfaceFilmModel ThermoSurfaceFilm; + radiation off; + StandardWallInteractionCoeffs { type rebound; diff --git a/tutorials/lagrangian/reactingParcelFoam/evaporationTest/constant/reactingCloud1Properties b/tutorials/lagrangian/reactingParcelFoam/evaporationTest/constant/reactingCloud1Properties index 33aba59d3e9..2e29d9d77fd 100644 --- a/tutorials/lagrangian/reactingParcelFoam/evaporationTest/constant/reactingCloud1Properties +++ b/tutorials/lagrangian/reactingParcelFoam/evaporationTest/constant/reactingCloud1Properties @@ -38,26 +38,28 @@ solution } } -radiation off; - -parcelTypeId 1; - constantProperties { + parcelTypeId 1; + rhoMin 1e-15; TMin 200; pMin 1000; - rho0 1000; - youngsModulus 1e9; - poissonsRatio 0.35; minParticleMass 1e-15; + + rho0 1000; T0 300; cp0 4187; + + youngsModulus 1e9; + poissonsRatio 0.35; + epsilon0 1; f0 0.5; Pr 0.7; Tvap 273; Tbp 373; + constantVolume false; } @@ -91,6 +93,8 @@ subModels SurfaceFilmModel none; + radiation off; + ManualInjectionCoeffs { massTotal massTotal [ 1 0 0 0 0 ] 1e-8; diff --git a/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/constant/kinematicCloud1Properties b/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/constant/kinematicCloud1Properties index 29fccecae6d..ea87f36b721 100644 --- a/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/constant/kinematicCloud1Properties +++ b/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/constant/kinematicCloud1Properties @@ -34,13 +34,15 @@ solution } } -parcelTypeId 2; - constantProperties { + parcelTypeId 2; + rhoMin 1e-15; minParticleMass 1e-15; + rho0 5000; + youngsModulus 1e9; poissonsRatio 0.35; } diff --git a/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/constant/thermoCloud1Properties b/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/constant/thermoCloud1Properties index 6ab1d7eb678..b4f9f66a660 100644 --- a/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/constant/thermoCloud1Properties +++ b/tutorials/lagrangian/rhoPisoTwinParcelFoam/simplifiedSiwek/constant/thermoCloud1Properties @@ -37,22 +37,24 @@ solution } } -radiation off; - -parcelTypeId 1; - constantProperties { + parcelTypeId 1; + rhoMin 1e-15; TMin 200; minParticleMass 1e-15; + rho0 2500; - youngsModulus 1e9; - poissonsRatio 0.35; T0 300; cp0 900; + + youngsModulus 1e9; + poissonsRatio 0.35; + epsilon0 1; f0 0.5; + Pr 0.7; } @@ -82,6 +84,8 @@ subModels SurfaceFilmModel none; + radiation off; + ManualInjectionCoeffs { massTotal massTotal [ 1 0 0 0 0 ] 0.0001; -- GitLab