tmatrix.hh
virtual uint index(const uint i) const =0
Maps the local index i to the global index.
virtual ~TMatrixBase()
virtual uint index(const uint i) const
Mapping of the column index to the global degree of freedom.
Definition: tmatrix.hh:587
F & operator[](uint *i)
Returns the ith entry in the column. i an array of size dim.
Definition: tmatrix.hh:165
void applyOne(const ElementMatrix< F > &A, ElementMatrix< F > &B) const
TColumnBlock(const TColumnBlock< F, dim > &t, const uint *n)
Transformation constructor to higher number of rows.
The column header: column index and length of the column data.
Definition: tmatrix.hh:497
virtual void extract(const concepts::Vector< F > &solution, concepts::Array< F > &coeff) const
void insert_(const TMatrix< F > &T, uint offset, uint size, F weight)
TMatrixBlock are special Tmatrices in block diagonal structure, builded with two Tmatrices itsself.
Definition: tmatrix.hh:682
void operator()(const Vector< F > &A, Vector< F > &B) const
TColumnTensor(const uint *n, const uint idx, TColumn< F > *lnk=0)
Constructor.
const TMatrix::Data * data(uint i) const
Returns the ith entry of the data array.
Definition: tmatrix.hh:604
Array< Control > ctrl_
Control data array (column header: column index and length of the column data)
Definition: tmatrix.hh:634
virtual TColumnBlock< F, dim > * clone() const
virtual void operator()(const ElementMatrix< F > &A, ElementMatrix< F > &B) const =0
Application operator.
virtual ~TMatrix()
F & operator[](uint *i)
Returns the /c i th entry in the column. /c i an array of size dim.
Definition: tmatrix.hh:244
void write(TColumnTensor< F, dim > &t, uint k)
Copies data of T matrix in tensorised structure into block k.
TColumnTensor(const TColumnBlock< F, dim > &t, uint k)
Copy constructor, takes /c k .th block in /c t.
uint index(const uint i) const
Returns the number of the global degree of freedom assigned to the ith local degree of freedom.
Definition: tmatrix.hh:462
virtual ::std::ostream & info(::std::ostream &os) const
virtual ::std::ostream & info(::std::ostream &os) const
::std::ostream & outputLocalMap(::std::ostream &os) const
virtual void extract(const concepts::Vector<::std::complex< F > > &solution, concepts::Array<::std::complex< F > > &coeff) const
Definition: tmatrix.hh:703
uint ldof(uint *i) const
Returns the number of local dof for ith entry in the column.
virtual ~TIndex()
virtual void operator()(const ElementMatrix<::std::complex< F > > &A, ElementMatrix<::std::complex< F > > &B) const =0
const TMatrix::Control * control(uint i) const
Returns the ith entry of the control data array.
Definition: tmatrix.hh:601
virtual ::std::ostream & info(::std::ostream &os) const
TMatrixBlock(const TMatrix< F > *T0, F weight0=1.0, const TMatrix< F > *T1=0, F weight1=0.0)
Constructor.
TColumnBlock(const uint *n, const uint idx, TColumn< F > *lnk=0)
Constructor.
virtual TColumnTensor< F, dim > * clone() const
Returns a copy of itself.
~TColumnSet()
F operator[](uint *i) const
Returns the ith entry in the column. i an array of size dim.
Definition: tmatrix.hh:154
virtual ::std::ostream & info(::std::ostream &os) const
virtual void usedIdx(TColumn< bool > &c) const =0
Marks the used local indices in c with true, the local indices which are not set to false.
virtual void extract(const concepts::Vector<::std::complex< F > > &solution, concepts::Array<::std::complex< F > > &coeff) const
virtual ~TColumn()
std::ostream & operator<<(std::ostream &os, const Level< dim > &c)
virtual ::std::ostream & info(::std::ostream &os) const
void recursiveOut_(const int d, uint *n, ::std::ostream &os) const
virtual ::std::ostream & info(::std::ostream &os) const
virtual void usedIdx(TColumn< bool > &c) const
Definition: tmatrix.hh:692
virtual ::std::ostream & info(::std::ostream &os) const
virtual void extract(const concepts::Vector< F > &solution, concepts::Array< F > &coeff) const
Definition: tmatrix.hh:699
void recursiveOut_(const int d, uint *n, ushort &position, ::std::ostream &os) const
For output.
void operator()(const ElementMatrix< F > &A, ElementMatrix< F > &B) const
Application operator.
virtual void extract(const concepts::Vector<::std::complex< F > > &solution, concepts::Array<::std::complex< F > > &coeff) const
virtual void usedIdx(TColumn< bool > &c) const
virtual ::std::ostream & info(::std::ostream &os) const
void operator()(const ElementMatrix<::std::complex< F > > &A, ElementMatrix<::std::complex< F > > &B) const
void operator()(const ElementMatrix< F > &A, ElementMatrix< F > &B) const
Application operator.
virtual void usedIdx(Set< uint > &c) const
A set of TColumns and polynomial degrees, sorted by a key, eg.
Definition: tmatrix.hh:292
TColumn< F > * columns() const
virtual void extract(const concepts::Vector<::std::complex< F > > &solution, concepts::Array<::std::complex< F > > &coeff) const =0
TColumnBlock(const TColumnBlock< F, dim > &t)
Copy constructor The link to the next element in the linear list (lnk_) is not copied!
void extractOne(const concepts::Vector< F > &solution, concepts::Array< F > &coeff) const
virtual void extract(const concepts::Vector< F > &solution, concepts::Array< F > &coeff) const
Extracts the part of solution belonging to this T matrix into coeff.
const uint n(uint i) const
Returns the range of the multiindex for one direction i.
Definition: tmatrix.hh:261
TColumnTensor(const TColumnTensor< F, dim > &t, const uint *n)
Transformation constructor to higher number of rows.
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.
TColumnTensor(const TColumnTensor< F, dim > &t)
Copy constructor The link to the next element in the linear list (lnk_) is not copied!
void clear()
Deletes all TColumns (with linked list) and clear all entrances.
#define conceptsAssert3(cond, exc, msg)
Assert that a certain condition is fulfilled.
Definition: exceptions.hh:442
virtual ::std::ostream & info(::std::ostream &os) const
TColumn< F > * T(uint key) const
Gives a pointer to the TColumns of this entrance (or 0)
uint offsetrow() const
Returns the offset row, that is starting row of the (possible) second matrix block.
Definition: tmatrix.hh:711
void operator()(const ElementMatrix<::std::complex< F > > &A, ElementMatrix<::std::complex< F > > &B) const
virtual void usedIdx(TColumn< bool > &c) const
The entries in c are true iff the corresponding local dof in any Column of this Matrix is non-zero,...
virtual ::std::ostream & info(::std::ostream &os) const
TColumn< F > * link() const
Returns the pointer to the next column of the linked list.
Definition: tmatrix.hh:79