aboutsummaryrefslogtreecommitdiffhomepage
path: root/doc/examples
diff options
context:
space:
mode:
authorGravatar Benoit Jacob <jacob.benoit.1@gmail.com>2010-10-18 08:44:27 -0400
committerGravatar Benoit Jacob <jacob.benoit.1@gmail.com>2010-10-18 08:44:27 -0400
commit1c15a6d96f5bdd6e758552725ea316167aa5ebe3 (patch)
tree64e1d682afb5fb1efe7e7633550038ae55b9dd9f /doc/examples
parent4b0fb968ea9c138df74203f8695ece58edc680b0 (diff)
improvements in tutorial page 4 : block operations
Diffstat (limited to 'doc/examples')
-rw-r--r--doc/examples/Tutorial_BlockOperations_block_assignment.cpp18
-rw-r--r--doc/examples/Tutorial_BlockOperations_colrow.cpp11
-rw-r--r--doc/examples/Tutorial_BlockOperations_print_block.cpp12
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;
}
}