Go to the documentation of this file.
20 #ifndef LIBMESH_TENSOR_TOOLS_H
21 #define LIBMESH_TENSOR_TOOLS_H
24 #include "libmesh/libmesh_common.h"
25 #include "libmesh/compare_types.h"
27 #ifdef LIBMESH_HAVE_METAPHYSICL
30 template <
typename,
typename>
35 template <
typename T,
typename D>
37 template <
typename T,
typename D>
58 template <
typename T,
typename T2>
65 template <
typename T,
typename T2>
71 template <
typename T,
typename T2>
77 template <
unsigned int N,
typename T,
typename T2>
100 {
return a.norm_sq();}
104 bool is_zero(
const T & a){
return a.is_zero();}
112 template <
typename T>
118 template <
typename T>
125 template <
typename T>
131 template <
typename T>
138 template <
typename T>
144 template <
unsigned int N,
typename T>
152 template <
typename T>
161 template <
typename T>
167 template <
typename T>
173 template <
typename T>
179 template <
typename T>
185 template <
unsigned int N,
typename T>
192 template <
typename T>
195 #ifdef LIBMESH_USE_COMPLEX_NUMBERS
202 template <
typename T>
211 template <
typename T>
217 template <
typename T>
223 template <
typename T>
229 template <
typename T>
235 template <
unsigned int N,
typename T>
238 #ifdef LIBMESH_USE_COMPLEX_NUMBERS
247 template <
typename T>
253 template <
typename T>
259 template <
typename T>
265 template <
typename T>
271 template <
typename T>
277 template <
typename T>
283 template <
unsigned int N,
typename T>
313 #endif // LIBMESH_TENSOR_TOOLS_H
The libMesh namespace provides an interface to certain functionality in the library.
This class defines a vector in LIBMESH_DIM dimensional Real or Complex space.
CompareTypes< T, T2 >::supertype contract(const TypeNTensor< N, T2 > &) const
Multiply 2 tensors together to return a scalar, i.e.
This class defines a tensor in LIBMESH_DIM dimensional Real or Complex space.
CompareTypes< T, T2 >::supertype contract(const TypeTensor< T2 > &) const
Multiply 2 tensors together to return a scalar, i.e.
This class will eventually define a rank-N tensor in LIBMESH_DIM dimensional space of type T.
MetaPhysicL::DualNumber< T, D > norm(const MetaPhysicL::DualNumber< T, D > &in)
This class defines a vector in LIBMESH_DIM dimensional space of type T.
This class defines a tensor in LIBMESH_DIM dimensional space of type T.