This bugzilla service is closed. All entries have been migrated to https://gitlab.com/libeigen/eigen
View | Details | Raw Unified | Return to bug 50 | Differences between
and this patch

Collapse All | Expand All

(-)a/Eigen/src/Eigenvalues/HessenbergDecomposition.h (-1 lines)
Lines 246-252 Link Here
246
    {
246
    {
247
      eigen_assert(m_isInitialized && "HessenbergDecomposition is not initialized.");
247
      eigen_assert(m_isInitialized && "HessenbergDecomposition is not initialized.");
248
      return HouseholderSequenceType(m_matrix, m_hCoeffs.conjugate())
248
      return HouseholderSequenceType(m_matrix, m_hCoeffs.conjugate())
249
             .setLength(m_matrix.rows() - 1)
250
             .setShift(1);
249
             .setShift(1);
251
    }
250
    }
252
251
(-)a/Eigen/src/Eigenvalues/Tridiagonalization.h (-2 lines)
Lines 252-258 Link Here
252
    {
252
    {
253
      eigen_assert(m_isInitialized && "Tridiagonalization is not initialized.");
253
      eigen_assert(m_isInitialized && "Tridiagonalization is not initialized.");
254
      return HouseholderSequenceType(m_matrix, m_hCoeffs.conjugate())
254
      return HouseholderSequenceType(m_matrix, m_hCoeffs.conjugate())
255
             .setLength(m_matrix.rows() - 1)
256
             .setShift(1);
255
             .setShift(1);
257
    }
256
    }
258
257
Lines 462-468 Link Here
462
    subdiag = mat.template diagonal<-1>().real();
461
    subdiag = mat.template diagonal<-1>().real();
463
    if(extractQ)
462
    if(extractQ)
464
      mat = HouseholderSequenceType(mat, hCoeffs.conjugate())
463
      mat = HouseholderSequenceType(mat, hCoeffs.conjugate())
465
            .setLength(mat.rows() - 1)
466
            .setShift(1);
464
            .setShift(1);
467
  }
465
  }
468
};
466
};
(-)a/Eigen/src/Householder/HouseholderSequence.h (-1 / +1 lines)
Lines 130-136 Link Here
130
    > ConjugateReturnType;
130
    > ConjugateReturnType;
131
131
132
    HouseholderSequence(const VectorsType& v, const CoeffsType& h)
132
    HouseholderSequence(const VectorsType& v, const CoeffsType& h)
133
      : m_vectors(v), m_coeffs(h), m_trans(false), m_length(v.diagonalSize()),
133
      : m_vectors(v), m_coeffs(h), m_trans(false), m_length(h.size()),
134
        m_shift(0)
134
        m_shift(0)
135
    {
135
    {
136
    }
136
    }
(-)a/Eigen/src/QR/ColPivHouseholderQR.h (-3 / +2 lines)
Lines 483-491 Link Here
483
    typename Rhs::PlainObject c(rhs());
483
    typename Rhs::PlainObject c(rhs());
484
484
485
    // Note that the matrix Q = H_0^* H_1^*... so its inverse is Q^* = (H_0 H_1 ...)^T
485
    // Note that the matrix Q = H_0^* H_1^*... so its inverse is Q^* = (H_0 H_1 ...)^T
486
    c.applyOnTheLeft(householderSequence(dec().matrixQR(), dec().hCoeffs())
486
    c.applyOnTheLeft(householderSequence(dec().matrixQR(), dec().hCoeffs().head(dec().nonzeroPivots()))
487
                     .setTrans(true)
487
                     .setTrans(true)
488
                     .setLength(dec().nonzeroPivots())
489
      );
488
      );
490
489
491
    dec().matrixQR()
490
    dec().matrixQR()
Lines 514-520 Link Here
514
  ::householderQ() const
513
  ::householderQ() const
515
{
514
{
516
  eigen_assert(m_isInitialized && "ColPivHouseholderQR is not initialized.");
515
  eigen_assert(m_isInitialized && "ColPivHouseholderQR is not initialized.");
517
  return HouseholderSequenceType(m_qr, m_hCoeffs.conjugate()).setLength(m_nonzero_pivots);
516
  return HouseholderSequenceType(m_qr, m_hCoeffs.conjugate().head(m_nonzero_pivots));
518
}
517
}
519
518
520
/** \return the column-pivoting Householder QR decomposition of \c *this.
519
/** \return the column-pivoting Householder QR decomposition of \c *this.

Return to bug 50