/home/werner/PROMOTION/source/FrameTL/cdd1_local.h File Reference

(The routines are taken from WaveletTL/adaptive/cdd1.{cpp,h}. They are here adapted in order to be able to use them as a local solver for a frame domain decomposition method.) More...

#include <set>
#include <algebra/infinite_vector.h>
#include <adaptive/compression.h>
#include <cdd1_local.cpp>

Go to the source code of this file.

Classes

struct  FrameTL::CDD1Parameters

Namespaces

namespace  FrameTL

Functions

template<class PROBLEM >
void FrameTL::CDD1_LOCAL_SOLVE (const PROBLEM &P, const int patch, const double epsilon, const InfiniteVector< double, typename PROBLEM::WaveletBasis::Index > &guess, InfiniteVector< double, typename PROBLEM::WaveletBasis::Index > &u_epsilon, const InfiniteVector< double, typename PROBLEM::WaveletBasis::Index > &v_k, const int jmax, const CompressionStrategy strategy)
 The routine ALGORITHMc from [BB+], with a given initial guess for u_epsilon.
template<class PROBLEM >
void FrameTL::CDD1_LOCAL_SOLVE (const PROBLEM &P, const int patch, const double epsilon, const InfiniteVector< double, typename PROBLEM::WaveletBasis::Index > &guess, InfiniteVector< double, typename PROBLEM::WaveletBasis::Index > &u_epsilon, const InfiniteVector< double, typename PROBLEM::WaveletBasis::Index > &v_k, const double c1, const double c2, const int jmax, const CompressionStrategy strategy)
 The routine ALGORITHMc from [BB+], with a given initial guess for u_epsilon and for the parameters c1,c2.
template<class PROBLEM >
void FrameTL::NPROG (const PROBLEM &P, const int patch, const CDD1Parameters &params, const InfiniteVector< double, typename PROBLEM::WaveletBasis::Index > &F, const set< typename PROBLEM::WaveletBasis::Index > &Lambda, const InfiniteVector< double, typename PROBLEM::WaveletBasis::Index > &v, const double delta, InfiniteVector< double, typename PROBLEM::WaveletBasis::Index > &v_hat, set< typename PROBLEM::WaveletBasis::Index > &Lambda_hat, InfiniteVector< double, typename PROBLEM::WaveletBasis::Index > &r_hat, InfiniteVector< double, typename PROBLEM::WaveletBasis::Index > &u_Lambda_k, const int jmax, const CompressionStrategy strategy)
 NPROG.
template<class PROBLEM >
void FrameTL::GALERKIN (const PROBLEM &P, const int patch, const CDD1Parameters &params, const InfiniteVector< double, typename PROBLEM::WaveletBasis::Index > &F, const set< typename PROBLEM::WaveletBasis::Index > &Lambda, const InfiniteVector< double, typename PROBLEM::WaveletBasis::Index > &v, const double delta, const double eta, InfiniteVector< double, typename PROBLEM::WaveletBasis::Index > &u_bar, const int jmax, const CompressionStrategy strategy)
 GALERKIN.
template<class PROBLEM >
void FrameTL::NGROW (const PROBLEM &P, const int patch, const CDD1Parameters &params, const InfiniteVector< double, typename PROBLEM::WaveletBasis::Index > &F, const set< typename PROBLEM::WaveletBasis::Index > &Lambda, const InfiniteVector< double, typename PROBLEM::WaveletBasis::Index > &u_bar, const double xi1, const double xi2, set< typename PROBLEM::WaveletBasis::Index > &Lambda_tilde, InfiniteVector< double, typename PROBLEM::WaveletBasis::Index > &r, const int jmax, const CompressionStrategy strategy)
 NGROW.
template<class PROBLEM >
void FrameTL::INRESIDUAL (const PROBLEM &P, const int patch, const CDD1Parameters &params, const InfiniteVector< double, typename PROBLEM::WaveletBasis::Index > &F, const set< typename PROBLEM::WaveletBasis::Index > &Lambda, const InfiniteVector< double, typename PROBLEM::WaveletBasis::Index > &v, const double eta1, const double eta2, InfiniteVector< double, typename PROBLEM::WaveletBasis::Index > &r, const int jmax, const CompressionStrategy strategy)
 INRESIDUAL.
template<class PROBLEM >
void FrameTL::NRESIDUAL (const PROBLEM &P, const int patch, const CDD1Parameters &params, const InfiniteVector< double, typename PROBLEM::WaveletBasis::Index > &F, const set< typename PROBLEM::WaveletBasis::Index > &Lambda, const InfiniteVector< double, typename PROBLEM::WaveletBasis::Index > &v, const double eta1, const double eta2, InfiniteVector< double, typename PROBLEM::WaveletBasis::Index > &r, set< typename PROBLEM::WaveletBasis::Index > &Lambda_tilde, const int jmax, const CompressionStrategy strategy)
 NRESIDUAL.


Detailed Description

(The routines are taken from WaveletTL/adaptive/cdd1.{cpp,h}. They are here adapted in order to be able to use them as a local solver for a frame domain decomposition method.)

An adaptive, residual-based solver for the infinite-dimensional problem

$Au = F$,

as developed in [CDD1] and [BB+], where A is assumed to be s.p.d. Given the problem and a target accuracy epsilon, the algorithm constructs a coefficient vector u_epsilon, such that

$||u-u_\epsilon|| \leq \epsilon$.

You can specify a maximal level jmax for the internal APPLY calls.

References: [BB+] Barinka/Barsch/Charton/Cohen/Dahlke/Dahmen/Urban: Adaptive Wavelet Schemes For Elliptic Problems: Implementation and Numerical Experiments [CDD1] Cohen/Dahmen/DeVore: Adaptive Wavelet Methods II - Beyond the Elliptic Case.


Generated on Fri Mar 26 17:28:15 2010 by  doxygen 1.5.8