48 leafLeft_(elementLeft),
49 leafRight_(elementRight),
53 v_(elementLeft->completeSpaceSize(), 0)
55 calcV(*elementLeft, *elementRight,
v_);
56 a_ =
calcA(*elementLeft, *elementRight);
77 const scalar epsTol = elementLeft.
tolerance();
83 bool outOfIndexI =
true;
89 outOfIndexI = (si == -1);
95 si = elementLeft.
nActive() + dif;
98 if (!reduction || (reduction && !(outOfIndexI)))
104 bool outOfIndexJ =
true;
111 outOfIndexJ = (sj==-1);
118 sj = elementLeft.
nActive() + dif;
122 if (!reduction ||(reduction && !(outOfIndexJ)))
127 v[i] += LT(
k, si)*LT(
k, sj)*(phir[j] - phil[j]);
136 v[i] = (phir[i] - phil[i])/
sqr(scaleFactor[i]*epsTol);
void calcV(const chemPointISAT &elementLeft, const chemPointISAT &elementRight, scalarField &v)
Compute vector v:
binaryNode()
Construct null.
scalar calcA(const chemPointISAT &elementLeft, const chemPointISAT &elementRight)
Compute a the product v^T.phih, with phih = (phi0 + phiq)/2.
Leaf of the binary tree. The chemPoint stores the composition 'phi', the mapping of this composition ...
const List< label > & completeToSimplifiedIndex() const
const scalarField & phi() const
const scalarField & scaleFactor() const
const scalarSquareMatrix & LT() const
const scalar & tolerance() const
const chemistryTabulationMethods::ISAT & table() const
Access to the ISAT table.
label & completeSpaceSize()
bool reduction() const
Return true if reduction is applied to the state variables.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
dimensionedSymmTensor sqr(const dimensionedVector &dv)
layerAndWeight min(const layerAndWeight &a, const layerAndWeight &b)