47 void update(
const DiffCoeffFunc& computeDiffCoeff)
53 static_assert(numPhases <= numComponents || (numPhases == 3 && numComponents == 2),
54 "This combination of numPhases and numComponents is not supported!");
55 for (
int phaseIdx = 0; phaseIdx < numPhases; ++ phaseIdx)
56 for (
int compIIdx = std::min(phaseIdx, numComponents-1), compJIdx = 0; compJIdx < numComponents; ++compJIdx)
57 if (compIIdx != compJIdx)
58 diffCoeff_[getIndex_(phaseIdx, compIIdx, compJIdx)] = computeDiffCoeff(phaseIdx, compIIdx, compJIdx);
61 Scalar
operator() (
int phaseIdx,
int compIIdx,
int compJIdx)
const
63 sortComponentIndices_(phaseIdx, compIIdx, compJIdx);
64 assert(compIIdx != compJIdx);
65 return diffCoeff_[getIndex_(phaseIdx, compIIdx, compJIdx)];