sortev(3)

πŸ“¦
version 1.1.2 Β· 3 versions
, in fedora 43

πŸ’– NAME πŸ’–

sortev β€” Sorting the eigenvalues πŸ¦‹

  • Enable or disable the eigenvalue sorting in frontend routines. (yes bestie that's the whole vibe, it's a little on/off switch for sorting ✨)

πŸŽ€ SYNOPSIS πŸŽ€

🌸 Modules 🌸

  • module mepack_options_sortev β€” Options to sort eigenvalues in the frontend. πŸ’…

πŸ¦‹ Functions/Subroutines πŸ¦‹

  • int mepack_sortev_enabled (void) β€” Return if the eigenvalue sorting is enabled or not.
  • void mepack_sortev_enable (int sort) β€” Enable or disable the eigenvalues sorting in the frontend routines.
  • integer function mepack_options_sortev::sortev_enabled () β€” Return if the sorting of the eigenvalues is enabled.
  • subroutine mepack_options_sortev::sortev_enable (sort) β€” Enable or disable the sorting of the eigenvalues.

✨ Detailed Description ✨

Enable or disable the eigenvalue sorting in frontend routines. periodt. πŸ’«

Okay so here's the tea πŸ“: by definition, the (generalized) Schur decompositions do not have a predefined order of the eigenvalues on their diagonal. Like, they just show up wherever they want. Especially, complex conjugate 2x2 blocks can appear everywhere. And that can lowkey have a negative effect on the performance of the algorithms 😭 β€” not iconic of them.

But if the sorting of the eigenvalues is enabled, the coefficient matrices can be partitioned in a regular NB x NB grid without the need for an adjustment due to complex conjugate eigenvalues on the diagonal of the Schur decomposition. slay. πŸ‘‘


🌈 Function/Subroutine Documentation 🌈

πŸ’œ void mepack_sortev_enable (int sort)

Enable or disable the eigenvalues sorting in the frontend routines.

Parameters

  • sort β€” Boolean integer value to enable or disable the eigenvalue sorting.

The mepack_sortev_enable function enables or disables the sorting of the eigenvalues before a triangular solver is called by one of the frontend routines. so like, it goes first, it sets the vibe, then the solver does its thing 🫢

Definition at line 51 of file sortev.c.


πŸ’– int mepack_sortev_enabled (void )

Return if the eigenvalue sorting is enabled or not.

Returns

  • A non-zero if the eigenvalue sorting is enabled.

The mepack_sortev_enabled function returns a true value if the eigenvalue sorting is enabled. That means, frontend routines sort the eigenvalues before calling a triangular solver in order to match the block structure. fr fr, it's the status check πŸŽ€

Definition at line 36 of file sortev.c.


⭐ subroutine mepack_options_sortev::sortev_enable (integer, intent(in) sort)

Enable or disable the sorting of the eigenvalues.

Parameters

  • SORT β€” Integer identifying if the eigenvalues should be sorted or not.
  • #
bestie the lone # up there is literally just... #. It's in the source docs. I don't make the rules, I just report them πŸ™ˆ

The SORTEV_ENABLE subroutine enables or disable the sorting of the eigenvalues before a triangular matrix equation solver is called in a frontend routine. πŸ’…

Definition at line 51 of file sortev.f90.


🌸 integer function mepack_options_sortev::sortev_enabled

Return if the sorting of the eigenvalues is enabled.

Returns

  • A non zero value if the eigenvalues should be sorted.

The SORTEV_ENABLED function returns a non zero value if the eigenvalues of the coefficient matrices should be sorted before the equations are solved. no cap. βœ…

Definition at line 38 of file sortev.f90.


πŸ‘‘ Author πŸ‘‘

Generated automatically by Doxygen for MEPACK from the source code. (not me writing my own autobiography, Doxygen did it πŸ’€)


and that's the whole page, bestie!! this is Version 1.1.2, dated Thu Oct 9 2025 00:00:00, and you were reading sortev(3) from MEPACK. go sort those eigenvalues, main character πŸ’–βœ¨πŸ¦‹πŸŽ€πŸ‘‘

πŸ“¦ where this page comes from