#include using namespace triqs::arrays; int main() { typedef std::complex dcomplex; array A(10,2,2); A() = -1; A(4,range(),range()) = 1; A(5,range(),range()) = 2; matrix_view M1 = A(4,range(),range()); matrix_view M2 = A(5,range(),range()); std::cout << M1 << std::endl; std::cout << M2 << std::endl; M1 = M1*M2; // aie! M1 is zero! std::cout << M1 << std::endl; std::cout << M2 << std::endl; matrix B1(2,2), B2(2,2); B1() = 2; B2() = 3; std::cout << "----------" << std::endl; std::cout << B1 << std::endl; std::cout << B2 << std::endl; //make_cache(B1).view() = B1 * B2; //B1 = matrix(B1) * B2; B1 = make_clone(B1) * B2; std::cout << B1 << std::endl; }