function_taking_ref.cpp File Reference
#include <iostream>
#include <Eigen/SVD>

Functions

float inv_cond (const Eigen::Ref< const Eigen::MatrixXf > &a)
 
int main ()
 

Function Documentation

◆ inv_cond()

float inv_cond ( const Eigen::Ref< const Eigen::MatrixXf > &  a)
4  {
5  const Eigen::VectorXf sing_vals = a.jacobiSvd().singularValues();
6  return sing_vals(sing_vals.size() - 1) / sing_vals(0);
7 }
const Scalar * a
Definition: level2_cplx_impl.h:32

References a.

Referenced by main().

◆ main()

int main ( )
9  {
10  Eigen::MatrixXf m = Eigen::MatrixXf::Random(4, 4);
11  std::cout << "matrix m:\n" << m << "\n\n";
12  std::cout << "inv_cond(m): " << inv_cond(m) << "\n";
13  std::cout << "inv_cond(m(1:3,1:3)): " << inv_cond(m.topLeftCorner(3, 3)) << "\n";
14  std::cout << "inv_cond(m+I): " << inv_cond(m + Eigen::MatrixXf::Identity(4, 4)) << "\n";
15 }
float inv_cond(const Eigen::Ref< const Eigen::MatrixXf > &a)
Definition: function_taking_ref.cpp:4
int * m
Definition: level2_cplx_impl.h:294

References inv_cond(), and m.