All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
qr_method_func.cpp File Reference
`#include <iostream>`
`#include "viennacl/scalar.hpp"`
`#include "viennacl/vector.hpp"`
`#include "viennacl/linalg/prod.hpp"`
`#include <fstream>`
`#include <iomanip>`
`#include "viennacl/linalg/qr-method.hpp"`
`#include "viennacl/linalg/qr-method-common.hpp"`
`#include "viennacl/linalg/matrix_operations.hpp"`
`#include "viennacl/tools/random.hpp"`

Go to the source code of this file.

## Macros

#define | NDEBUG
#define | VIENNACL_WITH_UBLAS
#define | EPS 10.0e-3

## Typedefs

typedef float | ScalarType

## Functions

void | read_matrix_size (std::fstream &f, std::size_t &sz)
template<typename MatrixLayout >
void | read_matrix_body (std::fstream &f, viennacl::matrix< ScalarType, MatrixLayout > &A)
void | matrix_print (viennacl::matrix< ScalarType > &A_orig)
void | matrix_print (ublas::matrix< ScalarType > &A)
void | vector_print (std::vector< ScalarType > &v)
template<typename MatrixType , typename VCLMatrixType >
bool | check_for_equality (MatrixType const &ublas_A, VCLMatrixType const &vcl_A)
template<typename VectorType >
bool | check_for_equality (VectorType const &vec_A, VectorType const &vec_B)
void | fill_vector (std::vector< ScalarType > &v)
template<typename NumericT >
void | house_update_A_left (ublas::matrix< NumericT > &A, std::vector< NumericT > D, unsigned int start)
template<typename NumericT >
void | house_update_A_right (ublas::matrix< NumericT > &A, std::vector< NumericT > D)
template<typename NumericT >
void | house_update_QL (ublas::matrix< NumericT > &Q, std::vector< NumericT > D, std::size_t A_size1)
template<typename NumericT >
void | givens_next (ublas::matrix< NumericT > &Q, std::vector< NumericT > &tmp1, std::vector< NumericT > &tmp2, int l, int m)
template<typename NumericT >
void | copy_vec (ublas::matrix< NumericT > &A, std::vector< NumericT > &V, std::size_t row_start, std::size_t col_start, bool copy_col)
template<typename NumericT >
void | bidiag_pack (ublas::matrix< NumericT > &A, std::vector< NumericT > &D, std::vector< NumericT > &S)
template<typename MatrixLayout >
void | test_qr_method_sym (const std::string &fn)
int | main ()

## Detailed Description

Tests the individual building blocks of the eigenvalue routines based on the QR method.

Test:
  Tests the individual building blocks of the eigenvalue routines based on the QR method.

Definition in file qr_method_func.cpp.

## Macro Definition Documentation

#define EPS 10.0e-3

Definition at line 49 of file qr_method_func.cpp.

#define NDEBUG

Definition at line 33 of file qr_method_func.cpp.

#define VIENNACL_WITH_UBLAS

Definition at line 36 of file qr_method_func.cpp.

## Typedef Documentation

typedef float ScalarType

Definition at line 53 of file qr_method_func.cpp.

## Function Documentation

template<typename NumericT >

void bidiag_pack | ( | ublas::matrix< NumericT > & | A,
|  | std::vector< NumericT > & | D,
|  | std::vector< NumericT > & | S
| ) |  |

Definition at line 297 of file qr_method_func.cpp.

template<typename MatrixType , typename VCLMatrixType >

bool check_for_equality | ( | MatrixType const & | ublas_A,
|  | VCLMatrixType const & | vcl_A
| ) |  |

Definition at line 124 of file qr_method_func.cpp.

template<typename VectorType >

bool check_for_equality | ( | VectorType const & | vec_A,
|  | VectorType const & | vec_B
| ) |  |

Definition at line 149 of file qr_method_func.cpp.

template<typename NumericT >

void copy_vec | ( | ublas::matrix< NumericT > & | A,
|  | std::vector< NumericT > & | V,
|  | std::size_t | row_start,
|  | std::size_t | col_start,
|  | bool | copy_col
| ) |  |

Definition at line 274 of file qr_method_func.cpp.

void fill_vector | ( | std::vector< ScalarType > & | v | ) |

Definition at line 167 of file qr_method_func.cpp.

template<typename NumericT >

void givens_next | ( | ublas::matrix< NumericT > & | Q,
|  | std::vector< NumericT > & | tmp1,
|  | std::vector< NumericT > & | tmp2,
|  | int | l,
|  | int | m
| ) |  |

Definition at line 254 of file qr_method_func.cpp.

template<typename NumericT >

void house_update_A_left | ( | ublas::matrix< NumericT > & | A,
|  | std::vector< NumericT > | D,
|  | unsigned int | start
| ) |  |

Definition at line 183 of file qr_method_func.cpp.

template<typename NumericT >

void house_update_A_right | ( | ublas::matrix< NumericT > & | A,
|  | std::vector< NumericT > | D
| ) |  |

Definition at line 202 of file qr_method_func.cpp.

template<typename NumericT >

void house_update_QL | ( | ublas::matrix< NumericT > & | Q,
|  | std::vector< NumericT > | D,
|  | std::size_t | A_size1
| ) |  |

Definition at line 222 of file qr_method_func.cpp.

int main | ( |  | ) |

Definition at line 402 of file qr_method_func.cpp.

void matrix_print | ( | viennacl::matrix< ScalarType > & | A_orig | ) |

Definition at line 89 of file qr_method_func.cpp.

void matrix_print | ( | ublas::matrix< ScalarType > & | A | ) |

Definition at line 103 of file qr_method_func.cpp.

template<typename MatrixLayout >

void read_matrix_body | ( | std::fstream & | f,
|  | viennacl::matrix< ScalarType, MatrixLayout > & | A
| ) |  |

Definition at line 67 of file qr_method_func.cpp.

void read_matrix_size | ( | std::fstream & | f,
|  | std::size_t & | sz
| ) |  |

Definition at line 57 of file qr_method_func.cpp.

template<typename MatrixLayout >

void test_qr_method_sym | ( | const std::string & | fn | ) |

Definition at line 314 of file qr_method_func.cpp.

void vector_print | ( | std::vector< ScalarType > & | v | ) |

Examples:
  qr_method.cpp.

Definition at line 115 of file qr_method_func.cpp.