Changeset 1484 in Sophya for trunk/ArchTOIPipe/TestPipes
- Timestamp:
- Apr 30, 2001, 5:20:03 PM (24 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/ArchTOIPipe/TestPipes/simtst.cc
r1483 r1484 2 2 3 3 ---------------- Exemple d'appel --------------------- 4 csh> simtst -start 104385384 -end 104399964 -range -500,500 5 -intoi boloMuV_26 -wtoi 8192 -wdegli 1024 inputbolo.fits degli.fits xx.ppf 4 csh> simtst -start 104385384 -end 104399964 -range -500,500 \ 5 -intoi boloMuV_26 -wtoi 8192 -wdegli 1024 \ 6 inputbolo.fits filt.fits xx.ppf 7 # Avec Filtre de Fourier 8 csh> simtst -start 104385384 -end 104399964 -range -500,500 \ 9 -intoi boloMuV_26 -wtoi 8192 -wdegli 1024 \ 10 -wfft 4096 -keepfft 5 -killfreq 15,4,2.5 \ 11 inputbolo.fits filtfft.fits spectre.ppf 12 # Autre exemple b545k02 13 cool> ./simtst -start 104389122 -end 104649122 -range -1000.,1000. -intoi boloMu 14 V_23 -wtoi 8192 -wdegli 1024 -wfft 4096 -keepfft 5 -killfreq 15,4,2.5 Cmv/b545k02 15 2_16.00_16.49.fits b545.fits b545.ppf 16 6 17 */ 7 18 … … 28 39 cout << endl; 29 40 if (fgerr) { 30 cout << " simtst : Argument Error ! tstrztoi-h for usage " << endl;41 cout << " simtst : Argument Error ! simtst -h for usage " << endl; 31 42 exit(1); 32 43 } 33 44 else { 34 cout << "\n Usage : simtst [-dbg] [-start snb] [-end sne] \n" 35 << " [-wtoi sz] [-wdegli sz] [-wfft sz] [-keepfft n] \n" 45 cout << "\n Usage : simtst [-intoi toiname] [-start snb] [-end sne] \n" 46 << " [-dbg] [-wtoi sz] [-wdegli sz] [-range min,max] \n" 47 <<" [-wfft sz] [-keepfft n] [-killfreq bf,nharm,sigf \n" 36 48 << " inFitsName outFitsName outPPFName \n" 37 49 << " -dbg : sets TOISeqBuffered debug level to 1 \n" … … 45 57 << " -wfft sz : Activate Fourier filter and sets its width \n" 46 58 << " -keepfft n : Keeps n spectra (if Fourier filter activated) \n" 59 << " -killfreq bf,nharm,sigf : kills nharm frequency, basefreq=bf \n" 60 " with a gaussian with width=sigf \n" 47 61 << endl; 48 62 exit(0); … … 72 86 string intoi = "boloMuV_27"; 73 87 bool fg_f_filt = false; 88 bool fg_killfreq = false; 89 int bf_killfreq = 1; 90 int nharm_killfreq = 1; 91 double sigf_killfreq = 1.; 74 92 75 93 if (narg < 4) Usage(true); … … 103 121 keepfft = atoi(arg[ia+1]); ia++; 104 122 } 123 else if (strcmp(arg[ia],"-killfreq") == 0) { 124 if (ia == narg-1) Usage(true); 125 sscanf(arg[ia+1],"%d,%d,%lf",&bf_killfreq, &nharm_killfreq, &sigf_killfreq); 126 fg_killfreq = true; 127 ia++; 128 } 105 129 else if (strcmp(arg[ia],"-range") == 0) { 106 130 if (ia == narg-1) Usage(true); … … 127 151 InitTim(); 128 152 129 cout << ">>>> tstrztoi: Infile= " << infile << " outFile="153 cout << ">>>> simtst: Infile= " << infile << " outFile=" 130 154 << outfile << endl; 131 155 cout << ">>>> Window Size WTOI= " << wtoi << " WDEGLI= " << wdegli … … 150 174 151 175 int w1 = wtoi; 152 int w2 = (fg_f_filt) ? 2*wfft+w1 : w1;176 int w2 = (fg_f_filt) ? wfft+w1 : w1; 153 177 154 178 // char * colname[5] = {"MJD", "UTC","boloMuV_11","magnFlux","pivot"}; … … 234 258 filt.addOutput("incopie", toideglioffcopie); 235 259 236 Vector fcoef(wfft/2); 237 fcoef = RegularSequence(1., -2./wfft); 260 Vector fcoef(wfft/2+1); 261 // fcoef = RegularSequence(1., -2./wfft); 262 fcoef = 1.; 263 for(int kfk=0; kfk<nharm_killfreq; kfk++) { 264 double cfreq = bf_killfreq*(kfk+1); 265 double xfreq = 0.; 266 for(int kfj=cfreq-3.*sigf_killfreq; kfj<= cfreq+3.*sigf_killfreq; kfj++) { 267 if ( (kfj < 0) || (kfj >= fcoef.Size() ) ) continue; 268 xfreq = (cfreq-kfj)/sigf_killfreq; 269 fcoef(kfj) -= exp(-xfreq*xfreq); 270 } 271 } 238 272 cout << " Creating Fourier Filter ... " << endl; 239 273 SimpleFourierFilter sfft(fcoef); 240 274 sfft.KeepSpectra(outppfname, keepfft); 275 sfft.ComputeMeanSpectra(true); 241 276 TOISeqBuffered * toifft = NULL; 242 277 TOISeqBuffered * toifiltcopie = NULL; … … 259 294 w.addInput("fftout", toifft); 260 295 } 261 else w.addInput(" out", toiout);296 else w.addInput("filtout", toiout); 262 297 w.addInput("degli", toidegli1); 263 298 w.addInput("deglioff", toideglioffcopie);
Note:
See TracChangeset
for help on using the changeset viewer.