d-dimensional physical third-order tensor
Description
The tensor3
class defines a d*d*d
array with floating coefficients. This class is suitable for defining third-order tensors, i.e. field
with d*d*d
matrix values at each physical position.
It is represented as a tridimensional array of coordinates. The coordinate indexes start at zero and finishes at d-1
, e.g. a(0,0,0)
, a(0,0,1)
, ..., a(2,2,2)
.
The default constructor set all components to zero:
tensor3 a;
The linear algebra with scalars and tensor
is supported.
Implementation
This documentation has been generated from file fem/geo_element/tensor3.h
The tensor3
class is simply an alias to the tensor3_basic
class
typedef tensor3_basic<Float>
tensor3;
see the tensor3 page for the full documentation
The tensor3_basic
class is a template class with the floating type as parameter:
template<class T>
class tensor3_basic {
public:
tensor3_basic (
const T& init_val = 0);
tensor3_basic (const tensor3_basic<T>& a);
tensor3_basic<T>&
operator= (
const tensor3_basic<T>& a);
tensor_basic<T>
operator* (
const point_basic<T>& v)
const;
tensor3_basic<T>
operator* (
const tensor_basic<T>& b)
const;
tensor3_basic<T>
operator+ (
const tensor3_basic<T>& b)
const;
tensor3_basic<T>
operator- (
const tensor3_basic<T>& b)
const;
tensor3_basic<T>&
operator+= (
const tensor3_basic<T>&);
tensor3_basic<T>&
operator-= (
const tensor3_basic<T>&);
std::istream&
get (std::istream&);
field::size_type size_type
tensor3_basic< T > operator-(const tensor3_basic< T > &b) const
std::ostream & put(std::ostream &s, size_type d=3) const
tensor3_basic< T > & operator-=(const tensor3_basic< T > &)
std::istream & get(std::istream &)
tensor3_basic< T > & operator*=(const T &k)
tensor3_basic< T > & operator=(const tensor3_basic< T > &a)
tensor3_basic< T > operator*(const T &k) const
tensor3_basic< T > & operator/=(const T &k)
T & operator()(size_type i, size_type j, size_type k)
tensor3_basic< T > & operator+=(const tensor3_basic< T > &)
tensor3_basic< T > operator+(const tensor3_basic< T > &b) const
tensor3_basic< T > operator/(const T &k) const