27 {
28 if(argc != 2) {
29 std::cerr << "Usage: 0.(This) 1.(dim)\n"
30 << " argc=" << argc << std::endl;
31 std::exit(EXIT_FAILURE);
32 }
33 int const dim = std::atoi(argv[1]);
35
36 std::mt19937 mt;
37 std::normal_distribution<double> Gaussian;
39 auto randomComplex = [&]() {
return Complex_t<double>(Gaussian(mt), Gaussian(mt)); };
40
41 Eigen::MatrixX<Scalar> hMat1 = Eigen::MatrixX<Scalar>::NullaryExpr(dim, dim, randomComplex);
42 hMat1 = (hMat1 + hMat1.adjoint().eval()) / 2.0;
43 Eigen::MatrixX<Scalar> hMat2 = Eigen::MatrixX<Scalar>::NullaryExpr(dim, dim, randomComplex);
44 hMat2 = (hMat2 + hMat2.adjoint().eval()) / 2.0;
47
48
49
50
51
54 std::cout << expvals_d << std::endl;
55
56
57
58
59
60
61
62 return EXIT_SUCCESS;
63}
auto EigenExpValues(ObjectOnGPU< Matrix1 > const &eigenvectors, ObjectOnGPU< Matrix2 > const &observable) -> Eigen::VectorX< typename Matrix1::RealScalar >
Definition EigenExpValues.cuh:9
Definition mytypes.hpp:147
static MagmaController & getInstance()
Definition ObjectOnGPU_EigenMatrix_test.cu:14
Definition MatrixUtils.hpp:20
Definition ObjectOnGPU.cuh:149