An abstract class for a T matrix. More...
#include <tmatrix.hh>


Public Member Functions | |
| virtual void | extract (const concepts::Vector< F > &solution, concepts::Array< F > &coeff) const =0 |
Extracts the part of solution belonging to this T matrix into coeff. | |
| virtual void | extract (const concepts::Vector< std::complex< F > > &solution, concepts::Array< std::complex< F > > &coeff) const =0 |
| virtual uint | index (const uint i) const =0 |
| Maps the local index i to the global index. | |
| uint | m () const |
| Returns the number of rows. | |
| uint | n () const |
| Returns the number of columns. | |
| virtual void | operator() (const ElementMatrix< F > &A, ElementMatrix< F > &B) const =0 |
| Application operator. | |
| virtual void | operator() (const ElementMatrix< std::complex< F > > &A, ElementMatrix< std::complex< F > > &B) const =0 |
| void | setM (uint m) |
| TMatrixBase (const uint n) | |
| Constructor. | |
| virtual void | usedIdx (TColumn< bool > &c) const =0 |
Marks the used local indices in c with true, the indices which are set to false. | |
| virtual | ~TMatrixBase () |
Protected Member Functions | |
| virtual std::ostream & | info (std::ostream &os) const |
| Returns information in an output stream. | |
Protected Attributes | |
| uint | m_ |
| Number of rows. | |
| uint | n_ |
| Number of columns. | |
An abstract class for a T matrix.
A T matrix describes the mapping of local degrees of freedom to global degrees of freedom.
A T matrix describes how the local shape functions are glued together to form to global (continuous) shape functions. It contains the informatin how an element matrix is assembled into the global matrix. It is defined as follows:
Let
be the number of local shape functions
in the element
and
the number of global basis functions
. The T matrix
of the element
describes how the restriction of the global basis functions
onto the element
are constructed from the local shape functions:
and in vector notation:
.
Definition at line 340 of file tmatrix.hh.
| concepts::TMatrixBase< F >::TMatrixBase | ( | const uint | n | ) |
Constructor.
Sets the number of rows to zero.
| n | Number of columns |
| virtual concepts::TMatrixBase< F >::~TMatrixBase | ( | ) | [virtual] |
| virtual void concepts::TMatrixBase< F >::extract | ( | const concepts::Vector< F > & | solution, |
| concepts::Array< F > & | coeff | ||
| ) | const [pure virtual] |
Extracts the part of solution belonging to this T matrix into coeff.
coeff is resized and zeroed before filling it with the coefficients.
| solution | Vector in the global space (input) |
| coeff | Local coefficients of this T matrix (output) |
Implemented in concepts::TIndex< F >, concepts::TMatrix< F >, vectorial::TMatrixOffset< F >, vectorial::TMatrix< F >, concepts::TMatrix< Real >, and vectorial::TMatrix< Real >.
| virtual void concepts::TMatrixBase< F >::extract | ( | const concepts::Vector< std::complex< F > > & | solution, |
| concepts::Array< std::complex< F > > & | coeff | ||
| ) | const [pure virtual] |
| virtual uint concepts::TMatrixBase< F >::index | ( | const uint | i | ) | const [pure virtual] |
Maps the local index i to the global index.
Implemented in concepts::TIndex< F >, concepts::TMatrix< F >, and concepts::TMatrix< Real >.
| virtual std::ostream& concepts::TMatrixBase< F >::info | ( | std::ostream & | os | ) | const [protected, virtual] |
Returns information in an output stream.
Reimplemented from concepts::OutputOperator.
Reimplemented in concepts::TIndex< F >, concepts::TMatrix< F >, vectorial::TMatrixOffset< F >, vectorial::TMatrix< F >, concepts::TMatrix< Real >, vectorial::TMatrixOffset< Real >, and vectorial::TMatrix< Real >.
| uint concepts::TMatrixBase< F >::m | ( | ) | const [inline] |
Returns the number of rows.
Reimplemented in vectorial::TMatrixOffset< F >, and vectorial::TMatrixOffset< Real >.
Definition at line 374 of file tmatrix.hh.
| uint concepts::TMatrixBase< F >::n | ( | ) | const [inline] |
Returns the number of columns.
Reimplemented in vectorial::TMatrixOffset< F >, and vectorial::TMatrixOffset< Real >.
Definition at line 379 of file tmatrix.hh.
| virtual void concepts::TMatrixBase< F >::operator() | ( | const ElementMatrix< std::complex< F > > & | A, |
| ElementMatrix< std::complex< F > > & | B | ||
| ) | const [pure virtual] |
| virtual void concepts::TMatrixBase< F >::operator() | ( | const ElementMatrix< F > & | A, |
| ElementMatrix< F > & | B | ||
| ) | const [pure virtual] |
Application operator.
Computes the application of the T matrix on A and returns B:
. Typical usage: assembling the element matrices. The element matrix A is transformed using
and then simply added entry by entry into the global matrix. This is the case for element matrices which have the same "left" and "right" T matrix. Otherwise, this looks like
| A | Element matrix |
| B | Result |
Implemented in concepts::TIndex< F >, concepts::TMatrix< F >, vectorial::TMatrixOffset< F >, vectorial::TMatrix< F >, concepts::TMatrix< Real >, and vectorial::TMatrix< Real >.
| void concepts::TMatrixBase< F >::setM | ( | uint | m | ) | [inline] |
Definition at line 376 of file tmatrix.hh.
| virtual void concepts::TMatrixBase< F >::usedIdx | ( | TColumn< bool > & | c | ) | const [pure virtual] |
Marks the used local indices in c with true, the indices which are set to false.
c has the correct size Implemented in concepts::TIndex< F >, concepts::TMatrix< F >, vectorial::TMatrixOffset< F >, vectorial::TMatrix< F >, concepts::TMatrix< Real >, vectorial::TMatrixOffset< Real >, and vectorial::TMatrix< Real >.
uint concepts::TMatrixBase< F >::m_ [protected] |
Number of rows.
Definition at line 405 of file tmatrix.hh.
uint concepts::TMatrixBase< F >::n_ [protected] |
Number of columns.
Definition at line 403 of file tmatrix.hh.