.\" .de Id .. .de Sp .if n .sp .if t .sp 0.4 .. .TH tensor3 2rheolef "rheolef-6.5" "rheolef-6.5" "rheolef-6.5" .\" label: /*Class:tensor3 .SH NAME \fBtensor3\fP - a third order tensor .\" skip: @cindex tensor3 .\" skip: @clindex tensor3 .SH SYNOPSYS The \fBtensor3\fP class defines a fourth tensor where indices varie from zero to 2 (aka 3D physical space). .\" END .SH IMPLEMENTATION .\" begin_example .Sp .nf template class tensor3_basic { public: typedef size_t size_type; typedef T element_type; typedef T float_type; // allocators: tensor3_basic (const T& init_val = 0); tensor3_basic (const tensor3_basic& a); // affectation: tensor3_basic& operator= (const tensor3_basic& a); tensor3_basic& operator= (const T& val); // accessors: T& operator()(size_type i, size_type j, size_type k); const T& operator()(size_type i, size_type j, size_type k) const; // algebra tensor3_basic& operator*= (const T& k); tensor3_basic& operator/= (const T& k) { return operator*= (1./k); } tensor_basic operator* (const point_basic& v) const; tensor3_basic operator* (const tensor_basic& b) const; tensor3_basic operator+ (const tensor3_basic& b) const; // data: protected: T _x [3][3][3]; }; typedef tensor3_basic tensor3; .Sp .fi .\" end_example