五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊

ROOT36: 波形分析代碼2

2023-08-29 12:39 作者:guanming-yf  | 我要投稿

#include "iostream"

using namespace std;

void ana2(){

? // 1. read the WFM.root file, and get data

? TFile *ifile = new TFile( "../root35/WFM.root", "read" );

? TTree *itree = (TTree*)ifile->Get( "WFM" );

? double timestamp =0.0;

? vector<double> *time = 0;

? vector<double> *channel1 = 0;

? vector<double> *channel2 = 0;

? itree->SetBranchAddress( "TimeStamp", &timestamp );

? itree->SetBranchAddress( "Time", &time );

? itree->SetBranchAddress( "Channel1", &channel1 );

? itree->SetBranchAddress( "Channel2", &channel2 );

??

? // 2. analyze the waveform and get some charateristic values, ex. timestamp, peakenergy, and flag

? // energy = peakheight *511 / 0.31 [keV]

? // time = 5*timeindex [ns]

? double TimeStamp;

? double PeakHeight1;

? double PeakEnergy1;

? double PeakHeight2;

? double PeakEnergy2;

? double PeakTime1;

? double PeakTime2;

? bool Flag_Coin;

? const int N = itree->GetEntries();

? TFile *ofile = new TFile( "WFM_Analysis.root", "recreate" );

? TTree *otree = new TTree( "WFM", "analyzed WFM" );

? otree->Branch( "TimeStamp", &TimeStamp, "TimeStamp/D" );

? otree->Branch( "PeakEnergy1", &PeakEnergy1, "PeakEnergy1/D" ?);

? otree->Branch( "PeakEnergy2", &PeakEnergy2, "PeakEnergy2/D" ?);

? otree->Branch( "PeakTime1", &PeakTime1, "PeakTime1/D" ?);

? otree->Branch( "PeakTime2", &PeakTime2, "PeakTime2/D" ?);

? otree->Branch( "Flag_Coin", &Flag_Coin, "Flag_Coin/O" );

? //3 . save the analyzed data into a new file WFM_analysis.root

? for( int j=0; j<N; j++ ){

? ? // j is the number-th of event

? ? cout << "Analyzing " << j << "-th event" <<"\r" << flush;

? ??

? ? itree->GetEntry(j);

? ? TimeStamp = timestamp;

? ? auto pk1 = std::min_element( channel1->begin(), channel1->end() );

? ? PeakHeight1 = *pk1;

? ? PeakEnergy1 = -PeakHeight1*(511/0.31);

? ? auto PeakIndex1 = std::distance( channel1->begin(), pk1 );

? ? PeakTime1 = 5*PeakIndex1;

? ? auto pk2 = std::min_element( channel2->begin(), channel2->end() );

? ? PeakHeight2 = *pk2;

? ? PeakEnergy2 = -PeakHeight2*(511/0.31);

? ? auto PeakIndex2 = std::distance( channel2->begin(), pk2 );

? ? PeakTime2 = 5*PeakIndex2;

? ? if( (450<PeakEnergy2&&PeakEnergy2<560)&&(400<PeakTime2&&PeakTime2<700) ){

? ? ? Flag_Coin = 1;

? ? }else{

? ? ? Flag_Coin = 0;

? ? }

? ??

? ? otree->Fill();

? }

? cout << endl;

? otree->Write();

? ofile->Close();

}


ROOT36: 波形分析代碼2的評論 (共 條)

分享到微博請遵守國家法律
三都| 淮北市| 兖州市| 黑水县| 自贡市| 杭州市| 洪江市| 德保县| 崇仁县| 宁晋县| 来凤县| 邢台县| 封丘县| 平顶山市| 怀化市| 新建县| 新乡市| 浏阳市| 东莞市| 汉沽区| 高淳县| 莱西市| 乐陵市| 和平区| 陈巴尔虎旗| 明水县| 达拉特旗| 磐安县| 富锦市| 迁安市| 武安市| 抚宁县| 满洲里市| 镇江市| 正镶白旗| 清徐县| 正安县| 郯城县| 齐齐哈尔市| 柯坪县| 丹凤县|