From 02cd5c05da7630431f27c7f850e4677309e10384 Mon Sep 17 00:00:00 2001 From: andy Date: Fri, 6 Aug 2010 12:09:06 +0100 Subject: [PATCH] STYLE: code clean-up/restructure --- .../ODEChemistryModel/ODEChemistryModel.C | 15 +++---- .../EulerImplicit/EulerImplicit.C | 40 +++++++++---------- .../EulerImplicit/EulerImplicit.H | 7 +++- .../chemistrySolver/sequential/sequential.C | 40 +++++++++---------- .../chemistrySolver/sequential/sequential.H | 8 +++- 5 files changed, 58 insertions(+), 52 deletions(-) diff --git a/src/thermophysicalModels/chemistryModel/chemistryModel/ODEChemistryModel/ODEChemistryModel.C b/src/thermophysicalModels/chemistryModel/chemistryModel/ODEChemistryModel/ODEChemistryModel.C index e9b07da6b1..1480fc228d 100644 --- a/src/thermophysicalModels/chemistryModel/chemistryModel/ODEChemistryModel/ODEChemistryModel.C +++ b/src/thermophysicalModels/chemistryModel/chemistryModel/ODEChemistryModel/ODEChemistryModel.C @@ -151,7 +151,7 @@ Foam::scalar Foam::ODEChemistryModel::omega ) const { scalarField c2(nSpecie_, 0.0); - for (label i=0; i::omega lRef = R.lhs()[slRef].index; pf = kf; - for (label s=1; s::omega // find the matrix element and element position for the rhs pr = kr; - for (label s=1; s::derivatives // dT/dt = ... scalar rho = 0.0; scalar cSum = 0.0; - for (label i=0; i::derivatives cp /= mw; scalar dT = 0.0; - for (label i=0; i::Sh() const ) ); + if (this->chemistry_) { scalarField& Sh = tSh(); @@ -560,7 +561,7 @@ Foam::ODEChemistryModel::Sh() const { forAll(Sh, cellI) { - scalar hi = specieThermo_[i].Hc(); + const scalar hi = specieThermo_[i].Hc(); Sh[cellI] -= hi*RR_[i][cellI]; } } @@ -734,7 +735,7 @@ Foam::scalar Foam::ODEChemistryModel::solve t += dt; // update the temperature - scalar cTot = sum(c); + const scalar cTot = sum(c); ThermoType mixture(0.0*specieThermo_[0]); for (label i=0; i::EulerImplicit chemistrySolver(model, modelName), coeffsDict_(model.subDict(modelName + "Coeffs")), cTauChem_(readScalar(coeffsDict_.lookup("cTauChem"))), - equil_(coeffsDict_.lookup("equilibriumRateLimiter")) + eqRateLimiter_(coeffsDict_.lookup("equilibriumRateLimiter")) {} @@ -65,12 +65,12 @@ Foam::scalar Foam::EulerImplicit::solve const label nSpecie = this->model_.nSpecie(); simpleMatrix RR(nSpecie, 0, 0); - for (label i=0; i::solve ); scalar corr = 1.0; - if (equil_) + if (eqRateLimiter_) { - if (omegai<0.0) + if (omegai < 0.0) { corr = 1.0/(1.0 + pr*dt); } @@ -100,31 +100,31 @@ Foam::scalar Foam::EulerImplicit::solve } } - forAll(R.lhs(), s) + forAll(R.lhs(), specieI) { - label si = R.lhs()[s].index; - scalar sl = R.lhs()[s].stoichCoeff; - RR[si][rRef] -= sl*pr*corr; - RR[si][lRef] += sl*pf*corr; + const label id = R.lhs()[specieI].index; + const scalar sc = R.lhs()[specieI].stoichCoeff; + RR[id][rRef] -= sc*pr*corr; + RR[id][lRef] += sc*pf*corr; } - forAll(R.rhs(), s) + forAll(R.rhs(), specieI) { - label si = R.rhs()[s].index; - scalar sr = R.rhs()[s].stoichCoeff; - RR[si][lRef] -= sr*pf*corr; - RR[si][rRef] += sr*pr*corr; + const label id = R.rhs()[specieI].index; + const scalar sc = R.rhs()[specieI].stoichCoeff; + RR[id][lRef] -= sc*pf*corr; + RR[id][rRef] += sc*pr*corr; } } - for (label i=0; i::solve const label nEqns = this->model_.nEqns(); scalarField c1(nEqns, 0.0); - for (label i=0; i::solve scalarField dcdt(nEqns, 0.0); this->model_.derivatives(0.0, c1, dcdt); - scalar sumC = sum(c); + const scalar sumC = sum(c); - for (label i=0; i::sequential chemistrySolver(model, modelName), coeffsDict_(model.subDict(modelName + "Coeffs")), cTauChem_(readScalar(coeffsDict_.lookup("cTauChem"))), - equil_(coeffsDict_.lookup("equilibriumRateLimiter")) + eqRateLimiter_(coeffsDict_.lookup("equilibriumRateLimiter")) {} @@ -70,45 +70,41 @@ Foam::scalar Foam::sequential::solve { const Reaction& R = this->model_.reactions()[i]; - scalar om0 = this->model_.omega + scalar omega = this->model_.omega ( R, c, T, p, pf, cf, lRef, pb, cb, rRef ); - scalar omeg = 0.0; - if (!equil_) + if (eqRateLimiter_) { - omeg = om0; - } - else - { - if (om0<0.0) + if (omega < 0.0) { - omeg = om0/(1.0 + pb*dt); + omega /= 1.0 + pb*dt; } else { - omeg = om0/(1.0 + pf*dt); + omega /= 1.0 + pf*dt; } } - tChemInv = max(tChemInv, mag(omeg)); + + tChemInv = max(tChemInv, mag(omega)); // update species - forAll(R.lhs(), s) + forAll(R.lhs(), specieI) { - label si = R.lhs()[s].index; - scalar sl = R.lhs()[s].stoichCoeff; - c[si] -= dt*sl*omeg; - c[si] = max(0.0, c[si]); + const label id = R.lhs()[specieI].index; + const scalar sc = R.lhs()[specieI].stoichCoeff; + c[id] -= dt*sc*omega; + c[id] = max(0.0, c[id]); } - forAll(R.rhs(), s) + forAll(R.rhs(), specieI) { - label si = R.rhs()[s].index; - scalar sr = R.rhs()[s].stoichCoeff; - c[si] += dt*sr*omeg; - c[si] = max(0.0, c[si]); + const label id = R.rhs()[specieI].index; + const scalar sc = R.rhs()[specieI].stoichCoeff; + c[id] += dt*sc*omega; + c[id] = max(0.0, c[id]); } } diff --git a/src/thermophysicalModels/chemistryModel/chemistrySolver/sequential/sequential.H b/src/thermophysicalModels/chemistryModel/chemistrySolver/sequential/sequential.H index 02e50025c6..32ef0e62bf 100644 --- a/src/thermophysicalModels/chemistryModel/chemistrySolver/sequential/sequential.H +++ b/src/thermophysicalModels/chemistryModel/chemistrySolver/sequential/sequential.H @@ -59,12 +59,17 @@ class sequential { // Private data + //- Coefficients dictionary dictionary coeffsDict_; + // Model constants + //- Chemistry time scale scalar cTauChem_; - Switch equil_; + + //- Equilibrium rate limiter flag (on/off) + Switch eqRateLimiter_; public: @@ -75,7 +80,6 @@ public: // Constructors - //- Construct from components sequential (