Changeset 1963 in Sophya for trunk/ArchTOIPipe/Processors
- Timestamp:
- Apr 11, 2002, 6:12:17 PM (23 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/ArchTOIPipe/Processors/wienerdecor.cc
r1945 r1963 16 16 declareInput("probe"); 17 17 declareOutput("signal"); 18 declareOutput("noiseestim"); 18 19 name="WienerDecorrelator"; 19 20 setNeededHistory(nsamples+lcorr+1); … … 33 34 double* y = new double[lcorr+1]; // corr vector 34 35 double* window = new double[lcorr]; 35 double* filter = w+1; 36 double* filter = new double[lcorr]; 37 for (int i=0; i<lcorr; i++) filter[i]=0; 36 38 37 39 int sn = snb; … … 57 59 } 58 60 dtoeplz(r,w,y,lcorr); 59 cout << "Wiener filter : \n "; 61 if (!isnan(w[1])) { 62 for (int i=0; i<lcorr; i++) { 63 filter[i] = w[i+1]; 64 } 65 } else { 66 cout << "Bad inversion, keeping previous filter\n"; 67 } 68 cout << "Wiener filter : " << sn << "\n "; 60 69 for (int i=0; i<lcorr; i++) { 61 70 cout << filter[i] << " "; … … 71 80 } 72 81 putData(0, sn, getData(0, sn) - outSig); 82 putData(1, sn, outSig); 73 83 } 74 84 sn++; … … 78 88 delete[] w; 79 89 delete[] r; 90 delete[] filter; 80 91 }
Note:
See TracChangeset
for help on using the changeset viewer.