From f2d170a2150652335ee396713201fe338d8d1385 Mon Sep 17 00:00:00 2001 From: andy 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 bbb730bb62..f73a9229be 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::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 e86954ef81..f9a203b4ae 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 7a924d6c65..d3078fbb1b 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::hasWallImpactDistance() const } -template -inline Foam::label Foam::KinematicCloud::parcelTypeId() const -{ - return parcelTypeId_; -} - - template inline const Foam::fvMesh& Foam::KinematicCloud::mesh() const { diff --git a/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloud.C b/src/lagrangian/intermediate/clouds/Templates/ThermoCloud/ThermoCloud.C index 8571238db1..6790c8bb12 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::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 7ff71216d8..f88672be6e 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 855c8add6c..6b0cb76ba2 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::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::KinematicParcel : Particle(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::constantProperties::dict() const } +template +inline Foam::label +Foam::KinematicParcel::constantProperties::parcelTypeId() const +{ + return parcelTypeId_; +} + + template inline Foam::scalar Foam::KinematicParcel::constantProperties::rhoMin() const diff --git a/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/constant/coalCloud1Properties b/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/constant/coalCloud1Properties index c965f964c8..52dfc816b1 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 0524272eb6..0d8c7a1bbd 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 8244491a54..7a779261f0 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 5a4ad7e915..d94a42daa1 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 4c127591eb..801cae7f95 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 33a3f9916d..541dc8af58 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 50a9d54746..97eeae1d51 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 4eaa668310..cf917e1058 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 dc73bbf25d..ae3045dec6 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 33aba59d3e..2e29d9d77f 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 29fccecae6..ea87f36b72 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 6ab1d7eb67..b4f9f66a66 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;