double basisSumAtParametricPoint(FieldContainer<double> &basisCoefficients, BasisPtr basis, double tValue, BasisCachePtr parametricBasisCache) { int numPoints = 1; int spaceDim = 1; FieldContainer<double> parametricPoints(numPoints,spaceDim); parametricPoints[0] = tValue; FieldContainer<double> refCellPoints = parametricBasisCache->getRefCellPointsForPhysicalPoints(parametricPoints); parametricBasisCache->setRefCellPoints(refCellPoints); Teuchos::RCP< const FieldContainer<double> > basisValues = parametricBasisCache->getValues(basis, OP_VALUE); double sum = 0; int ptIndex = 0; // one point for (int fieldIndex=0; fieldIndex<basisCoefficients.size(); fieldIndex++) { sum += (*basisValues)(fieldIndex,ptIndex) * basisCoefficients(fieldIndex); } return sum; }