diff --git a/src/thermophysicalModels/basic/heThermo/heThermo.C b/src/thermophysicalModels/basic/heThermo/heThermo.C index 23441a9b79194e66a7c8c872699340e1186697f9..0cc1354ffa30e7999a6581b680bed8eff9c61e3e 100644 --- a/src/thermophysicalModels/basic/heThermo/heThermo.C +++ b/src/thermophysicalModels/basic/heThermo/heThermo.C @@ -799,60 +799,6 @@ Foam::heThermo<BasicThermo, MixtureType>::alphaEff } -template<class BasicThermo, class MixtureType> -Foam::scalar -Foam::heThermo<BasicThermo, MixtureType>::Cp -( - const label speciei, - const scalar p, - const scalar T -) const -{ - notImplemented - ( - "heThermo<BasicThermo, MixtureType>::" - "Cp(const label speciei, const scalar p, const scalar T)" - ); - return 0; -} - - -template<class BasicThermo, class MixtureType> -Foam::scalar -Foam::heThermo<BasicThermo, MixtureType>::Cv -( - const label speciei, - const scalar p, - const scalar T -) const -{ - notImplemented - ( - "heThermo<BasicThermo, MixtureType>::" - "Cv(const label speciei, const scalar p, const scalar T)" - ); - return 0; -} - - -template<class BasicThermo, class MixtureType> -Foam::scalar -Foam::heThermo<BasicThermo, MixtureType>::kappa -( - const label speciei, - const scalar p, - const scalar T -) const -{ - notImplemented - ( - "heThermo<BasicThermo, MixtureType>::" - "kappa(const label speciei, const scalar p, const scalar T)" - ); - return 0; -} - - template<class BasicThermo, class MixtureType> bool Foam::heThermo<BasicThermo, MixtureType>::read() { diff --git a/src/thermophysicalModels/basic/heThermo/heThermo.H b/src/thermophysicalModels/basic/heThermo/heThermo.H index 5bf3bdc93590fab97d8aa7d3aa416907bebe0b35..9858f16a31fdfedcd50c29fdb833a342667fb106 100644 --- a/src/thermophysicalModels/basic/heThermo/heThermo.H +++ b/src/thermophysicalModels/basic/heThermo/heThermo.H @@ -292,34 +292,6 @@ public: ) const; - // Dummy per-specie thermo properties to avoid problems - // with virtual function inheritance - - //- Heat capacity at constant pressure [J/(kg K)] - virtual scalar Cp - ( - const label speciei, - const scalar p, - const scalar T - ) const; - - //- Heat capacity at constant volume [J/(kg K)] - virtual scalar Cv - ( - const label speciei, - const scalar p, - const scalar T - ) const; - - //- Thermal conductivity [W/m/K] - virtual scalar kappa - ( - const label speciei, - const scalar p, - const scalar T - ) const; - - //- Read thermophysical properties dictionary virtual bool read(); }; diff --git a/src/thermophysicalModels/reactionThermo/mixtures/SpecieMixture/SpecieMixture.H b/src/thermophysicalModels/reactionThermo/mixtures/SpecieMixture/SpecieMixture.H index d54ce53f7e7720227375e4a2c5603f25bbea74e1..533caad0bfaed6531e9857de3e73f876bba5a0b3 100644 --- a/src/thermophysicalModels/reactionThermo/mixtures/SpecieMixture/SpecieMixture.H +++ b/src/thermophysicalModels/reactionThermo/mixtures/SpecieMixture/SpecieMixture.H @@ -36,6 +36,7 @@ SourceFiles #define SpecieMixture_H #include "scalar.H" +#include "volFields.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -184,6 +185,43 @@ public: const scalar p, const scalar T ) const; + + + // Field properties abstract functions + // provided here to avoid issues with inheritance of virtual functions + // in heThermo + + //- Heat capacity at constant pressure for patch [J/kg/K] + virtual tmp<scalarField> Cp + ( + const scalarField& p, + const scalarField& T, + const label patchi + ) const = 0; + + //- Heat capacity at constant pressure for patch [J/kg/K] + virtual tmp<volScalarField> Cp() const = 0; + + //- Heat capacity at constant volume for patch [J/kg/K] + virtual tmp<scalarField> Cv + ( + const scalarField& p, + const scalarField& T, + const label patchi + ) const = 0; + + //- Heat capacity at constant volume [J/kg/K] + virtual tmp<volScalarField> Cv() const = 0; + + //- Thermal diffusivity for temperature + // of mixture for patch [J/m/s/K] + virtual tmp<scalarField> kappa + ( + const label patchi + ) const = 0; + + //- Thermal diffusivity for temperature of mixture [J/m/s/K] + virtual tmp<volScalarField> kappa() const = 0; };