fmatrix.hh File Reference


Detailed Description

This file implements a matrix constructed from a given type representing a field and compile-time given number of rows and columns.

#include <cmath>
#include <cstddef>
#include <complex>
#include <iostream>
#include "exceptions.hh"
#include "fvector.hh"
#include "precision.hh"
#include "static_assert.hh"

Go to the source code of this file.

Namespaces

namespace  Dune
namespace  Dune::FMatrixHelp

Classes

class  Dune::FMatrixError
 Error thrown if operations of a FieldMatrix fail. More...
class  Dune::FieldMatrix< K, n, m >
 A dense n x m matrix. More...
class  Dune::FieldMatrix< K, 1, 1 >
 Special type for 1x1 matrices. More...

Functions

template<typename K>
static K Dune::FMatrixHelp::invertMatrix (const FieldMatrix< K, 1, 1 > &matrix, FieldMatrix< K, 1, 1 > &inverse)
 invert scalar without changing the original matrix
template<typename K>
static K Dune::FMatrixHelp::invertMatrix_retTransposed (const FieldMatrix< K, 1, 1 > &matrix, FieldMatrix< K, 1, 1 > &inverse)
 invert scalar without changing the original matrix
template<typename K>
static K Dune::FMatrixHelp::invertMatrix (const FieldMatrix< K, 2, 2 > &matrix, FieldMatrix< K, 2, 2 > &inverse)
 invert 2x2 Matrix without changing the original matrix
template<typename K>
static K Dune::FMatrixHelp::invertMatrix_retTransposed (const FieldMatrix< K, 2, 2 > &matrix, FieldMatrix< K, 2, 2 > &inverse)
template<typename K>
static K Dune::FMatrixHelp::invertMatrix (const FieldMatrix< K, 3, 3 > &matrix, FieldMatrix< K, 3, 3 > &inverse)
 invert 3x3 Matrix without changing the original matrix
template<typename K>
static K Dune::FMatrixHelp::invertMatrix_retTransposed (const FieldMatrix< K, 3, 3 > &matrix, FieldMatrix< K, 3, 3 > &inverse)
 invert 3x3 Matrix without changing the original matrix
template<class K, int m, int n, int p>
static void Dune::FMatrixHelp::multMatrix (const FieldMatrix< K, m, n > &A, const FieldMatrix< K, n, p > &B, FieldMatrix< K, m, p > &ret)
 calculates ret = A * B
template<typename K, int rows, int cols>
static void Dune::FMatrixHelp::multTransposedMatrix (const FieldMatrix< K, rows, cols > &matrix, FieldMatrix< K, cols, cols > &ret)
 calculates ret= A_t*A
template<typename K, int rows, int cols>
static void Dune::FMatrixHelp::multAssign (const FieldMatrix< K, rows, cols > &matrix, const FieldVector< K, cols > &x, FieldVector< K, rows > &ret)
 calculates ret = matrix * x
template<typename K, int rows, int cols>
static void Dune::FMatrixHelp::multAssignTransposed (const FieldMatrix< K, rows, cols > &matrix, const FieldVector< K, rows > &x, FieldVector< K, cols > &ret)
 calculates ret = matrix^T * x
template<typename K, int rows, int cols>
static FieldVector< K, rows > Dune::FMatrixHelp::mult (const FieldMatrix< K, rows, cols > &matrix, const FieldVector< K, cols > &x)
 calculates ret = matrix * x
template<typename K, int rows, int cols>
static FieldVector< K, cols > Dune::FMatrixHelp::multTransposed (const FieldMatrix< K, rows, cols > &matrix, const FieldVector< K, rows > &x)
 calculates ret = matrix^T * x


Generated on Sun Nov 15 22:28:14 2009 for dune-common by  doxygen 1.5.6