#include <elliptic_equation.h>
Inherits WaveletTL::FullyDiagonalEnergyNormPreconditioner<AggregatedFrame<IBASIS,DIM>::Index>.
Public Types | |
| typedef AggregatedFrame < IBASIS, DIM > | Frame |
| typedef AggregatedFrame < IBASIS, DIM > | WaveletBasis |
| typedef Frame::Index | Index |
Public Member Functions | |
| EllipticEquation (const EllipticBVP< DIM > *ell_bvp, const AggregatedFrame< IBASIS, DIM > *frame, const int jmax) | |
| const AggregatedFrame< IBASIS, DIM > & | frame () const |
| const EllipticBVP< DIM > & | get_bvp () const |
| const AggregatedFrame< IBASIS, DIM > & | basis () const |
| double | operator_order () const |
| double | D (const typename AggregatedFrame< IBASIS, DIM >::Index &lambda) const |
| void | rescale (InfiniteVector< double, typename AggregatedFrame< IBASIS, DIM >::Index > &coeffs, const int n) const |
| double | a (const typename AggregatedFrame< IBASIS, DIM >::Index &lambda, const typename AggregatedFrame< IBASIS, DIM >::Index &nu) const |
| double | norm_A () const |
| double | norm_Ainv () const |
| void | set_norm_A (const double _normA) |
| void | set_Ainv (const double nAinv) |
| double | s_star () const |
| double | alphak (const unsigned int k) const |
| double | f (const typename AggregatedFrame< IBASIS, DIM >::Index &lambda) const |
| void | RHS (const double eta, InfiniteVector< double, typename AggregatedFrame< IBASIS, DIM >::Index > &coeffs) const |
| double | F_norm () const |
| void | set_bvp (const EllipticBVP< DIM > *) |
| void | add_level (const Index &lambda, InfiniteVector< double, Index > &w, const int j, const double factor, const int J, const CompressionStrategy strategy) const |
Static Public Member Functions | |
| static bool | local_operator () |
Static Public Attributes | |
| static const int | space_dimension = DIM |
Protected Attributes | |
| const EllipticBVP< DIM > * | ell_bvp_ |
| const AggregatedFrame< IBASIS, DIM > * | frame_ |

when reformulating a symmetric, second-order elliptic boundary value problem in divergence form over some domain Omega in
with boundary
, with homogeneous Dirichlet boundary conditions
in 
on 
The corresponding bilinear form in

is

