82 expected.roll(dim_roll) = tensor;
84 expected = tensor.roll(dim_roll);
90 src_slice_dim[0] = tensor.dimension(0);
91 src_slice_dim[1] = tensor.dimension(1);
93 src_slice_dim[3] = tensor.dimension(3);
95 src_slice_start[0] = 0;
96 src_slice_start[1] = 0;
97 src_slice_start[2] = 0;
98 src_slice_start[3] = 0;
102 for (
int i = 0;
i < tensor.dimension(2); ++
i) {
104 result.slice(dst_slice_start, dst_slice_dim).roll(dim_roll) = tensor.slice(src_slice_start, src_slice_dim);
106 result.slice(dst_slice_start, dst_slice_dim) = tensor.slice(src_slice_start, src_slice_dim).roll(dim_roll);
108 src_slice_start[2] += 1;
109 dst_slice_start[2] += 1;
117 for (
int i = 0;
i < expected.dimension(0); ++
i) {
118 for (
int j = 0;
j < expected.dimension(1); ++
j) {
119 for (
int k = 0;
k < expected.dimension(2); ++
k) {
120 for (
int l = 0; l < expected.dimension(3); ++l) {
127 dst_slice_start[2] = 0;
129 for (
int i = 0;
i < tensor.dimension(2); ++
i) {
131 result.slice(dst_slice_start, dst_slice_dim).roll(dim_roll) = tensor.slice(dst_slice_start, dst_slice_dim);
133 result.slice(dst_slice_start, dst_slice_dim) = tensor.roll(dim_roll).slice(dst_slice_start, dst_slice_dim);
135 dst_slice_start[2] += 1;
138 for (
int i = 0;
i < expected.dimension(0); ++
i) {
139 for (
int j = 0;
j < expected.dimension(1); ++
j) {
140 for (
int k = 0;
k < expected.dimension(2); ++
k) {
141 for (
int l = 0; l < expected.dimension(3); ++l) {
int i
Definition: BiCGSTAB_step_by_step.cpp:9
The tensor class.
Definition: Tensor.h:68
char char char int int * k
Definition: level2_impl.h:374
#define VERIFY_IS_EQUAL(a, b)
Definition: main.h:367
std::array< T, N > array
Definition: EmulateArray.h:231
std::ptrdiff_t j
Definition: tut_arithmetic_redux_minmax.cpp:2