- Timestamp:
- Jun 18, 2010, 11:42:07 AM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/physics_lists/builders/src/G4HadronHElasticPhysics.cc
r1228 r1315 24 24 // ******************************************************************** 25 25 // 26 // $Id: G4HadronHElasticPhysics.cc,v 1. 7 2009/11/28 17:35:01vnivanch Exp $27 // GEANT4 tag $Name: geant4-09-0 3$26 // $Id: G4HadronHElasticPhysics.cc,v 1.9 2010/06/03 14:28:32 vnivanch Exp $ 27 // GEANT4 tag $Name: geant4-09-04-beta-cand-01 $ 28 28 // 29 29 //--------------------------------------------------------------------------- … … 36 36 // 21.03.07 (V.Ivanchenko) Use G4BGGNucleonElasticXS and G4BGGPionElasticXS; 37 37 // Reduce thresholds for HE and Q-models to zero 38 // 03.06.2010 V.Ivanchenko cleanup constructors and ConstructProcess method 38 39 // 39 40 //---------------------------------------------------------------------------- 40 41 // 42 // CHIPS for sampling scattering for p and n 43 // Glauber model for samplimg of high energy pi+- (E > 1GeV) 44 // LHEP sampling model for the other particle 45 // BBG cross sections for p, n and pi+- 46 // LHEP cross sections for other particles 41 47 42 48 #include "G4HadronHElasticPhysics.hh" … … 54 60 #include "G4CHIPSElastic.hh" 55 61 #include "G4ElasticHadrNucleusHE.hh" 56 #include "G4NeutronHPElastic.hh"57 #include "G4UElasticCrossSection.hh"58 62 #include "G4BGGNucleonElasticXS.hh" 59 63 #include "G4BGGPionElasticXS.hh" 60 64 #include "G4NeutronElasticXS.hh" 61 65 62 G4HadronHElasticPhysics::G4HadronHElasticPhysics(G4int ver, G4bool hp, 63 const G4String& type) 64 : G4VPhysicsConstructor("HElastic"), verbose(ver), 65 hpFlag(hp), wasActivated(false), subtype(type) 66 G4HadronHElasticPhysics::G4HadronHElasticPhysics(G4int ver) 67 : G4VPhysicsConstructor("hElasticWEL_CHIPS"), verbose(ver), 68 wasActivated(false) 66 69 { 67 if(verbose > 1) G4cout << "### HadronHElasticPhysics" << G4endl; 70 if(verbose > 1) { 71 G4cout << "### G4HadronHElasticPhysics: " << GetPhysicsName() 72 << G4endl; 73 } 74 } 75 76 G4HadronHElasticPhysics::G4HadronHElasticPhysics(G4int ver, G4bool, 77 const G4String&) 78 : G4VPhysicsConstructor("hElasticWEL_CHIPS"), verbose(ver), 79 wasActivated(false) 80 { 81 if(verbose > 1) { 82 G4cout << "### G4HadronHElasticPhysics: " << GetPhysicsName() 83 << G4endl; 84 } 68 85 } 69 86 … … 87 104 void G4HadronHElasticPhysics::ConstructProcess() 88 105 { 89 if(wasActivated) return;106 if(wasActivated) { return; } 90 107 wasActivated = true; 91 108 … … 145 162 hel->RegisterMe(he); 146 163 } else { 147 //hel->AddDataSet(new G4UElasticCrossSection(particle));148 164 hel->RegisterMe(plep0); 149 165 } … … 159 175 G4ProcessManager* pmanager = particle->GetProcessManager(); 160 176 G4WHadronElasticProcess* hel = new G4WHadronElasticProcess(); 161 if(subtype == "QBBC_XGGSN") { 162 hel->AddDataSet(new G4NeutronElasticXS()); 163 } else { 164 hel->AddDataSet(new G4BGGNucleonElasticXS(particle)); 165 } 177 hel->AddDataSet(new G4BGGNucleonElasticXS(particle)); 166 178 hel->RegisterMe(chipsn); 167 179 168 if(hpFlag) {169 chipsn->SetMinEnergy(19.5*MeV);170 G4NeutronHPElastic* hp = new G4NeutronHPElastic();171 hel->RegisterMe(hp);172 hel->AddDataSet(new G4NeutronHPElasticData());173 }174 180 pmanager->AddDiscreteProcess(hel); 175 181
Note: See TracChangeset
for help on using the changeset viewer.