#include <aggregated_frame.h>
Classes | |
struct | Support |
Public Types | |
typedef FrameIndex< IBASIS, DIM_d, DIM_m > | Index |
typedef IBASIS | IntervalBasis |
Public Member Functions | |
~AggregatedFrame () | |
AggregatedFrame (const Atlas< DIM_d, DIM_m > *a, const Array1D< FixedArray1D< int, 2 *DIM_d > > &bc, const Array1D< FixedArray1D< int, 2 *DIM_d > > &bcT, const int jmax) | |
AggregatedFrame (const Atlas< DIM_d, DIM_m > *, const Array1D< FixedArray1D< int, 2 *DIM_d > > &, const int) | |
const Array1D< MappedCubeBasis < IBASIS, DIM_d, DIM_m > * > | bases () const |
const int | j0 () const |
const int | n_p () const |
const Atlas< DIM_d, DIM_m > * | atlas () const |
const Array1D< Array1D< Index > > * | get_full_collection_levelwise () const |
const Array1D< Index > * | get_full_collection () const |
const Index * | get_wavelet (const int number) const |
void | set_jmax (const int jmax) |
const int | degrees_of_freedom () const |
Total number of wavelets between coarsest and finest level. | |
double | evaluate (const Index &lambda, const Point< DIM_m > &x) const |
void | evaluate_gradient (const Index &lambda, const Point< DIM_d > &x, Vector< double > &values) const |
Index | first_generator (const int j) const |
Index of first generator on level ![]() | |
Index | last_generator (const int j) const |
Index of last generator on level ![]() | |
Index | first_wavelet (const int j) const |
Index of first wavelet on level ![]() | |
Index | last_wavelet (const int j) const |
Index of last wavelet on level ![]() | |
Static Public Member Functions | |
static double | primal_regularity () |
static unsigned int | primal_vanishing_moments () |
static unsigned int | dual_vanishing_moments () |
Public Attributes | |
Array1D< typename WaveletTL::CubeBasis< IBASIS, DIM_d >::Support > | all_supports |
Array1D< Support > | all_patch_supports |
Protected Attributes | |
const Atlas< DIM_d, DIM_m > * | atlas_ |
Pointer to the underlying atlas. | |
Array1D< FixedArray1D< int, 2 *DIM_d > > | bc_ |
Primal boundary conditions. | |
Array1D< FixedArray1D< int, 2 *DIM_d > > | bcT_ |
Dual boundary conditions. | |
Array1D< Array1D< Index > > | full_collection_levelwise |
Array1D< Index > | full_collection |
Collection of all wavelet indices between coarsest and finest level. |
The manifold is given by an appropriate Atlas. The corresponding reference bases, or their lifted versions, are then internally constructed. For each lifted cube, the user may specify boundary conditions.
IBASIS | The underlying one-dimensional wavelet basis on the interval. | |
DIM_d | Dimension of the domain or manifold. | |
DIM_m | Dimension of the surrounding space. |
typedef FrameIndex<IBASIS, DIM_d, DIM_m> FrameTL::AggregatedFrame< IBASIS, DIM_d, DIM_m >::Index |
Frame index class.
typedef IBASIS FrameTL::AggregatedFrame< IBASIS, DIM_d, DIM_m >::IntervalBasis |
Interval basis.
FrameTL::AggregatedFrame< IBASIS, DIM_d, DIM_m >::~AggregatedFrame | ( | ) | [inline] |
Destructor.
FrameTL::AggregatedFrame< IBASIS, DIM_d, DIM_m >::AggregatedFrame | ( | const Atlas< DIM_d, DIM_m > * | a, | |
const Array1D< FixedArray1D< int, 2 *DIM_d > > & | bc, | |||
const Array1D< FixedArray1D< int, 2 *DIM_d > > & | bcT, | |||
const int | jmax | |||
) | [inline] |
Constructor, creates a frame from a given Atlas, sets primal and dual boundary conditions, and fixes a maximal level of resolution that will be regarded. The fixation of a maximal level is included only for performance reasons. A lot of information about the wavelets between the minimal and maximal level is preprocessed. The maximal level should be chosen large enough. In a future iteration of FrameTL, we should finally get rid of this.
Atlas | The underlying Atlas of parametric mappings representing the domain covering. | |
bc | One-dimensional array of one-dimensional arrays of fixed length 2*DIM_d. The outer array runs over the subdomains. The inner one runs over the wavelet bases in each spatial direction. For each of the latter, the boundary conditions at the left and at the right end of the interval are specified. A boundary condition of the value r means that all derivatives up to degree r-1 vanish. | |
bcT | The same as bc for the dual side. | |
jmax | The maximal level of resolution. |
FrameTL::AggregatedFrame< IBASIS, DIM_d, DIM_m >::AggregatedFrame | ( | const Atlas< DIM_d, DIM_m > * | atlas, | |
const Array1D< FixedArray1D< int, 2 *DIM_d > > & | bc, | |||
const int | jmax | |||
) | [inline] |
Constructor. Does the same as the first constructor, but no dual boundary conditions are specified.
const Atlas<DIM_d, DIM_m>* FrameTL::AggregatedFrame< IBASIS, DIM_d, DIM_m >::atlas | ( | ) | const [inline] |
Read only access to underlying atlas.
const Array1D<MappedCubeBasis<IBASIS, DIM_d, DIM_m>* > FrameTL::AggregatedFrame< IBASIS, DIM_d, DIM_m >::bases | ( | ) | const [inline] |
Read only access to the local bases.
static unsigned int FrameTL::AggregatedFrame< IBASIS, DIM_d, DIM_m >::dual_vanishing_moments | ( | ) | [inline, static] |
Number of vanishing moments of the dual wavelets.
double FrameTL::AggregatedFrame< IBASIS, DIM_d, DIM_m >::evaluate | ( | const Index & | lambda, | |
const Point< DIM_m > & | x | |||
) | const [inline] |
Point evaluation of a single frame element.
void FrameTL::AggregatedFrame< IBASIS, DIM_d, DIM_m >::evaluate_gradient | ( | const Index & | lambda, | |
const Point< DIM_d > & | x, | |||
Vector< double > & | values | |||
) | const [inline] |
Point evaluation of the gradient of a single frame element.
const Array1D<Index>* FrameTL::AggregatedFrame< IBASIS, DIM_d, DIM_m >::get_full_collection | ( | ) | const [inline] |
Read only access to collection of wavelet frame indices. In the constructors, between minimal and maximal level, an array of all wavelet indices is preprocessed.
const Array1D<Array1D<Index> >* FrameTL::AggregatedFrame< IBASIS, DIM_d, DIM_m >::get_full_collection_levelwise | ( | ) | const [inline] |
Read only access to collection of wavelet frame indices. In the constructors, between minimal and maximal level, on each level an array of all wavelet indices is preprocessed.
const Index* FrameTL::AggregatedFrame< IBASIS, DIM_d, DIM_m >::get_wavelet | ( | const int | number | ) | const [inline] |
Given the number of a frame element, according to the canonical lexicographical ordering (level, type, patch, shift parameter), the corresponding wavelet index is returned. This index is taken from the preprocessed collection of all wavelet indices between minimal and maximal level.
const int FrameTL::AggregatedFrame< IBASIS, DIM_d, DIM_m >::j0 | ( | ) | const [inline] |
Coarsest level.
const int FrameTL::AggregatedFrame< IBASIS, DIM_d, DIM_m >::n_p | ( | ) | const [inline] |
Number of patches.
static double FrameTL::AggregatedFrame< IBASIS, DIM_d, DIM_m >::primal_regularity | ( | ) | [inline, static] |
Critical Sobolev regularity for the primal generators/wavelets.
static unsigned int FrameTL::AggregatedFrame< IBASIS, DIM_d, DIM_m >::primal_vanishing_moments | ( | ) | [inline, static] |
Number of vanishing moments of the primal wavelets.
void FrameTL::AggregatedFrame< IBASIS, DIM_d, DIM_m >::set_jmax | ( | const int | jmax | ) | [inline] |
Set finest possible level.
Array1D<Support> FrameTL::AggregatedFrame< IBASIS, DIM_d, DIM_m >::all_patch_supports |
All supports of the frame elements, preprocessed between minimal and maximal level.
Array1D<typename WaveletTL::CubeBasis<IBASIS,DIM_d>::Support> FrameTL::AggregatedFrame< IBASIS, DIM_d, DIM_m >::all_supports |
All supports of the reference wavelets on the unit cube, preprocessed between minimal and maximal level.
Array1D<Array1D<Index> > FrameTL::AggregatedFrame< IBASIS, DIM_d, DIM_m >::full_collection_levelwise [protected] |
Collection of all wavelet indices between coarsest and finest level stored level by level.