lapacke_zggsvd3.c(3)

πŸ“¦ version 3.9.0, in centos-stream 9

πŸŽ€ lapacke_zggsvd3.c πŸŽ€

okay bestie, real talk: this is the lapacke_zggsvd3.c page from the LAPACK manual. It's one of those pages that's literally just a function signature and a "we generated this automatically, bye" note β€” no cap, there's not a lot of prose here. But we're gonna go through every single thing on it, because we don't skip. πŸ’…


✨ NAME ✨

lapacke_zggsvd3.c β€” that's it, that's the name. The page is named after the source file, periodt.


🌸 SYNOPSIS 🌸

First thing you gotta do is pull in the header:

#include 'lapacke_utils.h'

(Note the quotes, bestie β€” it's written exactly like that, single quotes and all. Not my choice, it's just what the page says. πŸ™ˆ)

πŸ¦‹ Functions πŸ¦‹

The one and only function hanging out here is LAPACKE_zggsvd3, and here's the whole signature, character for character:

lapack_int LAPACKE_zggsvd3 (int matrix_layout, char jobu, char jobv,
    char jobq, lapack_int m, lapack_int n, lapack_int p, lapack_int *k,
    lapack_int *l, lapack_complex_double *a, lapack_int lda,
    lapack_complex_double *b, lapack_int ldb, double *alpha, double
    *beta, lapack_complex_double *u, lapack_int ldu,
    lapack_complex_double *v, lapack_int ldv, lapack_complex_double *q,
    lapack_int ldq, lapack_int *iwork)

That's the whole vibe check: it returns a lapack_int, and it takes matrix_layout, the chars jobu, jobv, jobq, the ints m, n, p, pointers to k and l, then a whole parade of arrays and leading dimensions β€” a/lda, b/ldb, alpha, beta, u/ldu, v/ldv, q/ldq β€” and finally iwork. 🫢


πŸ‘‘ Function Documentation πŸ‘‘

⭐ lapack_int LAPACKE_zggsvd3 (int matrix_layout, char jobu, char jobv, char jobq, lapack_int m, lapack_int n, lapack_int p, lapack_int * k, lapack_int * l, lapack_complex_double * a, lapack_int lda, lapack_complex_double * b, lapack_int ldb, double * alpha, double * beta, lapack_complex_double * u, lapack_int ldu, lapack_complex_double * v, lapack_int ldv, lapack_complex_double * q, lapack_int ldq, lapack_int * iwork) ⭐

Here's the doc-block signature in full β€” and heads up, it's spaced a lil differently from the synopsis one (look at lapack_int * k with that little gap before the k), so I'm giving it to you exactly as it appears:

lapack_int LAPACKE_zggsvd3 (int matrix_layout, char jobu, char jobv, char
    jobq, lapack_int m, lapack_int n, lapack_int p, lapack_int * k,
    lapack_int * l, lapack_complex_double * a, lapack_int lda,
    lapack_complex_double * b, lapack_int ldb, double * alpha, double *
    beta, lapack_complex_double * u, lapack_int ldu, lapack_complex_double *
    v, lapack_int ldv, lapack_complex_double * q, lapack_int ldq, lapack_int
    * iwork)

And the iconic line we all came for:

Definition at line 36 of file lapacke_zggsvd3.c.

Yep. Line 36. Locked in. πŸ”₯


πŸ’œ Author πŸ’œ

Generated automatically by Doxygen for LAPACK from the source code. Not a human, not a bestie, just Doxygen doing its thing. 😭


okay and for the cute sign-off: this page is from LAPACK Version 3.8.0, dated Tue Nov 14 2017, and it's the lapacke_zggsvd3.c(3) page. That's the whole thing, bestie β€” short, sweet, autogenerated, and now fully understood. slay. πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from