biophysics/MatrixOps.cpp File Reference

#include <vector>
#include <math.h>
#include "doubleEq.h"
#include <iostream>
#include "MatrixOps.h"
Include dependency graph for MatrixOps.cpp:

Functions

void matPrint (Matrix *A)
void vecPrint (Vector *v)
MatrixmatMatMul (Matrix *A, Matrix *B)
void matMatMul (Matrix *A, Matrix *B, unsigned int resIndex)
void triMatMul (Matrix *A, Matrix *B)
void matPermMul (Matrix *A, vector< unsigned int > *swaps)
MatrixmatMatAdd (const Matrix *A, const Matrix *B, double alpha, double beta)
void matMatAdd (Matrix *A, Matrix *B, double alpha, double beta, unsigned int resIndex)
MatrixmatEyeAdd (const Matrix *A, double k)
void matEyeAdd (Matrix *A, double k, unsigned int dummy)
MatrixmatScalShift (const Matrix *A, double mul, double add)
void matScalShift (Matrix *A, double mul, double add, unsigned int dummy)
VectorvecMatMul (const Vector *v, Matrix *A)
VectorvecScalShift (const Vector *v, double scal, double shift)
void vecScalShift (Vector *v, double scal, double shift, unsigned int dummy)
VectormatVecMul (Matrix *A, Vector *v)
VectorvecVecScalAdd (const Vector *v1, const Vector *v2, double alpha, double beta)
void vecVecScalAdd (Vector *v1, Vector *v2, double alpha, double beta, unsigned int dummy)
double matTrace (Matrix *A)
double matColNorm (Matrix *A)
MatrixmatTrans (Matrix *A)
double doPartialPivot (Matrix *A, unsigned int row, unsigned int col, vector< unsigned int > *swaps)
void matInv (Matrix *A, vector< unsigned int > *swaps, Matrix *invA)
MatrixmatAlloc (unsigned int n)
VectorvecAlloc (unsigned int n)

Function Documentation

double doPartialPivot ( Matrix A,
unsigned int  row,
unsigned int  col,
vector< unsigned int > *  swaps 
)

References doubleEq().

Referenced by matInv().

Here is the call graph for this function:

Matrix* matAlloc ( unsigned int  n  ) 
double matColNorm ( Matrix A  ) 
void matEyeAdd ( Matrix A,
double  k,
unsigned int  dummy 
)
Matrix* matEyeAdd ( const Matrix A,
double  k 
)

References matAlloc().

Referenced by MarkovSolver::computeMatrixExponential().

Here is the call graph for this function:

void matInv ( Matrix A,
vector< unsigned int > *  swaps,
Matrix invA 
)

References doPartialPivot(), doubleEq(), EPSILON, matAlloc(), matPermMul(), and triMatMul().

Here is the call graph for this function:

void matMatAdd ( Matrix A,
Matrix B,
double  alpha,
double  beta,
unsigned int  resIndex 
)

References FIRST, and SECOND.

Matrix* matMatAdd ( const Matrix A,
const Matrix B,
double  alpha,
double  beta 
)

References matAlloc().

Here is the call graph for this function:

void matMatMul ( Matrix A,
Matrix B,
unsigned int  resIndex 
)

References FIRST, matMatMul(), and SECOND.

Here is the call graph for this function:

Matrix* matMatMul ( Matrix A,
Matrix B 
)

References matAlloc().

Referenced by MarkovSolver::computeMatrixExponential(), and matMatMul().

Here is the call graph for this function:

void matPermMul ( Matrix A,
vector< unsigned int > *  swaps 
)

Referenced by matInv().

void matPrint ( Matrix A  ) 
void matScalShift ( Matrix A,
double  mul,
double  add,
unsigned int  dummy 
)
Matrix* matScalShift ( const Matrix A,
double  mul,
double  add 
)

References matAlloc().

Referenced by MarkovSolver::computeMatrixExponential().

Here is the call graph for this function:

double matTrace ( Matrix A  ) 
Matrix* matTrans ( Matrix A  ) 

References matAlloc().

Here is the call graph for this function:

Vector* matVecMul ( Matrix A,
Vector v 
)

References vecAlloc().

Here is the call graph for this function:

void triMatMul ( Matrix A,
Matrix B 
)

Referenced by matInv().

Vector* vecAlloc ( unsigned int  n  ) 
Vector* vecMatMul ( const Vector v,
Matrix A 
)

References vecAlloc().

Referenced by MarkovSolverBase::bilinearInterpolate(), and MarkovSolverBase::linearInterpolate().

Here is the call graph for this function:

void vecPrint ( Vector v  ) 
void vecScalShift ( Vector v,
double  scal,
double  shift,
unsigned int  dummy 
)
Vector* vecScalShift ( const Vector v,
double  scal,
double  shift 
)

References vecAlloc().

Here is the call graph for this function:

void vecVecScalAdd ( Vector v1,
Vector v2,
double  alpha,
double  beta,
unsigned int  dummy 
)
Vector* vecVecScalAdd ( const Vector v1,
const Vector v2,
double  alpha,
double  beta 
)

References vecAlloc().

Referenced by MarkovSolverBase::bilinearInterpolate(), and MarkovSolverBase::linearInterpolate().

Here is the call graph for this function:


Generated on 1 Jul 2015 for MOOSE by  doxygen 1.6.1