aboutsummaryrefslogtreecommitdiff
path: root/SRC/cherfsx.f
diff options
context:
space:
mode:
authordeaglanhalligan <deaglanhalligan@8a072113-8704-0410-8d35-dd094bca7971>2009-02-11 06:06:54 +0000
committerdeaglanhalligan <deaglanhalligan@8a072113-8704-0410-8d35-dd094bca7971>2009-02-11 06:06:54 +0000
commit1f0792306441cdcd175199ad6720671df249dc47 (patch)
tree3a1c16a498b614128bc3977416ee7b3090d03dae /SRC/cherfsx.f
parente9454e224e5fa4d61076493be3916a64f274a5ae (diff)
Added Jasons patches to bring work and rwork down to 2*N in the complex refinement routines.
Diffstat (limited to 'SRC/cherfsx.f')
-rw-r--r--SRC/cherfsx.f9
1 files changed, 5 insertions, 4 deletions
diff --git a/SRC/cherfsx.f b/SRC/cherfsx.f
index 3db6eb73..92fe9529 100644
--- a/SRC/cherfsx.f
+++ b/SRC/cherfsx.f
@@ -267,9 +267,9 @@
* is true, 0.0 is false.
* Default: 1.0 (attempt componentwise convergence)
*
-* WORK (workspace) REAL array, dimension (4*N)
+* WORK (workspace) COMPLEX array, dimension (2*N)
*
-* IWORK (workspace) INTEGER array, dimension (N)
+* RWORK (workspace) REAL array, dimension (2*N)
*
* INFO (output) INTEGER
* = 0: Successful exit. The solution to every right-hand side is
@@ -333,7 +333,7 @@
EXTERNAL XERBLA, CHECON, CLA_HERFSX_EXTENDED
* ..
* .. Intrinsic Functions ..
- INTRINSIC MAX, SQRT
+ INTRINSIC MAX, SQRT, TRANSFER
* ..
* .. External Functions ..
EXTERNAL LSAME, BLAS_FPINFO_X, ILATRANS, ILAPREC
@@ -471,7 +471,8 @@
CALL CLA_HERFSX_EXTENDED( PREC_TYPE, UPLO, N,
$ NRHS, A, LDA, AF, LDAF, IPIV, RCEQU, S, B,
$ LDB, X, LDX, BERR, N_NORMS, ERR_BNDS_NORM, ERR_BNDS_COMP,
- $ WORK(N+1), WORK(1), WORK(2*N+1), WORK(1), RCOND,
+ $ WORK, RWORK, WORK(N+1),
+ $ TRANSFER (RWORK(1:2*N), (/ (ZERO, ZERO) /), N), RCOND,
$ ITHRESH, RTHRESH, UNSTABLE_THRESH, IGNORE_CWISE,
$ INFO )
END IF