Changeset 3888 in Sophya for trunk/AddOn/TAcq/brproc.cc
- Timestamp:
- Sep 24, 2010, 2:01:47 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/AddOn/TAcq/brproc.cc
r3886 r3888 47 47 mspecmtx_.SetSize(memgr_.NbFibres(), paq.DataSize()/2); 48 48 sigspecmtx_.SetSize(memgr_.NbFibres(), paq.DataSize()/2); 49 sgain_.SetSize(memgr_.NbFibres(), paq.DataSize()/2); 49 50 } 50 51 else { 51 52 mspecmtx_.SetSize(2*memgr_.NbFibres(), paq.DataSize()/4); 52 53 sigspecmtx_.SetSize(2*memgr_.NbFibres(), paq.DataSize()/4); 54 sgain_.SetSize(2*memgr_.NbFibres(), paq.DataSize()/4); 53 55 } 54 56 mspecmtx_=(r_4)(0.); 55 57 sigspecmtx_=(r_4)(0.); 58 sgain_=(r_4)(1.); // Gain en fonction de la frequence, à 1 par defaut 59 56 60 numfile_=0; 57 61 nbpaq4mean_=0; … … 71 75 dtp_->AddFloatColumn(cnom); 72 76 } 73 xnt_=new double[nchan]; 77 for(int i=0; i<nchan; i++) { 78 sprintf(cnom,"varnorm%d",i); 79 dtp_->AddFloatColumn(cnom); 80 } 81 xnt_=new double[nchan*2]; 74 82 } 75 83 … … 91 99 } 92 100 101 /* --Methode-- */ 102 void BRMeanSpecCalculator::ReadGainFitsFile(string filename) 103 { 104 cout << " BRMeanSpecCalculator::ReadGainFitsFile() - reading file " << filename; 105 FitsInOutFile fis(filename, FitsInOutFile::Fits_RO); 106 fis >> sgain_; 107 cout << " MeanGain=" << sgain_.Sum()/sgain_.Size() << endl; 108 } 93 109 94 110 static inline r_4 Zmod2(complex<r_4> z) … … 159 175 } 160 176 double variance=0.; 161 for(sa_size_t f=1; f<mspecmtx_.NCols(); f++) variance+=(double)zp[f].module2F(); 177 double varnorm=0.; 178 for(sa_size_t f=1; f<mspecmtx_.NCols(); f++) { 179 double modsq=(double)zp[f].module2F(); 180 variance+=modsq; 181 varnorm+=modsq/sgain_(i,f); 182 } 162 183 xnt_[i]=variance; 184 xnt_[i+mspecmtx_.NRows()]=varnorm; 163 185 clnflg_[i]=0; 164 if (var iance<varmin_) clnflg_[i]=1;165 else if (var iance>varmax_) clnflg_[i]=2;186 if (varnorm<varmin_) clnflg_[i]=1; 187 else if (varnorm>varmax_) clnflg_[i]=2; 166 188 } 167 189 } … … 177 199 } 178 200 double variance=0.; 179 for(sa_size_t f=1; f<mspecmtx_.NCols(); f++) variance+=(double)Zmod2(zp[f]); 201 double varnorm=0.; 202 for(sa_size_t f=1; f<mspecmtx_.NCols(); f++) { 203 double modsq=(double)Zmod2(zp[f]); 204 variance+=modsq; 205 varnorm+=modsq/sgain_(i,f); 206 } 180 207 xnt_[i]=variance; 208 xnt_[i+mspecmtx_.NRows()]=varnorm; 181 209 clnflg_[i]=0; 182 if (var iance<varmin_) clnflg_[i]=1;183 else if (var iance>varmax_) clnflg_[i]=2;210 if (varnorm<varmin_) clnflg_[i]=1; 211 else if (varnorm>varmax_) clnflg_[i]=2; 184 212 } 185 213 }
Note:
See TracChangeset
for help on using the changeset viewer.