G4INCLNKbToSpiChannel.cc

이 파일의 문서화 페이지로 가기
**Definition:** G4INCLGlobals.hh:112
**Definition:** G4INCLFinalState.cc:60
**Definition:** G4INCLNKbToSpiChannel.cc:132
**Definition:** G4INCLParticle.hh:704
**Definition:** G4INCLNKbToSpiChannel.cc:49
**Definition:** G4INCLKinematicsUtils.cc:107
**Definition:** G4INCLParticleType.hh:55
**Definition:** G4INCLFinalState.hh:64
**Definition:** G4INCLThreeVector.hh:54
**Definition:** G4INCLParticle.hh:718
**Definition:** G4INCLNKbToSpiChannel.cc:53
**Definition:** G4INCLParticle.hh:75
**Definition:** G4INCLParticleTable.cc:471
**Definition:** G4INCLParticleTable.cc:1208
**Definition:** G4INCLParticleType.hh:67
**Definition:** G4INCLParticle.cc:152
**Definition:** G4INCLNKbToSpiChannel.cc:55
**Definition:** G4INCLKinematicsUtils.cc:135
**Definition:** G4INCLParticleTable.cc:1168

78 const G4int iso = ParticleTable::getIsospin(nucleon->getType()) + ParticleTable::getIsospin(kaon->getType());

132 ThreeVector NKbToSpiChannel::KaonMomentum(Particle const * const kaon, Particle const * const nucleon, G4int WhichChannel){

142 INCL_WARN("Bad channel choosed in Kb N To Sigma pi angulard distribution determination. Return an isotropic distribution.\n");

159 const G4double b = 12. * pLab/2375.; // correspond to the forward slope description at 2375 MeV/c

924 // assert(pLab >= Legendre_coef[WhichChannel+1][coef_ener][0] && pLab < Legendre_coef[WhichChannel+1][coef_ener+1][0]);

928 const G4double A1 = (1-sup_ener)*Legendre_coef[WhichChannel+1][coef_ener][1] + sup_ener*Legendre_coef[WhichChannel+1][coef_ener+1][1];

929 const G4double A2 = (1-sup_ener)*Legendre_coef[WhichChannel+1][coef_ener][2] + sup_ener*Legendre_coef[WhichChannel+1][coef_ener+1][2];

930 const G4double A3 = (1-sup_ener)*Legendre_coef[WhichChannel+1][coef_ener][3] + sup_ener*Legendre_coef[WhichChannel+1][coef_ener+1][3];

931 const G4double A4 = (1-sup_ener)*Legendre_coef[WhichChannel+1][coef_ener][4] + sup_ener*Legendre_coef[WhichChannel+1][coef_ener+1][4];

932 const G4double A5 = (1-sup_ener)*Legendre_coef[WhichChannel+1][coef_ener][5] + sup_ener*Legendre_coef[WhichChannel+1][coef_ener+1][5];

933 const G4double A6 = (1-sup_ener)*Legendre_coef[WhichChannel+1][coef_ener][6] + sup_ener*Legendre_coef[WhichChannel+1][coef_ener+1][6];

934 const G4double A7 = (1-sup_ener)*Legendre_coef[WhichChannel+1][coef_ener][7] + sup_ener*Legendre_coef[WhichChannel+1][coef_ener+1][7];

935 const G4double A8 = (1-sup_ener)*Legendre_coef[WhichChannel+1][coef_ener][8] + sup_ener*Legendre_coef[WhichChannel+1][coef_ener+1][8];

938 const G4double A = std::fabs(A0) + std::fabs(A1) + std::fabs(A2) + std::fabs(A3) + std::fabs(A4) + std::fabs(A5) + std::fabs(A6) + std::fabs(A7) + std::fabs(A8);

954 G4double P6 = A6/16.*(231*std::pow(cos_theta,6)-315*std::pow(cos_theta,4)+105*std::pow(cos_theta,2)-5);

955 G4double P7 = A7/16.*(429*std::pow(cos_theta,7)-693*std::pow(cos_theta,5)+315*std::pow(cos_theta,3)-35*cos_theta);

956 G4double P8 = A8/128.*(6435*std::pow(cos_theta,8)-12012*std::pow(cos_theta,6)+6930*std::pow(cos_theta,4)-1260*std::pow(cos_theta,2)+35);

962 if(maxloop==1000) cos_theta = std::log(Random::shoot()*(std::exp(10.)-std::exp(-10.))+std::exp(-10.))/10.; // if no success in 1E4 shoot, probably angulard distribution piked very forward

T max(const T t1, const T t2)

brief Return the largest of the two arguments

void addModifiedParticle(Particle *p)

ThreeVector KaonMomentum(Particle const *const kaon, Particle const *const nucleon, const G4int WhichChannel)

const G4INCL::ThreeVector & getMomentum() const

NKbToSpiChannel(Particle *, Particle *)

G4double momentumInCM(Particle const *const p1, Particle const *const p2)

gives the momentum in the CM frame of two particles.

virtual void setMomentum(const G4INCL::ThreeVector &momentum)

virtual ~NKbToSpiChannel()

G4int getIsospin(const ParticleType t)

Get the isospin of a particle.

ParticleType getSigmaType(const G4int isosp)

Get the type of sigma.

G4double adjustEnergyFromMomentum()

Recompute the energy to match the momentum.

void fillFinalState(FinalState *fs)

G4double momentumInLab(Particle const *const p1, Particle const *const p2)

gives the momentum in the lab frame of two particles.

ParticleType getPionType(const G4int isosp)

Get the type of pion.

다음에 의해 생성됨 : 1.8.5