Geant4 Cross Reference |
1 // 1 2 // ******************************************* 3 // * License and Disclaimer 4 // * 5 // * The Geant4 software is copyright of th 6 // * the Geant4 Collaboration. It is provided 7 // * conditions of the Geant4 Software License 8 // * LICENSE and available at http://cern.ch/ 9 // * include a list of copyright holders. 10 // * 11 // * Neither the authors of this software syst 12 // * institutes,nor the agencies providing fin 13 // * work make any representation or warran 14 // * regarding this software system or assum 15 // * use. Please see the license in the file 16 // * for the full disclaimer and the limitatio 17 // * 18 // * This code implementation is the result 19 // * technical work of the GEANT4 collaboratio 20 // * By using, copying, modifying or distri 21 // * any work based on the software) you ag 22 // * use in resulting scientific publicati 23 // * acceptance of all terms of the Geant4 Sof 24 // ******************************************* 25 // 26 // ------------------------------------------- 27 // 28 // Geant4 Class header file 29 // 30 // File name: G4PolarizedAnnihilation 31 // 32 // Author: A. Schaelicke on base of Vladimir 33 // 34 // Class Description: 35 // Polarized process of e+ annihilation into 36 // 37 // ------------------------------------------- 38 39 #ifndef G4PolarizedAnnihilation_h 40 #define G4PolarizedAnnihilation_h 1 41 42 #include "globals.hh" 43 #include "G4eplusAnnihilation.hh" 44 45 class G4PolarizedAnnihilationModel; 46 47 class G4PolarizedAnnihilation : public G4eplus 48 { 49 public: 50 explicit G4PolarizedAnnihilation(const G4Str 51 52 virtual ~G4PolarizedAnnihilation() override; 53 54 virtual void ProcessDescription(std::ostream 55 virtual void DumpInfo() const override { Pro 56 57 virtual G4double GetMeanFreePath(const G4Tra 58 G4double pr 59 G4ForceCond 60 61 virtual G4double PostStepGetPhysicalInteract 62 const G4Track& track, G4double previousSte 63 G4ForceCondition* condition) override; 64 65 virtual void BuildPhysicsTable(const G4Parti 66 67 G4PolarizedAnnihilation& operator=(const G4P 68 delete; 69 G4PolarizedAnnihilation(const G4PolarizedAnn 70 71 private: 72 void CleanTables(); 73 74 void BuildAsymmetryTables(const G4ParticleDe 75 76 G4double ComputeAsymmetry(G4double energy, c 77 const G4ParticleDe 78 G4double& tasm); 79 80 G4double ComputeSaturationFactor(const G4Tra 81 82 G4PolarizedAnnihilationModel* fEmModel; 83 84 // table for cross section asymmetry 85 G4PhysicsTable* fAsymmetryTable; 86 // table for transverse cross section asymme 87 G4PhysicsTable* fTransverseAsymmetryTable; 88 }; 89 90 #endif 91