mirror of
https://gitlab.com/libeigen/eigen.git
synced 2026-04-10 11:34:33 +08:00
* 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
This commit is contained in:
@@ -184,7 +184,7 @@ struct ei_sum_impl<Derived, LinearVectorization, NoUnrolling>
|
||||
static Scalar run(const Derived& mat)
|
||||
{
|
||||
const int size = mat.size();
|
||||
const int packetSize = ei_packet_traits<typename Derived::Scalar>::size;
|
||||
const int packetSize = ei_packet_traits<Scalar>::size;
|
||||
const int alignedSize = (size/packetSize)*packetSize;
|
||||
const bool rowMajor = Derived::Flags&RowMajorBit;
|
||||
const int innerSize = rowMajor ? mat.cols() : mat.rows();
|
||||
@@ -284,5 +284,4 @@ MatrixBase<Derived>::trace() const
|
||||
return diagonal().sum();
|
||||
}
|
||||
|
||||
|
||||
#endif // EIGEN_SUM_H
|
||||
|
||||
Reference in New Issue
Block a user