BLAS/SRC/chpmv.f(3)

🫢 BLAS/SRC/chpmv.f β€” Library Functions Manual 🫢

okay so bestie, welcome to the Library Functions Manual page for BLAS/SRC/chpmv.f. This is the chpmv subroutine’s moment, and yes, it’s giving Level-2 BLAS main character energy. Let’s get into it πŸ’…βœ¨

🌸 NAME 🌸

BLAS/SRC/chpmv.f β€” literally the file, and it’s serving the chpmv subroutine. Iconic.

✨ SYNOPSIS ✨

Functions/Subroutines

  • subroutine chpmv (uplo, n, alpha, ap, x, incx, beta, y, incy) β€” CHPMV

πŸ’– Function/Subroutine Documentation πŸ’–

Here’s the full signature, copied exactly because we do not play with source code around here:

subroutine chpmv (character uplo, integer n, complex alpha, complex,
       dimension(*) ap, complex, dimension(*) x, integer incx, complex beta,
       complex, dimension(*) y, integer incy)
       CHPMV

So yeah β€” CHPMV. That’s the routine, that’s the vibe 🫢

Purpose

CHPMV performs the matrix-vector operation

y := alpha*A*x + beta*y,

where alpha and beta are scalars, x and y are n element vectors, and A is an n by n hermitian matrix, supplied in packed form. Periodt πŸ’«

Parameters

  • UPLO β€” is CHARACTER*1. On entry, UPLO specifies whether the upper or lower triangular part of the matrix A is supplied in the packed array AP as follows:
    • UPLO = 'U' or 'u' β€” the upper triangular part of A is supplied in AP.
    • UPLO = 'L' or 'l' β€” the lower triangular part of A is supplied in AP.
  • N β€” is INTEGER. On entry, N specifies the order of the matrix A. N must be at least zero. No negative-order nonsense, bestie 🚫
  • ALPHA β€” is COMPLEX. On entry, ALPHA specifies the scalar alpha.
  • AP β€” is COMPLEX array, dimension at least ( ( n*( n + 1 ) )/2 ). Before entry with UPLO = 'U' or 'u', the array AP must contain the upper triangular part of the hermitian matrix packed sequentially, column by column, so that AP( 1 ) contains a( 1, 1 ), AP( 2 ) and AP( 3 ) contain a( 1, 2 ) and a( 2, 2 ) respectively, and so on. Before entry with UPLO = 'L' or 'l', the array AP must contain the lower triangular part of the hermitian matrix packed sequentially, column by column, so that AP( 1 ) contains a( 1, 1 ), AP( 2 ) and AP( 3 ) contain a( 2, 1 ) and a( 3, 1 ) respectively, and so on. Note that the imaginary parts of the diagonal elements need not be set and are assumed to be zero. Very demure, very packed-matrix πŸ’
  • X β€” is COMPLEX array, dimension at least ( 1 + ( n - 1 )*abs( INCX ) ). Before entry, the incremented array X must contain the n element vector x.
  • INCX β€” is INTEGER. On entry, INCX specifies the increment for the elements of X. INCX must not be zero.
bestie, fr fr: INCX must not be zero. That’s the rule.
  • BETA β€” is COMPLEX. On entry, BETA specifies the scalar beta. When BETA is supplied as zero then Y need not be set on input.
  • Y β€” is COMPLEX array, dimension at least ( 1 + ( n - 1 )*abs( INCY ) ). Before entry, the incremented array Y must contain the n element vector y. On exit, Y is overwritten by the updated vector y.
  • INCY β€” is INTEGER. On entry, INCY specifies the increment for the elements of Y. INCY must not be zero.
and yes, INCY must not be zero either. We stay consistent πŸ’…

Author

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

Further Details

Level 2 Blas routine. The vector and matrix arguments are not referenced when N = 0, or M = 0.

-- Written on 22-October-1986.

  • Jack Dongarra, Argonne National Lab.
  • Jeremy Du Croz, Nag Central Office.
  • Sven Hammarling, Nag Central Office.
  • Richard Hanson, Sandia National Labs.

Definition at line 148 of file chpmv.f.

πŸŽ€ Author πŸŽ€

Generated automatically by Doxygen for LAPACK from the source code.


okay bestie, that’s the whole page. Sign-off flex: LAPACK Version 3.12.0, source BLAS/SRC/chpmv.f(3) β€” mwah πŸ’‹βœ¨

πŸ“¦ where this page comes from