aboutsummaryrefslogtreecommitdiffhomepage
path: root/unsupported
diff options
context:
space:
mode:
authorGravatar Thomas Capricelli <orzel@freehackers.org>2009-11-26 03:26:41 +0100
committerGravatar Thomas Capricelli <orzel@freehackers.org>2009-11-26 03:26:41 +0100
commite95f736402958e9fef27977d35389ef134f7e73d (patch)
tree1a775f6365f9c7e7cb5e73e39c5c0f0644e6798e /unsupported
parent746c787a763ed8be1bbba1e42310d8b968feacd0 (diff)
reduce ei_qrsolv() signature, wa is actually a 'working array'
Diffstat (limited to 'unsupported')
-rw-r--r--unsupported/Eigen/src/NonLinearOptimization/lmpar.h2
-rw-r--r--unsupported/Eigen/src/NonLinearOptimization/qrsolv.h6
2 files changed, 4 insertions, 4 deletions
diff --git a/unsupported/Eigen/src/NonLinearOptimization/lmpar.h b/unsupported/Eigen/src/NonLinearOptimization/lmpar.h
index c62881c81..ef1b64083 100644
--- a/unsupported/Eigen/src/NonLinearOptimization/lmpar.h
+++ b/unsupported/Eigen/src/NonLinearOptimization/lmpar.h
@@ -123,7 +123,7 @@ void ei_lmpar(
wa1 = temp * diag;
ipvt.cwise()+=1; // qrsolv() expects the fortran convention (as qrfac provides)
- ei_qrsolv<Scalar>(n, r.data(), r.rows(), ipvt.data(), wa1.data(), qtb.data(), x.data(), sdiag.data(), wa2.data());
+ ei_qrsolv<Scalar>(n, r.data(), r.rows(), ipvt.data(), wa1.data(), qtb.data(), x.data(), sdiag.data());
ipvt.cwise()-=1;
wa2 = diag.cwise() * x;
diff --git a/unsupported/Eigen/src/NonLinearOptimization/qrsolv.h b/unsupported/Eigen/src/NonLinearOptimization/qrsolv.h
index 57884870c..cbb45107a 100644
--- a/unsupported/Eigen/src/NonLinearOptimization/qrsolv.h
+++ b/unsupported/Eigen/src/NonLinearOptimization/qrsolv.h
@@ -1,8 +1,8 @@
- template <typename Scalar>
+template <typename Scalar>
void ei_qrsolv(int n, Scalar *r__, int ldr,
const int *ipvt, const Scalar *diag, const Scalar *qtb, Scalar *x,
- Scalar *sdiag, Scalar *wa)
+ Scalar *sdiag)
{
/* System generated locals */
int r_dim1, r_offset;
@@ -12,9 +12,9 @@ void ei_qrsolv(int n, Scalar *r__, int ldr,
Scalar tan__, cos__, sin__, sum, temp, cotan;
int nsing;
Scalar qtbpj;
+ Matrix< Scalar, Dynamic, 1 > wa(n+1);
/* Parameter adjustments */
- --wa;
--sdiag;
--x;
--qtb;