ZTRSM(3)

πŸ“¦ version 3.12.0, in opensuse-leap 16.0

🌸 ZTRSM(3) β€” Library Functions Manual 🌸

okay bestie, this is the manual page for ZTRSM, and the manual name situation is /home/abui...SRC/ztrsm.f(3) β€” iconic path, no notes. πŸ’…


✨ NAME ✨

/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/BLAS/SRC/ztrsm.f

That's the file this page is serving, and the subroutine is ZTRSM. Yes, the full path is long enough to need its own group chat. 😭

πŸŽ€ SYNOPSIS πŸŽ€

Functions/Subroutines

subroutine ZTRSM (side, uplo, transa, diag, m, n, alpha, a, lda, b, ldb)

ZTRSM β€” she's the main character here. πŸ‘‘

πŸ¦‹ Function/Subroutine Documentation πŸ¦‹

subroutine ZTRSM (character side, character uplo, character transa,
     character diag, integer m, integer n, complex*16 alpha, complex*16,
     dimension(lda,*) a, integer lda, complex*16, dimension(ldb,*) b, integer
     ldb)

ZTRSM πŸ’–

πŸ’– Purpose πŸ’–

okay so ZTRSM solves one of these matrix equations, and yes you're gonna want to read them carefully:

op( A )*X = alpha*B,   or   X*op( A ) = alpha*B,

where alpha is a scalar, X and B are m by n matrices, A is a unit or non-unit upper or lower triangular matrix, and op( A ) is one of:

op( A ) = A   or   op( A ) = A**T   or   op( A ) = A**H.

The matrix X is overwritten on B. That's the whole vibe: B comes in, solution X comes out. 🫢

πŸ“ Parameters πŸ“

SIDE

SIDE is CHARACTER*1.

On entry, SIDE specifies whether op( A ) appears on the left or right of X, bestie:

  • SIDE = 'L' or 'l' β€” op( A )*X = alpha*B.
  • SIDE = 'R' or 'r' β€” X*op( A ) = alpha*B.

UPLO

UPLO is CHARACTER*1.

On entry, UPLO specifies whether the matrix A is upper or lower triangular:

  • UPLO = 'U' or 'u' β€” A is an upper triangular matrix.
  • UPLO = 'L' or 'l' β€” A is a lower triangular matrix.

TRANSA

TRANSA is CHARACTER*1.

On entry, TRANSA specifies the form of op( A ) to be used in the matrix multiplication:

  • TRANSA = 'N' or 'n' β€” op( A ) = A.
  • TRANSA = 'T' or 't' β€” op( A ) = A**T.
  • TRANSA = 'C' or 'c' β€” op( A ) = A**H.

DIAG

DIAG is CHARACTER*1.

On entry, DIAG specifies whether or not A is unit triangular:

  • DIAG = 'U' or 'u' β€” A is assumed to be unit triangular.
  • DIAG = 'N' or 'n' β€” A is not assumed to be unit triangular.

M

M is INTEGER.

On entry, M specifies the number of rows of B. M must be at least zero. No negative row energy, periodt. ✨

N

N is INTEGER.

On entry, N specifies the number of columns of B. N must be at least zero. Same rule, different axis. πŸ’…

ALPHA

ALPHA is COMPLEX*16.

On entry, ALPHA specifies the scalar alpha. When alpha is zero, then A is not referenced and B need not be set before entry. That's a little shortcut, iykyk. πŸŽ€

A

A is COMPLEX*16 array, dimension ( LDA, k ), where k is m when SIDE = 'L' or 'l' and k is n when SIDE = 'R' or 'r'.

Before entry with UPLO = 'U' or 'u', the leading k by k upper triangular part of the array A must contain the upper triangular matrix, and the strictly lower triangular part of A is not referenced.

Before entry with UPLO = 'L' or 'l', the leading k by k lower triangular part of the array A must contain the lower triangular matrix, and the strictly upper triangular part of A is not referenced.

Note that when DIAG = 'U' or 'u', the diagonal elements of A are not referenced either, but are assumed to be unity. She's unit triangular and she said what she said. πŸ’€

LDA

LDA is INTEGER.

On entry, LDA specifies the first dimension of A as declared in the calling (sub) program.

When SIDE = 'L' or 'l', then LDA must be at least max( 1, m ).

When SIDE = 'R' or 'r', then LDA must be at least max( 1, n ).

B

B is COMPLEX*16 array, dimension ( LDB, N ).

Before entry, the leading m by n part of the array B must contain the right-hand side matrix B, and on exit is overwritten by the solution matrix X. Glow-up complete. 🌈

LDB

LDB is INTEGER.

On entry, LDB specifies the first dimension of B as declared in the calling (sub) program.

LDB must be at least max( 1, m ).

πŸ‘‘ Author πŸ‘‘

  • Univ. of Tennessee
  • Univ. of California Berkeley
  • Univ. of Colorado Denver
  • NAG Ltd.

πŸ”₯ Further Details πŸ”₯

Level 3 Blas routine.

  • -- Written on 8-February-1989.
    • Jack Dongarra, Argonne National Laboratory.
    • Iain Duff, AERE Harwell.
    • Jeremy Du Croz, Numerical Algorithms Group Ltd.
    • Sven Hammarling, Numerical Algorithms Group Ltd.

Definition at line 179 of file ztrsm.f.

🫢 Author 🫢

Generated automatically by Doxygen for LAPACK from the source code.


and that's the page, bestie. Final sign-off tea: LAPACK Version 3.12.0 from /home/abui...SRC/ztrsm.f(3) β€” source/version noted, footer vibe secured. πŸ’œβœ¨

πŸ“¦ where this page comes from