concepts::TMatrixBlock< F > Class Template Reference
TMatrixBlock are special Tmatrices in block diagonal structure, builded with two Tmatrices itsself. More...
#include <tmatrix.hh>
Public Member Functions | |
void | append (TColumn< F > *T) |
Appends the columns to the matrix. More... | |
void | applyOne (const ElementMatrix< F > &A, ElementMatrix< F > &B) const |
TColumn< F > * | columns () const |
const TMatrix::Control * | control (uint i) const |
Returns the ith entry of the control data array. More... | |
const TMatrix::Data * | data (uint i) const |
Returns the ith entry of the data array. More... | |
virtual void | extract (const concepts::Vector< F > &solution, concepts::Array< F > &coeff) const |
virtual void | extract (const concepts::Vector<::std::complex< F > > &solution, concepts::Array<::std::complex< F > > &coeff) const |
void | extractOne (const concepts::Vector< F > &solution, concepts::Array< F > &coeff) const |
virtual uint | index (const uint i) const |
Mapping of the column index to the global degree of freedom. More... | |
uint | nEntries () const |
number of entries in the data vector More... | |
uint | offsetrow () const |
Returns the offset row, that is starting row of the (possible) second matrix block. More... | |
void | operator() (const ElementMatrix< F > &A, ElementMatrix< F > &B) const |
Application operator. More... | |
void | operator() (const ElementMatrix<::std::complex< F > > &A, ElementMatrix<::std::complex< F > > &B) const |
void | operator() (const Vector< F > &A, Vector< F > &B) const |
::std::ostream & | outputLocalMap (::std::ostream &os) const |
TMatrixBlock (const TMatrix< F > *T0, F weight0=1.0, const TMatrix< F > *T1=0, F weight1=0.0) | |
Constructor. More... | |
virtual void | usedIdx (Set< uint > &c) const |
virtual void | usedIdx (TColumn< bool > &c) const |
virtual | ~TMatrixBlock () |
Protected Member Functions | |
virtual ::std::ostream & | info (::std::ostream &os) const |
Private Member Functions | |
void | insert_ (const TMatrix< F > &T, uint offset, uint size, F weight) |
Private Attributes | |
Array< Control > | ctrl_ |
Control data array (column header: column index and length of the column data) More... | |
Array< Data > | data_ |
Data array (matrix entries: row index and data) More... | |
uint | offsetcol_ |
uint | offsetrow_ |
uint | sz_ |
Size of the stored data. More... | |
Detailed Description
template<class F>
class concepts::TMatrixBlock< F >
TMatrixBlock are special Tmatrices in block diagonal structure, builded with two Tmatrices itsself.
The columns of the matrix are TColumn.
If a Tmatrix T0 or T1 is not to be added, i.e. its corresponding weight is zero, the TMatrixBlock coincides with the other input Tmatrix or is empty.
- See also
- TColumn the columns of the matrix.
- NeumannTraceSpace application of TMatrixBlock
Definition at line 682 of file tmatrix.hh.
Constructor & Destructor Documentation
◆ TMatrixBlock()
concepts::TMatrixBlock< F >::TMatrixBlock | ( | const TMatrix< F > * | T0, |
F | weight0 = 1.0 , |
||
const TMatrix< F > * | T1 = 0 , |
||
F | weight1 = 0.0 |
||
) |
◆ ~TMatrixBlock()
|
inlinevirtual |
Definition at line 690 of file tmatrix.hh.
Member Function Documentation
◆ append()
|
inherited |
Appends the columns to the matrix.
n_ is updated to reflect the real size of the matrix. m_ is updated to show the number of columns which are stored. The columns are scanned and the needed space is allocated. Then the new data is stored.
- Parameters
-
T a linked list of columns (in full notation) to be stored.
◆ applyOne()
|
inherited |
◆ columns()
|
inherited |
◆ control()
|
inlineinherited |
Returns the ith entry of the control data array.
- Parameters
-
i a colum index, i.e. i < n()
Definition at line 601 of file tmatrix.hh.
◆ data()
|
inlineinherited |
Returns the ith entry of the data array.
Definition at line 604 of file tmatrix.hh.
◆ extract() [1/2]
|
inlinevirtual |
Reimplemented from concepts::TMatrix< F >.
Definition at line 699 of file tmatrix.hh.
◆ extract() [2/2]
|
inlinevirtual |
Reimplemented from concepts::TMatrix< F >.
Definition at line 703 of file tmatrix.hh.
◆ extractOne()
|
inherited |
◆ index()
|
inlinevirtualinherited |
Mapping of the column index to the global degree of freedom.
Remember: the columns represent the global degrees of freedom to which the shape functions of this element contribute.
More technical: the columns of a TMatrix contain the column index in Control::idx and the relevant data in TMatrix::Data but the number of columns stored in TMatrixBase::n_ does not reflect the global number of degrees of freedom. Therefore, there might be empty columns and TMatrixBase::n_ could be lower than the global number of degrees of freedom.
Definition at line 587 of file tmatrix.hh.
◆ info()
|
protected |
◆ insert_()
|
private |
◆ nEntries()
|
inlineinherited |
number of entries in the data vector
Definition at line 610 of file tmatrix.hh.
◆ offsetrow()
|
inline |
Returns the offset row, that is starting row of the (possible) second matrix block.
Definition at line 711 of file tmatrix.hh.
◆ operator()() [1/3]
|
inherited |
Application operator.
Computes the application of the T matrix on A and returns B: . The typical usage is explained in the base class.
More detailed: B is resized to a matrix, then where and and means sum over all which are present in the T matrix.
- Parameters
-
A Element matrix B Result
- See also
- T for the typical usage of this application operator.
◆ operator()() [2/3]
|
inherited |
◆ operator()() [3/3]
|
inherited |
◆ outputLocalMap()
|
inherited |
◆ usedIdx() [1/2]
|
inlinevirtual |
Reimplemented from concepts::TMatrix< F >.
Definition at line 696 of file tmatrix.hh.
◆ usedIdx() [2/2]
|
inlinevirtual |
Reimplemented from concepts::TMatrix< F >.
Definition at line 692 of file tmatrix.hh.
Member Data Documentation
◆ ctrl_
|
privateinherited |
Control data array (column header: column index and length of the column data)
Definition at line 634 of file tmatrix.hh.
◆ data_
|
privateinherited |
Data array (matrix entries: row index and data)
Definition at line 637 of file tmatrix.hh.
◆ offsetcol_
|
private |
Definition at line 724 of file tmatrix.hh.
◆ offsetrow_
|
private |
Definition at line 723 of file tmatrix.hh.
◆ sz_
|
privateinherited |
Size of the stored data.
Definition at line 640 of file tmatrix.hh.
The documentation for this class was generated from the following file:
- space/tmatrix.hh