dsyconvf.f - Man Page

SRC/dsyconvf.f

Synopsis

Functions/Subroutines

subroutine dsyconvf (uplo, way, n, a, lda, e, ipiv, info)
DSYCONVF

Function/Subroutine Documentation

subroutine dsyconvf (character uplo, character way, integer n, double precision, dimension( lda, * ) a, integer lda, double precision, dimension( * ) e, integer, dimension( * ) ipiv, integer info)

DSYCONVF  

Purpose:

 If parameter WAY = 'C':
 DSYCONVF converts the factorization output format used in
 DSYTRF provided on entry in parameter A into the factorization
 output format used in DSYTRF_RK (or DSYTRF_BK) that is stored
 on exit in parameters A and E. It also converts in place details of
 the interchanges stored in IPIV from the format used in DSYTRF into
 the format used in DSYTRF_RK (or DSYTRF_BK).

 If parameter WAY = 'R':
 DSYCONVF performs the conversion in reverse direction, i.e.
 converts the factorization output format used in DSYTRF_RK
 (or DSYTRF_BK) provided on entry in parameters A and E into
 the factorization output format used in DSYTRF that is stored
 on exit in parameter A. It also converts in place details of
 the interchanges stored in IPIV from the format used in DSYTRF_RK
 (or DSYTRF_BK) into the format used in DSYTRF.
Parameters

UPLO

          UPLO is CHARACTER*1
          Specifies whether the details of the factorization are
          stored as an upper or lower triangular matrix A.
          = 'U':  Upper triangular
          = 'L':  Lower triangular

WAY

          WAY is CHARACTER*1
          = 'C': Convert
          = 'R': Revert

N

          N is INTEGER
          The order of the matrix A.  N >= 0.

A

          A is DOUBLE PRECISION array, dimension (LDA,N)

          1) If WAY ='C':

          On entry, contains factorization details in format used in
          DSYTRF:
            a) all elements of the symmetric block diagonal
               matrix D on the diagonal of A and on superdiagonal
               (or subdiagonal) of A, and
            b) If UPLO = 'U': multipliers used to obtain factor U
               in the superdiagonal part of A.
               If UPLO = 'L': multipliers used to obtain factor L
               in the superdiagonal part of A.

          On exit, contains factorization details in format used in
          DSYTRF_RK or DSYTRF_BK:
            a) ONLY diagonal elements of the symmetric block diagonal
               matrix D on the diagonal of A, i.e. D(k,k) = A(k,k);
               (superdiagonal (or subdiagonal) elements of D
                are stored on exit in array E), and
            b) If UPLO = 'U': factor U in the superdiagonal part of A.
               If UPLO = 'L': factor L in the subdiagonal part of A.

          2) If WAY = 'R':

          On entry, contains factorization details in format used in
          DSYTRF_RK or DSYTRF_BK:
            a) ONLY diagonal elements of the symmetric block diagonal
               matrix D on the diagonal of A, i.e. D(k,k) = A(k,k);
               (superdiagonal (or subdiagonal) elements of D
                are stored on exit in array E), and
            b) If UPLO = 'U': factor U in the superdiagonal part of A.
               If UPLO = 'L': factor L in the subdiagonal part of A.

          On exit, contains factorization details in format used in
          DSYTRF:
            a) all elements of the symmetric block diagonal
               matrix D on the diagonal of A and on superdiagonal
               (or subdiagonal) of A, and
            b) If UPLO = 'U': multipliers used to obtain factor U
               in the superdiagonal part of A.
               If UPLO = 'L': multipliers used to obtain factor L
               in the superdiagonal part of A.

LDA

          LDA is INTEGER
          The leading dimension of the array A.  LDA >= max(1,N).

E

          E is DOUBLE PRECISION array, dimension (N)

          1) If WAY ='C':

          On entry, just a workspace.

          On exit, contains the superdiagonal (or subdiagonal)
          elements of the symmetric block diagonal matrix D
          with 1-by-1 or 2-by-2 diagonal blocks, where
          If UPLO = 'U': E(i) = D(i-1,i), i=2:N, E(1) is set to 0;
          If UPLO = 'L': E(i) = D(i+1,i), i=1:N-1, E(N) is set to 0.

          2) If WAY = 'R':

          On entry, contains the superdiagonal (or subdiagonal)
          elements of the symmetric block diagonal matrix D
          with 1-by-1 or 2-by-2 diagonal blocks, where
          If UPLO = 'U': E(i) = D(i-1,i),i=2:N, E(1) not referenced;
          If UPLO = 'L': E(i) = D(i+1,i),i=1:N-1, E(N) not referenced.

          On exit, is not changed

IPIV

          IPIV is INTEGER array, dimension (N)

          1) If WAY ='C':
          On entry, details of the interchanges and the block
          structure of D in the format used in DSYTRF.
          On exit, details of the interchanges and the block
          structure of D in the format used in DSYTRF_RK
          ( or DSYTRF_BK).

          1) If WAY ='R':
          On entry, details of the interchanges and the block
          structure of D in the format used in DSYTRF_RK
          ( or DSYTRF_BK).
          On exit, details of the interchanges and the block
          structure of D in the format used in DSYTRF.

INFO

          INFO is INTEGER
          = 0:  successful exit
          < 0:  if INFO = -i, the i-th argument had an illegal value
Author

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Contributors:

  November 2017,  Igor Kozachenko,
                  Computer Science Division,
                  University of California, Berkeley

Definition at line 205 of file dsyconvf.f.

Author

Generated automatically by Doxygen for LAPACK from the source code.

Referenced By

The man page dsyconvf(3) is an alias of dsyconvf.f(3).

Tue Nov 28 2023 12:08:42 Version 3.12.0 LAPACK