SLAMRG(3)

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

πŸ¦‹ SLAMRG(3) β€” the slamrg.f moment πŸ’…

ok so bestie, before we even start: this page lives in the Library Functions Manual, and the file it's documenting is literally this path right here:

/home/abui...RC/slamrg.f(3)

(and yeah, the full path shows up in the NAME section below, no cap β€” it's a whole journey)


πŸŽ€ NAME πŸŽ€

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

that's it. that's the name. the whole entire path. she's long, she's dramatic, she's iconic ✨


🌸 SYNOPSIS 🌸

Functions/Subroutines β€” yes queen, we're in the subroutines folder

subroutine SLAMRG (n1, n2, a, strd1, strd2, index)

so what does she do? SLAMRG creates a permutation list to merge the entries of two independently sorted sets into a single set sorted in ascending order. that's the whole vibe. merging but make it indexed πŸ’…


πŸ”₯ Function/Subroutine Documentation πŸ”₯

here's the full signature, bestie, character for character:

subroutine SLAMRG (integer n1, integer n2, real, dimension( * ) a, integer
    strd1, integer strd2, integer, dimension( * ) index)

and the one-liner again (she said it twice, she's confident):

SLAMRG creates a permutation list to merge the entries of two independently sorted sets into a single set sorted in ascending order.


✨ Purpose ✨

ok so picture this: SLAMRG will create a permutation list which will merge the elements of A (which is composed of two independently sorted sets) into a single set which is sorted in ascending order. two sorted friend groups, one merged ascending-order party. main character energy fr fr 🫢

(originally written in one of those !> Doxygen comment blocks, if you were wondering what the little arrows were about πŸ™ˆ)


πŸ‘‘ Parameters πŸ‘‘

  • N1 β€” N1 is INTEGER.
  • N2 β€” N2 is INTEGER. together, these two arguments contain the respective lengths of the two sorted lists to be merged. they're a duo, they don't do anything alone πŸ’œ
  • A β€” A is REAL array, dimension (N1+N2). the first N1 elements of A contain a list of numbers which are sorted in either ascending or descending order. likewise for the final N2 elements. so like, two chunks, each one sorted, could be either direction β€” she's flexible like that 🌈
  • STRD1 β€” STRD1 is INTEGER.
  • STRD2 β€” STRD2 is INTEGER. these are the strides to be taken through the array A. allowable strides are 1 and -1. they indicate whether a subset of A is sorted in ascending (STRDx = 1) or descending (STRDx = -1) order. so 1 = ascending, -1 = descending, and those are the only allowable values, okay? don't get creative 😭
  • INDEX β€” INDEX is INTEGER array, dimension (N1+N2). on exit this array will contain a permutation such that if B( I ) = A( INDEX( I ) ) for I=1,N1+N2, then B will be sorted in ascending order. she literally hands you the sorted result via an index. the way that works? obsessed ✨

🧚 Author 🧚

the whole squad gets credit, bestie:

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

⭐ Definition ⭐

definition at line 98 of file slamrg.f. line ninety-eight. go look, she's there πŸŽ€


πŸ’– Author πŸ’–

Generated automatically by Doxygen for LAPACK from the source code. so like, no human typed this page out by hand, a robot did it, and honestly? slay πŸ€–πŸ’…


heads up bestie: this whole page was auto-generated, so if something looks weird, blame the robot, not me 🫢

aaand that's the page!! made with LAPACK Version 3.12.0, dated with that same dramatic /home/abui...RC/slamrg.f(3) energy at the bottom β€” bye bestie, go merge those sorted lists πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from