Lines Matching refs:shiftInfo
241 void computeShift(Index iu, Index iter, Scalar& exshift, Vector3s& shiftInfo);
242 …void initFrancisQRStep(Index il, Index iu, const Vector3s& shiftInfo, Index& im, Vector3s& firstHo…
330 Vector3s firstHouseholderVector(0,0,0), shiftInfo; in computeFromHessenberg()
331 computeShift(iu, iter, exshift, shiftInfo); in computeFromHessenberg()
336 initFrancisQRStep(il, iu, shiftInfo, im, firstHouseholderVector); in computeFromHessenberg()
418 …oid RealSchur<MatrixType>::computeShift(Index iu, Index iter, Scalar& exshift, Vector3s& shiftInfo) in computeShift() argument
422 shiftInfo.coeffRef(0) = m_matT.coeff(iu,iu); in computeShift()
423 shiftInfo.coeffRef(1) = m_matT.coeff(iu-1,iu-1); in computeShift()
424 shiftInfo.coeffRef(2) = m_matT.coeff(iu,iu-1) * m_matT.coeff(iu-1,iu); in computeShift()
429 exshift += shiftInfo.coeff(0); in computeShift()
431 m_matT.coeffRef(i,i) -= shiftInfo.coeff(0); in computeShift()
433 shiftInfo.coeffRef(0) = Scalar(0.75) * s; in computeShift()
434 shiftInfo.coeffRef(1) = Scalar(0.75) * s; in computeShift()
435 shiftInfo.coeffRef(2) = Scalar(-0.4375) * s * s; in computeShift()
441 Scalar s = (shiftInfo.coeff(1) - shiftInfo.coeff(0)) / Scalar(2.0); in computeShift()
442 s = s * s + shiftInfo.coeff(2); in computeShift()
446 if (shiftInfo.coeff(1) < shiftInfo.coeff(0)) in computeShift()
448 s = s + (shiftInfo.coeff(1) - shiftInfo.coeff(0)) / Scalar(2.0); in computeShift()
449 s = shiftInfo.coeff(0) - shiftInfo.coeff(2) / s; in computeShift()
453 shiftInfo.setConstant(Scalar(0.964)); in computeShift()
460 inline void RealSchur<MatrixType>::initFrancisQRStep(Index il, Index iu, const Vector3s& shiftInfo,… in initFrancisQRStep() argument
468 const Scalar r = shiftInfo.coeff(0) - Tmm; in initFrancisQRStep()
469 const Scalar s = shiftInfo.coeff(1) - Tmm; in initFrancisQRStep()
470 v.coeffRef(0) = (r * s - shiftInfo.coeff(2)) / m_matT.coeff(im+1,im) + m_matT.coeff(im,im+1); in initFrancisQRStep()