and the right-hand side is
.
The evaluation of
and
is possible for arguments
which stem from an aggregated wavelet frame
of the corresponding function space over
.
| IBASIS | The type of interval basis underlying the construction of the aggregated frame. | |
| DIM | The dimension of the underlying domain. |
| typedef AggregatedFrame<IBASIS,DIM> FrameTL::EllipticEquation< IBASIS, DIM >::Frame |
The frame type.
| typedef Frame::Index FrameTL::EllipticEquation< IBASIS, DIM >::Index |
The index type.
| typedef AggregatedFrame<IBASIS,DIM> FrameTL::EllipticEquation< IBASIS, DIM >::WaveletBasis |
Dummy typedef to be compatible with WaveletTL routines.
| FrameTL::EllipticEquation< IBASIS, DIM >::EllipticEquation | ( | const EllipticBVP< DIM > * | ell_bvp, | |
| const AggregatedFrame< IBASIS, DIM > * | frame, | |||
| const int | jmax | |||
| ) | [inline] |
Constructor. The diagonal of the stiffness matrix and the coefficients of the right-hand side are precomputed between minimal and maximal level.
| ell_bvp | The elliptic boundary value problem that is modeled. | |
| frame | Pointer to the aggragated frame that is used for discretization. | |
| jmax | The maximal level of resolution that is considered. |
| double FrameTL::EllipticEquation< IBASIS, DIM >::a | ( | const typename AggregatedFrame< IBASIS, DIM >::Index & | lambda, | |
| const typename AggregatedFrame< IBASIS, DIM >::Index & | nu | |||
| ) | const [inline] |
Evaluate the (unpreconditioned) bilinear form a.
| void FrameTL::EllipticEquation< IBASIS, DIM >::add_level | ( | const Index & | lambda, | |
| InfiniteVector< double, Index > & | w, | |||
| const int | j, | |||
| const double | factor, | |||
| const int | J, | |||
| const CompressionStrategy | strategy | |||
| ) | const [inline] |
Multiplies the stiffness matrix entries of column lambda on level j of the compressed martrix A_J by factor and adds the result to w.
| double FrameTL::EllipticEquation< IBASIS, DIM >::alphak | ( | const unsigned int | k | ) | const [inline] |
Estimate the compression constants alpha_k in
| const AggregatedFrame<IBASIS,DIM>& FrameTL::EllipticEquation< IBASIS, DIM >::basis | ( | ) | const [inline] |
Read access to the frame. The routine is called basis() to be compatible with the routines in WaveletTL's compression.h.
| double FrameTL::EllipticEquation< IBASIS, DIM >::D | ( | const typename AggregatedFrame< IBASIS, DIM >::Index & | lambda | ) | const [inline] |
Evaluate the diagonal preconditioner D.
| double FrameTL::EllipticEquation< IBASIS, DIM >::f | ( | const typename AggregatedFrame< IBASIS, DIM >::Index & | lambda | ) | const [inline] |
Evaluate the (unpreconditioned) right-hand side f.
| double FrameTL::EllipticEquation< IBASIS, DIM >::F_norm | ( | ) | const [inline] |
Compute (or estimate) the
norm of the right-hand side.
| const AggregatedFrame<IBASIS,DIM>& FrameTL::EllipticEquation< IBASIS, DIM >::frame | ( | ) | const [inline] |
Read access to the frame.
| const EllipticBVP<DIM>& FrameTL::EllipticEquation< IBASIS, DIM >::get_bvp | ( | ) | const [inline] |
Read access to the boundary value problem.
| static bool FrameTL::EllipticEquation< IBASIS, DIM >::local_operator | ( | ) | [inline, static] |
Differential operators are local.
| double FrameTL::EllipticEquation< IBASIS, DIM >::norm_A | ( | ) | const [inline] |
Estimate the spectral norm
.
| double FrameTL::EllipticEquation< IBASIS, DIM >::norm_Ainv | ( | ) | const [inline] |
Returns spectral norm
. An estimate for
has to be externally computed and to be set during initialization of the program.
| double FrameTL::EllipticEquation< IBASIS, DIM >::operator_order | ( | ) | const [inline] |
Order of the operator.
| void FrameTL::EllipticEquation< IBASIS, DIM >::rescale | ( | InfiniteVector< double, typename AggregatedFrame< IBASIS, DIM >::Index > & | coeffs, | |
| const int | n | |||
| ) | const [inline] |
Rescale a coefficient vector by an integer power of D,
.
| void FrameTL::EllipticEquation< IBASIS, DIM >::RHS | ( | const double | eta, | |
| InfiniteVector< double, typename AggregatedFrame< IBASIS, DIM >::Index > & | coeffs | |||
| ) | const [inline] |
Approximate the wavelet coefficient set of the preconditioned right-hand side within a prescribed
error tolerance.
| double FrameTL::EllipticEquation< IBASIS, DIM >::s_star | ( | ) | const [inline] |
Estimate compressibility exponent
.
| void FrameTL::EllipticEquation< IBASIS, DIM >::set_Ainv | ( | const double | nAinv | ) | [inline] |
Sets estimate for
.
| void FrameTL::EllipticEquation< IBASIS, DIM >::set_bvp | ( | const EllipticBVP< DIM > * | bvp | ) | [inline] |
Set the boundary value problem.
| void FrameTL::EllipticEquation< IBASIS, DIM >::set_norm_A | ( | const double | _normA | ) | [inline] |
Sets estimate for
.
const EllipticBVP<DIM>* FrameTL::EllipticEquation< IBASIS, DIM >::ell_bvp_ [protected] |
The elliptic boundary value problem.
const AggregatedFrame<IBASIS,DIM>* FrameTL::EllipticEquation< IBASIS, DIM >::frame_ [protected] |
The underlying aggregated frame.
const int FrameTL::EllipticEquation< IBASIS, DIM >::space_dimension = DIM [static] |
Space dimension of the problem.
1.5.8