1# ifndef _RHEOLEF_TENSOR3_H
2# define _RHEOLEF_TENSOR3_H
67#include "rheolef/point.h"
68#include "rheolef/tensor.h"
110 std::istream&
get (std::istream&);
134 operator= (init_val);
147 return _x[i%3][j%3][k%3];
154 return _x[i%3][j%3][k%3];
165template <
class T,
class U>
169 details::is_rheolef_arithmetic<U>::value
205 return sqrt(
norm2(a));
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(const T &init_val=0)
tensor3_basic< T > operator/(const T &k) const
tensor3_basic< Float > tensor3
This file is part of Rheolef.
std::ostream & operator<<(std::ostream &os, const catchmark &m)
T norm2(const vec< T, M > &x)
norm2(x): see the expression page for the full documentation
T dddot(const tensor3_basic< T > &a, const tensor3_basic< T > &b)
T dist2(const point_basic< T > &x, const point_basic< T > &y)
std::istream & operator>>(std::istream &is, const catchmark &m)
T dist(const point_basic< T > &x, const point_basic< T > &y)
csr< T, sequential > operator*(const T &lambda, const csr< T, sequential > &a)
T norm(const vec< T, M > &x)
norm(x): see the expression page for the full documentation
float_traits< T >::type type
helper for std::complex<T>: get basic T type
helper for point_basic<T> & tensor_basic<T>: get basic T type