#include <Rtmra_Data_t_scalar.h>
Collaboration diagram for Rtmra< Data_t, scalar >:

Public Types | |
| typedef Data_t | DataType |
Public Member Functions | |
| void | assign (const Data_t data) |
| virtual Data_t | ave (const int) |
| virtual Data_t | chg (const int) |
| virtual void | clear () |
| virtual int | imcycle () |
| bool | isvalid (const int m) |
| virtual int | mcycle () |
| int | mmax () |
| void | mrastep (const int mrastep) |
| int | mrastep () |
| operator Data_t () | |
| int | operator++ (int) |
| int | operator++ () |
| int | operator-- (int) |
| int | operator-- () |
| Rtmra< Data_t, scalar > & | operator= (const Data_t data) |
| virtual void | remalloc (const int msize=8) |
| virtual void | rtiwt () |
| virtual void | rtjiwt () |
| Rtmra (const int msize=8) | |
| virtual void | rtwt () |
| virtual void | scal (const int m, Data_t scalcoef) |
| virtual Data_t | scal (const int) |
| virtual void | wav (const int m, Data_t wavcoef) |
| virtual Data_t | wav (const int) |
| virtual | ~Rtmra () |
Static Public Attributes | |
| const int | ArrayDim = 0 |
Protected Attributes | |
| Data_t * | _data |
| int | _mmax |
| Data_t * | _mracoef |
| int | _mrastep |
| int | _Msize |
|
|||||
|
Definition at line 26 of file Rtmra_Data_t_scalar.h. |
|
|||||||||
|
Definition at line 76 of file Rtmra_Data_t_scalar.h.
|
|
||||||||||
|
Definition at line 33 of file Rtmra_Data_t_scalar.h.
00033 { *_data = data; }
|
|
||||||||||
|
Definition at line 232 of file Rtmra_Data_t_scalar.h. References INVSQRT2, and rtmrascala().
00233 {
00234 Data_t scala;
00235 #ifdef STORM_USEC
00236 rtmrascala( _Msize, _mmax, _mrastep, _mracoef, m, scala );
00237 #else
00238 // if ( ( m >= 0 ) && ( m <= _mmax ) ) {
00239 scala = _mracoef[2*m] * pow(INVSQRT2,m);
00240 // }
00241 // else {
00242 // scala = 1.0/0;
00243 // }
00244 #endif
00245 return scala;
00246 }
|
|
||||||||||
|
Definition at line 249 of file Rtmra_Data_t_scalar.h. References INVSQRT2, and rtmrawavd().
00250 {
00251 Data_t wavd;
00252 #ifdef STORM_USEC
00253 rtmrawavd( _Msize, _mmax, _mrastep, _mracoef, m, wavd );
00254 #else
00255 // if ( ( m >= 0 ) && ( m <= _mmax ) ) {
00256 wavd = _mracoef[ 2*m + 1 ] * pow(INVSQRT2,m);
00257 // }
00258 // else {
00259 // wavd = 1.0/0;
00260 // }
00261 #endif
00262 return wavd;
00263 }
|
|
|||||||||
|
Definition at line 97 of file Rtmra_Data_t_scalar.h.
|
|
|||||||||
|
Definition at line 266 of file Rtmra_Data_t_scalar.h. References rtmraimcycle().
00267 {
00268 int imcycle = 0;
00269 #ifdef STORM_USEC
00270 rtmraimcycle( _Msize, _mmax, _mrastep, imcycle );
00271 #else
00272 int itmp = (1<<_mmax) - 1;
00273 itmp = itmp - ( itmp & ( _mrastep + 1) );
00274 while ( ( itmp & (1<<imcycle) ) && ( imcycle < _mmax ) ) { imcycle++; }
00275 #endif
00276 return imcycle;
00277 }
|
|
||||||||||
|
Definition at line 47 of file Rtmra_Data_t_scalar.h.
00047 { return ( m < mcycle() ) ; }
|
|
|||||||||
|
Definition at line 188 of file Rtmra_Data_t_scalar.h. References rtmramcycle().
00189 {
00190 int mcycle=0;
00191 #ifdef STORM_USEC
00192 rtmramcycle( _Msize, _mmax, _mrastep, mcycle );
00193 #else
00194 while ((_mrastep&(1<<mcycle))&&(mcycle<_mmax)) { mcycle++; }
00195 #endif
00196 return mcycle;
00197 }
|
|
|||||||||
|
Definition at line 39 of file Rtmra_Data_t_scalar.h.
00039 { return _mmax; }
|
|
||||||||||
|
Definition at line 45 of file Rtmra_Data_t_scalar.h.
00045 { _mrastep = mrastep; } //DEBUG
|
|
|||||||||
|
Definition at line 44 of file Rtmra_Data_t_scalar.h.
00044 { return _mrastep; }
|
|
|||||||||
|
Definition at line 35 of file Rtmra_Data_t_scalar.h.
00035 { return *_data; }
|
|
||||||||||
|
Definition at line 38 of file Rtmra_Data_t_scalar.h.
00038 { rtwt(); return 0; }
|
|
|||||||||
|
Definition at line 37 of file Rtmra_Data_t_scalar.h.
00037 { rtwt(); return 0; }
|
|
||||||||||
|
Definition at line 43 of file Rtmra_Data_t_scalar.h.
00043 { rtiwt(); return 0; }
|
|
|||||||||
|
Definition at line 42 of file Rtmra_Data_t_scalar.h.
00042 { rtiwt(); return 0; }
|
|
||||||||||
|
Definition at line 106 of file Rtmra_Data_t_scalar.h.
00107 {
00108 assign(data);
00109 return *this;
00110 }
|
|
||||||||||
|
Definition at line 83 of file Rtmra_Data_t_scalar.h.
00084 {
00085 _Msize = msize;
00086 _mmax = msize-1;
00087 _mrastep = -1;
00088 if (_mracoef) delete [] _mracoef; _mracoef = 0;
00089 if (_data) delete _data; _data = 0;
00090 _mracoef = new Data_t[ 2*_Msize ];
00091 _data = new Data_t;
00092 for( int i = 0; i< 2*_Msize; i++) { _mracoef[i] = 0; }
00093 *_data = 0;
00094 }
|
|
|||||||||
|
Definition at line 136 of file Rtmra_Data_t_scalar.h. References INVSQRT2, and rtmrartiwt().
00137 {
00138 #ifdef STORM_USEC
00139 rtmrartiwt( _Msize, _mmax, _mrastep, _mracoef, *_data );
00140 #else
00141 _mrastep++;
00142 int itmp = (1<<_mmax) - 1;
00143 itmp = itmp - ( itmp & _mrastep );
00144 int imcycle = 0;
00145 while ( ( itmp & (1<<imcycle) ) && ( imcycle < _mmax ) ) { imcycle++; }
00146 int m = imcycle;
00147 if ( m < _mmax ) {
00148 _mracoef[2*m] = ( _mracoef[ 2*(m+1) ]
00149 - _mracoef[ 2*(m+1) + 1 ] ) * INVSQRT2;
00150 }
00151 m--;
00152 while ( m >= 0 ) {
00153 _mracoef[2*m] = ( _mracoef[ 2*(m+1) ]
00154 + _mracoef[ 2*(m+1) + 1 ]) * INVSQRT2;
00155 m--;
00156 }
00157 *_data = _mracoef[0];
00158 #endif
00159 }
|
|
|||||||||
|
Definition at line 162 of file Rtmra_Data_t_scalar.h. References rtmrartjiwt().
00163 {
00164 //#ifdef STORM_USEC
00165 rtmrartjiwt( _Msize, _mmax, _mrastep, _mracoef, *_data );
00166 //#else
00167 // _mrastep++;
00168 // int itmp = (1<<_mmax) - 1;
00169 // itmp = itmp - ( itmp & _mrastep );
00170 // int imcycle = 0;
00171 // while ( ( itmp & (1<<imcycle) ) && ( imcycle < _mmax ) ) { imcycle++; }
00172 // int m = imcycle;
00173 // if ( m < _mmax ) {
00174 // _mracoef[2*m] = ( _mracoef[ 2*(m+1) ]
00175 // - _mracoef[ 2*(m+1) + 1 ] ) * INVSQRT2;
00176 // }
00177 // m--;
00178 // while ( m >= 0 ) {
00179 // _mracoef[2*m] = ( _mracoef[ 2*(m+1) ]
00180 // + _mracoef[ 2*(m+1) + 1 ]) * INVSQRT2;
00181 // m--;
00182 // }
00183 // *_data = _mracoef[0];
00184 //#endif
00185 }
|
|
||||||||||
|
Definition at line 66 of file Rtmra_Data_t_scalar.h.
|
|
|||||||||
|
Definition at line 113 of file Rtmra_Data_t_scalar.h. References INVSQRT2, and rtmrartwt().
00114 {
00115 #ifdef STORM_USEC
00116 rtmrartwt( _Msize, _mmax, _mrastep, _mracoef, *_data );
00117 #else
00118 _mrastep++;
00119 int mcycle = 0;
00120 while ( ( _mrastep & (1<<mcycle) ) && ( mcycle < _mmax ) ) { mcycle++; }
00121 Data_t tmpold;
00122 Data_t tmp = *_data;
00123 int m = 1;
00124 while ( m <= mcycle ) {
00125 tmpold = _mracoef[ 2*(m-1) ];
00126 _mracoef[ 2*(m-1) ] = tmp;
00127 _mracoef[ 2*m + 1 ] = (tmpold-tmp) * INVSQRT2;
00128 tmp = (tmpold+tmp) * INVSQRT2;
00129 m++;
00130 }
00131 _mracoef[ 2*(m-1) ] = tmp;
00132 #endif
00133 }
|
|
||||||||||||||||
|
Definition at line 280 of file Rtmra_Data_t_scalar.h. References rtmraputscalcoef().
00281 {
00282 #ifdef STORM_USEC
00283 rtmraputscalcoef( _Msize, _mmax, _mrastep, _mracoef, m, scalcoef );
00284 #else
00285 // if ( ( m >= 0 ) && ( m <= _mmax ) ) {
00286 _mracoef[2*m] = scalcoef;
00287 // }
00288 #endif
00289 }
|
|
||||||||||
|
Definition at line 200 of file Rtmra_Data_t_scalar.h. References rtmrascalcoef().
00201 {
00202 Data_t scalcoef;
00203 #ifdef STORM_USEC
00204 rtmrascalcoef( _Msize, _mmax, _mrastep, _mracoef, m, scalcoef );
00205 #else
00206 // if ( ( m >= 0 ) && ( m <= _mmax ) ) {
00207 scalcoef = _mracoef[2*m];
00208 // }
00209 // else {
00210 // scalcoef = 1.0/0;
00211 // }
00212 #endif
00213 return scalcoef;
00214 }
|
|
||||||||||||||||
|
Definition at line 292 of file Rtmra_Data_t_scalar.h. References rtmraputwavcoef().
00293 {
00294 #ifdef STORM_USEC
00295 rtmraputwavcoef( _Msize, _mmax, _mrastep, _mracoef, m, wavcoef );
00296 #else
00297 // if ( ( m >= 0 ) && ( m <= _mmax ) ) {
00298 _mracoef[ 2*m + 1 ] = wavcoef;
00299 // }
00300 #endif
00301 }
|
|
||||||||||
|
Definition at line 217 of file Rtmra_Data_t_scalar.h. References rtmrawavcoef().
00218 {
00219 Data_t wavcoef;
00220 #ifdef STORM_USEC
00221 rtmrawavcoef( _Msize, _mmax, _mrastep, _mracoef, m, wavcoef );
00222 #else
00223 // if ( ( m >= 0 ) && ( m <= _mmax ) ) {
00224 wavcoef = _mracoef[ 2*m + 1 ];
00225 // }
00226 // else { wavcoef = 1.0/0; }
00227 #endif
00228 return wavcoef;
00229 }
|
|
|||||
|
Definition at line 61 of file Rtmra_Data_t_scalar.h. |
|
|||||
|
Definition at line 58 of file Rtmra_Data_t_scalar.h. |
|
|||||
|
Definition at line 60 of file Rtmra_Data_t_scalar.h. |
|
|||||
|
Definition at line 59 of file Rtmra_Data_t_scalar.h. |
|
|||||
|
Definition at line 57 of file Rtmra_Data_t_scalar.h. |
|
|||||
|
Definition at line 27 of file Rtmra_Data_t_scalar.h. |
1.3.6