diff --git a/calibration1.cxx b/calibration1.cxx index 9d291c6009fba60ac8626d3ae99bd7368a6c4aa2..d1c0c11320e1db973e375249d2505b78f21182b1 100644 --- a/calibration1.cxx +++ b/calibration1.cxx @@ -3,7 +3,7 @@ AculCalibration cal; cal.SetInputParameters(); //from .par - cal.CalculateCalibParameters("clb04_0001.root", "SQ22", 22, "AnalysisxTree", 100, 4095); + cal.CalculateCalibParameters("clb08_0001.root", "SQ22", 22, "AnalysisxTree", 100, 4095); // CalculateCalibParameters(const char* inputfile, const char* block, const Int_t address, const char* treename, Int_t lowerchannel = 0, Int_t upperchannel = 4095, Int_t nEBins = 1000, Int_t lowersubaddress = 0, Int_t uppersubaddress = ADDRESSNUMBER-1); TFile fr("SQ22[]E.root"); diff --git a/calibration2.cxx b/calibration2.cxx index d3c9cd0dc849e6ef7144ec68a645834c5ae073fe..01104d849e4a5088993b9fcb86c3475eaaac0947 100644 --- a/calibration2.cxx +++ b/calibration2.cxx @@ -4,11 +4,11 @@ AculCalibration cal; cal->SetInputParameters(); - cal->SetCalibrationParameters("./run1/SQ22[].cal"); //takes calibration parameters + cal->SetCalibrationParameters("./run8/SQ22[].cal"); //takes calibration parameters cal->PrintCalibrationParameters(22, 22); TCanvas *c1 = new TCanvas(); - cal->CalibrateRawSpectra("clb03_0001.root", "SQ22", 22, "AnalysisxTree", 100, 800, 500); //takes data from raw file and calibrates it with obtained calibration parameters + cal->CalibrateRawSpectra("clb09_0001.root", "SQ22", 22, "AnalysisxTree", 100, 800, 500); //takes data from raw file and calibrates it with obtained calibration parameters TFile fr("SQ22[]E.root"); cout << fr.GetListOfKeys()->GetEntries() << " histograms" << endl; diff --git a/exp1016/deadlayers.cxx b/exp1016/deadlayers.cxx new file mode 100644 index 0000000000000000000000000000000000000000..9ace9e82f9786487b18049ab664b7ee5d40490b9 --- /dev/null +++ b/exp1016/deadlayers.cxx @@ -0,0 +1,58 @@ +{ + gSystem->Load("../libTELoss.so"); + + TELoss mSi; +//set parameters for Si and alpha + mSi.SetEL(1, 2.321); // density in g/cm3 + mSi.AddEL(14., 28.086, 1); //Z, mass +// mSi.SetZP(1., 1.); //protons + mSi.SetZP(2., 4.); //alphas, Z, A + mSi.SetEtab(100000, 200.); // ?, MeV calculate ranges + mSi.SetDeltaEtab(300); // calculate delta E + +// TCanvas *c1 = new TCanvas("name", "title which can consist more than one word.", 617, 0, 1058, 972); +// cout << mSi.GetE(50, 1000) << endl; //(input energy E0 in MeV, microns) +// cout << mSi.GetE0(9.04, 1000) << endl; //(output energy E in MeV, microns) + +//calculated energies for run1 - run3 +/* + Double_t deltaL1 = mSi.GetR(4.789, 4.623); //(doule E0, double E in MeV) calculates layer in mcm for averages + Double_t deltaL2 = mSi.GetR(5.5,5.355); + Double_t deltaL3 = mSi.GetR(6.017,5.880); + Double_t deltaL4 = mSi.GetR(7.693, 7.577); +*/ +//calculated energies for run4 - run5 +/* + Double_t deltaL1 = mSi.GetR(4.782,4.613); //(doule E0, double E in MeV) calculates layer in mcm for averages + Double_t deltaL2 = mSi.GetR(5.503,5.348); + Double_t deltaL3 = mSi.GetR(6.016,5.875); + Double_t deltaL4 = mSi.GetR(7.692,7.571); +*/ + +//calculated energies for run6 - run7 +/* + Double_t deltaL1 = mSi.GetR(4.788,4.675); //(doule E0, double E in MeV) calculates layer in mcm for averages + Double_t deltaL2 = mSi.GetR(5.502,5.340); + Double_t deltaL3 = mSi.GetR(6.017,5.923); + Double_t deltaL4 = mSi.GetR(7.693,7.612); +*/ +//calculated energies for run8 - run9 + + Double_t deltaL1 = mSi.GetR(4.787,4.648); //(doule E0, double E in MeV) calculates layer in mcm for averages + Double_t deltaL2 = mSi.GetR(5.501,5.380); + Double_t deltaL3 = mSi.GetR(6.018,5.903); + Double_t deltaL4 = mSi.GetR(7.692,7.594); + + cout << deltaL1 << " mcm" << endl; //MeV, microns - delta layer + cout << deltaL2 << " mcm" << endl; + cout << deltaL3 << " mcm" << endl; + cout << deltaL4 << " mcm" << endl << endl; + + cout << "dead layer 1 is: " << deltaL1/(TMath::Sqrt(2) - 1) << " mcm" << endl; //MeV, microns + cout << "dead layer 2 is: " <