compat.eigen
#includeC++ template library for linear algebra (header-only)
#include <Eigen/Dense>
mcpp add compat.eigen@5.0.1
Usage
From this repository's own test project — built and run by CI, not written for the website.
// Behavioral test: core (header-only) Eigen linear algebra. Returns non-zero on
// any mismatch. (The eigen_blas feature's dgemm_ path is covered separately;
// linking feature-built dependency objects into test binaries is a follow-up.)
#include <Eigen/Dense>
#include <cmath>
int main() {
Eigen::Matrix2d A; A << 1, 2, 3, 4;
Eigen::Vector2d x(1.0, 1.0);
Eigen::Vector2d y = A * x; // [3,7]
double det = A.determinant(); // -2
Eigen::Vector2d z = A.colPivHouseholderQr().solve(y); // [1,1]
bool ok = y(0) == 3.0 && y(1) == 7.0 && det == -2.0
&& std::abs(z(0) - 1.0) < 1e-9 && std::abs(z(1) - 1.0) < 1e-9;
return ok ? 0 : 1;
}
tests/examples/eigen/tests/dense.cpp · project tests/examples/eigen
Build
- targets
eigen (lib)- language
c++23- C standard
c11- import std
- no
- include dirs
*
Features
| feature | declares |
|---|---|
| use_blas | requires, defines |
| eigen_blas | provides, sources |
| use_lapacke | requires, defines |
| backend-openblas | implies, deps |
| mpl2only | defines |
Sources (1)
mcpp_generated/eigen_anchor.c
Generated files
mcpp_generated/eigen_anchor.c