Bastien ROUCARIES <[email protected]> writes:

> Beta is misaligned in the man page of zggev.
>
> I have just cook a patch. I know it is obvious but it ease the
> reading. Other man page of the serie has the same problem

Indeed, this is a minor but rather annoying issue, rather widespread
amongst the LaPack manual pages, as shown by

cd lapack-3.2.1/man/manl
for i in *; do
  o=$(sed -n '/^[A-Z][A-Z0-9]*  *(/{h;n;/^[A-Z][A-Z0-9]*  *(/{x;p;x;p}}' $i)
  [ "$o" ] && {
    echo $i
    echo "$o"
  }
done

However, most of this can be fixed by issuing

sed -i '/^\.TP /{n;/^[A-Z][A-Z0-9]*  *(/{:cont;n;/^[A-Z][A-Z0-9]*  *(/{i.TQ
bcont}}}' *

in the manl directory.  The obvious remaining offenders are the
[sdcz]larrv.l pages (escaping the sed fix due to their undocumented
MINRGP argument), which are also seriously challenged with respect to
the documentation of their INFO argument.  I attach 4 proof-of-concept
patches to fix up these, but I admit that I've got no idea about what
IINFO is, so take that part of the patches with extra grains of salt.
Also, the INFO documentation generally isn't structured into .TPs in
other functions, but that's less of a problem in the simpler cases.
Still, it would be nice (and probably reasonable to automate) to fix up
those, too.

Of course these manual pages might be automatically generated from the
Fortran source files, in which case fixing the generation process would
be preferred, but I couldn't find any information regarding this.
-- 
Thanks,
Feri.

--- manl.orig/slarrv.l	2009-01-03 00:02:29.000000000 +0100
+++ manl/slarrv.l	2011-02-14 18:39:51.011505086 +0100
@@ -41,6 +41,7 @@
 The order of the matrix.  N >= 0.
 .TP 8
 VL      (input) REAL            
+.TQ
 VU      (input) REAL            
 Lower and upper bounds of the interval that contains the desired
 eigenvalues. VL < VU. Needed to compute gaps on the left or right
@@ -70,6 +71,7 @@
 The total number of input eigenvalues.  0 <= M <= N.
 .TP 8
 DOL     (input) INTEGER
+.TQ
 DOU     (input) INTEGER
 If the user wants to compute only selected eigenvectors from all
 the eigenvalues supplied, he can specify an index range DOL:DOU.
@@ -83,6 +85,7 @@
 MINRGP  (input) REAL            
 .TP 8
 RTOL1   (input) REAL            
+.TQ
 RTOL2   (input) REAL            
 Parameters for bisection.
 RIGHT-LEFT.LT.MAX( RTOL1*GAP, RTOL2*MAX(|LEFT|,|RIGHT|) )
@@ -143,14 +146,20 @@
 IWORK   (workspace) INTEGER array, dimension (7*N)
 .TP 8
 INFO    (output) INTEGER
+.RS
+.PD 0
+.TP 6
 = 0:  successful exit
+.TP 6
 > 0:  A problem occured in SLARRV.
-.br
+.TP 6
 < 0:  One of the called subroutines signaled an internal problem.
 Needs inspection of the corresponding parameter IINFO
 for further information.
