Macaulay2 Engine
Loading...
Searching...
No Matches
eigen.cpp File Reference
#include <cstdlib>
#include <M2/math-include.h>
#include "mpreal.h"
#include <unsupported/Eigen/MPRealSupport>
#include <Eigen/SVD>
#include <Eigen/Eigenvalues>
#include "eigen.hpp"

Go to the source code of this file.

Namespaces

namespace  EigenM2

Macros

#define mpfr   eigen_mpfr

Typedefs

using Real = eigen_mpfr::mpreal
using Complex = std::complex<Real>
using MatrixXmpRRR = Eigen::Matrix<Real,Eigen::Dynamic,Eigen::Dynamic>
using MatrixXmpCCC = Eigen::Matrix<Complex,Eigen::Dynamic,Eigen::Dynamic>

Functions

void EigenM2::fill_to_MatrixXmp (const LMatrixRRR &orig, MatrixXmpRRR &result)
void EigenM2::fill_to_MatrixXmp (const LMatrixCCC &orig, MatrixXmpCCC &result)
void EigenM2::fill_from_MatrixXmp (const MatrixXmpRRR &orig, LMatrixRRR &result)
void EigenM2::fill_from_MatrixXmp (const MatrixXmpCCC &orig, LMatrixCCC &result)
bool EigenM2::SVD (const LMatrixRRR *A, LMatrixRRR *Sigma, LMatrixRRR *U, LMatrixRRR *VT)
bool EigenM2::SVD (const LMatrixCCC *A, LMatrixRRR *Sigma, LMatrixCCC *U, LMatrixCCC *VT)
bool EigenM2::SVD_divide_conquer (const LMatrixRRR *A, LMatrixRRR *Sigma, LMatrixRRR *U, LMatrixRRR *VT)
bool EigenM2::SVD_divide_conquer (const LMatrixCCC *A, LMatrixRRR *Sigma, LMatrixCCC *U, LMatrixCCC *VT)
bool EigenM2::eigenvalues (const LMatrixRRR *A, LMatrixCCC *eigenvals)
bool EigenM2::eigenvalues (const LMatrixCCC *A, LMatrixCCC *eigenvals)
bool EigenM2::eigenvalues_hermitian (const LMatrixRRR *A, LMatrixRRR *eigenvals)
bool EigenM2::eigenvalues_hermitian (const LMatrixCCC *A, LMatrixRRR *eigenvals)
bool EigenM2::eigenvectors (const LMatrixRRR *A, LMatrixCCC *eigenvals, LMatrixCCC *eigenvecs)
bool EigenM2::eigenvectors (const LMatrixCCC *A, LMatrixCCC *eigenvals, LMatrixCCC *eigenvecs)
bool EigenM2::eigenvectors_hermitian (const LMatrixRRR *A, LMatrixRRR *eigenvals, LMatrixRRR *eigenvecs)
bool EigenM2::eigenvectors_hermitian (const LMatrixCCC *A, LMatrixRRR *eigenvals, LMatrixCCC *eigenvecs)
bool EigenM2::least_squares (const LMatrixRRR *A, const LMatrixRRR *B, LMatrixRRR *X)
bool EigenM2::least_squares (const LMatrixCCC *A, const LMatrixCCC *B, LMatrixCCC *X)