DGtal  0.9.3beta
Public Types | Public Member Functions | Private Attributes
DGtal::concepts::CLinearAlgebraSolver< S, V, M > Struct Template Reference

#include <DGtal/math/linalg/CLinearAlgebraSolver.h>

Inheritance diagram for DGtal::concepts::CLinearAlgebraSolver< S, V, M >:
[legend]
Collaboration diagram for DGtal::concepts::CLinearAlgebraSolver< S, V, M >:
[legend]

Public Types

typedef S Solver
 
typedef V Vector
 
typedef M Matrix
 

Public Member Functions

 BOOST_CONCEPT_ASSERT ((CLinearAlgebra< Vector, Matrix >))
 
 BOOST_CONCEPT_USAGE (CLinearAlgebraSolver)
 

Private Attributes

int status_return
 
const Solver const_solver
 
Solver solver
 
const Matrix a
 
const Vector y
 
x
 

Detailed Description

template<typename S, typename V, typename M>
struct DGtal::concepts::CLinearAlgebraSolver< S, V, M >

Aim: Describe a linear solver defined over a linear algebra. Problems are of the form:

Description of concept 'CLinearAlgebraSolver'

a * x = y

where a type is a model of CMatrix and x, y type is a model of CVector. Matrix and vector types should be a model of CLinearAlgebra.

Refinement of

Associated types

Notation

Definitions

Valid expressions and semantics

Name Expression Type requirements Return type Precondition Semantics Post condition Complexity
Problem factorization / matrix input solver.compute(a) return *this.
Problem resolution / vector input x = solver.solve(y) Vector
Status solver.status()

Invariants

Models

Notes

Template Parameters
Sthe type that should be a model of CLinearAlgebraSolver.
Vthe type that should be a model of CVector
Mthe type that should be a model of CMatrix

Definition at line 103 of file CLinearAlgebraSolver.h.

Member Typedef Documentation

template<typename S , typename V , typename M >
typedef M DGtal::concepts::CLinearAlgebraSolver< S, V, M >::Matrix

Definition at line 109 of file CLinearAlgebraSolver.h.

template<typename S , typename V , typename M >
typedef S DGtal::concepts::CLinearAlgebraSolver< S, V, M >::Solver

Definition at line 107 of file CLinearAlgebraSolver.h.

template<typename S , typename V , typename M >
typedef V DGtal::concepts::CLinearAlgebraSolver< S, V, M >::Vector

Definition at line 108 of file CLinearAlgebraSolver.h.

Member Function Documentation

template<typename S , typename V , typename M >
DGtal::concepts::CLinearAlgebraSolver< S, V, M >::BOOST_CONCEPT_ASSERT ( (CLinearAlgebra< Vector, Matrix >)  )
template<typename S , typename V , typename M >
DGtal::concepts::CLinearAlgebraSolver< S, V, M >::BOOST_CONCEPT_USAGE ( CLinearAlgebraSolver< S, V, M >  )
inline

Field Documentation

template<typename S , typename V , typename M >
const Matrix DGtal::concepts::CLinearAlgebraSolver< S, V, M >::a
private

Definition at line 124 of file CLinearAlgebraSolver.h.

template<typename S , typename V , typename M >
const Solver DGtal::concepts::CLinearAlgebraSolver< S, V, M >::const_solver
private
template<typename S , typename V , typename M >
Solver DGtal::concepts::CLinearAlgebraSolver< S, V, M >::solver
private
template<typename S , typename V , typename M >
int DGtal::concepts::CLinearAlgebraSolver< S, V, M >::status_return
private
template<typename S , typename V , typename M >
V DGtal::concepts::CLinearAlgebraSolver< S, V, M >::x
private

Definition at line 126 of file CLinearAlgebraSolver.h.

template<typename S , typename V , typename M >
const Vector DGtal::concepts::CLinearAlgebraSolver< S, V, M >::y
private

Definition at line 125 of file CLinearAlgebraSolver.h.


The documentation for this struct was generated from the following file: