MeshKit  1.0
Matrix.hpp File Reference
#include <string>
#include <istream>
#include <ostream>
#include <sstream>
#include <cmath>
Include dependency graph for Matrix.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  Matrix< R, C >
 Fixed-size matrix class. More...
class  Matrix< 1, 1 >
class  Vector< L >
 Vector is a 1xL Matrix. More...

Namespaces

namespace  MeshKit

Functions

template<unsigned R1, unsigned C1, unsigned R2, unsigned C2>
void set_region (Matrix< R1, C1 > &d, unsigned r, unsigned c, Matrix< R2, C2 > &s)
 Set a subset of this matrix to some other matrix.
template<unsigned R, unsigned C>
Matrix< R, C > operator- (const Matrix< R, C > &m)
template<unsigned R, unsigned C>
Matrix< R, C > operator+ (const Matrix< R, C > &m, double s)
template<unsigned R, unsigned C>
Matrix< R, C > operator+ (double s, const Matrix< R, C > &m)
template<unsigned R, unsigned C>
Matrix< R, C > operator+ (const Matrix< R, C > &A, const Matrix< R, C > &B)
template<unsigned R, unsigned C>
Matrix< R, C > operator- (const Matrix< R, C > &m, double s)
template<unsigned R, unsigned C>
Matrix< R, C > operator- (double s, const Matrix< R, C > &m)
template<unsigned R, unsigned C>
Matrix< R, C > operator- (const Matrix< R, C > &A, const Matrix< R, C > &B)
template<unsigned R, unsigned C>
Matrix< R, C > operator* (const Matrix< R, C > &m, double s)
template<unsigned R, unsigned C>
Matrix< R, C > operator* (double s, const Matrix< R, C > &m)
template<unsigned R, unsigned RC, unsigned C>
double multiply_helper_result_val (unsigned r, unsigned c, const Matrix< R, RC > &A, const Matrix< RC, C > &B)
template<unsigned R, unsigned RC, unsigned C>
Matrix< R, C > operator* (const Matrix< R, RC > &A, const Matrix< RC, C > &B)
template<unsigned R, unsigned C>
Matrix< R, C > operator/ (const Matrix< R, C > &m, double s)
template<unsigned RC>
double cofactor (const Matrix< RC, RC > &m, unsigned r, unsigned c)
template<unsigned RC>
double det (const Matrix< RC, RC > &m)
double det (const Matrix< 2, 2 > &m)
double det (const Matrix< 3, 3 > &m)
Matrix< 2, 2 > adj (const Matrix< 2, 2 > &m)
Matrix< 2, 2 > transpose_adj (const Matrix< 2, 2 > &m)
Matrix< 3, 3 > adj (const Matrix< 3, 3 > &m)
Matrix< 3, 3 > transpose_adj (const Matrix< 3, 3 > &m)
template<unsigned R, unsigned C>
Matrix< R, C > inverse (const Matrix< R, C > &m)
template<unsigned R, unsigned C>
Matrix< R, C > transpose (const Matrix< C, R > &m)
template<unsigned RC>
double trace (const Matrix< RC, RC > &m)
template<unsigned R, unsigned C>
double sqr_Frobenius (const Matrix< R, C > &m)
template<unsigned R, unsigned C>
double Frobenius (const Matrix< R, C > &m)
template<unsigned R, unsigned C>
bool operator== (const Matrix< R, C > &A, const Matrix< R, C > &B)
template<unsigned R, unsigned C>
bool operator!= (const Matrix< R, C > &A, const Matrix< R, C > &B)
template<unsigned R, unsigned C>
std::ostream & operator<< (std::ostream &str, const Matrix< R, C > &m)
template<unsigned R, unsigned C>
std::istream & operator>> (std::istream &str, Matrix< R, C > &m)
template<unsigned R>
double sqr_length (const Matrix< R, 1 > &v)
template<unsigned C>
double sqr_length (const Matrix< 1, C > &v)
template<unsigned R>
double length (const Matrix< R, 1 > &v)
template<unsigned C>
double length (const Matrix< 1, C > &v)
template<unsigned R, unsigned C>
double inner_product (const Matrix< R, C > &m1, const Matrix< R, C > &m2)
template<unsigned R, unsigned C>
Matrix< R, C > outer (const Matrix< R, 1 > &v1, const Matrix< C, 1 > &v2)
template<unsigned R, unsigned C>
Matrix< R, C > outer (const Matrix< 1, R > &v1, const Matrix< 1, C > &v2)
double vector_product (const Matrix< 2, 1 > &v1, const Matrix< 2, 1 > &v2)
double vector_product (const Matrix< 1, 2 > &v1, const Matrix< 1, 2 > &v2)
Matrix< 3, 1 > vector_product (const Matrix< 3, 1 > &a, const Matrix< 3, 1 > &b)
Matrix< 1, 3 > vector_product (const Matrix< 1, 3 > &a, const Matrix< 1, 3 > &b)
template<unsigned R, unsigned C>
double operator% (const Matrix< R, C > &v1, const Matrix< R, C > &v2)
double operator* (const Matrix< 2, 1 > &v1, const Matrix< 2, 1 > &v2)
double operator* (const Matrix< 1, 2 > &v1, const Matrix< 1, 2 > &v2)
Matrix< 3, 1 > operator* (const Matrix< 3, 1 > &v1, const Matrix< 3, 1 > &v2)
Matrix< 1, 3 > operator* (const Matrix< 1, 3 > &v1, const Matrix< 1, 3 > &v2)
void QR (const Matrix< 3, 3 > &A, Matrix< 3, 3 > &Q, Matrix< 3, 3 > &R)
void QR (const Matrix< 2, 2 > &A, Matrix< 2, 2 > &Q, Matrix< 2, 2 > &R)

Detailed Description

Author:
Jason Kraftcheck

Definition in file Matrix.hpp.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines