Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ dlasq1(3P) — Sun WorkShop 5.0

Media Vault

Software Library

Restoration Projects

Artifacts Sought

dlasq1(3P)

NAME

dlasq1 - DLASQ1 computes the singular values of a real N-by-N bidiagonal  matrix with diagonal D and off-diagonal E

SYNOPSIS

SUBROUTINE DLASQ1( N, D, E, WORK, INFO )

INTEGER INFO, N

DOUBLE PRECISION D( ∗ ), E( ∗ ), WORK( ∗ )

 

#include <sunperf.h>

void dlasq1(int n, double ∗d, double ∗e, int ∗info) ;

PURPOSE

   DLASQ1 computes the singular values of a real N-by-N bidiagonal
   matrix with diagonal D and off-diagonal E. The singular values are
   computed to high relative accuracy, barring over/underflow or
   denormalization. The algorithm is described in
 
   "Accurate singular values and differential qd algorithms," by
   K. V. Fernando and B. N. Parlett,
   Numer. Math., Vol-67, No. 2, pp. 191-230,1994.
 
   See also
   "Implementation of differential qd algorithms," by
   K. V. Fernando and B. N. Parlett, Technical Report,
   Department of Mathematics, University of California at Berkeley,
   1994 (Under preparation).
 

ARGUMENTS

N (input) INTEGER
The number of rows and columns in the matrix. N >= 0.

D (input/output) DOUBLE PRECISION array, dimension (N)
On entry, D contains the diagonal elements of the bidiagonal matrix whose SVD is desired. On normal exit, D contains the singular values in decreasing order.

E (input/output) DOUBLE PRECISION array, dimension (N)
On entry, elements E(1:N-1) contain the off-diagonal elements of the bidiagonal matrix whose SVD is desired. On exit, E is overwritten.

WORK (workspace) DOUBLE PRECISION array, dimension (2∗N)

INFO (output) INTEGER
= 0:  successful exit
< 0:  if INFO = -i, the i-th argument had an illegal value
> 0:  if INFO = i, the algorithm did not converge;  i specifies how many superdiagonals did not converge.

SunOS 5.0  —  Last change: 10 Dec 1998

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026