diff --git a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.H b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.H index 1717ee1feb..2e816bd6ad 100644 --- a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.H +++ b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.H @@ -86,6 +86,9 @@ public: { // Private data + //- Constant properties dictionary + const dictionary dict_; + //- Particle density [kg/m3] (constant) const scalar rho0_; @@ -99,10 +102,13 @@ public: public: //- Constructor - constantProperties(const dictionary& dict); + constantProperties(const dictionary& parentDict); // Member functions + //- Return const access to the constant properties dictionary + inline const dictionary& dict() const; + //- Return const access to the particle density inline scalar rho0() const; diff --git a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelI.H b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelI.H index 8582792460..ca3e5015d0 100644 --- a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelI.H +++ b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelI.H @@ -29,12 +29,16 @@ License template inline Foam::KinematicParcel::constantProperties::constantProperties ( - const dictionary& dict + const dictionary& parentDict ) : - rho0_(dimensionedScalar(dict.lookup("rho0")).value()), - minParticleMass_(dimensionedScalar(dict.lookup("minParticleMass")).value()), - Cvm_(dimensionedScalar(dict.lookup("Cvm")).value()) + dict_(parentDict.subDict("constantProperties")), + rho0_(dimensionedScalar(dict_.lookup("rho0")).value()), + minParticleMass_ + ( + dimensionedScalar(dict_.lookup("minParticleMass")).value() + ), + Cvm_(dimensionedScalar(dict_.lookup("Cvm")).value()) {} @@ -88,6 +92,14 @@ inline Foam::KinematicParcel::KinematicParcel // * * * * * * * * * constantProperties Member Functions * * * * * * * * * * // +template +inline const Foam::dictionary& +Foam::KinematicParcel::constantProperties::dict() const +{ + return dict_; +} + + template inline Foam::scalar Foam::KinematicParcel::constantProperties::rho0() const diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.H b/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.H index 5053c106b4..f1bace3a8b 100644 --- a/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.H +++ b/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.H @@ -93,7 +93,7 @@ public: public: //- Constructor - constantProperties(const dictionary& dict); + constantProperties(const dictionary& parentDict); // Access diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcelI.H b/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcelI.H index d7d3cf1781..9709da663d 100644 --- a/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcelI.H +++ b/src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcelI.H @@ -30,12 +30,15 @@ template inline Foam::ReactingMultiphaseParcel::constantProperties:: constantProperties ( - const dictionary& dict + const dictionary& parentDict ) : - ReactingParcel::constantProperties(dict), - LDevol_(dimensionedScalar(dict.lookup("LDevol")).value()), - hRetentionCoeff_(dimensionedScalar(dict.lookup("hRetentionCoeff")).value()) + ReactingParcel::constantProperties(parentDict), + LDevol_(dimensionedScalar(this->dict().lookup("LDevol")).value()), + hRetentionCoeff_ + ( + dimensionedScalar(this->dict().lookup("hRetentionCoeff")).value() + ) {} diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.H b/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.H index 52b9c881e7..f876fa6401 100644 --- a/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.H +++ b/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.H @@ -93,7 +93,7 @@ public: public: //- Constructor - constantProperties(const dictionary& dict); + constantProperties(const dictionary& parentDict); // Access diff --git a/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcelI.H b/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcelI.H index da808caee8..0cc40887d4 100644 --- a/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcelI.H +++ b/src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcelI.H @@ -29,13 +29,13 @@ License template inline Foam::ReactingParcel::constantProperties::constantProperties ( - const dictionary& dict + const dictionary& parentDict ) : - ThermoParcel::constantProperties(dict), - constantVolume_(dict.lookup("constantVolume")), - Tbp_(dimensionedScalar(dict.lookup("Tbp")).value()), - Tvap_(dimensionedScalar(dict.lookup("Tvap")).value()) + ThermoParcel::constantProperties(parentDict), + constantVolume_(this->dict().lookup("constantVolume")), + Tbp_(dimensionedScalar(this->dict().lookup("Tbp")).value()), + Tvap_(dimensionedScalar(this->dict().lookup("Tvap")).value()) {} diff --git a/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcel.H b/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcel.H index 4bc5180eff..c7ba92ab84 100644 --- a/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcel.H +++ b/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcel.H @@ -98,7 +98,7 @@ public: public: // Constructors - constantProperties(const dictionary& dict); + constantProperties(const dictionary& parentDict); // Member functions diff --git a/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcelI.H b/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcelI.H index c14f1891b4..1a2c0326d3 100644 --- a/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcelI.H +++ b/src/lagrangian/intermediate/parcels/Templates/ThermoParcel/ThermoParcelI.H @@ -29,14 +29,14 @@ License template inline Foam::ThermoParcel::constantProperties::constantProperties ( - const dictionary& dict + const dictionary& parentDict ) : - KinematicParcel::constantProperties(dict), - T0_(dimensionedScalar(dict.lookup("T0")).value()), - cp0_(dimensionedScalar(dict.lookup("cp0")).value()), - epsilon0_(dimensionedScalar(dict.lookup("epsilon0")).value()), - f0_(dimensionedScalar(dict.lookup("f0")).value()) + KinematicParcel::constantProperties(parentDict), + T0_(dimensionedScalar(this->dict().lookup("T0")).value()), + cp0_(dimensionedScalar(this->dict().lookup("cp0")).value()), + epsilon0_(dimensionedScalar(this->dict().lookup("epsilon0")).value()), + f0_(dimensionedScalar(this->dict().lookup("f0")).value()) {}