Changeset 3655 in Sophya for trunk/AddOn/TAcq/brproc.cc
- Timestamp:
- Sep 8, 2009, 11:50:59 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/AddOn/TAcq/brproc.cc
r3652 r3655 13 13 #include "histos.h" 14 14 #include "fioarr.h" 15 #include "matharr.h" 15 16 #include "timestamp.h" 16 17 #include "ctimer.h" … … 116 117 TVector<r_4> spectreV1(cfour1.Size()); 117 118 TVector<r_4> spectreV2(cfour1.Size()); 119 TVector<r_4> moyspecV1(cfour1.Size()); // Moyenne des Spectres 120 TVector<r_4> moyspecV2(cfour1.Size()); 121 TVector<r_4> sigspecV1(cfour1.Size()); // Sigma des Spectres 122 TVector<r_4> sigspecV2(cfour1.Size()); 118 123 TVector< complex<r_4> > visiV12( cfour1.Size() ); 119 124 … … 130 135 131 136 uint_4 ifile = 0; 132 uint_4 nzm = 0; 137 uint_4 nzm = 0; // Nb de paquets moyennes pour le calcul de chaque spectre 138 uint_4 nmoyspec = 0; // Nb de spectres moyennes 133 139 134 140 uint_4 curfc=0; … … 236 242 spectreV2 /= (r_4)(nzm); 237 243 244 // pour le calcul des moyennes et sigmas de ces spectres 245 moyspecV1 += spectreV1; 246 moyspecV2 += spectreV2; 247 sigspecV1 += (spectreV1 && spectreV1); 248 sigspecV2 += (spectreV2 && spectreV2); 249 nmoyspec++; 250 238 251 visiV12 /= complex<r_4>((r_4)nzm, 0.); 239 252 … … 297 310 } 298 311 ---- */ 312 if (nmoyspec>0) { // Calcul des moyennes et sigmas des spectres 313 r_4 fnms = nmoyspec; 314 moyspecV1 /= fnms; 315 moyspecV2 /= fnms; 316 sigspecV1 /= fnms; 317 sigspecV2 /= fnms; 318 sigspecV1 -= (moyspecV1 && moyspecV1); 319 sigspecV2 -= (moyspecV2 && moyspecV2); 320 sigspecV1 = Sqrt(sigspecV1); 321 sigspecV2 = Sqrt(sigspecV2); 322 TVector<r_4> rsbV1, rsbV2; // Rapport signal/bruit 323 moyspecV1.DivElt(sigspecV1, rsbV1, false, true); 324 moyspecV2.DivElt(sigspecV2, rsbV2, false, true); 325 sprintf(fname,"%s_ms.ppf",path_.c_str()); 326 POutPersist po(fname); 327 po << PPFNameTag("moyspecV1") << moyspecV1; 328 po << PPFNameTag("moyspecV2") << moyspecV2; 329 po << PPFNameTag("sigspecV1") << sigspecV1; 330 po << PPFNameTag("sigspecV2") << sigspecV2; 331 po << PPFNameTag("rsbV1") << rsbV1; 332 po << PPFNameTag("rsbV2") << rsbV2; 333 cout << " BRProcARaw2C::run() created moysigspec file " << fname << card2name_(card_) << endl; 334 } 335 299 336 ts.SetNow(); 300 337 tm.SplitQ();
Note:
See TracChangeset
for help on using the changeset viewer.