From d2ae04b97866f498b732fb6dc452a363ef41fe0f Mon Sep 17 00:00:00 2001 From: ignis Date: Mon, 7 Dec 2015 19:11:18 +0900 Subject: [PATCH] chemkinReader: compute species charge number --- .../chemkinReader/chemkinLexer.L | 3 ++- .../chemkinReader/chemkinReader.C | 22 +++++++++++++++++++ .../chemkinReader/chemkinReader.H | 5 +++++ 3 files changed, 29 insertions(+), 1 deletion(-) diff --git a/src/thermophysicalModels/reactionThermo/chemistryReaders/chemkinReader/chemkinLexer.L b/src/thermophysicalModels/reactionThermo/chemistryReaders/chemkinReader/chemkinLexer.L index 98a7bbd2..9361ed2e 100644 --- a/src/thermophysicalModels/reactionThermo/chemistryReaders/chemkinReader/chemkinLexer.L +++ b/src/thermophysicalModels/reactionThermo/chemistryReaders/chemkinReader/chemkinLexer.L @@ -637,7 +637,8 @@ bool finishReaction = false; ( currentSpecieName, 1.0, - molecularWeight(currentSpecieComposition) + molecularWeight(currentSpecieComposition), + chargeNumber(currentSpecieComposition) ), currentLowT, currentHighT, diff --git a/src/thermophysicalModels/reactionThermo/chemistryReaders/chemkinReader/chemkinReader.C b/src/thermophysicalModels/reactionThermo/chemistryReaders/chemkinReader/chemkinReader.C index e8d882a4..a6cffb2b 100644 --- a/src/thermophysicalModels/reactionThermo/chemistryReaders/chemkinReader/chemkinReader.C +++ b/src/thermophysicalModels/reactionThermo/chemistryReaders/chemkinReader/chemkinReader.C @@ -144,6 +144,28 @@ Foam::scalar Foam::chemkinReader::molecularWeight } +Foam::scalar Foam::chemkinReader::chargeNumber +( + const List& specieComposition +) const +{ + scalar nElemCharges = 0.0; + + forAll(specieComposition, i) + { + label nAtoms = specieComposition[i].nAtoms; + const word& elementName = specieComposition[i].elementName; + + if (elementName[0] == 'e') + { + nElemCharges += nAtoms; + } + } + + return nElemCharges; +} + + void Foam::chemkinReader::checkCoeffs ( const scalarList& reactionCoeffs, diff --git a/src/thermophysicalModels/reactionThermo/chemistryReaders/chemkinReader/chemkinReader.H b/src/thermophysicalModels/reactionThermo/chemistryReaders/chemkinReader/chemkinReader.H index ee1986f6..f5023ed3 100644 --- a/src/thermophysicalModels/reactionThermo/chemistryReaders/chemkinReader/chemkinReader.H +++ b/src/thermophysicalModels/reactionThermo/chemistryReaders/chemkinReader/chemkinReader.H @@ -251,6 +251,11 @@ private: const List& specieComposition ) const; + scalar chargeNumber + ( + const List& specieComposition + ) const; + void finishElements(labelList& currentAtoms); void checkCoeffs