Perform operation.
1557 int nPhys =
m_stdExp->GetTotPoints();
1559 Array<OneD, NekDouble> tmp0,tmp1,tmp2;
1560 Array<OneD, Array<OneD, NekDouble> > Diff(3);
1561 Array<OneD, Array<OneD, NekDouble> > out(3);
1562 out[0] = output0; out[1] = output1; out[2] = output2;
1564 for(
int i = 0; i < 3; ++i)
1566 Diff[i] = wsp + i*ntot;
1584 &Diff[1][i*nPhys+j*
m_nquad0*m_nquad1],
1590 1.0, &input[i*nPhys],
m_nquad0*m_nquad1,
1591 m_Deriv2,m_nquad2, 0.0,&Diff[2][i*nPhys],
1596 Diff[0].
get()+cnt,1);
1600 Diff[1].
get()+cnt,1);
1604 Diff[2].
get()+cnt,1,Diff[2].
get()+cnt,1);
1607 Diff[2].
get()+cnt,1,Diff[2].
get()+cnt,1);
1615 for(
int j = 1; j < 3; ++j)
1618 Diff[j], 1, out[i], 1, out[i], 1);
Array< TwoD, const NekDouble > m_derivFac
Array< OneD, NekDouble > m_fac1
void Vvtvp(int n, const T *w, const int incw, const T *x, const int incx, const T *y, const int incy, T *z, const int incz)
vvtvp (vector times vector plus vector): z = w*x + y
static void Dgemm(const char &transa, const char &transb, const int &m, const int &n, const int &k, const double &alpha, const double *a, const int &lda, const double *b, const int &ldb, const double &beta, double *c, const int &ldc)
BLAS level 3: Matrix-matrix multiply C = A x B where A[m x n], B[n x k], C[m x k].
StdRegions::StdExpansionSharedPtr m_stdExp
Array< OneD, NekDouble > m_fac2
Array< OneD, NekDouble > m_fac0
void Vmul(int n, const T *x, const int incx, const T *y, const int incy, T *z, const int incz)
Multiply vector z = x*y.