Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- index_t * C_dims = SG_MALLOC(index_t, 3);
- C_dims[0] = 10;
- C_dims[1] = 10;
- C_dims[2] = 30;
- SGNDArray< float64_t > C(C_dims, 3);
- // Load Data (is transposed)
- SGMatrix<float64_t> C_flat(C_dims[1]*C_dims[2], C_dims[0]);
- CAsciiFile C_in("C.csv", 'r');
- C_flat.load(&C_in);
- C_in.close();
- // Reshape Data
- Eigen::Map<EMatrix> EC_flat(C_flat.matrix, C_dims[1]*C_dims[2], C_dims[0]); // (still transposed)
- for(int i = 0; i < C_dims[2]; i++)
- {
- Eigen::Map<EMatrix> Ci(C.get_matrix(i), C_dims[0], C_dims[1]);
- EMatrix src = EC_flat.block(i*C_dims[1], 0, C_dims[1], C_dims[0]);
- Ci = src.transpose(); // un-transpose here
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement