Perform operation.
893 unsigned int nPhys =
m_stdExp->GetTotPoints();
895 unsigned int nmodes =
m_stdExp->GetNcoeffs();
896 unsigned int nmax = max(ntot,
m_numElmt*nmodes);
897 Array<OneD, Array<OneD, const NekDouble> > in(3);
898 Array<OneD, NekDouble> output, wsp1;
899 Array<OneD, Array<OneD, NekDouble> > tmp(3);
901 in[0] = entry0; in[1] = entry1;
906 for(
int i = 0; i < 3; ++i)
908 tmp[i] = wsp + i*nmax;
912 for(
int i = 0; i < 3; ++i)
916 for(
int j = 1; j < 3; ++j)
919 in[j],1, tmp[i], 1, tmp[i],1);
930 m_jac,tmp[0],output,wsp1);
936 m_jac,tmp[1],tmp[0],wsp1);
943 m_jac,tmp[2],tmp[0],wsp1);
Array< TwoD, const NekDouble > m_derivFac
void HexIProduct(bool colldir0, bool colldir1, bool colldir2, int numElmt, int nquad0, int nquad1, int nquad2, int nmodes0, int nmodes1, int nmodes2, const Array< OneD, const NekDouble > &base0, const Array< OneD, const NekDouble > &base1, const Array< OneD, const NekDouble > &base2, const Array< OneD, const NekDouble > &jac, const Array< OneD, const NekDouble > &input, Array< OneD, NekDouble > &output, Array< OneD, NekDouble > &wsp)
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
Array< OneD, const NekDouble > m_jac
Array< OneD, const NekDouble > m_base2
StdRegions::StdExpansionSharedPtr m_stdExp
Array< OneD, const NekDouble > m_derbase1
Array< OneD, const NekDouble > m_derbase2
Array< OneD, const NekDouble > m_derbase0
Array< OneD, const NekDouble > m_base1
void Vadd(int n, const T *x, const int incx, const T *y, const int incy, T *z, const int incz)
Add vector z = x+y.
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.
Array< OneD, const NekDouble > m_base0