SRC/dsfrk.f(3)

πŸ’… SRC/dsfrk.f β€” Library Functions Manual ✨

NAME

SRC/dsfrk.f β€” bestie, this is the page for the dsfrk subroutine, and ngl it's lowkey iconic. πŸ’–

SYNOPSIS

🌈 Functions/Subroutines

subroutine dsfrk (transr, uplo, trans, n, k, alpha, a, lda, beta, c)

DSFRK performs a symmetric rank-k operation for matrix in RFP format. 🫢

πŸ¦‹ Function/Subroutine Documentation

subroutine dsfrk (character transr, character uplo, character trans, integer n, integer k, double precision alpha, double precision, dimension( lda, * ) a, integer lda, double precision beta, double precision, dimension( * ) c)

DSFRK performs a symmetric rank-k operation for matrix in RFP format. πŸ’…

✨ Purpose

Okay so, highkey: this is a Level 3 BLAS like routine for C in RFP Format. πŸ’– DSFRK performs one of the symmetric rank--k operations:

C := alpha*A*A**T + beta*C

or

C := alpha*A**T*A + beta*C

where alpha and beta are real scalars, C is an n--by--n symmetric matrix, and A is an n--by--k matrix in the first case and a k--by--n matrix in the second case. RFP format, iykyk. This routine ate and left no crumbs. Periodt. πŸ‘‘

πŸŽ€ Parameters

The way that each parameter works is literally right here β€” no cap, every detail is staying. fr fr 🫢

  • TRANSR β€” TRANSR is CHARACTER*1
    • = 'N': The Normal Form of RFP A is stored;
    • = 'T': The Transpose Form of RFP A is stored.
  • UPLO β€” UPLO is CHARACTER*1. On entry, UPLO specifies whether the upper or lower triangular part of the array C is to be referenced as follows:
    • UPLO = 'U' or 'u' β€” Only the upper triangular part of C is to be referenced.
    • UPLO = 'L' or 'l' β€” Only the lower triangular part of C is to be referenced. Unchanged on exit.
  • TRANS β€” TRANS is CHARACTER*1. On entry, TRANS specifies the operation to be performed as follows:
    • TRANS = 'N' or 'n' β€” C := alpha*A*A**T + beta*C.
    • TRANS = 'T' or 't' β€” C := alpha*A**T*A + beta*C. Unchanged on exit.
  • N β€” N is INTEGER. On entry, N specifies the order of the matrix C.
N must be at least zero.

Unchanged on exit.

  • K β€” K is INTEGER. On entry with TRANS = 'N' or 'n', K specifies the number of columns of the matrix A, and on entry with TRANS = 'T' or 't', K specifies the number of rows of the matrix A.
K must be at least zero.

Unchanged on exit.

  • ALPHA β€” ALPHA is DOUBLE PRECISION. On entry, ALPHA specifies the scalar alpha. Unchanged on exit.
  • A β€” A is DOUBLE PRECISION array, dimension (LDA,ka) where KA is K when TRANS = 'N' or 'n', and is N otherwise. Before entry with TRANS = 'N' or 'n', the leading N--by--K part of the array A must contain the matrix A; otherwise the leading K--by--N part of the array A must contain the matrix A. Unchanged on exit.
  • LDA β€” LDA is INTEGER. On entry, LDA specifies the first dimension of A as declared in the calling (sub) program. When TRANS = 'N' or 'n' then LDA must be at least max( 1, n ), otherwise LDA must be at least max( 1, k ). Unchanged on exit.
  • BETA β€” BETA is DOUBLE PRECISION. On entry, BETA specifies the scalar beta. Unchanged on exit.
  • C β€” C is DOUBLE PRECISION array, dimension (NT). NT = N*(N+1)/2. On entry, the symmetric matrix C in RFP Format. RFP Format is described by TRANSR, UPLO and N.

πŸ‘‘ Author

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

Definition at line 164 of file dsfrk.f.

Author

Generated automatically by Doxygen for LAPACK from the source code.


πŸ’– That's the whole page, bestie β€” LAPACK, Version 3.12.0, and SRC/dsfrk.f(3) signing off! Obsessed with how iconic this is. πŸŽ€

πŸ“¦ where this page comes from