NAME
     slagts - may be used to solve one of the  systems  of  equa-
     tions   (T-lambda*I)*x = y or (T-lambda*I)'*x = y,
SYNOPSIS
     SUBROUTINE SLAGTS( JOB, N, A, B, C, D, IN, Y, TOL, INFO )
     INTEGER INFO, JOB, N
     REAL TOL
     INTEGER IN( * )
     REAL A( * ), B( * ), C( * ), D( * ), Y( * )
     #include <sunperf.h>
     void slagts(int job, int n, float *sa, float *sb, float  *c,
               float  *d,  int  *in,  float  *sy, float *tol, int
               *info) ;
PURPOSE
     SLAGTS may be used to solve one of the systems of equations
     where T is an n by n tridiagonal matrix,  for  x,  following
     the factorization of (T - lambda*I) as
        (T - lambda*I) = P*L*U ,
     by routine SLAGTF. The choice of equation to  be  solved  is
     controlled by the argument JOB, and in each case there is an
     option to perturb zero or very small diagonal elements of U,
     this  option  being intended for use in applications such as
     inverse iteration.
ARGUMENTS
     JOB       (input) INTEGER
               Specifies the job to be  performed  by  SLAGTS  as
               follows:
               =  1: The equations  (T - lambda*I)x = y   are  to
               be  solved,  but diagonal elements of U are not to
               be  perturbed.   =  -1:  The   equations    (T   -
               lambda*I)x  = y  are to be solved and, if overflow
               would otherwise occur, the diagonal elements of  U
               are  to  be  perturbed. See argument TOL below.  =
               2: The equations  (T - lambda*I)'x = y  are to  be
               solved,  but  diagonal elements of U are not to be
               perturbed.  = -2: The equations  (T -  lambda*I)'x
               =  y   are  to  be  solved  and, if overflow would
               otherwise occur, the diagonal elements of U are to
               be perturbed. See argument TOL below.
     N         (input) INTEGER
               The order of the matrix T.
     A         (input) REAL array, dimension (N)
               On entry, A must contain the diagonal elements  of
               U as returned from SLAGTF.
     B         (input) REAL array, dimension (N-1)
               On entry, B must contain the first  super-diagonal
               elements of U as returned from SLAGTF.
     C         (input) REAL array, dimension (N-1)
               On entry, C must contain the sub-diagonal elements
               of L as returned from SLAGTF.
     D         (input) REAL array, dimension (N-2)
               On entry, D must contain the second super-diagonal
               elements of U as returned from SLAGTF.
     IN        (input) INTEGER array, dimension (N)
               On entry, IN must contain details of the matrix  P
               as returned from SLAGTF.
     Y         (input/output) REAL array, dimension (N)
               On entry, the right hand side vector y.  On  exit,
               Y is overwritten by the solution vector x.
     TOL       (input/output) REAL
               On entry, with  JOB .lt.  0,  TOL  should  be  the
               minimum  perturbation  to  be  made  to very small
               diagonal elements of U.  TOL  should  normally  be
               chosen  as  about  eps*norm(U),  where  eps is the
               relative machine precision, but if TOL is supplied
               as non-positive, then it is reset to eps*max( abs(
               u(i,j) ) ).  If  JOB  .gt.  0   then  TOL  is  not
               referenced.
               On exit, TOL is changed as described  above,  only
               if  TOL is non-positive on entry. Otherwise TOL is
               unchanged.
     INFO      (output) INTEGER
               = 0   : successful exit
               element of the solution vector x.  This  can  only
               occur  when JOB is supplied as positive and either
               means that a diagonal element of U is very  small,
               or that the elements of the right-hand side vector
               y are very large.
| Закладки на сайте Проследить за страницей | Created 1996-2025 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |