UMN CDMS Wiki archive
start › cdms › k100 › run_summary › run_76 › electron-equivalent_energy_calibration › nai_example

Example of energy calibration with a period of NaI-triggered data

This example continues from the baseline correction example using a period of NaI-triggered data from 2023 Sep 16-17. There are three calibration series from that period. Here we will find the Am-241 calibration peaks for each series.

Below we draw the baseline-corrected total phonon energy for each series, showing the positions of the 14keV and 18keV Am peaks:

z[1]->Draw("pt_keV_bscorr>>h1pt(200,100,300)",!crand+cbs)
h1pt->SetLineColor(kGreen)
z[2]->Draw("pt_keV_bscorr>>h2pt(200,100,300)",!crand+cbs)
h2pt->SetLineColor(kRed)
z[3]->Draw("pt_keV_bscorr>>h3pt(200,100,300)",!crand+cbs)
h2pt->Draw();h1pt->Draw("same");h3pt->Draw("same")

The peaks in the 2nd series are shifted upward significantly relative to the 1st. Oddly in the 3rd series they shift back again, nearly matching the first series.

Below are fit results showing the line positions for each series.

// Positions of 14.95 keV line in the consecutive series:
   2  Mean         1.63794e+02   1.24504e-01   8.11349e-05  -2.94940e-04
   2  Mean         1.70042e+02   1.77356e-01   1.16472e-03   2.07387e-04
   2  Mean         1.64653e+02   2.17879e-01   1.60532e-04   3.70078e-03
	   
// 1st and 3rd are about 0.3 line-widths apart; 
// 1st and 2nd are about 1.1 line-widths apart

// Positions of 17.74 keV line in the consecutive series:
   2  Mean         1.83827e+02   2.75528e-01   2.56205e-04   3.97673e-05
   2  Mean         1.89868e+02   3.72201e-01   2.27588e-04   3.50172e-03
   2  Mean         1.84726e+02   2.86026e-01   2.15899e-04  -1.43725e-03
 

So far, it's not at all clear what the overall time trend of the gain is. So the simplest thing to do is a calibration based on the averaged values of the peak positions, and apply this to this entire NaI-coincident data period. But we will have to deal with the fact that there's extra uncertainty in this calibration.

Below we do the calibration and show the Am-241 lines after electron-equivalent calibration:

float x1,x2,y1,y2;
x1=(163.794+170.042+164.653)/3; 
x2=(183.827+189.868+184.726)/3; 
y1=13.95; y2=17.74;
float c = y1*y2*(x2-x1)/(x1*y2-x2*y1) // (float) 14.0821
float a = x1*(c/y1+1.0) // (float) 333.899
	 
for(int s=1;s<4;s++)z[s]->SetAlias("pt_keVee","14.0821*pt_keV_bscorr/(333.899-pt_keV_bscorr)") //<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
for(int s=1;s<4;s++)z[s]->SetAlias("pt0_keVee","14.0821*pt0_keV_bscorr/(333.899-pt0_keV_bscorr)") //<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

z[1]->Draw("pt_keVee>>h1keVee(200,10,30)",!crand+cbs)
h1keVee->SetLineColor(kGreen)
z[2]->Draw("pt_keVee>>h2keVee(200,10,30)",!crand+cbs)
h2keVee->SetLineColor(kRed)
z[3]->Draw("pt_keVee>>h3keVee(200,10,30)",!crand+cbs)
h2keVee->Draw();h1keVee->Draw("same");h3keVee->Draw("same")

As an alternative, we can look more closely to see if we can detect a trend in time that would allow for a better calibration that tracked the shifts in the peaks. Below we plot data from the entire period, calibration and NaI-triggered series together. We show the baseline versus time:

The calibration series have higher rates and thus show as three brighter columns. Data began in the evening of the 16th and continued to the early hours of the 18th (at which time I believe there was a DAQ crash). We see that the lowest baselines occurred during the second calibration series. But the baseline minimum started to fall in the morning before that data series, for unknown reasons (we could also check temperature logs from that time).

There seems to be a correlation between the peak positions and the baseline minimum. We could track the baseline minimum over the entire period and construct a time-dependent calibration for the entire data period, which may be more precise.