]>
git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/numeric/ublas/doc/samples/hermitian_matrix.cpp
2 // Copyright (c) 2000-2002
3 // Joerg Walter, Mathias Koch
5 // Distributed under the Boost Software License, Version 1.0. (See
6 // accompanying file LICENSE_1_0.txt or copy at
7 // http://www.boost.org/LICENSE_1_0.txt)
9 // The authors gratefully acknowledge the support of
10 // GeNeSys mbH & Co. KG in producing this work.
13 #include <boost/numeric/ublas/hermitian.hpp>
14 #include <boost/numeric/ublas/io.hpp>
17 using namespace boost::numeric::ublas
;
18 hermitian_matrix
<std::complex<double>, lower
> ml (3, 3);
19 for (unsigned i
= 0; i
< ml
.size1 (); ++ i
) {
20 for (unsigned j
= 0; j
< i
; ++ j
)
21 ml (i
, j
) = std::complex<double> (3 * i
+ j
, 3 * i
+ j
);
22 ml (i
, i
) = std::complex<double> (4 * i
, 0);
24 std::cout
<< ml
<< std::endl
;
25 hermitian_matrix
<std::complex<double>, upper
> mu (3, 3);
26 for (unsigned i
= 0; i
< mu
.size1 (); ++ i
) {
27 mu (i
, i
) = std::complex<double> (4 * i
, 0);
28 for (unsigned j
= i
+ 1; j
< mu
.size2 (); ++ j
)
29 mu (i
, j
) = std::complex<double> (3 * i
+ j
, 3 * i
+ j
);
31 std::cout
<< mu
<< std::endl
;