34 #include "TMatrixDSym.h" 35 #include "TMatrixDSymEigen.h" 83 size_t add(
int n,
int m,
char* name);
100 void solve(
double th,
int nE=0,
char c=
's');
102 void apply(
double threshold=0.,
char c=
'a');
113 {
return n<matrix.size() ? matrix[
n] : matrix[0]; }
120 {
return n<vCROSS.
size() ? vCROSS[
n] : vCROSS[0]; }
137 return x -= this->rnoise;
153 int tsize=vrank[
n].
size();
155 for (
int i=0;
i<tsize;
i++) trank.
data[
i]=sqrt(vrank[n].data[
i]);
161 chList.clear(); std::vector< WSeries<double> >().swap(chList);
163 chMask.clear(); std::vector< wavearray<int> >().swap(chMask);
165 matrix.clear(); std::vector<TMatrixDSym>().swap(matrix);
166 vCROSS.clear(); std::vector< wavearray<double> >().swap(vCROSS);
167 vEIGEN.clear(); std::vector< wavearray<double> >().swap(vEIGEN);
168 vrank.clear(); std::vector< wavearray<double> >().swap(vrank);
188 std::vector< wavearray<double> >
vrank;
202 #endif // REGRESSION_HH
WSeries< double > * getTFmap(int n=0)
WSeries< double > getWNoise()
wavearray< double > target
wavearray< double > target
wavearray< double > getNoise()
TMatrixTSym< double > TMatrixDSym
cout<< endl;cout<< "ts size = "<< ts.size()<< " ts rate = "<< ts.rate()<< endl;tf.Forward(ts, wdm);int levels=tf.getLevel();cout<< "tf size = "<< tf.size()<< endl;double dF=tf.resolution();double dT=1./(2 *dF);cout<< "rate(hz) : "<< RATE<< "\ layers : "<< nLAYERS<< "\ dF(hz) : "<< dF<< "\ dT(ms) : "<< dT *1000.<< endl;int itime=TIME_PIXEL_INDEX;int ifreq=FREQ_PIXEL_INDEX;int index=(levels+1) *itime+ifreq;double time=itime *dT;double freq=(ifreq >0) ? ifreq *dF :dF/4;cout<< endl;cout<< "PIXEL TIME = "<< time<< " sec "<< endl;cout<< "PIXEL FREQ = "<< freq<< " Hz "<< endl;cout<< endl;wavearray< double > x
TMatrixDSym getMatrix(size_t n=0)
std::vector< wavearray< double > > vCROSS
cout<< "SNR "<< xsnr<< endl;wavearray< double > f
r add(tfmap, const_cast< char *>("hchannel"))
std::vector< wavearray< double > > vEIGEN
std::vector< Wiener > FILTER
std::vector< WSeries< double > > chList
virtual size_t size() const
std::vector< double > vectorD
std::vector< vectorD > filter00
wavearray< double > getRank(int n)
std::vector< TMatrixDSym > matrix
std::vector< wavearray< int > > chMask
std::vector< int > channel
wavearray< double > vfreq
std::vector< vectorD > filter90
wavearray< double > getClean()
std::vector< char * > chName
std::vector< double > norm
r setMatrix(totalscratch,.95)
wavearray< double > getVCROSS(size_t n=0)
std::vector< wavearray< double > > vrank
wavearray< double > rnoise
void Inverse(int n=-1)
param: n - number of steps (-1 means full reconstruction)
wavearray< double > channel(size_t n)