This class calculates 2 body kinematics from a beam, target, recoil, ejectile, and beam energy.
Definition at line 33 of file TKinematics.h.
Public Member Functions | |
TKinematics (double beame, const char *beam, const char *targ, const char *ejec=nullptr, const char *reco=nullptr, const char *name="") | |
TKinematics (const char *beam, const char *targ, const char *ejec, const char *reco, double ebeam, double ex3=0.0, const char *name="") | |
TKinematics (TNucleus *projectile, TNucleus *target, double ebeam, const char *name="") | |
TKinematics (TNucleus *projectile, TNucleus *target, TNucleus *recoil, TNucleus *ejectile, double ebeam, const char *name="") | |
TKinematics (TNucleus *projectile, TNucleus *target, TNucleus *recoil, TNucleus *ejectile, double ebeam, double ex3, const char *name="") | |
double | Angle_cm2lab (double vcm, double angle_cm) |
double | Angle_lab2cm (double vcm, double angle_lab) |
double | Angle_lab2cminverse (double vcm, double angle_lab, bool upper=true) |
void | AngleErr_lab2cm (double angle, double &err) |
bool | CheckMaxAngle (double angle, int part) |
TSpline3 * | cmvslab (double thmin, double thmax, double size, int part=2) |
double | ELab (double angle_lab, int part) |
TSpline3 * | Evscm (double thmin, double thmax, double size, int part=2) |
TSpline3 * | Evslab (double thmin, double thmax, double size, int part=2) |
TGraph * | Evslab_graph (double thmin, double thmax, double size, int part=2) |
void | Final (double angle, int part) |
void | FinalCm () |
double | GetBeamEnergy (double LabAngle, double LabEnergy) |
double | GetBetacm () |
double | GetBetacm (int i) |
double | GetCmEnergy (double ebeam) |
double | GetCmEnergy () |
double | GetEcm (int i) |
double | GetElab (int i) |
double | GetExcEnergy (TLorentzVector recoil) |
double | GetExcEnergy (TVector3 position, double KinE) |
double | GetExcEnergy (double theta, double KinE) |
double | GetGammacm () |
double | GetM (int i) |
double | GetMaxAngle (double vcm) |
double | GetMaxAngle (int part) |
double | GetQValue () |
double | GetTcm (int i) |
double | GetThetacm (int i) |
double | GetThetalab (int i) |
double | GetTlab (int i) |
double | GetV (int i) |
double | GetVcm (int i) |
void | Initial () |
TSpline3 * | labvscm (double thmin, double thmax, double size, int part=2) |
double | NormalkinEnergy () |
double | Rutherford (double angle_cm) |
TSpline3 * | Ruthvscm (double thmin, double thmax, double size) |
TSpline3 * | Ruthvslab (double thmin, double thmax, double size, int part) |
void | SetAngles (double angle, int part, bool upper=false) |
double | Sigma_cm2lab (double angle_cm, double sigma_cm) |
double | Sigma_lab2cm (double angle_cm, double sigma_lab) |
void | SigmaErr_lab2cm (double angle, double err, double &sigma, double &errsigma) |
double | Steffen_cm2labinverse (double theta_cm, int part=2) |
double | Steffen_lab2cminverse (double theta_lab) |
TSpline3 * | Steffen_labvscminverse (double thmin, double thmax, double size, int part=2) |
void | Transform2cm (double &angle, double &sigma) |
void | Transform2cm (double &angle, double &errangle, double &sigma, double &errsigma) |
Private Member Functions | |
double | betacm_tm (double, double) |
double | E_final (int) |
double | E_tm (double, double) |
void | InitKin () |
double | P_tm (double, double) |
double | Pcm_em (double, double) |
double | T_em (double, double) |
double | T_final (int) |
double | V_pe (double, double) |
Private Attributes | |
TSpline3 * | Cm2LabSpline |
double | fBeta_cm {0.} |
double | fBetacm [4] {0.} |
double | fE [4] {0.} |
double | fEBeam |
double | fEcm [4] {0.} |
double | fGamma_cm {0.} |
double | fM [4] {0.} |
double | fP [4] {0.} |
TNucleus * | fParticle [4] {nullptr} |
double | fPcm [4] {0.} |
double | fQValue |
double | fT [4] {0.} |
double | fTcm [4] {0.} |
double | fTCm_f {0.} |
double | fTCm_i {0.} |
double | fTheta [4] {0.} |
double | fThetacm [4] {0.} |
double | fV [4] {0.} |
double | fVcm [4] {0.} |
#include <TKinematics.h>
TKinematics::TKinematics | ( | double | beame, |
const char * | beam, | ||
const char * | targ, | ||
const char * | ejec = nullptr , |
||
const char * | reco = nullptr , |
||
const char * | name = "" |
||
) |
Definition at line 10 of file TKinematics.cxx.
References TNucleus::GetMass().
TKinematics::TKinematics | ( | const char * | beam, |
const char * | targ, | ||
const char * | ejec, | ||
const char * | reco, | ||
double | ebeam, | ||
double | ex3 = 0.0 , |
||
const char * | name = "" |
||
) |
Definition at line 107 of file TKinematics.cxx.
References Cm2LabSpline, fEBeam, FinalCm(), fM, fParticle, fQValue, TNucleus::GetMass(), Initial(), and InitKin().
TKinematics::TKinematics | ( | TNucleus * | projectile, |
TNucleus * | target, | ||
double | ebeam, | ||
const char * | name = "" |
||
) |
Definition at line 47 of file TKinematics.cxx.
References Cm2LabSpline, fEBeam, FinalCm(), fM, fParticle, fQValue, TNucleus::GetMass(), Initial(), and InitKin().
TKinematics::TKinematics | ( | TNucleus * | projectile, |
TNucleus * | target, | ||
TNucleus * | recoil, | ||
TNucleus * | ejectile, | ||
double | ebeam, | ||
const char * | name = "" |
||
) |
Definition at line 65 of file TKinematics.cxx.
References Cm2LabSpline, fEBeam, FinalCm(), fM, fParticle, fQValue, TNucleus::GetMass(), Initial(), and InitKin().
TKinematics::TKinematics | ( | TNucleus * | projectile, |
TNucleus * | target, | ||
TNucleus * | recoil, | ||
TNucleus * | ejectile, | ||
double | ebeam, | ||
double | ex3, | ||
const char * | name = "" |
||
) |
Definition at line 86 of file TKinematics.cxx.
References Cm2LabSpline, fEBeam, FinalCm(), fM, fParticle, fQValue, TNucleus::GetMass(), Initial(), and InitKin().
double TKinematics::Angle_cm2lab | ( | double | vcm, |
double | angle_cm | ||
) |
Definition at line 583 of file TKinematics.cxx.
References fBeta_cm, and fGamma_cm.
Referenced by cmvslab(), labvscm(), Ruthvslab(), and SetAngles().
double TKinematics::Angle_lab2cm | ( | double | vcm, |
double | angle_lab | ||
) |
Definition at line 504 of file TKinematics.cxx.
References fBeta_cm, and fGamma_cm.
Referenced by AngleErr_lab2cm(), SetAngles(), and Transform2cm().
double TKinematics::Angle_lab2cminverse | ( | double | vcm, |
double | angle_lab, | ||
bool | upper = true |
||
) |
Definition at line 517 of file TKinematics.cxx.
References fBeta_cm, and fGamma_cm.
Referenced by SetAngles().
void TKinematics::AngleErr_lab2cm | ( | double | angle, |
double & | err | ||
) |
Definition at line 554 of file TKinematics.cxx.
References Angle_lab2cm(), and fVcm.
Referenced by Transform2cm().
|
private |
Definition at line 848 of file TKinematics.cxx.
bool TKinematics::CheckMaxAngle | ( | double | angle, |
int | part | ||
) |
Definition at line 499 of file TKinematics.cxx.
References fVcm, and GetMaxAngle().
TSpline3 * TKinematics::cmvslab | ( | double | thmin, |
double | thmax, | ||
double | size, | ||
int | part = 2 |
||
) |
Definition at line 628 of file TKinematics.cxx.
References Angle_cm2lab(), fVcm, and PI.
|
private |
|
private |
Definition at line 840 of file TKinematics.cxx.
double TKinematics::ELab | ( | double | angle_lab, |
int | part | ||
) |
Definition at line 421 of file TKinematics.cxx.
TSpline3 * TKinematics::Evscm | ( | double | thmin, |
double | thmax, | ||
double | size, | ||
int | part = 2 |
||
) |
Definition at line 256 of file TKinematics.cxx.
References Final(), GetThetacm(), GetTlab(), and PI.
TSpline3 * TKinematics::Evslab | ( | double | thmin, |
double | thmax, | ||
double | size, | ||
int | part = 2 |
||
) |
Definition at line 175 of file TKinematics.cxx.
References ALERTTEXT, Final(), fVcm, GetMaxAngle(), GetThetalab(), GetTlab(), PI, and RESET_COLOR.
TGraph * TKinematics::Evslab_graph | ( | double | thmin, |
double | thmax, | ||
double | size, | ||
int | part = 2 |
||
) |
Definition at line 219 of file TKinematics.cxx.
References ALERTTEXT, Final(), fVcm, GetMaxAngle(), GetThetalab(), GetTlab(), PI, and RESET_COLOR.
void TKinematics::Final | ( | double | angle, |
int | part | ||
) |
Definition at line 397 of file TKinematics.cxx.
References E_final(), fE, fM, fP, fT, fV, fVcm, GetMaxAngle(), P_tm(), SetAngles(), T_final(), and V_pe().
Referenced by ELab(), Evscm(), Evslab(), and Evslab_graph().
void TKinematics::FinalCm | ( | ) |
Definition at line 377 of file TKinematics.cxx.
References betacm_tm(), E_tm(), fBetacm, fEBeam, fEcm, fM, fParticle, fPcm, fTcm, fTCm_f, fVcm, GetCmEnergy(), TNucleus::GetMass(), Pcm_em(), and V_pe().
Referenced by TKinematics().
double TKinematics::GetBeamEnergy | ( | double | LabAngle, |
double | LabEnergy | ||
) |
Definition at line 316 of file TKinematics.cxx.
|
inline |
|
inline |
Definition at line 98 of file TKinematics.h.
References fBetacm.
double TKinematics::GetCmEnergy | ( | double | ebeam | ) |
Definition at line 465 of file TKinematics.cxx.
References fM.
double TKinematics::GetCmEnergy | ( | ) |
Definition at line 472 of file TKinematics.cxx.
References fEBeam.
Referenced by FinalCm(), GetExcEnergy(), Initial(), and NormalkinEnergy().
|
inline |
Definition at line 76 of file TKinematics.h.
References fEcm.
|
inline |
Definition at line 73 of file TKinematics.h.
References fE.
double TKinematics::GetExcEnergy | ( | TLorentzVector | recoil | ) |
Definition at line 276 of file TKinematics.cxx.
References fParticle, GetBetacm(), GetCmEnergy(), and TNucleus::GetMass().
Referenced by GetExcEnergy().
double TKinematics::GetExcEnergy | ( | TVector3 | position, |
double | KinE | ||
) |
Definition at line 292 of file TKinematics.cxx.
References fM, and GetExcEnergy().
double TKinematics::GetExcEnergy | ( | double | theta, |
double | KinE | ||
) |
|
inline |
Definition at line 97 of file TKinematics.h.
References fGamma_cm.
|
inline |
Definition at line 74 of file TKinematics.h.
References fM.
double TKinematics::GetMaxAngle | ( | double | vcm | ) |
Definition at line 484 of file TKinematics.cxx.
References fBeta_cm, fGamma_cm, and PI.
Referenced by CheckMaxAngle(), Evslab(), Evslab_graph(), Final(), and GetMaxAngle().
double TKinematics::GetMaxAngle | ( | int | part | ) |
Definition at line 494 of file TKinematics.cxx.
References fVcm, and GetMaxAngle().
|
inline |
Definition at line 71 of file TKinematics.h.
References fQValue.
|
inline |
Definition at line 77 of file TKinematics.h.
References fTcm.
|
inline |
|
inline |
Definition at line 79 of file TKinematics.h.
References fTheta.
Referenced by Evslab(), and Evslab_graph().
|
inline |
Definition at line 75 of file TKinematics.h.
References fT.
Referenced by ELab(), Evscm(), Evslab(), and Evslab_graph().
|
inline |
Definition at line 100 of file TKinematics.h.
References fV.
|
inline |
Definition at line 99 of file TKinematics.h.
References fVcm.
void TKinematics::Initial | ( | ) |
|
private |
TSpline3 * TKinematics::labvscm | ( | double | thmin, |
double | thmax, | ||
double | size, | ||
int | part = 2 |
||
) |
Definition at line 608 of file TKinematics.cxx.
References Angle_cm2lab(), fVcm, and PI.
double TKinematics::NormalkinEnergy | ( | ) |
Definition at line 477 of file TKinematics.cxx.
References fEBeam, fM, and GetCmEnergy().
|
private |
Definition at line 836 of file TKinematics.cxx.
Referenced by Final().
|
private |
Definition at line 832 of file TKinematics.cxx.
double TKinematics::Rutherford | ( | double | angle_cm | ) |
Definition at line 734 of file TKinematics.cxx.
References fParticle, fTCm_i, and TNucleus::GetZ().
Referenced by Ruthvscm(), and Ruthvslab().
TSpline3 * TKinematics::Ruthvscm | ( | double | thmin, |
double | thmax, | ||
double | size | ||
) |
Definition at line 743 of file TKinematics.cxx.
References PI, and Rutherford().
TSpline3 * TKinematics::Ruthvslab | ( | double | thmin, |
double | thmax, | ||
double | size, | ||
int | part | ||
) |
Definition at line 770 of file TKinematics.cxx.
References Angle_cm2lab(), fVcm, PI, Rutherford(), and Sigma_cm2lab().
void TKinematics::SetAngles | ( | double | angle, |
int | part, | ||
bool | upper = false |
||
) |
Definition at line 428 of file TKinematics.cxx.
References Angle_cm2lab(), Angle_lab2cm(), Angle_lab2cminverse(), fParticle, fTheta, fThetacm, fVcm, and PI.
Referenced by Final().
double TKinematics::Sigma_cm2lab | ( | double | angle_cm, |
double | sigma_cm | ||
) |
Definition at line 668 of file TKinematics.cxx.
References fGamma_cm, fM, fTCm_f, fTCm_i, and PI.
Referenced by Ruthvslab().
double TKinematics::Sigma_lab2cm | ( | double | angle_cm, |
double | sigma_lab | ||
) |
Definition at line 687 of file TKinematics.cxx.
References fGamma_cm, fM, fTCm_f, fTCm_i, and PI.
Referenced by Transform2cm().
void TKinematics::SigmaErr_lab2cm | ( | double | angle, |
double | err, | ||
double & | sigma, | ||
double & | errsigma | ||
) |
Definition at line 708 of file TKinematics.cxx.
References fGamma_cm, fM, fTCm_f, fTCm_i, and PI.
Referenced by Transform2cm().
double TKinematics::Steffen_cm2labinverse | ( | double | theta_cm, |
int | part = 2 |
||
) |
Definition at line 531 of file TKinematics.cxx.
References fBeta_cm, fGamma_cm, fVcm, and PI.
Referenced by Steffen_labvscminverse().
double TKinematics::Steffen_lab2cminverse | ( | double | theta_lab | ) |
Definition at line 544 of file TKinematics.cxx.
References Cm2LabSpline, and Steffen_labvscminverse().
TSpline3 * TKinematics::Steffen_labvscminverse | ( | double | thmin, |
double | thmax, | ||
double | size, | ||
int | part = 2 |
||
) |
Definition at line 648 of file TKinematics.cxx.
References PI, and Steffen_cm2labinverse().
Referenced by Steffen_lab2cminverse().
|
private |
Definition at line 844 of file TKinematics.cxx.
|
private |
void TKinematics::Transform2cm | ( | double & | angle, |
double & | sigma | ||
) |
Definition at line 720 of file TKinematics.cxx.
References Angle_lab2cm(), fVcm, PI, and Sigma_lab2cm().
Referenced by Transform2cm().
void TKinematics::Transform2cm | ( | double & | angle, |
double & | errangle, | ||
double & | sigma, | ||
double & | errsigma | ||
) |
Definition at line 727 of file TKinematics.cxx.
References AngleErr_lab2cm(), SigmaErr_lab2cm(), and Transform2cm().
|
private |
Definition at line 852 of file TKinematics.cxx.
|
private |
Definition at line 154 of file TKinematics.h.
Referenced by Steffen_lab2cminverse(), and TKinematics().
|
private |
Definition at line 142 of file TKinematics.h.
Referenced by Angle_cm2lab(), Angle_lab2cm(), Angle_lab2cminverse(), E_final(), GetBetacm(), GetExcEnergy(), GetMaxAngle(), Initial(), InitKin(), Steffen_cm2labinverse(), and T_final().
|
private |
Definition at line 139 of file TKinematics.h.
Referenced by FinalCm(), GetBetacm(), Initial(), and InitKin().
|
private |
|
private |
Definition at line 128 of file TKinematics.h.
Referenced by FinalCm(), GetCmEnergy(), Initial(), InitKin(), NormalkinEnergy(), and TKinematics().
|
private |
|
private |
Definition at line 143 of file TKinematics.h.
Referenced by Angle_cm2lab(), Angle_lab2cm(), Angle_lab2cminverse(), E_final(), GetExcEnergy(), GetGammacm(), GetMaxAngle(), Initial(), InitKin(), Sigma_cm2lab(), Sigma_lab2cm(), SigmaErr_lab2cm(), Steffen_cm2labinverse(), and T_final().
|
private |
Definition at line 126 of file TKinematics.h.
Referenced by Final(), FinalCm(), GetBeamEnergy(), GetCmEnergy(), GetExcEnergy(), GetM(), Initial(), InitKin(), NormalkinEnergy(), Sigma_cm2lab(), Sigma_lab2cm(), SigmaErr_lab2cm(), T_final(), and TKinematics().
|
private |
Definition at line 131 of file TKinematics.h.
|
private |
Definition at line 125 of file TKinematics.h.
Referenced by FinalCm(), GetExcEnergy(), InitKin(), Rutherford(), SetAngles(), and TKinematics().
|
private |
|
private |
Definition at line 127 of file TKinematics.h.
Referenced by GetQValue(), Initial(), InitKin(), and TKinematics().
|
private |
Definition at line 129 of file TKinematics.h.
Referenced by Final(), GetExcEnergy(), GetTlab(), Initial(), and InitKin().
|
private |
|
private |
Definition at line 123 of file TKinematics.h.
Referenced by FinalCm(), Initial(), InitKin(), Sigma_cm2lab(), Sigma_lab2cm(), and SigmaErr_lab2cm().
|
private |
Definition at line 122 of file TKinematics.h.
Referenced by Initial(), InitKin(), Rutherford(), Sigma_cm2lab(), Sigma_lab2cm(), and SigmaErr_lab2cm().
|
private |
Definition at line 133 of file TKinematics.h.
Referenced by GetThetalab(), InitKin(), and SetAngles().
|
private |
Definition at line 140 of file TKinematics.h.
Referenced by GetThetacm(), InitKin(), SetAngles(), and T_final().
|
private |
|
private |
Definition at line 138 of file TKinematics.h.
Referenced by AngleErr_lab2cm(), CheckMaxAngle(), cmvslab(), Evslab(), Evslab_graph(), Final(), FinalCm(), GetMaxAngle(), GetVcm(), Initial(), InitKin(), labvscm(), Ruthvslab(), SetAngles(), Steffen_cm2labinverse(), and Transform2cm().