+.RS
 .TP 6
 =-1:  Problem in SLARRB when refining a child\(aqs eigenvalues.
+.TP 6
 =-2:  Problem in SLARRF when computing the RRR of a child.
 When a child is inside a tight cluster, it can be difficult
 to find an RRR. A partial remedy from the user\(aqs point of
@@ -158,10 +167,13 @@
 However, as the orthogonality of the computed vectors is
 proportional to 1/MINRGP, the user should be aware that
 he might be trading in precision when he decreases MINRGP.
+.TP 6
 =-3:  Problem in SLARRB when refining a single eigenvalue
 after the Rayleigh correction was rejected.
+.TP 6
 = 5:  The Rayleigh Quotient Iteration failed to converge to
 full accuracy in MAXITR steps.
+.PD
 .SH FURTHER DETAILS
 Based on contributions by
 .br
--- manl.orig/dlarrv.l	2009-01-03 00:02:27.000000000 +0100
+++ manl/dlarrv.l	2011-02-14 18:40:32.304929531 +0100
@@ -41,6 +41,7 @@
 The order of the matrix.  N >= 0.
 .TP 8
 VL      (input) DOUBLE PRECISION
+.TQ
 VU      (input) DOUBLE PRECISION
 Lower and upper bounds of the interval that contains the desired
 eigenvalues. VL < VU. Needed to compute gaps on the left or right
@@ -70,6 +71,7 @@
 The total number of input eigenvalues.  0 <= M <= N.
 .TP 8
 DOL     (input) INTEGER
+.TQ
 DOU     (input) INTEGER
 If the user wants to compute only selected eigenvectors from all
 the eigenvalues supplied, he can specify an index range DOL:DOU.
@@ -83,6 +85,7 @@
 MINRGP  (input) DOUBLE PRECISION
 .TP 8
 RTOL1   (input) DOUBLE PRECISION
+.TQ
 RTOL2   (input) DOUBLE PRECISION
 Parameters for bisection.
 RIGHT-LEFT.LT.MAX( RTOL1*GAP, RTOL2*MAX(|LEFT|,|RIGHT|) )
@@ -143,14 +146,20 @@
 IWORK   (workspace) INTEGER array, dimension (7*N)
 .TP 8
 INFO    (output) INTEGER
+.RS
+.PD 0
+.TP 6
 = 0:  successful exit
+.TP 6
 > 0:  A problem occured in DLARRV.
-.br
+.TP 6
 < 0:  One of the called subroutines signaled an internal problem.
 Needs inspection of the corresponding parameter IINFO
 for further information.
+.RS
 .TP 6
 =-1:  Problem in DLARRB when refining a child\(aqs eigenvalues.
+.TP 6
 =-2:  Problem in DLARRF when computing the RRR of a child.
 When a child is inside a tight cluster, it can be difficult
 to find an RRR. A partial remedy from the user\(aqs point of
@@ -158,10 +167,13 @@
 However, as the orthogonality of the computed vectors is
 proportional to 1/MINRGP, the user should be aware that
 he might be trading in precision when he decreases MINRGP.
+.TP 6
 =-3:  Problem in DLARRB when refining a single eigenvalue
 after the Rayleigh correction was rejected.
+.TP 6
 = 5:  The Rayleigh Quotient Iteration failed to converge to
 full accuracy in MAXITR steps.
+.PD
 .SH FURTHER DETAILS
 Based on contributions by
 .br
--- manl.orig/clarrv.l	2009-01-03 00:02:25.000000000 +0100
+++ manl/clarrv.l	2011-02-14 18:40:58.311307487 +0100
@@ -41,6 +41,7 @@
 The order of the matrix.  N >= 0.
 .TP 8
 VL      (input) REAL            
+.TQ
 VU      (input) REAL            
 Lower and upper bounds of the interval that contains the desired
 eigenvalues. VL < VU. Needed to compute gaps on the left or right
@@ -70,6 +71,7 @@
 The total number of input eigenvalues.  0 <= M <= N.
 .TP 8
 DOL     (input) INTEGER
+.TQ
 DOU     (input) INTEGER
 If the user wants to compute only selected eigenvectors from all
 the eigenvalues supplied, he can specify an index range DOL:DOU.
@@ -83,6 +85,7 @@
 MINRGP  (input) REAL            
 .TP 8
 RTOL1   (input) REAL            
+.TQ
 RTOL2   (input) REAL            
 Parameters for bisection.
 RIGHT-LEFT.LT.MAX( RTOL1*GAP, RTOL2*MAX(|LEFT|,|RIGHT|) )
@@ -143,14 +146,20 @@
 IWORK   (workspace) INTEGER array, dimension (7*N)
 .TP 8
 INFO    (output) INTEGER
+.RS
+.PD 0
+.TP 6
 = 0:  successful exit
+.TP 6
 > 0:  A problem occured in CLARRV.
-.br
+.TP 6
 < 0:  One of the called subroutines signaled an internal problem.
 Needs inspection of the corresponding parameter IINFO
 for further information.
+.RS
 .TP 6
 =-1:  Problem in SLARRB when refining a child\(aqs eigenvalues.
+.TP 6
 =-2:  Problem in SLARRF when computing the RRR of a child.
 When a child is inside a tight cluster, it can be difficult
 to find an RRR. A partial remedy from the user\(aqs point of
@@ -158,10 +167,13 @@
 However, as the orthogonality of the computed vectors is
 proportional to 1/MINRGP, the user should be aware that
 he might be trading in precision when he decreases MINRGP.
+.TP 6
 =-3:  Problem in SLARRB when refining a single eigenvalue
 after the Rayleigh correction was rejected.
+.TP 6
 = 5:  The Rayleigh Quotient Iteration failed to converge to
 full accuracy in MAXITR steps.
+.PD
 .SH FURTHER DETAILS
 Based on contributions by
 .br
--- manl.orig/zlarrv.l	2009-01-03 00:02:31.000000000 +0100
+++ manl/zlarrv.l	2011-02-14 18:41:12.074449073 +0100
@@ -41,6 +41,7 @@
 The order of the matrix.  N >= 0.
 .TP 8
 VL      (input) DOUBLE PRECISION
+.TQ
 VU      (input) DOUBLE PRECISION
 Lower and upper bounds of the interval that contains the desired
 eigenvalues. VL < VU. Needed to compute gaps on the left or right
@@ -70,6 +71,7 @@
 The total number of input eigenvalues.  0 <= M <= N.
 .TP 8
 DOL     (input) INTEGER
+.TQ
 DOU     (input) INTEGER
 If the user wants to compute only selected eigenvectors from all
 the eigenvalues supplied, he can specify an index range DOL:DOU.
@@ -83,6 +85,7 @@
 MINRGP  (input) DOUBLE PRECISION
 .TP 8
 RTOL1   (input) DOUBLE PRECISION
+.TQ
 RTOL2   (input) DOUBLE PRECISION
 Parameters for bisection.
 RIGHT-LEFT.LT.MAX( RTOL1*GAP, RTOL2*MAX(|LEFT|,|RIGHT|) )
@@ -143,14 +146,20 @@
 IWORK   (workspace) INTEGER array, dimension (7*N)
 .TP 8
 INFO    (output) INTEGER
+.RS
+.PD 0
+.TP 6
 = 0:  successful exit
+.TP 6
 > 0:  A problem occured in ZLARRV.
-.br
+.TP 6
 < 0:  One of the called subroutines signaled an internal problem.
 Needs inspection of the corresponding parameter IINFO
 for further information.
+.RS
 .TP 6
 =-1:  Problem in DLARRB when refining a child\(aqs eigenvalues.
+.TP 6
 =-2:  Problem in DLARRF when computing the RRR of a child.
 When a child is inside a tight cluster, it can be difficult
 to find an RRR. A partial remedy from the user\(aqs point of
@@ -158,10 +167,13 @@
 However, as the orthogonality of the computed vectors is
 proportional to 1/MINRGP, the user should be aware that
 he might be trading in precision when he decreases MINRGP.
+.TP 6
 =-3:  Problem in DLARRB when refining a single eigenvalue
 after the Rayleigh correction was rejected.
+.TP 6
 = 5:  The Rayleigh Quotient Iteration failed to converge to
 full accuracy in MAXITR steps.
+.PD
 .SH FURTHER DETAILS
 Based on contributions by
 .br

Reply via email to