![]() |
|
#include <Adaptive1D.hpp>
Public Methods | |||||||||
| AdaptiveB () | |||||||||
| default constructor. | |||||||||
| AdaptiveB (AdaptiveB *B) | |||||||||
| constructor, own data but share index sets with (*B), (*B) must be initialized. | |||||||||
| int | Init (int Level0, int J, double xa=0, double xe=0) | ||||||||
| |||||||||
| void | Copy (AdaptiveB *B) | ||||||||
| (*this)=(*B). | |||||||||
| void | CopyIndexSets (AdaptiveB *B) | ||||||||
| just copy the index sets. | |||||||||
| bool | SameIndexSets (AdaptiveB *B) | ||||||||
| true if index sets of (*this) == index sets of (*B); false otherwise. | |||||||||
| void | SetBoundaryConditions (int *BCs) | ||||||||
| just set the type of boundary conditions in the left/right corner. | |||||||||
| void | SetBoundaryConditions (int bc0, int bc1) | ||||||||
| other interface. | |||||||||
| void | Print (int allflag) | ||||||||
| |||||||||
| void | Print (char *st=NULL, int allflag=0) | ||||||||
| |||||||||
| void | Print (char *st) | ||||||||
| print only the active IndexSets. | |||||||||
| size_t | Size () | ||||||||
return
Size of Indexset for level l. | |||||||||
| void | FromFull (double *d, int *BC, Wavelets *W, AdaptivityCriterion *R) | ||||||||
| generate adaptive basis from (full) vector d[] using refinement criterion (*R). | |||||||||
| void | FromFull (double *d) | ||||||||
| just copy the data from d[] without changing the active index sets. | |||||||||
| void | ToFull (double *d) | ||||||||
| copy to full vector, set d[i]=0 for inactive indices. | |||||||||
| void | FromAdaptiveGS (AdaptiveGS *G, Wavelets *W) | ||||||||
basis transform from adaptive generating system to adaptive basis GS->IV[l] must be large enough for IS[l] GS->I [l] must be large enough for GS->III[l-1]
GS->I[l-1]. | |||||||||
| void | FromAdaptiveGS2 (AdaptiveGS *G, Wavelets *W) | ||||||||
| basis transform from adaptive generating system to adaptive basis additional values of the generating system are calculated by the canonic interpolation (one step of inverse wavelet transform). | |||||||||
| void | FromAdaptiveGS3 (AdaptiveGS *G, Wavelets *W) | ||||||||
| AdaptiveGS contains both the index sets S(l) for the adaptive generating systems as well as the nodal values u^S(l). Starting from these values we compute the wavelet coefficients by successive low and high pass filter operations Lifting steps are included if lifting=true note: the values in *GS are modified. | |||||||||
| void | IndexSetFromAdaptiveGS (AdaptiveGS *G, Wavelets *W) | ||||||||
| calculate index set for wavelet coefficients which are computable from the given (*G). | |||||||||
| void | LoadFromInterpoletGS (AdaptiveGS *G, Wavelets *W) | ||||||||
| if the (Interpolet) basis fulfills the cone condition we may store the data of (*G) in a basis !!! | |||||||||
| double | Max () | ||||||||
| Max(numerical values). | |||||||||
| double | MaxAbs () | ||||||||
| MaxAbs(numerical values). | |||||||||
| void | Sub (AdaptiveB *X, AdaptiveB *Y) | ||||||||
| (*this) = (*X)-(*Y). | |||||||||
| void | Add (AdaptiveB *X, AdaptiveB *Y) | ||||||||
| (*this) = (*X)+(*Y). | |||||||||
| void | Add (const double a, AdaptiveB *X, const double b, AdaptiveB *Y) | ||||||||
| (*this) = a * (*X) + b * (*Y). | |||||||||
| void | Add (const double a, AdaptiveB *X, const double b, AdaptiveB *Y, const double c, AdaptiveB *Z) | ||||||||
| (*this) = a * (*X) + b * (*Y) + c * (*Z). | |||||||||
| void | PPlus (AdaptiveB *X) | ||||||||
| (*this) += (*X). | |||||||||
| void | PPlus (const double a, AdaptiveB *X) | ||||||||
| (*this) += a * (*X). | |||||||||
| void | PPlus (AdaptiveB *X, AdaptiveB *Y) | ||||||||
| (*this) += (*X) + (*Y). | |||||||||
| void | PPlus (const double a, AdaptiveB *X, const double b, AdaptiveB *Y) | ||||||||
| (*this) += a * (*X) + b * (*Y). | |||||||||
| void | MMinus (AdaptiveB *X) | ||||||||
| (*this) -= (*X). | |||||||||
| void | MMinus (const double a, AdaptiveB *X) | ||||||||
| (*this) -= a * (*X). | |||||||||
| double | InnerProd (AdaptiveB *X) | ||||||||
| return (*this)^T * (*X). | |||||||||
| void | MMul (const double a) | ||||||||
| (*this) *= a. | |||||||||
| void | Fill (double a) | ||||||||
| all components are set to value a. | |||||||||
| void | Refine (AdaptiveB *B, AdaptivityCriterion *R, int *l, int dir, int Dim, Wavelets *W, bool copyflag=false) | ||||||||
| (*this) results from the refinement of (*B) using the criterion (*R). This general function is also used for the multivariate refine function. If the underlying wavelets are Interpolets and this->islifting==true then the refined index sets do not only fulfill the cone condition required by Interpolets, but also the extended cone condition required by Lifting-Interpolets. The adaptive basis will be larger then in general.
| |||||||||
Public Attributes | |||||||||
| int | Level0 | ||||||||
| coarsest level. | |||||||||
| int | J | ||||||||
| maximal level. | |||||||||
| int | BC [2] | ||||||||
| type of boundary conditions in left/right corner. | |||||||||
| double | XA | ||||||||
| 1D domain is [XA,XE]. | |||||||||
| double | XE | ||||||||
| see above. | |||||||||
| bool | ismultiscale | ||||||||
| data corresponds to multiscale representation. | |||||||||
| bool | islifting | ||||||||
| ... with respect to Lifting Interpolets; used for runtime checks of operations. | |||||||||
| struct AdaptiveB::AdaptiveLevel | LMAX | ||||||||
| numercical data and set of active indices on a single level. | |||||||||
1.2.8.1 written by Dimitri van Heesch,
© 1997-2001