diff options
author | Benoit Jacob <jacob.benoit.1@gmail.com> | 2010-10-18 08:44:27 -0400 |
---|---|---|
committer | Benoit Jacob <jacob.benoit.1@gmail.com> | 2010-10-18 08:44:27 -0400 |
commit | 1c15a6d96f5bdd6e758552725ea316167aa5ebe3 (patch) | |
tree | 64e1d682afb5fb1efe7e7633550038ae55b9dd9f /doc/examples | |
parent | 4b0fb968ea9c138df74203f8695ece58edc680b0 (diff) |
improvements in tutorial page 4 : block operations
Diffstat (limited to 'doc/examples')
-rw-r--r-- | doc/examples/Tutorial_BlockOperations_block_assignment.cpp | 18 | ||||
-rw-r--r-- | doc/examples/Tutorial_BlockOperations_colrow.cpp | 11 | ||||
-rw-r--r-- | doc/examples/Tutorial_BlockOperations_print_block.cpp | 12 |
3 files changed, 23 insertions, 18 deletions
diff --git a/doc/examples/Tutorial_BlockOperations_block_assignment.cpp b/doc/examples/Tutorial_BlockOperations_block_assignment.cpp index 56ca69a6e..76f49f2fb 100644 --- a/doc/examples/Tutorial_BlockOperations_block_assignment.cpp +++ b/doc/examples/Tutorial_BlockOperations_block_assignment.cpp @@ -6,13 +6,13 @@ using namespace Eigen; int main() { - Array33f m; - m << 1,2,3, - 4,5,6, - 7,8,9; - Array<float,5,5> n = Array<float,5,5>::Constant(0.6); - n.block(1,1,3,3) = m; - cout << "n = " << endl << n << endl << endl; - Array33f res = n.block(0,0,3,3) * m; - cout << "res =" << endl << res << endl; + Array22f m; + m << 1,2, + 3,4; + Array44f a = Array44f::Constant(0.6); + cout << "Here is the array a:" << endl << a << endl << endl; + a.block<2,2>(1,1) = m; + cout << "Here is now a with m copied into its central 2x2 block:" << endl << a << endl << endl; + a.block(0,0,2,3) = a.block(2,1,2,3); + cout << "Here is now a with bottom-right 2x3 block copied into top-left 2x2 block:" << endl << a << endl << endl; } diff --git a/doc/examples/Tutorial_BlockOperations_colrow.cpp b/doc/examples/Tutorial_BlockOperations_colrow.cpp index e98263057..2e7eb009b 100644 --- a/doc/examples/Tutorial_BlockOperations_colrow.cpp +++ b/doc/examples/Tutorial_BlockOperations_colrow.cpp @@ -1,14 +1,17 @@ #include <Eigen/Dense> #include <iostream> +using namespace std; + int main() { Eigen::MatrixXf m(3,3); m << 1,2,3, 4,5,6, 7,8,9; - std::cout << "2nd Row: " << m.row(1) << std::endl; - m.col(0) += m.col(2); - std::cout << "m after adding third column to first:\n"; - std::cout << m << std::endl; + cout << "Here is the matrix m:" << endl << m << endl; + cout << "2nd Row: " << m.row(1) << endl; + m.col(2) += 3 * m.col(0); + cout << "After adding 3 times the first column into the third column, the matrix m is:\n"; + cout << m << endl; } diff --git a/doc/examples/Tutorial_BlockOperations_print_block.cpp b/doc/examples/Tutorial_BlockOperations_print_block.cpp index 0fdefecdf..edea4aefe 100644 --- a/doc/examples/Tutorial_BlockOperations_print_block.cpp +++ b/doc/examples/Tutorial_BlockOperations_print_block.cpp @@ -1,6 +1,8 @@ #include <Eigen/Dense> #include <iostream> +using namespace std; + int main() { Eigen::MatrixXf m(4,4); @@ -8,11 +10,11 @@ int main() 5, 6, 7, 8, 9,10,11,12, 13,14,15,16; - std::cout << "Block in the middle" << std::endl; - std::cout << m.block<2,2>(1,1) << std::endl << std::endl; - for (int i = 1; i < 4; ++i) + cout << "Block in the middle" << endl; + cout << m.block<2,2>(1,1) << endl << endl; + for (int i = 1; i <= 3; ++i) { - std::cout << "Block of size " << i << std::endl; - std::cout << m.block(0,0,i,i) << std::endl << std::endl; + cout << "Block of size " << i << "x" << i << endl; + cout << m.block(0,0,i,i) << endl << endl; } } |