1
0
Fork 0
mirror of https://github.com/gwm17/SabreRecon.git synced 2024-11-22 10:18:50 -05:00

Trying messing with SABRE geometry params to get better reconstruction results

This commit is contained in:
Gordon McCann 2022-06-24 15:37:10 -04:00
parent e4c6f78328
commit fd28d40c5f
2 changed files with 19 additions and 3 deletions

View File

@ -319,12 +319,25 @@ namespace SabreRecon {
FillHistogram2D({"xavg_sabreE","xavg_sabreE;xavg; E(MeV)",600,-300.0,300.0,400,0,20.0},m_eventPtr->xavg, biggestSabre.ringE);
FillHistogram2D({"9Btheta_sabreTheta","9Btheta_sabreTheta;#theta_{9B};#theta_{SABRE}",180,0.0,180.0,180,0.0,180.0}, recon9B.residThetaLab*s_rad2deg, sabreCoords.Theta()*s_rad2deg);
FillHistogram2D({"sabreE_relAngle","sabreE_relAngle;#theta_{rel};E(MeV)",180,0.0,180.0,400,0.0,20.0},relAngle*s_rad2deg,biggestSabre.ringE);
FillHistogram2D({"sabreTheta_5Liex","sabreTheta_5Liex;#theta (deg);E_x (MeV)",180,0.0,180.0,1000,-5.0,25.0},sabreCoords.Theta()*s_rad2deg,recon5Li.excitation);
FillHistogram2D({"sabreTheta_7Beex","sabreTheta_7Beex;#theta (deg);E_x (MeV)",180,0.0,180.0,1000,-20.0,10.0},sabreCoords.Theta()*s_rad2deg,recon7Be.excitation);
FillHistogram2D({"sabreTheta_14Nex","sabreTheta_14Nex;#theta (deg);E_x (MeV)",180,0.0,180.0,1000,-20.0,10.0},sabreCoords.Theta()*s_rad2deg,recon14N.excitation);
FillHistogram2D({"sabrePhi_5Liex","sabrePhi_5Liex;#phi (deg);E_x (MeV)",360,0.0,360.0,1000,-5.0,25.0},Phi360(sabreCoords.Phi())*s_rad2deg,recon5Li.excitation);
FillHistogram2D({"sabrePhi_7Beex","sabrePhi_7Beex;#phi (deg);E_x (MeV)",360,0.0,360.0,1000,-20.0,10.0},Phi360(sabreCoords.Phi())*s_rad2deg,recon7Be.excitation);
FillHistogram2D({"sabrePhi_14Nex","sabrePhi_14Nex;#phi (deg);E_x (MeV)",360,0.0,360.0,1000,-20.0,10.0},Phi360(sabreCoords.Phi())*s_rad2deg,recon14N.excitation);
if(m_eventPtr->xavg > -186.0 && m_eventPtr->xavg < -178.0 && (biggestSabre.detID == 2 || biggestSabre.detID == 3))
if(m_eventPtr->xavg > -186.0 && m_eventPtr->xavg < -178.0) //nub
{
FillHistogram2D({"sabreE_sabreTheta_nub","sabreE_sabreTheta_nub;#theta (deg);E(MeV)",180,0.0,180.0,400,0.0,20.0},sabreCoords.Theta()*s_rad2deg,biggestSabre.ringE);
FillHistogram2D({"sabreE_sabrePhi_nub","sabreE_sabreTheta_nub;#phi (deg);E(MeV)",360,0.0,360.0,400,0.0,20.0},Phi360(sabreCoords.Phi())*s_rad2deg,biggestSabre.ringE);
}
else if(m_eventPtr->xavg > -195.0 && m_eventPtr->xavg < -185.0) //Nabin peak
{
FillHistogram2D({"sabreTheta_5Liex_nabinPeak","sabreTheta_5Liex_nabinPeak;#theta (deg);E_x (MeV)",180,0.0,180.0,1000,-5.0,25.0},sabreCoords.Theta()*s_rad2deg,recon5Li.excitation);
FillHistogram2D({"sabreTheta_7Beex_nabinPeak","sabreTheta_7Beex_nabinPeak;#theta (deg);E_x (MeV)",180,0.0,180.0,1000,-20.0,10.0},sabreCoords.Theta()*s_rad2deg,recon7Be.excitation);
FillHistogram2D({"sabrePhi_5Liex_nabinPeak","sabrePhi_5Liex_nabinPeak;#phi (deg);E_x (MeV)",360,0.0,360.0,1000,-5.0,25.0},Phi360(sabreCoords.Phi())*s_rad2deg,recon5Li.excitation);
FillHistogram2D({"sabrePhi_7Beex_nabinPeak","sabrePhi_7Beex_nabinPeak;#phi (deg);E_x (MeV)",360,0.0,360.0,1000,-20.0,10.0},Phi360(sabreCoords.Phi())*s_rad2deg,recon7Be.excitation);
}
//Gate on reconstr. excitation structures; overlaping cases are possible!
if(recon5Li.excitation > -2.0 && recon5Li.excitation < 2.0)

View File

@ -90,8 +90,11 @@ namespace SabreRecon {
//SABRE constants
static constexpr double s_phiDet[5] = { 306.0, 18.0, 234.0, 162.0, 90.0 };
static constexpr double s_tiltAngle = 40.0;
static constexpr double s_zOffset = -0.1245;
//static constexpr double s_tiltAngle = 40.0;
static constexpr double s_tiltAngle = 38.0;
static constexpr double s_zOffset = -0.1245; //Erin's SABRE code
//static constexpr double s_zOffset = -0.1142; //From Ken's diagram
//static constexpr double s_zOffset = -0.1367; //Ken's diagram plus extra shift for our geometry
static constexpr double s_sabreDeadlayerThickness = 50.0 * 1.0e-7 * 2.3296 * 1.0e6; // 50 nm deadlayer -> ug/cm^2
//Kinematics constants