NGSolve  4.9
Public Member Functions | Protected Attributes
ngcomp::S_BilinearForm< SCAL > Class Template Reference

We specify the scalar (double or Complex) of the biform. More...

#include <bilinearform.hpp>

Inheritance diagram for ngcomp::S_BilinearForm< SCAL >:
ngcomp::BilinearForm ngcomp::NGS_Object ngcomp::ElementByElement_BilinearForm< SCAL >

List of all members.

Public Member Functions

 S_BilinearForm (const FESpace &afespace, const string &aname, const Flags &flags)
 S_BilinearForm (const FESpace &afespace, const FESpace &afespace2, const string &aname, const Flags &flags)
void AddMatrix1 (SCAL val, const BaseVector &x, BaseVector &y) const
virtual void AddMatrix (double val, const BaseVector &x, BaseVector &y) const
 y += val * Mat * x
virtual void AddMatrix (Complex val, const BaseVector &x, BaseVector &y) const
 y += val * Mat * x
virtual void LapackEigenSystem (FlatMatrix< SCAL > &elmat, LocalHeap &lh) const
void ApplyLinearizedMatrixAdd1 (SCAL val, const BaseVector &lin, const BaseVector &x, BaseVector &y) const
virtual void ApplyLinearizedMatrixAdd (double val, const BaseVector &lin, const BaseVector &x, BaseVector &y) const
 y += val * lin.mat * x
virtual void ApplyLinearizedMatrixAdd (Complex val, const BaseVector &lin, const BaseVector &x, BaseVector &y) const
 y += val * lin.mat * x
virtual double Energy (const BaseVector &x) const
 evaulates internal energy (usually 1/2 x^T A x)
virtual void ComputeInternal (BaseVector &u, const BaseVector &f, LocalHeap &lh) const
 reconstruct internal dofs
virtual void DoAssemble (LocalHeap &lh)
 assemble matrix
virtual void AssembleLinearization (const BaseVector &lin, LocalHeap &lh, bool reallocate=0)
 assembles matrix at linearization point given by lin needed for Newton's method
virtual void AddElementMatrix (const Array< int > &dnums1, const Array< int > &dnums2, const FlatMatrix< SCAL > &elmat, bool inner_element, int elnr, LocalHeap &lh)=0
virtual void ApplyElementMatrix (const BaseVector &x, BaseVector &y, const SCAL &val, const Array< int > &dnums, const ElementTransformation &eltrans, const int elnum, const int type, int &cnt, LocalHeap &lh, const FiniteElement *fel, const SpecialElement *sel=NULL) const
virtual void AddDiagElementMatrix (const Array< int > &dnums1, const FlatVector< SCAL > &diag, bool inner_element, int elnr, LocalHeap &lh)
BaseMatrixGetHarmonicExtension () const
 reconstruct internal dofs from static condensation
BaseMatrixGetHarmonicExtensionTrans () const
 modify rhs doue to static condensation.
BaseMatrixGetInnerSolve () const
 returns inverse of A_ii
BaseMatrixGetInnerMatrix () const
 returns A_ii

Protected Attributes

ElementByElementMatrix< SCAL > * harmonicext
BaseMatrixharmonicexttrans
ElementByElementMatrix< SCAL > * innersolve
ElementByElementMatrix< SCAL > * innermatrix

Detailed Description

template<class SCAL>
class ngcomp::S_BilinearForm< SCAL >

We specify the scalar (double or Complex) of the biform.


Member Function Documentation

template<class SCAL>
BaseMatrix& ngcomp::S_BilinearForm< SCAL >::GetHarmonicExtension ( ) const [inline, virtual]

reconstruct internal dofs from static condensation

-A_ii^{-1} A_ib

Implements ngcomp::BilinearForm.

template<class SCAL>
BaseMatrix& ngcomp::S_BilinearForm< SCAL >::GetHarmonicExtensionTrans ( ) const [inline, virtual]

modify rhs doue to static condensation.

-A_bi A_ii^{-1} stored only for non-symmetric biforms

Implements ngcomp::BilinearForm.


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