Geant4 Cross Reference |
1 // 1 // 2 // ******************************************* 2 // ******************************************************************** 3 // * License and Disclaimer 3 // * License and Disclaimer * 4 // * 4 // * * 5 // * The Geant4 software is copyright of th 5 // * The Geant4 software is copyright of the Copyright Holders of * 6 // * the Geant4 Collaboration. It is provided 6 // * the Geant4 Collaboration. It is provided under the terms and * 7 // * conditions of the Geant4 Software License 7 // * conditions of the Geant4 Software License, included in the file * 8 // * LICENSE and available at http://cern.ch/ 8 // * LICENSE and available at http://cern.ch/geant4/license . These * 9 // * include a list of copyright holders. 9 // * include a list of copyright holders. * 10 // * 10 // * * 11 // * Neither the authors of this software syst 11 // * Neither the authors of this software system, nor their employing * 12 // * institutes,nor the agencies providing fin 12 // * institutes,nor the agencies providing financial support for this * 13 // * work make any representation or warran 13 // * work make any representation or warranty, express or implied, * 14 // * regarding this software system or assum 14 // * regarding this software system or assume any liability for its * 15 // * use. Please see the license in the file 15 // * use. Please see the license in the file LICENSE and URL above * 16 // * for the full disclaimer and the limitatio 16 // * for the full disclaimer and the limitation of liability. * 17 // * 17 // * * 18 // * This code implementation is the result 18 // * This code implementation is the result of the scientific and * 19 // * technical work of the GEANT4 collaboratio 19 // * technical work of the GEANT4 collaboration. * 20 // * By using, copying, modifying or distri 20 // * By using, copying, modifying or distributing the software (or * 21 // * any work based on the software) you ag 21 // * any work based on the software) you agree to acknowledge its * 22 // * use in resulting scientific publicati 22 // * use in resulting scientific publications, and indicate your * 23 // * acceptance of all terms of the Geant4 Sof 23 // * acceptance of all terms of the Geant4 Software license. * 24 // ******************************************* 24 // ******************************************************************** 25 // 25 // 26 // 26 // >> 27 // $Id: G4CollisionMesonBaryonToResonance.cc,v 1.3 2006-06-29 20:37:28 gunter Exp $ // 27 28 28 #include "globals.hh" 29 #include "globals.hh" 29 #include "G4CollisionMesonBaryonToResonance.hh 30 #include "G4CollisionMesonBaryonToResonance.hh" 30 #include "G4ConcreteMesonBaryonToResonance.hh" 31 #include "G4ConcreteMesonBaryonToResonance.hh" 31 #include "G4KineticTrack.hh" 32 #include "G4KineticTrack.hh" 32 #include "G4VCrossSectionSource.hh" 33 #include "G4VCrossSectionSource.hh" 33 #include "G4Proton.hh" 34 #include "G4Proton.hh" 34 #include "G4PionPlus.hh" 35 #include "G4PionPlus.hh" 35 #include "G4XAqmElastic.hh" 36 #include "G4XAqmElastic.hh" 36 #include "G4AngularDistribution.hh" 37 #include "G4AngularDistribution.hh" 37 #include "G4ThreeVector.hh" 38 #include "G4ThreeVector.hh" 38 #include "G4LorentzVector.hh" 39 #include "G4LorentzVector.hh" 39 #include "G4LorentzRotation.hh" 40 #include "G4LorentzRotation.hh" 40 #include "G4KineticTrackVector.hh" 41 #include "G4KineticTrackVector.hh" 41 #include "G4XResonance.hh" 42 #include "G4XResonance.hh" 42 #include "G4ParticleTable.hh" 43 #include "G4ParticleTable.hh" 43 #include "G4ShortLivedConstructor.hh" 44 #include "G4ShortLivedConstructor.hh" 44 #include "G4KaonPlus.hh" 45 #include "G4KaonPlus.hh" 45 46 46 47 47 G4CollisionMesonBaryonToResonance::G4Collision 48 G4CollisionMesonBaryonToResonance::G4CollisionMesonBaryonToResonance() 48 { 49 { 49 // the particle types used are indicative fo 50 // the particle types used are indicative for the particle class; 50 // i.e. pip stands for pions, proton for nuc 51 // i.e. pip stands for pions, proton for nucleon, etc.. 51 52 52 G4ParticleDefinition * aProton = G4Proton::P 53 G4ParticleDefinition * aProton = G4Proton::ProtonDefinition(); 53 G4ParticleDefinition * aPionp = G4PionPlus:: 54 G4ParticleDefinition * aPionp = G4PionPlus::PionPlusDefinition(); 54 55 55 G4ParticleDefinition * aDeltap = G4ParticleT 56 G4ParticleDefinition * aDeltap = G4ParticleTable::GetParticleTable()->FindParticle(2214); // D+ 56 G4ParticleDefinition * aD1600 = G4ParticleTa 57 G4ParticleDefinition * aD1600 = G4ParticleTable::GetParticleTable()->FindParticle(32214); // D+ 57 G4ParticleDefinition * aD1620 = G4ParticleTa 58 G4ParticleDefinition * aD1620 = G4ParticleTable::GetParticleTable()->FindParticle(2122); // D+ 58 G4ParticleDefinition * aD1700 = G4ParticleTa 59 G4ParticleDefinition * aD1700 = G4ParticleTable::GetParticleTable()->FindParticle(12214); // D+ 59 G4ParticleDefinition * aD1900 = G4ParticleTa 60 G4ParticleDefinition * aD1900 = G4ParticleTable::GetParticleTable()->FindParticle(12122); // D+ 60 G4ParticleDefinition * aD1905 = G4ParticleTa 61 G4ParticleDefinition * aD1905 = G4ParticleTable::GetParticleTable()->FindParticle(2126); // D+ 61 G4ParticleDefinition * aD1910 = G4ParticleTa 62 G4ParticleDefinition * aD1910 = G4ParticleTable::GetParticleTable()->FindParticle(22122); // D+ 62 G4ParticleDefinition * aD1920 = G4ParticleTa 63 G4ParticleDefinition * aD1920 = G4ParticleTable::GetParticleTable()->FindParticle(22214); // D+ 63 G4ParticleDefinition * aD1930 = G4ParticleTa 64 G4ParticleDefinition * aD1930 = G4ParticleTable::GetParticleTable()->FindParticle(12126); // D+ 64 G4ParticleDefinition * aD1950 = G4ParticleTa 65 G4ParticleDefinition * aD1950 = G4ParticleTable::GetParticleTable()->FindParticle(2218); // D+ 65 66 66 G4CollisionComposite::AddComponent(new G4Con 67 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aPionp, aDeltap, "D1232_Npi")); 67 G4CollisionComposite::AddComponent(new G4Con 68 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aPionp, aD1600, "D1600_Npi")); 68 G4CollisionComposite::AddComponent(new G4Con 69 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aPionp, aD1620, "D1620_Npi")); 69 G4CollisionComposite::AddComponent(new G4Con 70 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aPionp, aD1700, "D1700_Npi")); 70 G4CollisionComposite::AddComponent(new G4Con 71 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aPionp, aD1900, "D1900_Npi")); 71 G4CollisionComposite::AddComponent(new G4Con 72 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aPionp, aD1905, "D1905_Npi")); 72 G4CollisionComposite::AddComponent(new G4Con 73 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aPionp, aD1910, "D1910_Npi")); 73 G4CollisionComposite::AddComponent(new G4Con 74 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aPionp, aD1920, "D1920_Npi")); 74 G4CollisionComposite::AddComponent(new G4Con 75 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aPionp, aD1930, "D1930_Npi")); 75 G4CollisionComposite::AddComponent(new G4Con 76 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aPionp, aD1950, "D1950_Npi")); 76 77 77 78 78 G4ParticleDefinition * aN1440 = G4ParticleTa 79 G4ParticleDefinition * aN1440 = G4ParticleTable::GetParticleTable()->FindParticle(12112); // N+ 79 G4ParticleDefinition * aN1520 = G4ParticleTa 80 G4ParticleDefinition * aN1520 = G4ParticleTable::GetParticleTable()->FindParticle(2124); // N+ 80 G4ParticleDefinition * aN1535 = G4ParticleTa 81 G4ParticleDefinition * aN1535 = G4ParticleTable::GetParticleTable()->FindParticle(22212); // N+ 81 G4ParticleDefinition * aN1650 = G4ParticleTa 82 G4ParticleDefinition * aN1650 = G4ParticleTable::GetParticleTable()->FindParticle(32212); // N+ 82 G4ParticleDefinition * aN1675 = G4ParticleTa 83 G4ParticleDefinition * aN1675 = G4ParticleTable::GetParticleTable()->FindParticle(2216); // N+ 83 G4ParticleDefinition * aN1680 = G4ParticleTa 84 G4ParticleDefinition * aN1680 = G4ParticleTable::GetParticleTable()->FindParticle(12216); // N+ 84 G4ParticleDefinition * aN1700 = G4ParticleTa 85 G4ParticleDefinition * aN1700 = G4ParticleTable::GetParticleTable()->FindParticle(22124); // N+ 85 G4ParticleDefinition * aN1710 = G4ParticleTa 86 G4ParticleDefinition * aN1710 = G4ParticleTable::GetParticleTable()->FindParticle(42212); // N+ 86 G4ParticleDefinition * aN1720 = G4ParticleTa 87 G4ParticleDefinition * aN1720 = G4ParticleTable::GetParticleTable()->FindParticle(32124); // N+ 87 G4ParticleDefinition * aN1900 = G4ParticleTa 88 G4ParticleDefinition * aN1900 = G4ParticleTable::GetParticleTable()->FindParticle(42124); // N+ 88 G4ParticleDefinition * aN1990 = G4ParticleTa 89 G4ParticleDefinition * aN1990 = G4ParticleTable::GetParticleTable()->FindParticle(12218); // N+ 89 G4ParticleDefinition * aN2090 = G4ParticleTa 90 G4ParticleDefinition * aN2090 = G4ParticleTable::GetParticleTable()->FindParticle(52214); // N+ 90 G4ParticleDefinition * aN2190 = G4ParticleTa 91 G4ParticleDefinition * aN2190 = G4ParticleTable::GetParticleTable()->FindParticle(2128); // N+ 91 G4ParticleDefinition * aN2220 = G4ParticleTa 92 G4ParticleDefinition * aN2220 = G4ParticleTable::GetParticleTable()->FindParticle(100002210); // N+ 92 G4ParticleDefinition * aN2250 = G4ParticleTa 93 G4ParticleDefinition * aN2250 = G4ParticleTable::GetParticleTable()->FindParticle(100012210); // N+ 93 94 94 G4CollisionComposite::AddComponent(new G4Con 95 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aPionp, aN1440, "N1440_Npi")); 95 G4CollisionComposite::AddComponent(new G4Con 96 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aPionp, aN1520, "N1520_Npi")); 96 G4CollisionComposite::AddComponent(new G4Con 97 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aPionp, aN1535, "N1535_Npi")); 97 G4CollisionComposite::AddComponent(new G4Con 98 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aPionp, aN1650, "N1650_Npi")); 98 G4CollisionComposite::AddComponent(new G4Con 99 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aPionp, aN1675, "N1675_Npi")); 99 G4CollisionComposite::AddComponent(new G4Con 100 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aPionp, aN1680, "N1680_Npi")); 100 G4CollisionComposite::AddComponent(new G4Con 101 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aPionp, aN1700, "N1700_Npi")); 101 G4CollisionComposite::AddComponent(new G4Con 102 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aPionp, aN1710, "N1710_Npi")); 102 G4CollisionComposite::AddComponent(new G4Con 103 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aPionp, aN1720, "N1720_Npi")); 103 G4CollisionComposite::AddComponent(new G4Con 104 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aPionp, aN1900, "N1900_Npi")); 104 G4CollisionComposite::AddComponent(new G4Con 105 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aPionp, aN1990, "N1990_Npi")); 105 G4CollisionComposite::AddComponent(new G4Con 106 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aPionp, aN2090, "N2090_Npi")); 106 G4CollisionComposite::AddComponent(new G4Con 107 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aPionp, aN2190, "N2190_Npi")); 107 G4CollisionComposite::AddComponent(new G4Con 108 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aPionp, aN2220, "N2220_Npi")); 108 G4CollisionComposite::AddComponent(new G4Con 109 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aPionp, aN2250, "N2250_Npi")); 109 110 110 /* 111 /* 111 G4ParticleDefinition * aKaon = G4KaonPlus::K 112 G4ParticleDefinition * aKaon = G4KaonPlus::KaonPlus(); 112 113 113 // sig=0 G4ParticleDefinition * aL1405 = G4Pa 114 // sig=0 G4ParticleDefinition * aL1405 = G4ParticleTable::GetParticleTable()->FindParticle(13122); 114 G4ParticleDefinition * aL1520 = G4ParticleTa 115 G4ParticleDefinition * aL1520 = G4ParticleTable::GetParticleTable()->FindParticle(3124); 115 G4ParticleDefinition * aL1600 = G4ParticleTa 116 G4ParticleDefinition * aL1600 = G4ParticleTable::GetParticleTable()->FindParticle(23122); 116 G4ParticleDefinition * aL1670 = G4ParticleTa 117 G4ParticleDefinition * aL1670 = G4ParticleTable::GetParticleTable()->FindParticle(33122); 117 G4ParticleDefinition * aL1690 = G4ParticleTa 118 G4ParticleDefinition * aL1690 = G4ParticleTable::GetParticleTable()->FindParticle(13124); 118 G4ParticleDefinition * aL1800 = G4ParticleTa 119 G4ParticleDefinition * aL1800 = G4ParticleTable::GetParticleTable()->FindParticle(43122); 119 G4ParticleDefinition * aL1810 = G4ParticleTa 120 G4ParticleDefinition * aL1810 = G4ParticleTable::GetParticleTable()->FindParticle(53122); 120 G4ParticleDefinition * aL1820 = G4ParticleTa 121 G4ParticleDefinition * aL1820 = G4ParticleTable::GetParticleTable()->FindParticle(3126); 121 G4ParticleDefinition * aL1830 = G4ParticleTa 122 G4ParticleDefinition * aL1830 = G4ParticleTable::GetParticleTable()->FindParticle(13126); 122 G4ParticleDefinition * aL1890 = G4ParticleTa 123 G4ParticleDefinition * aL1890 = G4ParticleTable::GetParticleTable()->FindParticle(23124); 123 G4ParticleDefinition * aL2100 = G4ParticleTa 124 G4ParticleDefinition * aL2100 = G4ParticleTable::GetParticleTable()->FindParticle(3128); 124 G4ParticleDefinition * aL2110 = G4ParticleTa 125 G4ParticleDefinition * aL2110 = G4ParticleTable::GetParticleTable()->FindParticle(23126); 125 G4CollisionComposite::AddComponent(new G4Con 126 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aKaon, aL1520, "L1520_NKbar")); 126 G4CollisionComposite::AddComponent(new G4Con 127 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aKaon, aL1600, "L1600_NKbar")); 127 G4CollisionComposite::AddComponent(new G4Con 128 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aKaon, aL1690, "L1690_NKbar")); 128 G4CollisionComposite::AddComponent(new G4Con 129 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aKaon, aL1670, "L1670_NKbar")); 129 G4CollisionComposite::AddComponent(new G4Con 130 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aKaon, aL1800, "L1800_NKbar")); 130 G4CollisionComposite::AddComponent(new G4Con 131 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aKaon, aL1810, "L1810_NKbar")); 131 G4CollisionComposite::AddComponent(new G4Con 132 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aKaon, aL1820, "L1820_NKbar")); 132 G4CollisionComposite::AddComponent(new G4Con 133 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aKaon, aL1830, "L1830_NKbar")); 133 G4CollisionComposite::AddComponent(new G4Con 134 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aKaon, aL1890, "L1890_NKbar")); 134 G4CollisionComposite::AddComponent(new G4Con 135 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aKaon, aL2100, "L2100_NKbar")); 135 G4CollisionComposite::AddComponent(new G4Con 136 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aKaon, aL2110, "L2110_NKbar")); 136 137 137 //@ G4ParticleDefinition * aSigma = G4Particl 138 //@ G4ParticleDefinition * aSigma = G4ParticleTable::GetParticleTable()->FindParticle(3222); 138 //@ G4ParticleDefinition * aS1385 = G4Particl 139 //@ G4ParticleDefinition * aS1385 = G4ParticleTable::GetParticleTable()->FindParticle(3224); 139 G4ParticleDefinition * aS1660 = G4ParticleTa 140 G4ParticleDefinition * aS1660 = G4ParticleTable::GetParticleTable()->FindParticle(13222); 140 G4ParticleDefinition * aS1670 = G4ParticleTa 141 G4ParticleDefinition * aS1670 = G4ParticleTable::GetParticleTable()->FindParticle(13224); 141 G4ParticleDefinition * aS1750 = G4ParticleTa 142 G4ParticleDefinition * aS1750 = G4ParticleTable::GetParticleTable()->FindParticle(23222); 142 G4ParticleDefinition * aS1775 = G4ParticleTa 143 G4ParticleDefinition * aS1775 = G4ParticleTable::GetParticleTable()->FindParticle(3226); 143 G4ParticleDefinition * aS1915 = G4ParticleTa 144 G4ParticleDefinition * aS1915 = G4ParticleTable::GetParticleTable()->FindParticle(13226); 144 G4ParticleDefinition * aS1940 = G4ParticleTa 145 G4ParticleDefinition * aS1940 = G4ParticleTable::GetParticleTable()->FindParticle(23224); 145 G4ParticleDefinition * aS2030 = G4ParticleTa 146 G4ParticleDefinition * aS2030 = G4ParticleTable::GetParticleTable()->FindParticle(3228); 146 G4CollisionComposite::AddComponent(new G4Con 147 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aKaon, aS1660, "S1660_NKbar")); 147 G4CollisionComposite::AddComponent(new G4Con 148 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aKaon, aS1670, "S1670_NKbar")); 148 G4CollisionComposite::AddComponent(new G4Con 149 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aKaon, aS1750, "S1750_NKbar")); 149 G4CollisionComposite::AddComponent(new G4Con 150 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aKaon, aS1775, "S1775_NKbar")); 150 G4CollisionComposite::AddComponent(new G4Con 151 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aKaon, aS1915, "S1915_NKbar")); 151 G4CollisionComposite::AddComponent(new G4Con 152 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aKaon, aS1940, "S1940_NKbar")); 152 G4CollisionComposite::AddComponent(new G4Con 153 G4CollisionComposite::AddComponent(new G4ConcreteMesonBaryonToResonance(aProton, aKaon, aS2030, "S2030_NKbar")); 153 */ 154 */ 154 } 155 } 155 156