The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Интерактивная система просмотра системных руководств (man-ов)

 ТемаНаборКатегория 
 
 [Cписок руководств | Печать]

cptsl (3)
  • >> cptsl (3) ( Solaris man: Библиотечные вызовы )
  • 
    NAME
         cptsl - solve the linear system Ax = b for a symmetric posi-
         tive definite tridiagonal matrix A and vectors b and x.
    
    SYNOPSIS
         SUBROUTINE DPTSL (N, DDIAG, DOFFD, DB)
    
         SUBROUTINE SPTSL (N, SDIAG, SOFFD, SB)
    
         SUBROUTINE ZPTSL (N, ZDIAG, ZOFFD, ZB)
    
         SUBROUTINE CPTSL (N, CDIAG, COFFD, CB)
    
    
    
         #include <sunperf.h>
    
         void dptsl(int n, double *d, double *e, double *b) ;
    
         void sptsl(int n, float *d, float *e, float *b) ;
    
         void zptsl(int n, doublecomplex *d, doublecomplex *e,  doub-
                   lecomplex *b) ;
    
         void cptsl(int n, complex *d, complex *e, complex *b) ;
    
    ARGUMENTS
         N         Order of the matrix A.  N >= 0.
    
         xDIAG     Main diagonal elements of A.
    
         xOFFD     Off  diagonal  elements  of  A.   OFFD(1)  through
                   OFFD(N*1)  contains  the  off  diagonal  elements;
                   OFFD(N) is not referenced.
    
         xB        On entry, the right-hand side vector b.  On  exit,
                   the solution vector x.
    
    SAMPLE PROGRAM
               PROGRAM TEST
               IMPLICIT NONE
         C
               INTEGER           N
               PARAMETER        (N = 4)
         C
               DOUBLE PRECISION  B(N), SUBD(N), DIAG(N)
         C
               EXTERNAL          DPTSL
         C
         C     Initialize the arrays SUBD and DIAG to store the subdiagonal
         C     and diagonal of the tridiagonal positive definite matrix A
         C     shown below.  Initialize the array B to store the right hand
         C     side vector b shown below.
         C
         C          2  -1                 6
         C     A = -1   2  -1        b = 12
         C             -1   2  -1        12
         C                 -1   2         6
         C
               DATA SUBD / -1.0D0, -1.0D0, -1.0D0, 8D8 /
               DATA DIAG / 4*2.0D0 /
               DATA B / 6.0D0, 1.2D1, 1.2D1, 6.0D0 /
         C
               PRINT 1000
               PRINT 1010, DIAG(1), SUBD(1)
               PRINT 1020, SUBD(1), DIAG(2), SUBD(2)
               PRINT 1030,          SUBD(2), DIAG(3), SUBD(3)
               PRINT 1040,                   SUBD(3), DIAG(4)
               PRINT 1050
               PRINT 1060, B
               CALL DPTSL (N, DIAG, SUBD, B)
               PRINT 1070
               PRINT 1060, B
         C
          1000 FORMAT (1X, 'A:')
          1010 FORMAT (1X, 2(2X, F4.1))
          1020 FORMAT (1X, 3(2X, F4.1))
          1030 FORMAT (1X,  6X, 3(2X, F4.1))
          1040 FORMAT (1X, 12X, 2(2X, F4.1))
          1050 FORMAT (/1X, 'b:')
          1060 FORMAT (3X, F6.1)
          1070 FORMAT (/1X, 'A**(-1) * b:')
         C
               END
    
    SAMPLE OUTPUT
          A:
             2.0  -1.0
            -1.0   2.0  -1.0
                  -1.0   2.0  -1.0
                        -1.0   2.0
    
          b:
               6.0
              12.0
              12.0
               6.0
    
          A**(-1) * b:
              18.0
              30.0
              30.0
              18.0
    
    


    Поиск по тексту MAN-ов: 




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру