From b5bebc52ecfad133275941bc037dcd95410acb1e Mon Sep 17 00:00:00 2001 From: ignis Date: Tue, 10 Jul 2018 15:24:03 +0900 Subject: [PATCH] New methods for all species Cp and Cv --- .../mixtures/SpecieMixture/SpecieMixture.C | 34 +++++++++++++++++++ .../mixtures/SpecieMixture/SpecieMixture.H | 19 +++++++++++ .../basicSpecieMixture/basicSpecieMixture.H | 19 +++++++++++ 3 files changed, 72 insertions(+) diff --git a/src/thermophysicalModels/reactionThermo/mixtures/SpecieMixture/SpecieMixture.C b/src/thermophysicalModels/reactionThermo/mixtures/SpecieMixture/SpecieMixture.C index 6bf508bb4..47fd0399f 100644 --- a/src/thermophysicalModels/reactionThermo/mixtures/SpecieMixture/SpecieMixture.C +++ b/src/thermophysicalModels/reactionThermo/mixtures/SpecieMixture/SpecieMixture.C @@ -98,6 +98,40 @@ Foam::scalar Foam::SpecieMixture::Qc2 } +template +void Foam::SpecieMixture::Cp +( + scalarField& Cps, + const scalar p, + const scalar T +) const +{ + forAll(this->species(), speciei) + { + Cps[speciei] = this->getLocalThermo(speciei).Cp(p, T); + } + + return; +} + + +template +void Foam::SpecieMixture::Cv +( + scalarField& Cvs, + const scalar p, + const scalar T +) const +{ + forAll(this->species(), speciei) + { + Cvs[speciei] = this->getLocalThermo(speciei).Cv(p, T); + } + + return; +} + + template Foam::scalar Foam::SpecieMixture::Cp ( diff --git a/src/thermophysicalModels/reactionThermo/mixtures/SpecieMixture/SpecieMixture.H b/src/thermophysicalModels/reactionThermo/mixtures/SpecieMixture/SpecieMixture.H index ae08bf377..8adeb36d5 100644 --- a/src/thermophysicalModels/reactionThermo/mixtures/SpecieMixture/SpecieMixture.H +++ b/src/thermophysicalModels/reactionThermo/mixtures/SpecieMixture/SpecieMixture.H @@ -91,6 +91,25 @@ public: virtual scalar Qc2(const label specieI) const; + // All species thermo properties + + //- Heat capacity at constant pressure [J/(kg K)] + virtual void Cp + ( + scalarField& Cps, + const scalar p, + const scalar T + ) const; + + //- Heat capacity at constant volume [J/(kg K)] + virtual void Cv + ( + scalarField& Cvs, + const scalar p, + const scalar T + ) const; + + // Per specie thermo properties //- Heat capacity at constant pressure [J/(kg K)] diff --git a/src/thermophysicalModels/reactionThermo/mixtures/basicSpecieMixture/basicSpecieMixture.H b/src/thermophysicalModels/reactionThermo/mixtures/basicSpecieMixture/basicSpecieMixture.H index cd5880dbe..2997b2abc 100644 --- a/src/thermophysicalModels/reactionThermo/mixtures/basicSpecieMixture/basicSpecieMixture.H +++ b/src/thermophysicalModels/reactionThermo/mixtures/basicSpecieMixture/basicSpecieMixture.H @@ -107,6 +107,25 @@ public: tmp Qc2() const; + // All species thermo properties + + //- Heat capacity at constant pressure [J/(kg K)] + virtual void Cp + ( + scalarField& Cps, + const scalar p, + const scalar T + ) const = 0; + + //- Heat capacity at constant volume [J/(kg K)] + virtual void Cv + ( + scalarField& Cvs, + const scalar p, + const scalar T + ) const = 0; + + // Per specie thermo properties //- Heat capacity at constant pressure [J/(kg K)]