no need to copy C matrix

make evaluateBasis take const references to make this possible
This commit is contained in:
Arne Morten Kvarving 2017-03-13 10:19:12 +01:00 committed by Kjetil Andre Johannessen
parent 3e84d8a661
commit e1f6f6d1af
2 changed files with 5 additions and 3 deletions

View File

@ -835,7 +835,8 @@ void ASMu3D::evaluateBasis (FiniteElement &el, Matrix &dNdu) const
}
}
void ASMu3D::evaluateBasis (FiniteElement &el, Matrix &dNdu, Matrix &C, Matrix &B) const
void ASMu3D::evaluateBasis (FiniteElement &el, Matrix &dNdu,
const Matrix &C, const Matrix &B) const
{
PROFILE2("BeSpline evaluation");
Matrix N = C*B;
@ -985,7 +986,7 @@ bool ASMu3D::integrate (Integrand& integrand,
FiniteElement fe(nBasis);
fe.iel = iEl+1;
Matrix C = bezierExtract[iEl];
const Matrix& C = bezierExtract[iEl];
Matrix dNdu, Xnod, Jac;
Matrix3D d2Ndu2, Hess;
double dXidu[3];

View File

@ -424,7 +424,8 @@ protected:
virtual void evaluateBasis(FiniteElement &el, int derivs) const;
//! \brief Evaluate all basis functions and first derivatives on one element
virtual void evaluateBasis(FiniteElement &el, Matrix &dNdu, Matrix &C, Matrix &B) const ;
virtual void evaluateBasis(FiniteElement &el, Matrix &dNdu,
const Matrix &C, const Matrix &B) const;
//! \brief Evaluate all basis functions and first derivatives on one element
virtual void evaluateBasis(FiniteElement &el, Matrix &dNdu) const;