|
| v0.14.0
|
Go to the documentation of this file.
21 #include "../permute.hpp"
25 template <
class A,
class T,
int Dim0,
int Dim1,
char i,
char j>
35 template <
class A,
class T,
int Tensor_Dim0,
int Tensor_Dim1,
int Dim0,
36 int Dim1,
char i,
char j>
45 T*
ptr(
const int N1,
const int N2)
const {
return iter.ptr(N1, N2); }
51 template <
class B,
class U,
int Dim1_0,
int Dim1_1,
char i_1,
char j_1>
54 for(
int ii = 0; ii < Dim0; ++ii)
55 for(
int jj = 0; jj < Dim1; ++jj)
62 template <
class B,
class U,
int Dim1_0,
int Dim1_1,
char i_1,
char j_1>
70 Dim0, Dim1,
i,
j> &rhs)
75 template <
class B,
class U,
int Dim,
char i_1,
char j_1>
77 for (
int ii = 0; ii != Dim; ++ii)
78 for (
int jj = 0; jj != Dim; ++jj) {
79 iter(ii, jj) = rhs(ii, jj);
84 template <
class B,
class U,
int Dim,
char i_1,
char j_1>
89 template <
class B,
class U,
int Dim1_0,
int Dim1_1,
char i_1,
char j_1>
92 for(
int ii = 0; ii < Dim0; ++ii)
93 for(
int jj = 0; jj < Dim1; ++jj)
100 template <
class B,
class U,
int Dim1_0,
int Dim1_1,
char i_1,
char j_1>
103 for(
int ii = 0; ii < Dim0; ++ii)
104 for(
int jj = 0; jj < Dim1; ++jj)
111 template <
class B,
class U,
int Dim,
char i_1,
char j_1>
113 for (
int ii = 0; ii != Dim; ++ii)
114 for (
int jj = 0; jj != Dim; ++jj) {
115 iter(ii, jj) += rhs(ii, jj);
120 template <
class B,
class U,
int Dim,
char i_1,
char j_1>
122 for (
int ii = 0; ii != Dim; ++ii)
123 for (
int jj = 0; jj != Dim; ++jj) {
124 iter(ii, jj) -= rhs(ii, jj);
133 for(
int ii = 0; ii < Dim0; ++ii)
134 for(
int jj = 0; jj < Dim1; ++jj)
143 for(
int ii = 0; ii < Dim0; ++ii)
144 for(
int jj = 0; jj < Dim1; ++jj)
153 for(
int ii = 0; ii < Dim0; ++ii)
154 for(
int jj = 0; jj < Dim1; ++jj)
163 for(
int ii = 0; ii < Dim0; ++ii)
164 for(
int jj = 0; jj < Dim1; ++jj)
173 for(
int ii = 0; ii < Dim0; ++ii)
174 for(
int jj = 0; jj < Dim1; ++jj)
183 template <
class B,
class U,
int Dim1_0,
int Dim1_1,
char i_1,
char j_1>
186 for(
int ii = 0; ii < Dim0; ++ii)
187 for(
int jj = 0; jj < Dim1; ++jj)
194 template <
class B,
class U,
int Dim1_0,
int Dim1_1,
char i_1,
char j_1>
197 for(
int ii = 0; ii < Dim0; ++ii)
198 for(
int jj = 0; jj < Dim1; ++jj)
210 template <
class A,
class T,
int Dim0,
int Dim1,
char i,
char j,
int N>
224 template <
class B,
class U,
int Dim1_0,
int Dim1_1,
char i_1,
char j_1>
227 for(
int ii = 0; ii < Dim0; ++ii)
228 for(
int jj = 0; jj < Dim1; ++jj)
auto & operator=(const Tensor2_Expr< Tensor2< A, Tensor_Dim0, Tensor_Dim1 >, T, Dim0, Dim1, i, j > &rhs)
auto & operator=(const FTensor::Tensor2_Expr< B, U, Dim1_0, Dim1_1, i_1, j_1 > &rhs)
auto & operator*=(const U &u)
U & permute_ref(const Tensor2_Expr< A, T, Dim0_0, Dim0_1, i0, j0 > &, const Tensor2_Expr< B, U, Dim1_0, Dim1_1, i1, j1 > &rhs, const int N0, const int N1)
auto & operator-=(const U &u)
T * ptr(const int N1, const int N2) const
Tensor2< A, Tensor_Dim0, Tensor_Dim1 > & iter
auto & operator-=(const Tensor2_Expr< B, U, Dim1_0, Dim1_1, i_1, j_1 > &rhs)
auto & equals(const Tensor2_symmetric_Expr< B, U, Dim, i_1, j_1 > &rhs)
U permute(const Tensor2_Expr< A, T, Dim0_0, Dim0_1, i0, j0 > &, const Tensor2_Expr< B, U, Dim1_0, Dim1_1, i1, j1 > &rhs, const int N0, const int N1)
T & operator()(const int N1, const int N2)
T operator()(const int N1, const int N2) const
auto & operator+=(const Tensor2_Expr< B, U, Dim1_0, Dim1_1, i_1, j_1 > &rhs)
auto & operator<<=(const Tensor2_Expr< B, U, Dim1_0, Dim1_1, i_1, j_1 > &rhs)
auto & operator+=(const U &u)
auto & operator=(const Tensor2_symmetric_Expr< B, U, Dim, i_1, j_1 > &rhs)
auto & operator>>=(const Tensor2_Expr< B, U, Dim1_0, Dim1_1, i_1, j_1 > &rhs)
auto & operator/=(const U &u)
auto & equals(const Tensor2_Expr< B, U, Dim1_0, Dim1_1, i_1, j_1 > &rhs)
FTensor::Index< 'i', SPACE_DIM > i
auto & operator-=(const Tensor2_symmetric_Expr< B, U, Dim, i_1, j_1 > &rhs)
auto & operator+=(const Tensor2_symmetric_Expr< B, U, Dim, i_1, j_1 > &rhs)
auto & operator=(const Tensor2_Expr< B, U, Dim1_0, Dim1_1, i_1, j_1 > &rhs)
T & operator()(const int N1, const int N2)
T operator()(const int N1, const int N2) const
FTensor::Index< 'j', 3 > j
auto & operator=(const Tensor2_Expr< Dg_number_rhs_0< A, T, N >, T, Dim0, Dim1, i, j > &result)
T operator()(const int N1, const int N2) const
Tensor2_Expr(Tensor2< A, Tensor_Dim0, Tensor_Dim1 > &a)
auto & operator=(const U &u)