Changeset 1340 for trunk/source/processes/hadronic/models/cascade/cascade/include/G4CascadeInterface.hh
- Timestamp:
- Nov 5, 2010, 3:45:55 PM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/processes/hadronic/models/cascade/cascade/include/G4CascadeInterface.hh
r1315 r1340 24 24 // ******************************************************************** 25 25 // 26 // $Id: G4CascadeInterface.hh,v 1. 16 2010/05/21 18:07:30mkelsey Exp $26 // $Id: G4CascadeInterface.hh,v 1.23 2010/09/23 18:13:32 mkelsey Exp $ 27 27 // Defines an interface to Bertini (BERT) cascade 28 28 // based on INUCL intra-nuclear transport.models … … 31 31 // 20100405 M. Kelsey -- Fix constness of op== and op!= 32 32 // 20100519 M. Kelsey -- Remove Collider data members 33 // 20100617 M. Kelsey -- Make G4InuclCollider a local data member 34 // 20100723 M. Kelsey -- Move G4CollisionOutput here for reuse 35 // 20100916 M. Kelsey -- Add functions to encapsulate ApplyYourself() actions, 36 // make colliders pointers (don't expose dependencies) 37 // 20100922 M. Kelsey -- Add functions to select de-excitation method 33 38 34 39 #ifndef G4CASCADEINTERFACE_H … … 38 43 #include "G4FragmentVector.hh" 39 44 #include "G4KineticTrackVector.hh" 45 #include "G4LorentzRotation.hh" 40 46 #include "G4Nucleon.hh" 41 47 #include "G4Nucleus.hh" … … 43 49 #include "G4ReactionProduct.hh" 44 50 #include "G4ReactionProductVector.hh" 51 52 class G4InuclCollider; 53 class G4InuclParticle; 54 class G4CollisionOutput; 55 class G4CascadeCheckBalance; 56 class G4V3DNucleus; 45 57 46 58 … … 58 70 G4Nucleus& theNucleus); 59 71 72 void setVerboseLevel(G4int verbose) { verboseLevel = verbose; } 73 74 // Select betweeen different post-cascade de-excitation models 75 void useCascadeDeexcitation(); 76 void usePreCompoundDeexcitation(); 77 78 protected: 79 // Convert input projectile and target to Bertini internal types 80 void createBullet(const G4HadProjectile& aTrack); 81 void createTarget(G4Nucleus& theNucleus); 82 83 // Evaluate whether any outgoing particles penetrated Coulomb barrier 84 G4bool coulombBarrierViolation() const; 85 86 // Conditions for rejecting cascade attempt 87 G4bool retryInelasticProton() const; 88 G4bool retryInelasticNucleus() const; 89 90 // Fill sparse array with minimum momenta for inelastic on hydrogen 91 void initializeElasticCuts(); 92 93 // Transfer Bertini internal final state to hadronics interface 94 void copyOutputToHadronicResult(); 95 96 // Terminate job because of energy/momentum/etc. violations 97 void throwNonConservationFailure(); 98 60 99 private: 61 100 G4int operator==(const G4CascadeInterface& right) const { … … 67 106 } 68 107 108 static const G4int maximumTries; // Number of iterations for inelastic 109 110 G4double cutElastic[32]; // Bullet momenta for hydrogen target 111 69 112 G4int verboseLevel; 113 G4int numberOfTries; 70 114 71 private: 72 G4HadFinalState theResult; 115 G4HadFinalState theResult; 116 G4InuclCollider* collider; 117 G4CascadeCheckBalance* balance; 118 119 G4InuclParticle* bullet; 120 G4InuclParticle* target; 121 G4CollisionOutput* output; 122 123 G4LorentzRotation bulletInLabFrame; 73 124 }; 74 125
Note: See TracChangeset
for help on using the changeset viewer.