26 #include "KVNucleus.h" 
  276          Warning(
"GetCMGamma", 
"1 - (beta)**2 = %f ... strange!", 
gamma);
 
  300       if (
TMath::Abs(OfNucleus - OtherNucleus) % 2) 
return 180. - theta;
 
#define ClassDef(name, id)
 
Relativistic binary kinematics calculator.
 
Double_t XSecRuthLabInt(Double_t *, Double_t *)
 
Double_t TETAMIN[5]
defined only for nuclei 3 et 4
 
Double_t eqbm_charge_state_shiwietz_gas(Double_t *t, Double_t *)
 
Double_t VC[5]
cm velocities
 
void SetTarget(const KVNucleus &)
Set target for reaction.
 
TF1 * GetEqbmChargeStateFunc() const
 
TF1 * GetXSecRuthLabFunc(Int_t OfNucleus=3, Double_t theta_min=1., Double_t theta_max=179.) const
 
Double_t K[5]
ratio of c.m. velocity to velocity of nucleus in c.m. v_cm/v_i_cm
 
Double_t GetMaxAngleLab(Int_t i) const
 
std::vector< KVNucleus > fNuclei
nuclei involved in calculation
 
void Print(Option_t *opt="") const
 
TF1 * GetXSecRuthLabIntegralFunc(Int_t OfNucleus=3, Double_t theta_min=1., Double_t theta_max=179.) const
 
void SetIntegralPrecision(Double_t precision)
 
Double_t WCT
total cm energy
 
void SetEDiss(Double_t ex)
 
Double_t GetIntegralPrecision()
 
Double_t GetSphereDureReactionXSec(Double_t r0=1.05)
 
Double_t ELabVsThetaLab(Double_t *, Double_t *)
Function calculating lab energy of nucleus par[0] for any lab angle x[0].
 
TF1 * fThetaLabVsThetaCM[5]
 
void SetExcitEnergy(Double_t ex)
 
Double_t GetMinAngleLab(Int_t i) const
 
Double_t GetThetaLab(Double_t ThetaCM, Int_t OfNucleus) const
 
void SetProjectile(const KVNucleus &)
Set projectile for reaction.
 
Double_t fIntPrec
Precision of the TF1::Integral method.
 
Double_t GetXSecRuthLab(Double_t ThetaLab_Proj, Int_t OfNucleus=3) const
 
Double_t GetQReaction() const
Calculate Q-value for reaction, including dissipated (excitation) energy.
 
Double_t GetThetaCM(Int_t OfNucleus, Double_t theta, Int_t OtherNucleus) const
 
TF1 * fEqbmChargeStateShSol
function equilibrium charge state of projectile vs. E/A projectile (Shiwietz et al solid)
 
Double_t EqbmChargeState(Double_t *t, Double_t *)
 
TF1 * GetThetaLabVsThetaCMFunc(Int_t OfNucleus) const
 
void SetOutgoing(const KVNucleus &proj_out)
 
TF1 * fKoxReactionXSec
function Kox reaction cross-section [barns] vs. E/A projectile
 
TF1 * GetELabVsThetaCMFunc(Int_t OfNucleus) const
 
Double_t XSecRuthCM(Double_t *, Double_t *)
 
TF1 * GetShiwietzEqbmChargeStateFuncForGasTargets() const
 
Double_t XSecRuthLab(Double_t *, Double_t *)
 
TF1 * GetKoxReactionXSecFunc() const
 
Double_t BCM
beta of centre of mass
 
TF1 * fEqbmChargeStateShGas
function equilibrium charge state of projectile vs. E/A projectile (Shiwietz et al gas)
 
Double_t GetELab(Double_t ThetaCM, Int_t OfNucleus) const
 
Int_t FindRoots(TF1 *, Double_t, Double_t, Double_t, Double_t &, Double_t &) const
 
Double_t GetEDiss() const
 
static Double_t GetVelocity(Double_t mass, Double_t E)
 
Double_t GetIntegratedXSecRuthLab(Float_t th1, Float_t th2, Float_t phi1=-1, Float_t phi2=-1, Int_t OfNucleus=3)
 
Double_t GetBmaxFromReactionXSec(Double_t ReacXsec)
 
TVector3 VCM
velocity of centre of mass
 
Double_t KoxReactionXSec(Double_t *, Double_t *)
 
Double_t ELabVsThetaCM(Double_t *, Double_t *)
Function calculating lab energy of nucleus par[0] for any CM angle x[0].
 
Double_t ThetaLabVsThetaCM(Double_t *, Double_t *)
 
Double_t GetCMGamma() const
 
Double_t TETAMAX[5]
defined only for nuclei 3 et 4
 
Bool_t fSetOutgoing
= kTRUE if SetOutgoing is called before CalculateKinematics
 
Double_t WC[5]
cm energy of each nucleus
 
TF1 * fXSecRuthLabIntegral[5]
 
Double_t EC[5]
cm energies
 
Double_t GetExcitEnergy() const
 
Double_t GetMinThetaCMFromThetaLab(Int_t OfNucleus, Double_t theta, Int_t OtherNucleus) const
 
Double_t WLT
total lab energy
 
Int_t GetVLab(Int_t OfNucleus, Double_t ThetaLab, Int_t AngleNucleus, Double_t &e1, Double_t &e2) const
 
Double_t BassIntBarrier()
 
TVector3 GetCMVelocity() const
Return vector velocity of centre of mass of reaction (units: cm/ns)
 
void CalculateKinematics()
 
void init()
Default initialisations.
 
Double_t GetIntegratedXsec(Double_t b1, Double_t b2)
 
TF1 * GetXSecRuthCMFunc(Int_t OfNucleus=3, Double_t theta_cm_min=1., Double_t theta_cm_max=179.) const
 
Double_t GetLabGrazingAngle(Int_t i=1) const
 
Double_t GetQGroundStates() const
Calculate Q-value for reaction, assuming all nuclei in ground state.
 
KVNucleus * GetNucleus(Int_t i) const
 
Double_t XSecRuthCMVsThetaCM(Double_t *, Double_t *)
 
Double_t GetCMEnergy() const
Return available kinetic energy in centre of mass.
 
TF1 * fEqbmChargeState
function equilibrium charge state of projectile vs. E/A projectile (Leon et al)
 
Double_t eqbm_charge_state_shiwietz_solid(Double_t *t, Double_t *)
 
Double_t GetXSecRuthCM(Double_t ThetaLab_Proj, Int_t OfNucleus=3) const
 
Double_t fEDiss
dissipated energy, 0 means elastic scattering
 
Int_t GetThetaCM(Double_t ThetaLab, Int_t OfNucleus, Double_t &t1, Double_t &t2) const
 
TF1 * GetShiwietzEqbmChargeStateFuncForSolidTargets() const
 
TF1 * GetELabVsThetaLabFunc(Int_t OfNucleus) const
 
Base class for KaliVeda framework.
 
Description of properties and kinematics of atomic nuclei.
 
virtual Double_t Eval(Double_t x, Double_t y=0, Double_t z=0, Double_t t=0) const
 
virtual void Warning(const char *method, const char *msgfmt,...) const
 
Double_t Power(Double_t x, Double_t y)
 
Double_t Sqrt(Double_t x)