aboutsummaryrefslogtreecommitdiff
path: root/SRC/zgbsvxx.f
diff options
context:
space:
mode:
authorjulie <julielangou@users.noreply.github.com>2011-11-01 22:02:31 +0000
committerjulie <julielangou@users.noreply.github.com>2011-11-01 22:02:31 +0000
commitd5c30c90bdecf38da1064e2ed52583634573e741 (patch)
tree480fc5ff31ee14b83116b6428aad79ea6e89362d /SRC/zgbsvxx.f
parent04670a68760fa27333f8bcef8172f71adc6880ef (diff)
Never say never...
Diffstat (limited to 'SRC/zgbsvxx.f')
-rw-r--r--SRC/zgbsvxx.f69
1 files changed, 23 insertions, 46 deletions
diff --git a/SRC/zgbsvxx.f b/SRC/zgbsvxx.f
index 390ec7fa..955df209 100644
--- a/SRC/zgbsvxx.f
+++ b/SRC/zgbsvxx.f
@@ -178,14 +178,12 @@
*> The j-th column of A is stored in the j-th column of the
*> array AB as follows:
*> AB(KU+1+i-j,j) = A(i,j) for max(1,j-KU)<=i<=min(N,j+kl)
-*> \endverbatim
-*> \verbatim
+*>
*> If FACT = 'F' and EQUED is not 'N', then AB must have been
*> equilibrated by the scaling factors in R and/or C. AB is not
*> modified if FACT = 'F' or 'N', or if FACT = 'E' and
*> EQUED = 'N' on exit.
-*> \endverbatim
-*> \verbatim
+*>
*> On exit, if EQUED .ne. 'N', A is scaled as follows:
*> EQUED = 'R': A := diag(R) * A
*> EQUED = 'C': A := A * diag(C)
@@ -208,13 +206,11 @@
*> and the multipliers used during the factorization are stored
*> in rows KL+KU+2 to 2*KL+KU+1. If EQUED .ne. 'N', then AFB is
*> the factored form of the equilibrated matrix A.
-*> \endverbatim
-*> \verbatim
+*>
*> If FACT = 'N', then AF is an output argument and on exit
*> returns the factors L and U from the factorization A = P*L*U
*> of the original matrix A.
-*> \endverbatim
-*> \verbatim
+*>
*> If FACT = 'E', then AF is an output argument and on exit
*> returns the factors L and U from the factorization A = P*L*U
*> of the equilibrated matrix A (see the description of A for
@@ -234,13 +230,11 @@
*> contains the pivot indices from the factorization A = P*L*U
*> as computed by DGETRF; row i of the matrix was interchanged
*> with row IPIV(i).
-*> \endverbatim
-*> \verbatim
+*>
*> If FACT = 'N', then IPIV is an output argument and on exit
*> contains the pivot indices from the factorization A = P*L*U
*> of the original matrix A.
-*> \endverbatim
-*> \verbatim
+*>
*> If FACT = 'E', then IPIV is an output argument and on exit
*> contains the pivot indices from the factorization A = P*L*U
*> of the equilibrated matrix A.
@@ -380,37 +374,31 @@
*> For each right-hand side, this array contains information about
*> various error bounds and condition numbers corresponding to the
*> normwise relative error, which is defined as follows:
-*> \endverbatim
-*> \verbatim
+*>
*> Normwise relative error in the ith solution vector:
*> max_j (abs(XTRUE(j,i) - X(j,i)))
*> ------------------------------
*> max_j abs(X(j,i))
-*> \endverbatim
-*> \verbatim
+*>
*> The array is indexed by the type of error information as described
*> below. There currently are up to three pieces of information
*> returned.
-*> \endverbatim
-*> \verbatim
+*>
*> The first index in ERR_BNDS_NORM(i,:) corresponds to the ith
*> right-hand side.
-*> \endverbatim
-*> \verbatim
+*>
*> The second index in ERR_BNDS_NORM(:,err) contains the following
*> three fields:
*> err = 1 "Trust/don't trust" boolean. Trust the answer if the
*> reciprocal condition number is less than the threshold
*> sqrt(n) * dlamch('Epsilon').
-*> \endverbatim
-*> \verbatim
+*>
*> err = 2 "Guaranteed" error bound: The estimated forward error,
*> almost certainly within a factor of 10 of the true error
*> so long as the next entry is greater than the threshold
*> sqrt(n) * dlamch('Epsilon'). This error bound should only
*> be trusted if the previous boolean is true.
-*> \endverbatim
-*> \verbatim
+*>
*> err = 3 Reciprocal condition number: Estimated normwise
*> reciprocal condition number. Compared with the threshold
*> sqrt(n) * dlamch('Epsilon') to determine if the error
@@ -419,8 +407,7 @@
*> appropriately scaled matrix Z.
*> Let Z = S*A, where S scales each row by a power of the
*> radix so all absolute row sums of Z are approximately 1.
-*> \endverbatim
-*> \verbatim
+*>
*> See Lapack Working Note 165 for further details and extra
*> cautions.
*> \endverbatim
@@ -431,14 +418,12 @@
*> For each right-hand side, this array contains information about
*> various error bounds and condition numbers corresponding to the
*> componentwise relative error, which is defined as follows:
-*> \endverbatim
-*> \verbatim
+*>
*> Componentwise relative error in the ith solution vector:
*> abs(XTRUE(j,i) - X(j,i))
*> max_j ----------------------
*> abs(X(j,i))
-*> \endverbatim
-*> \verbatim
+*>
*> The array is indexed by the right-hand side i (on which the
*> componentwise relative error depends), and the type of error
*> information as described below. There currently are up to three
@@ -446,26 +431,22 @@
*> componentwise accuracy is not requested (PARAMS(3) = 0.0), then
*> ERR_BNDS_COMP is not accessed. If N_ERR_BNDS .LT. 3, then at most
*> the first (:,N_ERR_BNDS) entries are returned.
-*> \endverbatim
-*> \verbatim
+*>
*> The first index in ERR_BNDS_COMP(i,:) corresponds to the ith
*> right-hand side.
-*> \endverbatim
-*> \verbatim
+*>
*> The second index in ERR_BNDS_COMP(:,err) contains the following
*> three fields:
*> err = 1 "Trust/don't trust" boolean. Trust the answer if the
*> reciprocal condition number is less than the threshold
*> sqrt(n) * dlamch('Epsilon').
-*> \endverbatim
-*> \verbatim
+*>
*> err = 2 "Guaranteed" error bound: The estimated forward error,
*> almost certainly within a factor of 10 of the true error
*> so long as the next entry is greater than the threshold
*> sqrt(n) * dlamch('Epsilon'). This error bound should only
*> be trusted if the previous boolean is true.
-*> \endverbatim
-*> \verbatim
+*>
*> err = 3 Reciprocal condition number: Estimated componentwise
*> reciprocal condition number. Compared with the threshold
*> sqrt(n) * dlamch('Epsilon') to determine if the error
@@ -476,8 +457,7 @@
*> current right-hand side and S scales each row of
*> A*diag(x) by a power of the radix so all absolute row
*> sums of Z are approximately 1.
-*> \endverbatim
-*> \verbatim
+*>
*> See Lapack Working Note 165 for further details and extra
*> cautions.
*> \endverbatim
@@ -496,8 +476,7 @@
*> that entry will be filled with default value used for that
*> parameter. Only positions up to NPARAMS are accessed; defaults
*> are used for higher-numbered parameters.
-*> \endverbatim
-*> \verbatim
+*>
*> PARAMS(LA_LINRX_ITREF_I = 1) : Whether to perform iterative
*> refinement or not.
*> Default: 1.0D+0
@@ -505,8 +484,7 @@
*> computed.
*> = 1.0 : Use the extra-precise refinement algorithm.
*> (other values are reserved for future use)
-*> \endverbatim
-*> \verbatim
+*>
*> PARAMS(LA_LINRX_ITHRESH_I = 2) : Maximum number of residual
*> computations allowed for refinement.
*> Default: 10
@@ -516,8 +494,7 @@
*> Gaussian elimination, the guarantees in
*> err_bnds_norm and err_bnds_comp may no longer be
*> trustworthy.
-*> \endverbatim
-*> \verbatim
+*>
*> PARAMS(LA_LINRX_CWISE_I = 3) : Flag determining if the code
*> will attempt to find a solution with small componentwise
*> relative error in the double-precision algorithm. Positive