* vectorize dot product, copying code from sum.
* make the conj functor vectorizable: it is just identity in real case,
and complex doesn't use the vectorized path anyway.
* fix bug in Block: a 3x1 block in a 4x4 matrix (all fixed-size)
should not be vectorizable, since in fixed-size we are assuming
the size to be a multiple of packet size. (Or would you prefer
Vector3d to be flagged "packetaccess" even though no packet access
is possible on vectors of that type?)
* rename:
isOrtho for vectors ---> isOrthogonal
isOrtho for matrices ---> isUnitary
* add normalize()
* reimplement normalized with quotient1 functor
diff --git a/doc/snippets/MatrixBase_isOrtho_matrix.cpp b/doc/snippets/MatrixBase_isOrtho_matrix.cpp
deleted file mode 100644
index a79df92..0000000
--- a/doc/snippets/MatrixBase_isOrtho_matrix.cpp
+++ /dev/null
@@ -1,5 +0,0 @@
-Matrix3d m = Matrix3d::identity();
-m(0,2) = 1e-4;
-cout << "Here's the matrix m:" << endl << m << endl;
-cout << "m.isOrtho() returns: " << m.isOrtho() << endl;
-cout << "m.isOrtho(1e-3) returns: " << m.isOrtho(1e-3) << endl;
diff --git a/doc/snippets/MatrixBase_isOrtho_vector.cpp b/doc/snippets/MatrixBase_isOrtho_vector.cpp
deleted file mode 100644
index 656eaf3..0000000
--- a/doc/snippets/MatrixBase_isOrtho_vector.cpp
+++ /dev/null
@@ -1,6 +0,0 @@
-Vector3d v(1,0,0);
-Vector3d w(1e-4,0,1);
-cout << "Here's the vector v:" << endl << v << endl;
-cout << "Here's the vector w:" << endl << w << endl;
-cout << "v.isOrtho(w) returns: " << v.isOrtho(w) << endl;
-cout << "v.isOrtho(w,1e-3) returns: " << v.isOrtho(w,1e-3) << endl;
diff --git a/doc/snippets/MatrixBase_isOrthogonal.cpp b/doc/snippets/MatrixBase_isOrthogonal.cpp
new file mode 100644
index 0000000..b22af06
--- /dev/null
+++ b/doc/snippets/MatrixBase_isOrthogonal.cpp
@@ -0,0 +1,6 @@
+Vector3d v(1,0,0);
+Vector3d w(1e-4,0,1);
+cout << "Here's the vector v:" << endl << v << endl;
+cout << "Here's the vector w:" << endl << w << endl;
+cout << "v.isOrthogonal(w) returns: " << v.isOrthogonal(w) << endl;
+cout << "v.isOrthogonal(w,1e-3) returns: " << v.isOrthogonal(w,1e-3) << endl;
diff --git a/doc/snippets/MatrixBase_isUnitary.cpp b/doc/snippets/MatrixBase_isUnitary.cpp
new file mode 100644
index 0000000..d29aa5f
--- /dev/null
+++ b/doc/snippets/MatrixBase_isUnitary.cpp
@@ -0,0 +1,5 @@
+Matrix3d m = Matrix3d::identity();
+m(0,2) = 1e-4;
+cout << "Here's the matrix m:" << endl << m << endl;
+cout << "m.isUnitary() returns: " << m.isUnitary() << endl;
+cout << "m.isUnitary(1e-3) returns: " << m.isUnitary(1e-3) << endl;