30 template<
class CompType,
class ThermoType>
42 template<
class CompType,
class ThermoType>
66 calcV(elementLeft, elementRight,
v_);
67 a_ =
calcA(elementLeft, elementRight);
73 template<
class CompType,
class ThermoType>
83 bool mechReductionActive = elementLeft->
chemistry().mechRed()->active();
94 bool outOfIndexI =
true;
95 if (mechReductionActive)
100 outOfIndexI = (si == -1);
110 if (!mechReductionActive || (mechReductionActive && !(outOfIndexI)))
116 bool outOfIndexJ =
true;
117 if (mechReductionActive)
122 outOfIndexJ = (sj==-1);
139 ||(mechReductionActive && !(outOfIndexJ))
145 v[i] += LT(
k, si)*LT(
k, sj)*phiDif[j];
154 v[i] = phiDif[i]/
sqr(scaleFactor[i]*epsTol);
160 template<
class CompType,
class ThermoType>
scalar calcA(chemPointISAT< CompType, ThermoType > *elementLeft, chemPointISAT< CompType, ThermoType > *elementRight)
Compute a the product v^T.phih, with phih = (phi0 + phiq)/2.
#define forAll(list, i)
Loop across all elements in list.
const scalar & tolerance()
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
const scalarSquareMatrix & LT() const
dimensionedSymmTensor sqr(const dimensionedVector &dv)
Leaf of the binary tree. The chemPoint stores the composition 'phi', the mapping of this composition ...
List< label > & completeToSimplifiedIndex()
label k
Boltzmann constant.
binaryNode()
Construct null.
chemPointISAT< CompType, ThermoType > * leafLeft_
Element on the left.
binaryNode< CompType, ThermoType > * nodeLeft_
Node which follows on the left.
const scalarField & scaleFactor()
binaryNode< CompType, ThermoType > * nodeRight_
Node which follows on the right.
chemPointISAT< CompType, ThermoType > * leafRight_
Element on the right.
label nAdditionalEqns_
Number of equations in addition to the species eqs.
const scalarField & phi() const
bool variableTimeStep() const
TDACChemistryModel< CompType, ThermoType > & chemistry()
Access to the TDACChemistryModel.
dimensioned< Type > min(const dimensioned< Type > &, const dimensioned< Type > &)
void calcV(chemPointISAT< CompType, ThermoType > *&elementLeft, chemPointISAT< CompType, ThermoType > *&elementRight, scalarField &v)
Compute vector v:
label & completeSpaceSize()
binaryNode< CompType, ThermoType > * parent_
Parent node.