20 #ifndef LIBMESH_TENSOR_TOOLS_H 21 #define LIBMESH_TENSOR_TOOLS_H 43 template <
typename T,
typename T2>
50 template <
typename T,
typename T2>
56 template <
typename T,
typename T2>
62 template <
unsigned int N,
typename T,
typename T2>
74 T
norm_sq(std::complex<T> a) {
return std::norm(a); }
105 template <
typename T>
111 template <
typename T>
118 template <
typename T>
124 template <
unsigned int N,
typename T>
132 template <
typename T>
141 template <
typename T>
147 template <
typename T>
153 template <
typename T>
159 template <
typename T>
165 template <
unsigned int N,
typename T>
172 template <
typename T>
175 #ifdef LIBMESH_USE_COMPLEX_NUMBERS 182 template <
typename T>
191 template <
typename T>
197 template <
typename T>
203 template <
typename T>
209 template <
typename T>
215 template <
unsigned int N,
typename T>
218 #ifdef LIBMESH_USE_COMPLEX_NUMBERS 227 template <
typename T>
233 template <
typename T>
239 template <
typename T>
245 template <
typename T>
251 template <
typename T>
257 template <
typename T>
263 template <
unsigned int N,
typename T>
293 #endif // LIBMESH_TENSOR_TOOLS_H
CompareTypes< T, T2 >::supertype contract(const TypeTensor< T2 > &) const
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
CompareTypes< T, T2 >::supertype contract(const TypeNTensor< N, T2 > &) const