mxlib
c++ tools for analyzing astronomical data and other tasks by Jared R. Males. [git repo]
Loading...
Searching...
No Matches
eigenLapack_test.cpp File Reference

Tests Eigen-compatible BLAS/LAPACK helpers. More...

Tests Eigen-compatible BLAS/LAPACK helpers.

Definition in file eigenLapack_test.cpp.

#include "../../catch2/catch.hpp"
#include "../../../include/math/eigenLapack.hpp"
#include <algorithm>
#include <cstdlib>
#include <limits>
#include <type_traits>
#include <vector>

Go to the source code of this file.

Functions

 unitTest::math_eigenLapack_test::TEST_CASE ("eigenSYEVR solves selected ranges and reuses workspaces", "[math::eigenLapack][eigenSYEVR]")
 Verifies eigenSYEVR full/ranged solves, triangle selection, workspace reuse, and explicit release.
 unitTest::math_eigenLapack_test::TEST_CASE ("eigenSYEVR rejects invalid matrix and range geometry", "[math::eigenLapack][eigenSYEVR]")
 Verifies eigenSYEVR rejects empty, non-square, and invalid half-open eigenvalue ranges before LAPACK.
 unitTest::math_eigenLapack_test::TEST_CASE ("eigenSYEVR reports allocation and solver failures", "[math::eigenLapack][eigenSYEVR]")
 Verifies eigenSYEVR propagates every workspace-allocation failure and both LAPACK solver failures.
 unitTest::math_eigenLapack_test::TEST_CASE ("eigenSYEVR validates queried workspace sizes", "[math::eigenLapack][eigenSYEVR]")
 Verifies eigenSYEVR rejects nonpositive, nonfinite, and unrepresentable queried workspace sizes.
 unitTest::math_eigenLapack_test::TEST_CASE ("calcEigenVecs clamps mode requests and controls normalization", "[math::eigenLapack][calcEigenVecs]")
 Verifies calcEigenVecs mode clamping, raw eigenvectors, scaling, and caller-owned workspace reuse.
 unitTest::math_eigenLapack_test::TEST_CASE ("calcEigenVecs validates exceptional normalized results", "[math::eigenLapack][calcEigenVecs]")
 Verifies calcEigenVecs check-mode handling of zero, negative, tiny, and nonfinite solver results.
 unitTest::math_eigenLapack_test::TEST_CASE ("calcEigenVecs rejects invalid inputs and solver failures", "[math::eigenLapack][calcEigenVecs]")
 Verifies calcEigenVecs rejects invalid covariance geometry and maps query/solve failures to -1.
 unitTest::math_eigenLapack_test::TEST_CASE ("eigenSYRK and calcKLModes form normalized KL modes", "[math::eigenLapack]")
 Verifies covariance construction and KL-mode calculation for a small reference matrix.
 unitTest::math_eigenLapack_test::TEST_CASE ("calcKLModes rejects invalid covariance geometry", "[math::eigenLapack]")
 Verifies that calcKLModes rejects incompatible and non-square covariance matrices without leaking workspaces.