matrix storage order can now also be row-dominant (choosable for each matrix separately)

map() moves from MatrixBase to Matrix
much more documentation/examples/snippets
This commit is contained in:
Benoit Jacob
2007-12-27 21:43:10 +00:00
parent 6b9370e0f0
commit e7bdbe2e6a
25 changed files with 319 additions and 67 deletions

View File

@@ -0,0 +1,3 @@
Matrix2cf m = Matrix2cf::random();
cout << "Here is the 2x2 complex matrix m:" << endl << m << endl;
cout << "Here is the adjoint of m:" << endl << m.adjoint() << endl;

View File

@@ -1,3 +1,5 @@
Matrix4d m = Matrix4d::diagonal(Vector4d(1,2,3,4));
cout << "Here is the matrix m:" << endl << m << endl;
cout << "Here is m.block<2, 2>(2, 2):" << endl << m.block<2, 2>(2, 2) << endl;
m.block<2, 2>(2, 0) = m.block<2, 2>(2, 2);
cout << m << endl;
cout << "Now the matrix m is:" << endl << m << endl;

View File

@@ -0,0 +1,4 @@
Matrix3i m = Matrix3i::random();
cout << "Here is the matrix m:" << endl << m << endl;
cout << "Here are the coefficients on the main diagonal of m:" << endl
<< m.diagonal() << endl;

View File

@@ -1,3 +1,5 @@
Matrix3d m = Matrix3d::diagonal(Vector3d(1,2,3));
cout << "Here is the matrix m:" << endl << m << endl;
cout << "Here is m.dynBlock(1, 1, 2, 1):" << endl << m.dynBlock(1, 1, 2, 1) << endl;
m.dynBlock(1, 0, 2, 1) = m.dynBlock(1, 1, 2, 1);
cout << m << endl;
cout << "Now the matrix m is:" << endl << m << endl;

View File

@@ -0,0 +1,12 @@
Matrix2f M = Matrix2f::random();
Matrix2f m;
m = M;
cout << "Here is the matrix m:" << endl << m << endl;
cout << "Now we want to replace m by its own transpose." << endl;
cout << "If we do m = m.transpose(), then m becomes:" << endl;
m = m.transpose();
cout << m << endl << "which is wrong!" << endl;
cout << "Now let us instead do m = m.transpose().eval(). Then m becomes" << endl;
m = M;
m = m.transpose().eval();
cout << m << endl << "which is right." << endl;

View File

@@ -0,0 +1,3 @@
Matrix3i m = Matrix3i::random();
cout << "Here is the matrix m:" << endl << m << endl;
cout << "Here is m.minor(1,1):" << endl << m.minor(1,1) << endl;

View File

@@ -0,0 +1,8 @@
Matrix2f m = Matrix2f::random();
cout << "Here is the matrix m:" << endl << m << endl;
cout << "Here is the transpose of m:" << endl << m.transpose() << endl;
cout << "Here is the coefficient (1,0) in the transpose of m:" << endl
<< m.transpose()(1,0) << endl;
cout << "Let us overwrite this coefficient with the value 0." << endl;
m.transpose()(1,0) = 0;
cout << "Now the matrix m is:" << endl << m << endl;