vectorial.hh
BilinearForm(const BilinearForm &b)
Copy constructor. This copy constructor performs a deep copy of b.
virtual ~Element()
virtual void put(concepts::ElementWithCell< F > &em, const int dim, const int b=0)
Insert element em into the vector valued element.
virtual ~Space()
Integration point consisting of coordinates and intermediate data.
Definition: integral.hh:34
virtual std::ostream & info(std::ostream &os) 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.
virtual ~BilinearForm()
Element< F > type
Definition: vectorial.hh:410
ElementWithCell< F > type
Definition: vectorial.hh:416
virtual void usedIdx(concepts::TColumn< bool > &c) const
Marks the used local indices in c with true, the local indices which are not set to false.
Definition: vectorial.hh:135
A cell in a mesh consist of topological information (neighbours, connectivity, orientation) and geome...
Definition: cell.hh:39
intFormType
Integration form, which determines terms coming from integration over reference element.
Definition: integral.hh:29
virtual vectorial::Element< F > & operator++(int)=0
Returns the next element in the scanned set.
virtual const Graphics< F > * graphics() const
Definition: vectorial.hh:243
virtual void put(SpaceType &spc, const int i=0, const int j=0)
Insert a Space spc of one vectorial dimension to the next v-dimensional space (arguments i and j are ...
virtual void extract(const concepts::Vector< F > &solution, concepts::Array< F > &coeff) const
Extracts a part of solution according to this T matrix into coeff.
SpaceBase(const uint vdim, const uint arrayWidth=0, std::string name="SpaceBase")
Definition: vectorial.hh:432
virtual const concepts::Cell & cell() const
Returns the cell on which the element is built.
virtual ~SpaceOnCells()
ElementWithCell(uint vdim, uint arrayWidth=0)
Definition: vectorial.hh:288
virtual uint index(unsigned int i) const
Maps the local index i to the global index.
virtual const concepts::Element< F > & elm2() const
Returns reference to the second element.
void putStore(concepts::RCP< concepts::BilinearForm< F, G > > bf, const int i, const int j)
virtual ~ElementWithCell()
virtual std::ostream & info(std::ostream &os) const
virtual std::ostream & info(std::ostream &os) const
virtual ~TMatrix()
SpaceOnCells(const uint vdim, const uint arrayWidth=0)
Definition: vectorial.hh:494
ElementBase(uint vdim, uint arrayWidth, std::string name="ElementBase")
Definition: vectorial.hh:229
#define DEBUGL(doit, msg)
Vectorial(const Vectorial< F > &c)
Private copy constructor, forbids copying.
virtual ~SpaceBase()
Abstract function class to evaluate a bilinear form.
Definition: bilinearForm.hh:33
virtual const concepts::Element< F > & elm1() const
Returns reference to the first element.
virtual vectorial::ElementWithCell< F > & operator++(int)=0
Returns the next element in the scanned set.
BilinearForm< F, G > & reset()
Clear the stores bilinear forms and the shared data.
Base class for most classes which do vector valued problems.
Definition: vectorial.hh:59
TMatrixOffset(const concepts::TMatrixBase< F > &T, int offsetRow, int offsetColumn)
Definition: vectorial.hh:111
virtual void put(concepts::BilinearForm< F, G > &bf, const int i, const int j)
insert a Bilinearform bf of one vectorial dimension to the all v-dimensionial Bilinearform
An abstract class for scanning a mesh (a set of cells) or a space (a set of elements).
Definition: scannerConnectors.hh:29
virtual BilinearForm * clone() const
std::unique_ptr< concepts::Cloneable > sharedData_
Stores the data which is shared between the components of the bilinear forms.
Definition: vectorial.hh:377
void put(const concepts::TMatrixBase< F > &T, const int dim)
Insert a T-Matrix T (of type TMatrixOffset) of one vectorial dimension to the v-dimensionial T-Matrix...
virtual void extract(const concepts::Vector< std::complex< F > > &solution, concepts::Array< std::complex< F > > &coeff) const
virtual void operator()(const concepts::Element< G > &elmX, const concepts::Element< G > &elmY, concepts::ElementMatrix< F > &em) const
virtual void extract(const concepts::Vector< std::complex< F > > &solution, concepts::Array< std::complex< F > > &coeff) const
virtual void insert(F &vdata, const int a=0, const int b=0)
Add a component.
Definition: vectorial.hh:94
virtual Scanner * scan() const
virtual ~TMatrixOffset()
void buildElm_(const SpaceType &spc, uint idx)
concepts::Array< concepts::RCP< concepts::BilinearForm< F, G > > > deepCopies_
Stores the deep copies of the component bilinear forms, if there are any.
Definition: vectorial.hh:374
virtual bool quadraturePoint(uint i, intPoint &p, intFormType form, bool localCoord) const
Delivers a quadrature point.
static std::unique_ptr< Graphics< F > > graphics_
Definition: vectorial.hh:258
std::unique_ptr< vectorial::TMatrix< F > > T_
T matrix for the vector valued element.
Definition: vectorial.hh:256
ElementPair(const Element< F > &elm1, const Element< F > &elm2)
Definition: vectorial.hh:509
VectorialElementType< typename SpaceType::type >::type ElementType
Definition: vectorial.hh:430
Indicates that the vectorial element is not yet built, there is no (scalar) element inside yet.
Definition: vectorial.hh:209
virtual std::ostream & info(std::ostream &os) const
Definition: vectorial.hh:405
virtual uint index(unsigned int i) const
Maps the local index i to the global index.
Definition: vectorial.hh:129
void putData(concepts::Cloneable *data)
Stores data in sharedData_ (this includes destruction of sharedData_ at cleanup).
Definition: vectorial.hh:354
virtual void operator()(const concepts::ElementMatrix< F > &A, concepts::ElementMatrix< F > &B) const
Application operator.
Definition: vectorial.hh:120
const concepts::IntegrationCell * intCell_
Definition: vectorial.hh:308
void putStore(concepts::BilinearForm< F, G > *bf, const int i, const int j)
Acts similarly to the normal put() command, but stores bf in deepCopies_ (without cloning bf first).
virtual void operator()(const concepts::ElementMatrix< F > &A, concepts::ElementMatrix< F > &B) const
virtual void put(ElementType &em, const int dim, const int b=0)
Insert element em into the vector valued element.
virtual void put(concepts::ElementPair< F > &ep, const int iV, const int iU)
virtual ~ElementBase()
virtual std::ostream & info(std::ostream &os) const
virtual void usedIdx(concepts::TColumn< bool > &c) const
Definition: vectorial.hh:180