TSparseSolver< F >::A_mult_x Class Referenceabstract

A class that implements the multiplication of a cell of the matrix A with the field x. More...

`#include <mia/core/sparse_solver.hh>`

Inheritance diagram for TSparseSolver< F >::A_mult_x:
[legend]
Collaboration diagram for TSparseSolver< F >::A_mult_x:
[legend]

## Public Types

typedef F | plugin_data
| helper typedef for the plug-in handling
typedef A_mult_x | plugin_type
| helper typedef for the plug-in handling
Public Types inherited from CPropertyFlagHolder
typedef std::set< const char * > | Set
| define the type of the set of flags

## Public Member Functions

| A_mult_x ()
| A_mult_x (const dimsize_type &size)
virtual int | get_boundary_size () const =0
dimsize_type | get_size () const
virtual value_type | operator() (const_field_iterator ix) const =0
virtual | ~A_mult_x ()
Public Member Functions inherited from CProductBase
const char * | get_init_string () const
void | set_init_string (const char *init)
void | set_module (PPluginModule module)
Public Member Functions inherited from CPropertyFlagHolder
void | add (const char *property)
Set | get_missing_properties (const CPropertyFlagHolder &testset) const
bool | has (const char *property) const
bool | has_all_in (const CPropertyFlagHolder &testset) const
virtual | ~CPropertyFlagHolder ()

## Static Public Attributes

static const char *const | type_descr = "amultx"
| plugin type component of plugin path descriptor

## Detailed Description

template<typename F>
class TSparseSolver< F >::A_mult_x

A class that implements the multiplication of a cell of the matrix A with the field x.

This class defines the (sparse) multiplication of the matrix A with a vector x

Definition at line 77 of file sparse_solver.hh.

## Member Typedef Documentation

## plugin_data

template<typename F>

typedef F TSparseSolver< F >::A_mult_x::plugin_data

helper typedef for the plug-in handling

Definition at line 81 of file sparse_solver.hh.

## plugin_type

template<typename F>

typedef A_mult_x TSparseSolver< F >::A_mult_x::plugin_type

helper typedef for the plug-in handling

Definition at line 84 of file sparse_solver.hh.

## Constructor & Destructor Documentation

## A_mult_x() [1/2]

template<typename F>

TSparseSolver< F >::A_mult_x::A_mult_x | ( |  | ) |

inline

standard constructor sets the expected fiels size to zero

Definition at line 90 of file sparse_solver.hh.

## A_mult_x() [2/2]

template<typename F>

TSparseSolver< F >::A_mult_x::A_mult_x | ( | const dimsize_type & | size | ) |

inline

constructor sets the expected fiels size to given value

Definition at line 93 of file sparse_solver.hh.

## ~A_mult_x()

template<typename F>

virtual TSparseSolver< F >::A_mult_x::~A_mult_x | ( |  | ) |

inline virtual

destructor to ensure virtual distruction

Definition at line 96 of file sparse_solver.hh.

## Member Function Documentation

## get_boundary_size()

template<typename F>

virtual int TSparseSolver< F >::A_mult_x::get_boundary_size | ( |  | ) | const

pure virtual

Returns the size of the boundary that one has to take into account

## get_size()

template<typename F>

dimsize_type TSparseSolver< F >::A_mult_x::get_size | ( |  | ) | const

inline

Returns
  the sizes of the (multidimensional) array that is expected by the operator

Definition at line 118 of file sparse_solver.hh.

## operator()()

template<typename F>

virtual value_type TSparseSolver< F >::A_mult_x::operator() | ( | const_field_iterator | ix | ) | const

pure virtual

Operator to execute the multiplication

Parameters

  ix | is the random access iterator to the central value of the input vector that would be multiplied by the element on the main diagonal of A

Returns
  the result for the cell multiplication

Remarks
  For efficiency no tests are done whether the boundary conditions are actually honoured. this is the job of the solver calling the operator

## Field Documentation

## type_descr

template<typename F>

const char *const TSparseSolver< F >::A_mult_x::type_descr = "amultx"

static

plugin type component of plugin path descriptor

Definition at line 87 of file sparse_solver.hh.

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

- sparse_solver.hh