TESTING/EIG/slatm4.f(3)

πŸ“¦
version 3.12.1 Β· 2 versions
, in arch rolling

πŸŽ€ NAME πŸŽ€

TESTING/EIG/slatm4.f β€” from the Library Functions Manual, bestie. This page is literally all about SLATM4, and it's giving test-matrix main character energy. πŸ¦‹

✨ SYNOPSIS ✨

🫢 Functions/Subroutines 🫢

subroutine slatm4 (itype, n, nz1, nz2, isign, amagn, rcond, triang,
    idist, iseed, a, lda)
    SLATM4

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

🌟 subroutine slatm4 🌟

subroutine slatm4 (integer itype, integer n, integer nz1, integer nz2,
    integer isign, real amagn, real rcond, real triang, integer idist,
    integer, dimension( 4 ) iseed, real, dimension( lda, * ) a, integer lda)

SLATM4 β€” okay so here's the whole tea. πŸ’…

πŸ’– Purpose πŸ’–

SLATM4 generates basic square matrices, which may later be multiplied by others in order to produce test matrices. It is intended mainly to be used to test the generalized eigenvalue routines. It's giving test-matrix factory, fr fr.

It first generates the diagonal and (possibly) subdiagonal, according to the value of ITYPE, NZ1, NZ2, ISIGN, AMAGN, and RCOND. It then fills in the upper triangle with random numbers, if TRIANG is non-zero.

🌸 Parameters 🌸

Okay bestie, vibe check the params β€” every single one is here, no cap:

  • ITYPE β€” ITYPE is INTEGER. It's the [missing word] of matrix on the diagonal and sub-diagonal (the source literally has a blank there, bestie πŸ’€). If ITYPE < 0, then type abs(ITYPE) is generated and then swapped end for end (A(I,J) := A'(N-J,N-I).). See also the description of AMAGN and ISIGN.

Special types:

  • = 0: the zero matrix.
  • = 1: the identity.
  • = 2: a transposed Jordan block.
  • = 3: If N is odd, then a k+1 x k+1 transposed Jordan block followed by a k x k identity block, where k=(N-1)/2. If N is even, then k=(N-2)/2, and a zero diagonal entry is tacked onto the end.

Diagonal types. The diagonal consists of NZ1 zeros, then k=N-NZ1-NZ2 nonzeros. The subdiagonal is zero. ITYPE specifies the nonzero diagonal entries as follows:

  • = 4: 1, ..., k
  • = 5: 1, RCOND, ..., RCOND
  • = 6: 1, ..., 1, RCOND
  • = 7: 1, a, a^2, ..., a^(k-1)=RCOND
  • = 8: 1, 1-d, 1-2*d, ..., 1-(k-1)*d=RCOND
  • = 9: random numbers chosen from (RCOND,1)
  • = 10: random numbers with distribution IDIST (see SLARND.)
  • N β€” N is INTEGER. The order of the matrix.
  • NZ1 β€” NZ1 is INTEGER. If abs(ITYPE) > 3, then the first NZ1 diagonal entries will be zero.
  • NZ2 β€” NZ2 is INTEGER. If abs(ITYPE) > 3, then the last NZ2 diagonal entries will be zero.
  • ISIGN β€” ISIGN is INTEGER.
    • = 0: The sign of the diagonal and subdiagonal entries will be left unchanged.
    • = 1: The diagonal and subdiagonal entries will have their sign changed at random.
    • = 2: If ITYPE is 2 or 3, then the same as ISIGN=1. Otherwise, with probability 0.5, odd-even pairs of diagonal entries A(2*j-1,2*j-1), A(2*j,2*j) will be converted to a 2x2 block by pre- and post-multiplying by distinct random orthogonal rotations. The remaining diagonal entries will have their sign changed at random.
  • AMAGN β€” AMAGN is REAL. The diagonal and subdiagonal entries will be multiplied by AMAGN.
  • RCOND β€” RCOND is REAL. If abs(ITYPE) > 4, then the smallest diagonal entry will be entry will be RCOND. RCOND must be between 0 and 1.
  • TRIANG β€” TRIANG is REAL. The entries above the diagonal will be random numbers with magnitude bounded by TRIANG (i.e., random numbers multiplied by TRIANG.)
  • IDIST β€” IDIST is INTEGER. Specifies the type of distribution to be used to generate a random matrix.
    • = 1: UNIFORM( 0, 1 )
    • = 2: UNIFORM( -1, 1 )
    • = 3: NORMAL ( 0, 1 )
  • ISEED β€” ISEED is INTEGER array, dimension (4). On entry ISEED specifies the seed of the random number generator. The values of ISEED are changed on exit, and can be used in the next call to SLATM4 to continue the same random number sequence. Note: ISEED(4) should be odd, for the random number generator used at present.
  • A β€” A is REAL array, dimension (LDA, N). Array to be computed.
  • LDA β€” LDA is INTEGER. Leading dimension of A. Must be at least 1 and at least N.

⭐ Author ⭐

The author credits are iconic:

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

Definition at line 173 of file slatm4.f.

πŸ‘‘ Author πŸ‘‘

Generated automatically by Doxygen for LAPACK from the source code.


That's the whole page, bestie: TESTING/EIG/slatm4.f(3) from LAPACK Version 3.12.0. Byeee, go generate some iconic matrices. πŸ’…βœ¨

πŸ“¦ where this page comes from