Changeset 961 for trunk/source/processes/electromagnetic/lowenergy/include
- Timestamp:
- Apr 6, 2009, 12:21:12 PM (15 years ago)
- Location:
- trunk/source/processes/electromagnetic/lowenergy/include
- Files:
-
- 89 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/processes/electromagnetic/lowenergy/include/G4AtomicDeexcitation.hh
r819 r961 26 26 // 27 27 // $Id: G4AtomicTransitionManager.hh,v 1.2 ???? 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Authors: Elena Guardincerri (Elena.Guardincerri@ge.infn.it) -
trunk/source/processes/electromagnetic/lowenergy/include/G4AtomicShell.hh
r819 r961 26 26 // 27 27 // $Id: G4AtomicShell.hh,v 1.2 ???? 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Authors: Elena Guardincerri (Elena.Guardincerri@ge.infn.it) -
trunk/source/processes/electromagnetic/lowenergy/include/G4AtomicTransitionManager.hh
r819 r961 26 26 // 27 27 // $Id: G4AtomicTransitionManager.hh,v 1.2 ???? 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Authors: Elena Guardincerri (Elena.Guardincerri@ge.infn.it) -
trunk/source/processes/electromagnetic/lowenergy/include/G4AugerData.hh
r819 r961 25 25 // 26 26 // $Id: G4AugerData.hh 27 // GEANT4 tag $Name: $27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 28 28 // 29 29 // Author: Alfonso Mantero (Alfonso.Mantero@ge.infn.it) -
trunk/source/processes/electromagnetic/lowenergy/include/G4BremsstrahlungParameters.hh
r819 r961 26 26 // 27 27 // $Id: G4BremsstrahlungParameters.hh,v 1.10 2006/06/29 19:33:06 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) -
trunk/source/processes/electromagnetic/lowenergy/include/G4CompositeEMDataSet.hh
r819 r961 25 25 // 26 26 // 27 // $Id: G4CompositeEMDataSet.hh,v 1. 8 2006/06/29 19:33:08 gunterExp $28 // GEANT4 tag $Name: geant4-09-0 1-patch-02 $27 // $Id: G4CompositeEMDataSet.hh,v 1.12 2008/03/17 13:45:25 pia Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) … … 44 44 // ------------------------------------------------------------------- 45 45 46 #ifndef 47 #defineG4COMPOSITEEMDATASET_HH 146 #ifndef G4COMPOSITEEMDATASET_HH 47 #define G4COMPOSITEEMDATASET_HH 1 48 48 49 50 51 49 #include "globals.hh" 50 #include "G4VEMDataSet.hh" 51 #include <vector> 52 52 53 53 class G4VDataSetAlgorithm; 54 54 55 class G4CompositeEMDataSet : public G4VEMDataSet 56 { 57 public: 58 G4CompositeEMDataSet(G4VDataSetAlgorithm* argAlgorithm, G4double argUnitEnergies=MeV, G4double argUnitData=barn, G4int argMinZ=1, G4int argMaxZ=99); 59 virtual ~G4CompositeEMDataSet(); 55 class G4CompositeEMDataSet : public G4VEMDataSet 56 { 57 public: 58 G4CompositeEMDataSet(G4VDataSetAlgorithm* argAlgorithm, 59 G4double eUnit=MeV, 60 G4double dataUnit=barn, 61 G4int zMin=1, 62 G4int zMax=99); 63 64 virtual ~G4CompositeEMDataSet(); 60 65 61 virtual G4double FindValue(G4double argEnergy, G4int argComponentId=0) const;66 virtual G4double FindValue(G4double x, G4int componentId=0) const; 62 67 63 virtual voidPrintData(void) const;68 virtual void PrintData(void) const; 64 69 65 virtual const G4VEMDataSet * GetComponent(G4int argComponentId) const { return components[argComponentId]; }66 virtual void AddComponent(G4VEMDataSet * argDataSet) { components.push_back(argDataSet); }67 virtual size_t NumberOfComponents(void) const { return components.size(); }70 virtual const G4VEMDataSet* GetComponent(G4int componentId) const { return components[componentId]; } 71 virtual void AddComponent(G4VEMDataSet* dataSet) { components.push_back(dataSet); } 72 virtual size_t NumberOfComponents() const { return components.size(); } 68 73 69 virtual const G4DataVector & GetEnergies(G4int argComponentId) const { return GetComponent(argComponentId)->GetEnergies(0); }70 virtual const G4DataVector & GetData(G4int argComponentId) const { return GetComponent(argComponentId)->GetData(0); }71 virtual void SetEnergiesData(G4DataVector * argEnergies, G4DataVector * argData, G4int argComponentId);74 virtual const G4DataVector& GetEnergies(G4int componentId) const { return GetComponent(componentId)->GetEnergies(0); } 75 virtual const G4DataVector& GetData(G4int componentId) const { return GetComponent(componentId)->GetData(0); } 76 virtual void SetEnergiesData(G4DataVector* x, G4DataVector* data, G4int componentId); 72 77 73 virtual G4bool LoadData(const G4String & argFileName); 74 virtual G4bool SaveData(const G4String & argFileName) const; 78 virtual G4bool LoadData(const G4String& fileName); 79 virtual G4bool SaveData(const G4String& fileName) const; 80 81 virtual G4double RandomSelect(G4int componentId) const; 82 75 83 76 private: 77 void CleanUpComponents(void); 84 private: 85 86 void CleanUpComponents(void); 78 87 79 80 81 G4CompositeEMDataSet(const G4CompositeEMDataSet& copy);82 G4CompositeEMDataSet & operator=(const G4CompositeEMDataSet& right);88 // Hide copy constructor and assignment operator 89 G4CompositeEMDataSet(); 90 G4CompositeEMDataSet(const G4CompositeEMDataSet& copy); 91 G4CompositeEMDataSet& operator=(const G4CompositeEMDataSet& right); 83 92 84 std::vector<G4VEMDataSet *> components;// Owned pointers93 std::vector<G4VEMDataSet*> components; // Owned pointers 85 94 86 G4VDataSetAlgorithm *algorithm; // Owned pointer95 G4VDataSetAlgorithm* algorithm; // Owned pointer 87 96 88 G4doubleunitEnergies;89 G4doubleunitData;97 G4double unitEnergies; 98 G4double unitData; 90 99 91 G4intminZ;92 G4intmaxZ;93 100 G4int minZ; 101 G4int maxZ; 102 }; 94 103 #endif /* G4COMPOSITEEMDATASET_HH */ 95 104 -
trunk/source/processes/electromagnetic/lowenergy/include/G4CrossSectionChargeDecrease.hh
r819 r961 24 24 // ******************************************************************** 25 25 // 26 // 27 // $Id: G4CrossSectionChargeDecrease.hh,v 1.1 2007/11/08 18:24:04 pia Exp $ 28 // GEANT4 tag $Name: $ 29 // 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) 31 // 32 // History: 33 // ----------- 34 // Date Name Modification 35 // 28 Apr 2007 M.G. Pia Created in compliance with design described in TNS paper 36 // 37 // ------------------------------------------------------------------- 38 39 // Class description: 40 // Geant4-DNA Cross total cross section for electron elastic scattering in water 41 // Reference: TNS Geant4-DNA paper 42 // S. Chauvie et al., Geant4 physics processes for microdosimetry simulation: 43 // design foundation and implementation of the first set of models, 44 // IEEE Trans. Nucl. Sci., vol. 54, no. 6, Dec. 2007. 45 // Reference for implementation model: NIM. 155, pp. 145-156, 1978 46 // Further documentation available from http://www.ge.infn.it/geant4/dna 47 48 // ------------------------------------------------------------------- 49 26 // $Id: G4CrossSectionChargeDecrease.hh,v 1.2 2008/07/14 20:47:32 sincerti Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 50 28 51 29 #ifndef G4CROSSSECTIONCHARGEDECREASE_HH 52 30 #define G4CROSSSECTIONCHARGEDECREASE_HH 1 53 31 54 #include "globals.hh"55 #include <map>56 32 #include "G4CrossSectionChargeDecreasePartial.hh" 33 #include "G4Track.hh" 34 #include "G4Proton.hh" 35 #include "G4DNAGenericIonsManager.hh" 57 36 58 class G4Track;59 60 37 class G4CrossSectionChargeDecrease 61 38 { … … 68 45 G4double CrossSection(const G4Track&); 69 46 70 // Copy constructor and assignment operator to be added here71 72 47 private: 73 48 74 G4String name;75 49 G4double lowEnergyLimitDefault; 76 50 G4double highEnergyLimitDefault; -
trunk/source/processes/electromagnetic/lowenergy/include/G4CrossSectionChargeDecreasePartial.hh
r819 r961 24 24 // ******************************************************************** 25 25 // 26 // 27 // $Id: G4CrossSectionChargeDecreasePartial.hh,v 1.1 2007/11/08 18:24:04 pia Exp $ 28 // GEANT4 tag $Name: $ 29 // 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) 31 // 32 // History: 33 // ----------- 34 // Date Name Modification 35 // 28 Apr 2007 M.G. Pia Created in compliance with design described in TNS paper 36 // 08 Nov 2007 MGP Got code from S.I.; lowercase data member 37 // 38 // ------------------------------------------------------------------- 39 40 // Class description: 41 // Geant4-DNA Cross total cross section for electron elastic scattering in water 42 // Reference: TNS Geant4-DNA paper 43 // S. Chauvie et al., Geant4 physics processes for microdosimetry simulation: 44 // design foundation and implementation of the first set of models, 45 // IEEE Trans. Nucl. Sci., vol. 54, no. 6, Dec. 2007. 46 // Reference for implementation model: NIM. 155, pp. 145-156, 1978 47 // Further documentation available from http://www.ge.infn.it/geant4/dna 48 49 // ------------------------------------------------------------------- 50 26 // $Id: G4CrossSectionChargeDecreasePartial.hh,v 1.2 2008/07/14 20:47:32 sincerti Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 51 28 52 29 #ifndef G4CROSSSECTIONCHARGEDECREASEPARTIAL_HH 53 30 #define G4CROSSSECTIONCHARGEDECREASEPARTIAL_HH 1 54 31 55 #include "globals.hh" 32 #include "G4Proton.hh" 33 #include "G4DNAGenericIonsManager.hh" 34 #include "Randomize.hh" 56 35 57 36 class G4ParticleDefinition; … … 71 50 G4int RandomSelect(G4double energy, const G4ParticleDefinition* particle); 72 51 73 // Copy constructor and assignment operator to be added here74 75 52 private: 76 53 -
trunk/source/processes/electromagnetic/lowenergy/include/G4CrossSectionChargeIncrease.hh
r819 r961 24 24 // ******************************************************************** 25 25 // 26 // 27 // $Id: G4CrossSectionChargeIncrease.hh,v 1.1 2007/11/08 18:24:04 pia Exp $ 28 // GEANT4 tag $Name: $ 29 // 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) 31 // 32 // History: 33 // ----------- 34 // Date Name Modification 35 // 28 Apr 2007 M.G. Pia Created in compliance with design described in TNS paper 36 // 37 // ------------------------------------------------------------------- 38 39 // Class description: 40 // Geant4-DNA Cross total cross section for electron elastic scattering in water 41 // Reference: TNS Geant4-DNA paper 42 // S. Chauvie et al., Geant4 physics processes for microdosimetry simulation: 43 // design foundation and implementation of the first set of models, 44 // IEEE Trans. Nucl. Sci., vol. 54, no. 6, Dec. 2007. 45 // Reference for implementation model: NIM. 155, pp. 145-156, 1978 46 // Further documentation available from http://www.ge.infn.it/geant4/dna 47 48 // ------------------------------------------------------------------- 49 26 // $Id: G4CrossSectionChargeIncrease.hh,v 1.2 2008/07/14 20:47:33 sincerti Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 50 28 51 29 #ifndef G4CROSSSECTIONCHARGEIncrease_HH 52 30 #define G4CROSSSECTIONCHARGEIncrease_HH 1 53 31 54 #include "globals.hh"55 #include <map>56 32 #include "G4CrossSectionChargeIncreasePartial.hh" 33 #include "G4Track.hh" 34 #include "G4DNAGenericIonsManager.hh" 57 35 58 class G4Track;59 60 36 class G4CrossSectionChargeIncrease 61 37 { … … 68 44 G4double CrossSection(const G4Track&); 69 45 70 // Copy constructor and assignment operator to be added here71 72 46 private: 73 47 74 G4String name;75 48 G4double lowEnergyLimitDefault; 76 49 G4double highEnergyLimitDefault; -
trunk/source/processes/electromagnetic/lowenergy/include/G4CrossSectionChargeIncreasePartial.hh
r819 r961 24 24 // ******************************************************************** 25 25 // 26 // 27 // $Id: G4CrossSectionChargeIncreasePartial.hh,v 1.1 2007/11/08 18:24:04 pia Exp $ 28 // GEANT4 tag $Name: $ 29 // 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) 31 // 32 // History: 33 // ----------- 34 // Date Name Modification 35 // 28 Apr 2007 M.G. Pia Created in compliance with design described in TNS paper 36 // 37 // ------------------------------------------------------------------- 38 39 // Class description: 40 // Geant4-DNA Cross total cross section for electron elastic scattering in water 41 // Reference: TNS Geant4-DNA paper 42 // S. Chauvie et al., Geant4 physics processes for microdosimetry simulation: 43 // design foundation and implementation of the first set of models, 44 // IEEE Trans. Nucl. Sci., vol. 54, no. 6, Dec. 2007. 45 // Reference for implementation model: NIM. 155, pp. 145-156, 1978 46 // Further documentation available from http://www.ge.infn.it/geant4/dna 47 48 // ------------------------------------------------------------------- 49 26 // $Id: G4CrossSectionChargeIncreasePartial.hh,v 1.2 2008/07/14 20:47:33 sincerti Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 50 28 51 29 #ifndef G4CROSSSECTIONCHARGEIncreasePARTIAL_HH 52 30 #define G4CROSSSECTIONCHARGEIncreasePARTIAL_HH 1 53 31 54 #include "globals.hh" 55 56 class G4ParticleDefinition; 32 #include "G4DNAGenericIonsManager.hh" 33 #include "Randomize.hh" 57 34 58 35 class G4CrossSectionChargeIncreasePartial … … 70 47 G4int RandomSelect(G4double energy, const G4ParticleDefinition* particle); 71 48 72 // Copy constructor and assignment operator to be added here73 74 49 private: 75 50 -
trunk/source/processes/electromagnetic/lowenergy/include/G4CrossSectionElasticScreenedRutherford.hh
r819 r961 26 26 // 27 27 // $Id: G4CrossSectionElasticScreenedRutherford.hh,v 1.1 2007/10/12 23:07:10 pia Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) -
trunk/source/processes/electromagnetic/lowenergy/include/G4CrossSectionExcitationBorn.hh
r819 r961 24 24 // ******************************************************************** 25 25 // 26 // 27 // $Id: G4CrossSectionExcitationBorn.hh,v 1.1 2007/10/15 08:33:25 pia Exp $ 28 // GEANT4 tag $Name: $ 29 // 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) 31 // 32 // History: 33 // ----------- 34 // Date Name Modification 35 // 28 Apr 2007 M.G. Pia Created in compliance with design described in TNS paper 36 // 37 // ------------------------------------------------------------------- 38 39 // Class description: 40 // Geant4-DNA Cross total cross section for electron elastic scattering in water 41 // Reference: TNS Geant4-DNA paper 42 // S. Chauvie et al., Geant4 physics processes for microdosimetry simulation: 43 // design foundation and implementation of the first set of models, 44 // IEEE Trans. Nucl. Sci., vol. 54, no. 6, Dec. 2007. 45 // Reference for implementation model: NIM. 155, pp. 145-156, 1978 46 // Further documentation available from http://www.ge.infn.it/geant4/dna 47 48 // ------------------------------------------------------------------- 49 26 // $Id: G4CrossSectionExcitationBorn.hh,v 1.2 2008/07/14 20:47:34 sincerti Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 50 28 51 29 #ifndef G4CROSSSECTIONEXCITATIONBORN_HH 52 30 #define G4CROSSSECTIONEXCITATIONBORN_HH 1 53 31 54 #include "globals.hh"55 #include <vector>56 #include "G4WaterExcitationStructure.hh"57 32 #include "G4DNACrossSectionDataSet.hh" 33 #include "G4Track.hh" 34 #include "G4LogLogInterpolation.hh" 58 35 59 class G4Track;60 61 36 class G4CrossSectionExcitationBorn 62 37 { … … 69 44 G4double CrossSection(const G4Track& track); 70 45 71 // Copy constructor and assignment operator to be added here72 73 46 private: 74 47 75 G4String name;76 48 G4double lowEnergyLimit; 77 49 G4double highEnergyLimit; -
trunk/source/processes/electromagnetic/lowenergy/include/G4CrossSectionExcitationBornPartial.hh
r819 r961 24 24 // ******************************************************************** 25 25 // 26 // 27 // $Id: G4CrossSectionExcitationBornPartial.hh,v 1.1 2007/10/15 08:34:12 pia Exp $ 28 // GEANT4 tag $Name: $ 29 // 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) 31 // 32 // History: 33 // ----------- 34 // Date Name Modification 35 // 28 Apr 2007 M.G. Pia Created in compliance with design described in TNS paper 36 // 37 // ------------------------------------------------------------------- 38 39 // Class description: 40 // Geant4-DNA Cross total cross section for electron elastic scattering in water 41 // Reference: TNS Geant4-DNA paper 42 // S. Chauvie et al., Geant4 physics processes for microdosimetry simulation: 43 // design foundation and implementation of the first set of models, 44 // IEEE Trans. Nucl. Sci., vol. 54, no. 6, Dec. 2007. 45 // Reference for implementation model: NIM. 155, pp. 145-156, 1978 46 // Further documentation available from http://www.ge.infn.it/geant4/dna 47 48 // ------------------------------------------------------------------- 49 26 // $Id: G4CrossSectionExcitationBornPartial.hh,v 1.2 2008/07/14 20:47:34 sincerti Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 50 28 51 29 #ifndef G4CROSSSECTIONEXCITATIONBORNPARTIAL_HH 52 30 #define G4CROSSSECTIONEXCITATIONBORNPARTIAL_HH 1 53 31 54 #include "globals.hh"55 #include <vector>56 32 #include "G4DNACrossSectionDataSet.hh" 33 #include "G4LogLogInterpolation.hh" 34 #include "Randomize.hh" 35 #include <deque> 57 36 58 37 class G4CrossSectionExcitationBornPartial … … 64 43 virtual ~G4CrossSectionExcitationBornPartial(); 65 44 66 // Select an excitation level according to the partial cross sections67 45 G4int RandomSelect(G4double energy); 68 46 69 // Copy constructor and assignment operator to be added here70 71 47 private: 72 48 -
trunk/source/processes/electromagnetic/lowenergy/include/G4CrossSectionExcitationEmfietzoglou.hh
r819 r961 24 24 // ******************************************************************** 25 25 // 26 // 27 // $Id: G4CrossSectionExcitationEmfietzoglou.hh,v 1.2 2007/10/15 08:31:49 pia Exp $ 28 // GEANT4 tag $Name: $ 29 // 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) 31 // 32 // History: 33 // ----------- 34 // Date Name Modification 35 // 28 Apr 2007 M.G. Pia Created in compliance with design described in TNS paper 36 // 37 // ------------------------------------------------------------------- 38 39 // Class description: 40 // Geant4-DNA Cross total cross section for electron elastic scattering in water 41 // Reference: TNS Geant4-DNA paper 42 // S. Chauvie et al., Geant4 physics processes for microdosimetry simulation: 43 // design foundation and implementation of the first set of models, 44 // IEEE Trans. Nucl. Sci., vol. 54, no. 6, Dec. 2007. 45 // Reference for implementation model: NIM. 155, pp. 145-156, 1978 46 // Further documentation available from http://www.ge.infn.it/geant4/dna 47 48 // ------------------------------------------------------------------- 49 26 // $Id: G4CrossSectionExcitationEmfietzoglou.hh,v 1.3 2008/07/14 20:47:34 sincerti Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 50 28 51 29 #ifndef G4CROSSSECTIONEXCITATIONEMFIETZOGLOU_HH 52 30 #define G4CROSSSECTIONEXCITATIONEMFIETZOGLOU_HH 1 53 31 54 #include "globals.hh"55 32 #include "G4CrossSectionExcitationEmfietzoglouPartial.hh" 33 #include "G4Track.hh" 56 34 57 class G4Track;58 59 35 class G4CrossSectionExcitationEmfietzoglou 60 36 { … … 67 43 G4double CrossSection(const G4Track&); 68 44 69 // Copy constructor and assignment operator to be added here70 71 45 private: 72 46 73 G4String name;74 47 G4double lowEnergyLimit; 75 48 G4double highEnergyLimit; -
trunk/source/processes/electromagnetic/lowenergy/include/G4CrossSectionExcitationEmfietzoglouPartial.hh
r819 r961 24 24 // ******************************************************************** 25 25 // 26 // 27 // $Id: G4CrossSectionExcitationEmfietzoglouPartial.hh,v 1.1 2007/10/15 08:33:25 pia Exp $ 28 // GEANT4 tag $Name: $ 29 // 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) 31 // 32 // History: 33 // ----------- 34 // Date Name Modification 35 // 28 Apr 2007 M.G. Pia Created in compliance with design described in TNS paper 36 // 37 // ------------------------------------------------------------------- 38 39 // Class description: 40 // Geant4-DNA Cross total cross section for electron elastic scattering in water 41 // Reference: TNS Geant4-DNA paper 42 // S. Chauvie et al., Geant4 physics processes for microdosimetry simulation: 43 // design foundation and implementation of the first set of models, 44 // IEEE Trans. Nucl. Sci., vol. 54, no. 6, Dec. 2007. 45 // Reference for implementation model: NIM. 155, pp. 145-156, 1978 46 // Further documentation available from http://www.ge.infn.it/geant4/dna 47 48 // ------------------------------------------------------------------- 49 26 // $Id: G4CrossSectionExcitationEmfietzoglouPartial.hh,v 1.2 2008/07/14 20:47:34 sincerti Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 50 28 51 29 #ifndef G4CROSSSECTIONEXCITATIONEMFIETZOGLOUPARTIAL_HH 52 30 #define G4CROSSSECTIONEXCITATIONEMFIETZOGLOUPARTIAL_HH 1 53 31 54 #include "globals.hh"55 #include <vector>56 32 #include "G4WaterExcitationStructure.hh" 33 #include <deque> 34 #include "Randomize.hh" 57 35 58 36 class G4Track; … … 72 50 G4int RandomSelect(G4double energy); 73 51 74 // Copy constructor and assignment operator to be added here75 76 52 private: 77 53 78 // Number of excitation levels of the water molecule79 54 G4int nLevels; 80 55 -
trunk/source/processes/electromagnetic/lowenergy/include/G4CrossSectionExcitationMillerGreen.hh
r819 r961 24 24 // ******************************************************************** 25 25 // 26 // 27 // $Id: G4CrossSectionExcitationMillerGreen.hh,v 1.2 2007/11/08 19:56:02 pia Exp $ 28 // GEANT4 tag $Name: $ 29 // 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) 31 // 32 // History: 33 // ----------- 34 // Date Name Modification 35 // 28 Apr 2007 M.G. Pia Created in compliance with design described in TNS paper 36 // 37 // ------------------------------------------------------------------- 38 39 // Class description: 40 // Geant4-DNA Cross total cross section for electron elastic scattering in water 41 // Reference: TNS Geant4-DNA paper 42 // S. Chauvie et al., Geant4 physics processes for microdosimetry simulation: 43 // design foundation and implementation of the first set of models, 44 // IEEE Trans. Nucl. Sci., vol. 54, no. 6, Dec. 2007. 45 // Reference for implementation model: NIM. 155, pp. 145-156, 1978 46 // Further documentation available from http://www.ge.infn.it/geant4/dna 47 48 // ------------------------------------------------------------------- 49 26 // $Id: G4CrossSectionExcitationMillerGreen.hh,v 1.3 2008/07/14 20:47:34 sincerti Exp $ 50 27 51 28 #ifndef G4CROSSSECTIONEXCITATIONMILLERGREEN_HH 52 29 #define G4CROSSSECTIONEXCITATIONMILLERGREEN_HH 1 53 30 54 #include "globals.hh"55 #include <map>56 31 #include "G4CrossSectionExcitationMillerGreenPartial.hh" 57 58 class G4Track; 32 #include "G4Track.hh" 33 #include "G4Proton.hh" 34 #include "G4CrossSectionExcitationEmfietzoglouPartial.hh" 35 #include "G4DNAGenericIonsManager.hh" 59 36 60 37 class G4CrossSectionExcitationMillerGreen … … 68 45 G4double CrossSection(const G4Track&); 69 46 70 // Copy constructor and assignment operator to be added here71 72 47 private: 73 48 74 G4String name;75 49 G4double lowEnergyLimitDefault; 76 50 G4double highEnergyLimitDefault; … … 80 54 81 55 G4CrossSectionExcitationMillerGreenPartial partialCrossSection; 82 83 56 }; 84 57 -
trunk/source/processes/electromagnetic/lowenergy/include/G4CrossSectionExcitationMillerGreenPartial.hh
r819 r961 24 24 // ******************************************************************** 25 25 // 26 // 27 // $Id: G4CrossSectionExcitationMillerGreenPartial.hh,v 1.1 2007/11/08 19:56:02 pia Exp $ 28 // GEANT4 tag $Name: $ 29 // 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) 31 // 32 // History: 33 // ----------- 34 // Date Name Modification 35 // 28 Apr 2007 M.G. Pia Created in compliance with design described in TNS paper 36 // 37 // ------------------------------------------------------------------- 38 39 // Class description: 40 // Geant4-DNA Cross total cross section for electron elastic scattering in water 41 // Reference: TNS Geant4-DNA paper 42 // S. Chauvie et al., Geant4 physics processes for microdosimetry simulation: 43 // design foundation and implementation of the first set of models, 44 // IEEE Trans. Nucl. Sci., vol. 54, no. 6, Dec. 2007. 45 // Reference for implementation model: NIM. 155, pp. 145-156, 1978 46 // Further documentation available from http://www.ge.infn.it/geant4/dna 47 48 // ------------------------------------------------------------------- 49 26 // $Id: G4CrossSectionExcitationMillerGreenPartial.hh,v 1.2 2008/07/14 20:47:34 sincerti Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 50 28 51 29 #ifndef G4CROSSSECTIONEXCITATIONMILLERGREENPARTIAL_HH 52 30 #define G4CROSSSECTIONEXCITATIONMILLERGREENPARTIAL_HH 1 53 31 54 #include "globals.hh"55 #include <vector>56 32 #include "G4WaterExcitationStructure.hh" 57 #include "G4ParticleDefinition.hh" 33 #include "G4Track.hh" 34 #include "G4Proton.hh" 35 #include "G4DNAGenericIonsManager.hh" 36 #include "G4CrossSectionExcitationEmfietzoglouPartial.hh" 37 #include "Randomize.hh" 58 38 59 class G4Track;60 61 39 class G4CrossSectionExcitationMillerGreenPartial 62 40 { … … 73 51 G4int RandomSelect(G4double energy, const G4ParticleDefinition* particle); 74 52 75 // Copy constructor and assignment operator to be added here76 77 53 private: 78 54 79 // Number of excitation levels of the water molecule80 55 G4int nLevels; 81 56 -
trunk/source/processes/electromagnetic/lowenergy/include/G4CrossSectionHandler.hh
r819 r961 26 26 // 27 27 // $Id: G4CrossSectionHandler.hh,v 1.9 2006/06/29 19:33:10 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) -
trunk/source/processes/electromagnetic/lowenergy/include/G4CrossSectionIonisationBorn.hh
r819 r961 25 25 // 26 26 // 27 // $Id: G4CrossSectionIonisationBorn.hh,v 1.1 2007/10/22 09:12:58 pia Exp $ 28 // GEANT4 tag $Name: $ 29 // 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) 31 // 32 // History: 33 // ----------- 34 // Date Name Modification 35 // 28 Apr 2007 M.G. Pia Created in compliance with design described in TNS paper 36 // 37 // ------------------------------------------------------------------- 38 39 // Class description: 40 // Geant4-DNA Cross total cross section for ionisation cross section in water 41 // Reference: TNS Geant4-DNA paper 42 // S. Chauvie et al., Geant4 physics processes for microdosimetry simulation: 43 // design foundation and implementation of the first set of models, 44 // IEEE Trans. Nucl. Sci., vol. 54, no. 6, Dec. 2007. 45 // Reference for implementation model: NIM. 155, pp. 145-156, 1978 46 // Further documentation available from http://www.ge.infn.it/geant4/dna 47 48 // ------------------------------------------------------------------- 49 27 // $Id: G4CrossSectionIonisationBorn.hh,v 1.3 2008/12/18 13:01:22 gunter Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 50 29 51 30 #ifndef G4CROSSSECTIONIONISATIONBORN_HH 52 31 #define G4CROSSSECTIONIONISATIONBORN_HH 1 53 32 54 #include "globals.hh"55 #include <map>56 33 #include "G4DNACrossSectionDataSet.hh" 34 #include "G4ParticleDefinition.hh" 35 #include "G4Electron.hh" 36 #include "G4Proton.hh" 37 #include "G4Track.hh" 38 #include "G4LogLogInterpolation.hh" 57 39 58 class G4Track;59 60 40 class G4CrossSectionIonisationBorn 61 41 { … … 68 48 G4double CrossSection(const G4Track& track); 69 49 70 // Copy constructor and assignment operator to be added here71 72 50 private: 73 51 74 G4String name;75 52 G4double lowEnergyLimitDefault; 76 53 G4double highEnergyLimitDefault; -
trunk/source/processes/electromagnetic/lowenergy/include/G4CrossSectionIonisationBornElectron.hh
r819 r961 26 26 // 27 27 // $Id: G4CrossSectionIonisationBornElectron.hh,v 1.1 2007/10/15 08:33:25 pia Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) -
trunk/source/processes/electromagnetic/lowenergy/include/G4CrossSectionIonisationBornPartial.hh
r819 r961 24 24 // ******************************************************************** 25 25 // 26 // 27 // $Id: G4CrossSectionIonisationBornPartial.hh,v 1.1 2007/10/22 09:12:58 pia Exp $ 28 // GEANT4 tag $Name: $ 29 // 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) 31 // 32 // History: 33 // ----------- 34 // Date Name Modification 35 // 28 Apr 2007 M.G. Pia Created in compliance with design described in TNS paper 36 // 37 // ------------------------------------------------------------------- 38 39 // Class description: 40 // Geant4-DNA Cross total cross section for ionisation cross section in water 41 // Reference: TNS Geant4-DNA paper 42 // S. Chauvie et al., Geant4 physics processes for microdosimetry simulation: 43 // design foundation and implementation of the first set of models, 44 // IEEE Trans. Nucl. Sci., vol. 54, no. 6, Dec. 2007. 45 // Reference for implementation model: NIM. 155, pp. 145-156, 1978 46 // Further documentation available from http://www.ge.infn.it/geant4/dna 47 48 // ------------------------------------------------------------------- 49 26 // $Id: G4CrossSectionIonisationBornPartial.hh,v 1.2 2008/07/14 20:47:34 sincerti Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 50 28 51 29 #ifndef G4CROSSSECTIONIONISATIONBORNPARTIAL_HH 52 30 #define G4CROSSSECTIONIONISATIONBORNPARTIAL_HH 1 53 31 54 #include "globals.hh"55 #include <map>56 #include <functional>57 32 #include "G4DNACrossSectionDataSet.hh" 33 #include "G4Electron.hh" 34 #include "G4Proton.hh" 35 #include "G4Track.hh" 36 #include "G4LogLogInterpolation.hh" 37 #include "Randomize.hh" 58 38 59 class G4Track;60 61 39 class G4CrossSectionIonisationBornPartial 62 40 { … … 67 45 ~G4CrossSectionIonisationBornPartial(); 68 46 69 // Partial cross section70 // G4double CrossSection(G4double energy, const G4String& particle);71 47 G4double CrossSection(const G4Track& track); 72 48 73 // Sum of partial cross sections at a given energy value for a particle type74 49 G4double Sum(G4double energy, const G4String& particle); 75 50 76 51 G4int RandomSelect(G4double energy,const G4String& particle ); 77 52 78 // Copy constructor and assignment operator to be added here79 80 53 private: 81 54 82 G4String name;83 55 G4double lowEnergyLimitDefault; 84 56 G4double highEnergyLimitDefault; … … 93 65 MapData tableData; 94 66 95 96 97 // G4DNACrossSectionDataSet* table;98 99 67 }; 100 68 -
trunk/source/processes/electromagnetic/lowenergy/include/G4CrossSectionIonisationBornPartialElectron.hh
r819 r961 26 26 // 27 27 // $Id: G4CrossSectionIonisationBornPartialElectron.hh,v 1.1 2007/10/15 08:33:25 pia Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) -
trunk/source/processes/electromagnetic/lowenergy/include/G4CrossSectionIonisationRudd.hh
r819 r961 24 24 // ******************************************************************** 25 25 // 26 // 27 // $Id: G4CrossSectionIonisationRudd.hh,v 1.1 2007/11/08 21:35:31 pia Exp $ 28 // GEANT4 tag $Name: $ 29 // 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) 31 // 32 // History: 33 // ----------- 34 // Date Name Modification 35 // 28 Apr 2007 M.G. Pia Created in compliance with design described in TNS paper 36 // 37 // ------------------------------------------------------------------- 38 39 // Class description: 40 // Geant4-DNA Cross total cross section for ionisation cross section in water 41 // Reference: TNS Geant4-DNA paper 42 // S. Chauvie et al., Geant4 physics processes for microdosimetry simulation: 43 // design foundation and implementation of the first set of models, 44 // IEEE Trans. Nucl. Sci., vol. 54, no. 6, Dec. 2007. 45 // Reference for implementation model: NIM. 155, pp. 145-156, 1978 46 // Further documentation available from http://www.ge.infn.it/geant4/dna 47 48 // ------------------------------------------------------------------- 49 26 // $Id: G4CrossSectionIonisationRudd.hh,v 1.2 2008/07/14 20:47:34 sincerti Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 50 28 51 29 #ifndef G4CROSSSECTIONIONISATIONRUDD_HH 52 30 #define G4CROSSSECTIONIONISATIONRUDD_HH 1 53 31 54 #include "globals.hh"55 #include <map>56 32 #include "G4DNACrossSectionDataSet.hh" 33 #include "G4Proton.hh" 34 #include "G4Track.hh" 35 #include "G4LogLogInterpolation.hh" 36 #include "G4DNAGenericIonsManager.hh" 57 37 58 class G4Track;59 60 38 class G4CrossSectionIonisationRudd 61 39 { … … 68 46 G4double CrossSection(const G4Track& track); 69 47 70 // Copy constructor and assignment operator to be added here71 72 48 private: 73 49 74 G4String name;75 50 G4double lowEnergyLimitDefault; 76 51 G4double highEnergyLimitDefault; -
trunk/source/processes/electromagnetic/lowenergy/include/G4CrossSectionIonisationRuddPartial.hh
r819 r961 24 24 // ******************************************************************** 25 25 // 26 // 27 // $Id: G4CrossSectionIonisationRuddPartial.hh,v 1.1 2007/11/08 21:35:31 pia Exp $ 28 // GEANT4 tag $Name: $ 29 // 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) 31 // 32 // History: 33 // ----------- 34 // Date Name Modification 35 // 28 Apr 2007 M.G. Pia Created in compliance with design described in TNS paper 36 // 37 // ------------------------------------------------------------------- 38 39 // Class description: 40 // Geant4-DNA Cross total cross section for ionisation cross section in water 41 // Reference: TNS Geant4-DNA paper 42 // S. Chauvie et al., Geant4 physics processes for microdosimetry simulation: 43 // design foundation and implementation of the first set of models, 44 // IEEE Trans. Nucl. Sci., vol. 54, no. 6, Dec. 2007. 45 // Reference for implementation model: NIM. 155, pp. 145-156, 1978 46 // Further documentation available from http://www.ge.infn.it/geant4/dna 47 48 // ------------------------------------------------------------------- 49 26 // $Id: G4CrossSectionIonisationRuddPartial.hh,v 1.2 2008/07/14 20:47:34 sincerti Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 50 28 51 29 #ifndef G4CROSSSECTIONIONISATIONRuddPARTIAL_HH 52 30 #define G4CROSSSECTIONIONISATIONRuddPARTIAL_HH 1 53 31 54 #include "globals.hh"55 #include <map>56 #include <functional>57 32 #include "G4DNACrossSectionDataSet.hh" 58 59 class G4Track; 33 #include "G4Proton.hh" 34 #include "G4Track.hh" 35 #include "G4LogLogInterpolation.hh" 36 #include "G4DNAGenericIonsManager.hh" 37 #include "Randomize.hh" 60 38 61 39 class G4CrossSectionIonisationRuddPartial … … 67 45 ~G4CrossSectionIonisationRuddPartial(); 68 46 69 // Partial cross section70 // G4double CrossSection(G4double energy, const G4String& particle);71 47 G4double CrossSection(const G4Track& track); 72 48 73 // Sum of partial cross sections at a given energy value for a particle type74 49 G4double Sum(G4double energy, const G4String& particle); 75 50 76 51 G4int RandomSelect(G4double energy,const G4String& particle ); 77 52 78 // Copy constructor and assignment operator to be added here79 80 53 private: 81 54 82 G4String name;83 55 G4double lowEnergyLimitDefault; 84 56 G4double highEnergyLimitDefault; … … 92 64 typedef std::map<G4String,G4DNACrossSectionDataSet*,std::less<G4String> > MapData; 93 65 MapData tableData; 94 95 96 97 // G4DNACrossSectionDataSet* table;98 99 66 }; 100 67 -
trunk/source/processes/electromagnetic/lowenergy/include/G4CrossSectionKill.hh
r819 r961 26 26 // 27 27 // $Id: G4CrossSectionKill.hh,v 1.1 2007/11/09 20:26:47 pia Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) -
trunk/source/processes/electromagnetic/lowenergy/include/G4DNACrossSectionDataSet.hh
r819 r961 25 25 // 26 26 // 27 // $Id: G4DNACrossSectionDataSet.hh,v 1. 4 2007/10/15 08:31:49pia Exp $28 // GEANT4 tag $Name: geant4-09-0 1-patch-02 $27 // $Id: G4DNACrossSectionDataSet.hh,v 1.6 2008/03/17 13:45:25 pia Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Author: Riccardo Capra <capra@ge.infn.it> … … 45 45 // ------------------------------------------------------------------- 46 46 47 #ifndef 48 47 #ifndef G4DNACROSSSECTIONDATASET_HH 48 #define G4DNACROSSSECTIONDATASET_HH 1 49 49 50 50 #include "G4ShellEMDataSet.hh" 51 51 52 class G4DNACrossSectionDataSet : public G4VEMDataSet 53 { 54 public: 55 G4DNACrossSectionDataSet(G4VDataSetAlgorithm* argAlgorithm, 56 G4double argUnitEnergies=MeV, 57 G4double argUnitData=barn); 52 class G4DNACrossSectionDataSet : public G4VEMDataSet 53 { 58 54 59 virtual ~G4DNACrossSectionDataSet(); 55 public: 56 G4DNACrossSectionDataSet(G4VDataSetAlgorithm* algo, 57 G4double xUnit=MeV, 58 G4double dataUnit=barn); 60 59 61 virtual G4double FindValue(G4double argEnergy, G4int argComponentId=0) const; 60 virtual ~G4DNACrossSectionDataSet(); 61 62 virtual G4double FindValue(G4double e, G4int componentId=0) const; 62 63 63 64 virtual void PrintData(void) const; 64 65 65 virtual const G4VEMDataSet* GetComponent(G4int argComponentId) const66 { return components[argComponentId]; }66 virtual const G4VEMDataSet* GetComponent(G4int componentId) const 67 { return components[componentId]; } 67 68 68 virtual void AddComponent(G4VEMDataSet * argDataSet) 69 { components.push_back(argDataSet); } 70 virtual size_t NumberOfComponents(void) const 71 { return components.size(); } 69 virtual void AddComponent(G4VEMDataSet* dataSet) 70 { components.push_back(dataSet); } 72 71 73 virtual const G4DataVector& GetEnergies(G4int argComponentId) const74 { return GetComponent(argComponentId)->GetEnergies(0); }72 virtual size_t NumberOfComponents(void) const 73 { return components.size(); } 75 74 76 virtual const G4DataVector& GetData(G4int argComponentId) const77 { return GetComponent(argComponentId)->GetData(0); }75 virtual const G4DataVector& GetEnergies(G4int componentId) const 76 { return GetComponent(componentId)->GetEnergies(0); } 78 77 79 virtual void SetEnergiesData(G4DataVector* argEnergies, G4DataVector* argData, G4int argComponentId); 78 virtual const G4DataVector& GetData(G4int componentId) const 79 { return GetComponent(componentId)->GetData(0); } 80 80 81 virtual G4bool LoadData(const G4String & argFileName); 82 virtual G4bool SaveData(const G4String & argFileName) const; 81 virtual void SetEnergiesData(G4DataVector* x, G4DataVector* values, G4int componentId); 83 82 84 // void CleanUpComponents(); 83 virtual G4bool LoadData(const G4String & argFileName); 84 virtual G4bool SaveData(const G4String & argFileName) const; 85 86 virtual G4double RandomSelect(G4int /*componentId */) const { return -1.; }; 87 88 89 // void CleanUpComponents(); 85 90 86 91 private: 87 92 88 93 G4String FullFileName(const G4String & argFileName) const; 89 94 90 91 92 93 95 // Hide copy constructor and assignment operator 96 G4DNACrossSectionDataSet(); 97 G4DNACrossSectionDataSet(const G4DNACrossSectionDataSet & copy); 98 G4DNACrossSectionDataSet& operator=(const G4DNACrossSectionDataSet & right); 94 99 95 100 std::vector<G4VEMDataSet*> components; // Owned pointers 96 101 97 102 G4int z; 98 103 99 104 G4VDataSetAlgorithm* algorithm; // Owned pointer 100 105 101 102 106 G4double unitEnergies; 107 G4double unitData; 103 108 104 105 106 109 G4double GetUnitEnergies() const { return unitEnergies; } 110 G4double GetUnitData() const { return unitData; } 111 const G4VDataSetAlgorithm* GetAlgorithm() const { return algorithm; } 107 112 108 113 void CleanUpComponents(void); 109 114 110 115 -
trunk/source/processes/electromagnetic/lowenergy/include/G4DNAGenericIonsManager.hh
r819 r961 26 26 // 27 27 // $Id: G4DNAGenericIonsManager.hh,v 1.3 2006/06/29 19:34:16 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 30 30 #ifndef G4DNAGENERICIONSMANAGER_HH -
trunk/source/processes/electromagnetic/lowenergy/include/G4DNAProcess.hh
r819 r961 26 26 // 27 27 // $Id: G4DNAProcess.hh,v 1.5 2007/11/09 16:20:04 pia Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Author: Maria Grazia Pia (Maria.Grazia.Pia@ge.infn.it) -
trunk/source/processes/electromagnetic/lowenergy/include/G4DNAProcess.icc
r819 r961 25 25 // 26 26 // 27 // $Id: G4DNAProcess.icc,v 1.1 1 2007/12/10 16:31:19 gunterExp $28 // GEANT4 tag $Name: $27 // $Id: G4DNAProcess.icc,v 1.12 2009/01/20 07:50:28 sincerti Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) … … 111 111 aParticleChange.ProposeEnergy(0.); 112 112 aParticleChange.ProposeMomentumDirection( 0., 0., 0. ); 113 aParticleChange.ProposeLocalEnergyDeposit(track.GetKineticEnergy() + deposit); 114 113 114 if (product.PrimaryParticleIsKilledAndDoNotDepositEnergy()) 115 { 116 aParticleChange.ProposeLocalEnergyDeposit(deposit); 117 } 118 else 119 { 120 aParticleChange.ProposeLocalEnergyDeposit(track.GetKineticEnergy() + deposit); 121 } 122 115 123 } 116 124 else -
trunk/source/processes/electromagnetic/lowenergy/include/G4DummyFinalState.hh
r819 r961 26 26 // 27 27 // $Id: G4DummyFinalState.hh,v 1.2 2007/10/07 12:52:18 pia Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) -
trunk/source/processes/electromagnetic/lowenergy/include/G4EMDataSet.hh
r819 r961 25 25 // 26 26 // 27 // $Id: G4EMDataSet.hh,v 1. 7 2006/06/29 19:35:31 gunterExp $28 // GEANT4 tag $Name: geant4-09-0 1-patch-02 $27 // $Id: G4EMDataSet.hh,v 1.12 2008/03/17 13:45:25 pia Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) … … 45 45 46 46 #ifndef G4EMDATASET_HH 47 47 #define G4EMDATASET_HH 1 48 48 49 50 49 #include "globals.hh" 50 #include "G4VEMDataSet.hh" 51 51 52 52 class G4VDataSetAlgorithm; 53 53 54 class G4EMDataSet : public G4VEMDataSet 55 { 56 public: 57 G4EMDataSet(G4int argZ, G4VDataSetAlgorithm * argAlgorithm, G4double argUnitEnergies=MeV, G4double argUnitData=barn); 58 G4EMDataSet(G4int argZ, G4DataVector * argEnergies, G4DataVector * argData, G4VDataSetAlgorithm * argAlgorithm, G4double argUnitEnergues=MeV, G4double argUnitData=barn); 59 virtual ~G4EMDataSet(); 54 class G4EMDataSet : public G4VEMDataSet 55 { 56 public: 57 G4EMDataSet(G4int argZ, 58 G4VDataSetAlgorithm* algo, 59 G4double xUnit=MeV, 60 G4double yUnit=barn, 61 G4bool random=false); 62 63 G4EMDataSet(G4int argZ, 64 G4DataVector* xData, 65 G4DataVector* data, 66 G4VDataSetAlgorithm* algo, 67 G4double xUnit=MeV, 68 G4double yUnit=barn, 69 G4bool random=false); 70 71 virtual ~G4EMDataSet(); 60 72 61 virtual G4double FindValue(G4double argEnergy, G4int argComponentId=0) const;73 virtual G4double FindValue(G4double x, G4int componentId=0) const; 62 74 63 virtual voidPrintData(void) const;75 virtual void PrintData(void) const; 64 76 65 virtual const G4VEMDataSet * GetComponent(G4int /* argComponentId */) const { return 0; } 66 virtual void AddComponent(G4VEMDataSet * /* argDataSet */) {} 67 virtual size_t NumberOfComponents(void) const { return 0; } 77 virtual const G4VEMDataSet* GetComponent(G4int /* componentId */) const { return 0; } 68 78 69 virtual const G4DataVector & GetEnergies(G4int /* argComponentId */) const { return *energies; } 70 virtual const G4DataVector & GetData(G4int /* argComponentId */) const { return *data; } 71 virtual void SetEnergiesData(G4DataVector * argEnergies, G4DataVector * argData, G4int argComponentId); 79 virtual void AddComponent(G4VEMDataSet* /* dataSet */) {} 72 80 73 virtual G4bool LoadData(const G4String & argFileName); 74 virtual G4bool SaveData(const G4String & argFileName) const; 75 76 private: 77 size_t FindLowerBound(G4double argEnergy) const; 78 79 G4String FullFileName(const G4String & argFileName) const; 81 virtual size_t NumberOfComponents(void) const { return 0; } 80 82 81 // Hide copy constructor and assignment operator 82 G4EMDataSet(); 83 G4EMDataSet(const G4EMDataSet & copy); 84 G4EMDataSet & operator=(const G4EMDataSet & right); 83 virtual const G4DataVector& GetEnergies(G4int /* componentId */) const { return *energies; } 84 virtual const G4DataVector& GetData(G4int /* componentId */) const { return *data; } 85 virtual void SetEnergiesData(G4DataVector* xData, G4DataVector* data, G4int componentId); 85 86 86 G4int z; 87 virtual G4bool LoadData(const G4String& fileName); 88 virtual G4bool SaveData(const G4String& fileName) const; 87 89 88 G4DataVector * energies; // Owned pointer89 G4DataVector * data; // Owned pointer90 virtual G4double RandomSelect(G4int componentId = 0) const; 91 90 92 91 G4VDataSetAlgorithm * algorithm; // Owned pointer 93 private: 94 95 size_t FindLowerBound(G4double energy) const; 96 size_t FindLowerBound(G4double x, G4DataVector* values) const; 97 98 G4double IntegrationFunction(G4double x); 99 100 virtual void BuildPdf(); 92 101 93 G4double unitEnergies; 94 G4double unitData; 95 }; 102 G4String FullFileName(const G4String& fileName) const; 103 104 // Hide copy constructor and assignment operator 105 G4EMDataSet(); 106 G4EMDataSet(const G4EMDataSet& copy); 107 G4EMDataSet& operator=(const G4EMDataSet& right); 108 109 G4int z; 110 111 G4DataVector* energies; // Owned pointer 112 G4DataVector* data; // Owned pointer 113 114 G4VDataSetAlgorithm* algorithm; // Owned pointer 115 116 G4double unitEnergies; 117 G4double unitData; 118 119 G4DataVector* pdf; 120 G4bool randomSet; 121 }; 96 122 #endif /* G4EMDATASET_HH */ -
trunk/source/processes/electromagnetic/lowenergy/include/G4FinalStateChargeDecrease.hh
r819 r961 24 24 // ******************************************************************** 25 25 // 26 // 27 // $Id: G4FinalStateChargeDecrease.hh,v 1.1 2007/11/08 18:24:04 pia Exp $ 28 // GEANT4 tag $Name: $ 29 // 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) 31 // 32 // History: 33 // ----------- 34 // Date Name Modification 35 // 28 Apr 2007 M.G. Pia Created in compliance with design described in TNS paper 36 // 37 // ------------------------------------------------------------------- 38 39 // Class description: 40 // Geant4-DNA Cross total cross section for electron elastic scattering in water 41 // Reference: TNS Geant4-DNA paper 42 // Reference: TNS Geant4-DNA paper 43 // S. Chauvie et al., Geant4 physics processes for microdosimetry simulation: 44 // design foundation and implementation of the first set of models, 45 // IEEE Trans. Nucl. Sci., vol. 54, no. 6, Dec. 2007. 46 // Reference for implementation model: NIM. 155, pp. 145-156, 1978 47 // Further documentation available from http://www.ge.infn.it/geant4/dna 48 49 // ------------------------------------------------------------------- 50 26 // $Id: G4FinalStateChargeDecrease.hh,v 1.2 2008/07/14 20:47:34 sincerti Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 51 28 52 29 #ifndef G4FINALSTATECHARGEDECREASE_HH 53 30 #define G4FINALSTATECHARGEDECREASE_HH 1 54 31 55 #include "globals.hh"56 32 #include "G4FinalStateProduct.hh" 57 //#include "G4WaterExcitationStructure.hh"58 33 #include "G4CrossSectionChargeDecreasePartial.hh" 59 34 60 class G4Track; 61 class G4Step; 62 63 class G4FinalStateChargeDecrease 64 { 35 class G4FinalStateChargeDecrease 36 { 65 37 public: 66 38 … … 73 45 private: 74 46 75 // Copy constructor and assignment operator to be added here76 77 G4String name;78 47 G4double lowEnergyLimit; 79 48 G4double highEnergyLimit; … … 89 58 }; 90 59 91 92 60 #endif -
trunk/source/processes/electromagnetic/lowenergy/include/G4FinalStateChargeIncrease.hh
r819 r961 24 24 // ******************************************************************** 25 25 // 26 // 27 // $Id: G4FinalStateChargeIncrease.hh,v 1.1 2007/11/08 18:24:04 pia Exp $ 28 // GEANT4 tag $Name: $ 29 // 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) 31 // 32 // History: 33 // ----------- 34 // Date Name Modification 35 // 28 Apr 2007 M.G. Pia Created in compliance with design described in TNS paper 36 // 37 // ------------------------------------------------------------------- 38 39 // Class description: 40 // Geant4-DNA Cross total cross section for electron elastic scattering in water 41 // Reference: TNS Geant4-DNA paper 42 // Reference: TNS Geant4-DNA paper 43 // S. Chauvie et al., Geant4 physics processes for microdosimetry simulation: 44 // design foundation and implementation of the first set of models, 45 // IEEE Trans. Nucl. Sci., vol. 54, no. 6, Dec. 2007. 46 // Reference for implementation model: NIM. 155, pp. 145-156, 1978 47 // Further documentation available from http://www.ge.infn.it/geant4/dna 48 49 // ------------------------------------------------------------------- 50 26 // $Id: G4FinalStateChargeIncrease.hh,v 1.2 2008/07/14 20:47:34 sincerti Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 51 28 52 29 #ifndef G4FINALSTATECHARGEIncrease_HH 53 30 #define G4FINALSTATECHARGEIncrease_HH 1 54 31 55 #include "globals.hh"56 32 #include "G4FinalStateProduct.hh" 57 33 #include "G4CrossSectionChargeIncreasePartial.hh" 34 #include "G4Electron.hh" 35 #include "G4Proton.hh" 58 36 59 class G4Track; 60 class G4Step; 61 62 class G4FinalStateChargeIncrease 63 { 37 class G4FinalStateChargeIncrease 38 { 64 39 public: 65 40 … … 72 47 private: 73 48 74 // Copy constructor and assignment operator to be added here75 76 G4String name;77 49 G4double lowEnergyLimit; 78 50 G4double highEnergyLimit; … … 89 61 }; 90 62 91 92 63 #endif -
trunk/source/processes/electromagnetic/lowenergy/include/G4FinalStateElasticBrennerZaider.hh
r819 r961 24 24 // ******************************************************************** 25 25 // 26 // 27 // $Id: G4FinalStateElasticBrennerZaider.hh,v 1.1 2007/10/12 23:07:10 pia Exp $ 28 // GEANT4 tag $Name: $ 29 // 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) 31 // 32 // History: 33 // ----------- 34 // Date Name Modification 35 // 28 Apr 2007 M.G. Pia Created in compliance with design described in TNS paper 36 // 37 // ------------------------------------------------------------------- 38 39 // Class description: 40 // Geant4-DNA Cross total cross section for electron elastic scattering in water 41 // Reference: TNS Geant4-DNA paper 42 // Reference: TNS Geant4-DNA paper 43 // S. Chauvie et al., Geant4 physics processes for microdosimetry simulation: 44 // design foundation and implementation of the first set of models, 45 // IEEE Trans. Nucl. Sci., vol. 54, no. 6, Dec. 2007. 46 // Reference for implementation model: NIM. 155, pp. 145-156, 1978 47 // Further documentation available from http://www.ge.infn.it/geant4/dna 48 49 // ------------------------------------------------------------------- 50 26 // $Id: G4FinalStateElasticBrennerZaider.hh,v 1.2 2008/07/14 20:47:34 sincerti Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 51 28 52 29 #ifndef G4FINALSTATEELASTICBRENNERZAIDER_HH 53 30 #define G4FINALSTATEELASTICBRENNERZAIDER_HH 1 54 31 55 #include "globals.hh"56 32 #include "G4FinalStateProduct.hh" 33 #include "Randomize.hh" 57 34 58 35 class G4Track; … … 71 48 private: 72 49 73 // Copy constructor and assignment operator to be added here74 75 G4String name;76 50 G4double lowEnergyLimit; 77 51 G4double highEnergyLimit; … … 89 63 }; 90 64 91 92 65 #endif -
trunk/source/processes/electromagnetic/lowenergy/include/G4FinalStateElasticScreenedRutherford.hh
r819 r961 24 24 // ******************************************************************** 25 25 // 26 // 27 // $Id: G4FinalStateElasticScreenedRutherford.hh,v 1.2 2007/10/12 23:02:55 pia Exp $ 28 // GEANT4 tag $Name: $ 29 // 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) 31 // 32 // History: 33 // ----------- 34 // Date Name Modification 35 // 28 Apr 2007 M.G. Pia Created in compliance with design described in TNS paper 36 // 37 // ------------------------------------------------------------------- 38 39 // Class description: 40 // Geant4-DNA Cross total cross section for electron elastic scattering in water 41 // Reference: TNS Geant4-DNA paper 42 // Reference: TNS Geant4-DNA paper 43 // S. Chauvie et al., Geant4 physics processes for microdosimetry simulation: 44 // design foundation and implementation of the first set of models, 45 // IEEE Trans. Nucl. Sci., vol. 54, no. 6, Dec. 2007. 46 // Reference for implementation model: NIM. 155, pp. 145-156, 1978 47 // Further documentation available from http://www.ge.infn.it/geant4/dna 48 49 // ------------------------------------------------------------------- 50 26 // $Id: G4FinalStateElasticScreenedRutherford.hh,v 1.3 2008/07/14 20:47:34 sincerti Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 51 28 52 29 #ifndef G4FINALSTATEELASTICSCREENEDRUTHERFORD_HH 53 30 #define G4FINALSTATEELASTICSCREENEDRUTHERFORD_HH 1 54 31 55 #include "globals.hh"56 32 #include "G4FinalStateProduct.hh" 33 #include "Randomize.hh" 57 34 58 35 class G4Track; … … 71 48 private: 72 49 73 // Copy constructor and assignment operator to be added here74 75 G4String name;76 50 G4double lowEnergyLimit; 77 51 G4double highEnergyLimit; … … 83 57 }; 84 58 85 86 59 #endif -
trunk/source/processes/electromagnetic/lowenergy/include/G4FinalStateExcitationBorn.hh
r819 r961 24 24 // ******************************************************************** 25 25 // 26 // 27 // $Id: G4FinalStateExcitationBorn.hh,v 1.1 2007/10/15 08:33:25 pia Exp $ 28 // GEANT4 tag $Name: $ 29 // 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) 31 // 32 // History: 33 // ----------- 34 // Date Name Modification 35 // 28 Apr 2007 M.G. Pia Created in compliance with design described in TNS paper 36 // 37 // ------------------------------------------------------------------- 38 39 // Class description: 40 // Geant4-DNA Cross total cross section for electron elastic scattering in water 41 // Reference: TNS Geant4-DNA paper 42 // Reference: TNS Geant4-DNA paper 43 // S. Chauvie et al., Geant4 physics processes for microdosimetry simulation: 44 // design foundation and implementation of the first set of models, 45 // IEEE Trans. Nucl. Sci., vol. 54, no. 6, Dec. 2007. 46 // Reference for implementation model: NIM. 155, pp. 145-156, 1978 47 // Further documentation available from http://www.ge.infn.it/geant4/dna 48 49 // ------------------------------------------------------------------- 50 26 // $Id: G4FinalStateExcitationBorn.hh,v 1.2 2008/07/14 20:47:34 sincerti Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 51 28 52 29 #ifndef G4FINALSTATEEXCITATIONBORN_HH 53 30 #define G4FINALSTATEEXCITATIONBORN_HH 1 54 31 55 #include "globals.hh"56 32 #include "G4FinalStateProduct.hh" 57 33 #include "G4WaterExcitationStructure.hh" 58 34 #include "G4CrossSectionExcitationBornPartial.hh" 59 35 60 class G4Track; 61 class G4Step; 62 63 class G4FinalStateExcitationBorn 64 { 36 class G4FinalStateExcitationBorn 37 { 65 38 public: 66 39 … … 72 45 73 46 private: 74 75 // Copy constructor and assignment operator to be added here 76 77 G4String name; 47 78 48 G4double lowEnergyLimit; 79 49 G4double highEnergyLimit; … … 85 55 }; 86 56 87 88 57 #endif -
trunk/source/processes/electromagnetic/lowenergy/include/G4FinalStateExcitationEmfietzoglou.hh
r819 r961 24 24 // ******************************************************************** 25 25 // 26 // 27 // $Id: G4FinalStateExcitationEmfietzoglou.hh,v 1.1 2007/10/15 08:33:25 pia Exp $ 28 // GEANT4 tag $Name: $ 29 // 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) 31 // 32 // History: 33 // ----------- 34 // Date Name Modification 35 // 28 Apr 2007 M.G. Pia Created in compliance with design described in TNS paper 36 // 37 // ------------------------------------------------------------------- 38 39 // Class description: 40 // Geant4-DNA Cross total cross section for electron elastic scattering in water 41 // Reference: TNS Geant4-DNA paper 42 // Reference: TNS Geant4-DNA paper 43 // S. Chauvie et al., Geant4 physics processes for microdosimetry simulation: 44 // design foundation and implementation of the first set of models, 45 // IEEE Trans. Nucl. Sci., vol. 54, no. 6, Dec. 2007. 46 // Reference for implementation model: NIM. 155, pp. 145-156, 1978 47 // Further documentation available from http://www.ge.infn.it/geant4/dna 48 49 // ------------------------------------------------------------------- 50 26 // $Id: G4FinalStateExcitationEmfietzoglou.hh,v 1.2 2008/07/14 20:47:34 sincerti Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 51 28 52 29 #ifndef G4FINALSTATEEXCITATIONEMFIETZOGLOU_HH 53 30 #define G4FINALSTATEEXCITATIONEMFIETZOGLOU_HH 1 54 31 55 #include "globals.hh"56 32 #include "G4FinalStateProduct.hh" 57 #include "G4WaterExcitationStructure.hh"58 33 #include "G4CrossSectionExcitationEmfietzoglouPartial.hh" 59 34 … … 73 48 private: 74 49 75 // Copy constructor and assignment operator to be added here76 77 G4String name;78 50 G4double lowEnergyLimit; 79 51 G4double highEnergyLimit; … … 85 57 }; 86 58 87 88 59 #endif -
trunk/source/processes/electromagnetic/lowenergy/include/G4FinalStateExcitationMillerGreen.hh
r819 r961 24 24 // ******************************************************************** 25 25 // 26 // 27 // $Id: G4FinalStateExcitationMillerGreen.hh,v 1.1 2007/11/08 19:56:02 pia Exp $ 28 // GEANT4 tag $Name: $ 29 // 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) 31 // 32 // History: 33 // ----------- 34 // Date Name Modification 35 // 28 Apr 2007 M.G. Pia Created in compliance with design described in TNS paper 36 // 37 // ------------------------------------------------------------------- 38 39 // Class description: 40 // Geant4-DNA Cross total cross section for electron elastic scattering in water 41 // Reference: TNS Geant4-DNA paper 42 // Reference: TNS Geant4-DNA paper 43 // S. Chauvie et al., Geant4 physics processes for microdosimetry simulation: 44 // design foundation and implementation of the first set of models, 45 // IEEE Trans. Nucl. Sci., vol. 54, no. 6, Dec. 2007. 46 // Reference for implementation model: NIM. 155, pp. 145-156, 1978 47 // Further documentation available from http://www.ge.infn.it/geant4/dna 48 49 // ------------------------------------------------------------------- 50 26 // $Id: G4FinalStateExcitationMillerGreen.hh,v 1.2 2008/07/14 20:47:34 sincerti Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 51 28 52 29 #ifndef G4FINALSTATEEXCITATIONMILLERGREEN_HH 53 30 #define G4FINALSTATEEXCITATIONMILLERGREEN_HH 1 54 31 55 #include "globals.hh"56 32 #include "G4FinalStateProduct.hh" 57 #include "G4WaterExcitationStructure.hh"58 33 #include "G4CrossSectionExcitationMillerGreenPartial.hh" 59 34 60 class G4Track; 61 class G4Step; 62 63 class G4FinalStateExcitationMillerGreen 64 { 35 class G4FinalStateExcitationMillerGreen 36 { 65 37 public: 66 38 … … 73 45 private: 74 46 75 // Copy constructor and assignment operator to be added here76 77 G4String name;78 47 G4double lowEnergyLimit; 79 48 G4double highEnergyLimit; … … 85 54 }; 86 55 87 88 56 #endif -
trunk/source/processes/electromagnetic/lowenergy/include/G4FinalStateIonisationBorn.hh
r819 r961 24 24 // ******************************************************************** 25 25 // 26 // 27 // $Id: G4FinalStateIonisationBorn.hh,v 1.3 2007/11/13 15:20:19 pia Exp $ 28 // GEANT4 tag $Name: $ 29 // 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) 31 // 32 // History: 33 // ----------- 34 // Date Name Modification 35 // 28 Apr 2007 M.G. Pia Created in compliance with design described in TNS paper 36 // 37 // ------------------------------------------------------------------- 38 39 // Class description: 40 // Geant4-DNA Cross total cross section for electron elastic scattering in water 41 // Reference: TNS Geant4-DNA paper 42 // Reference: TNS Geant4-DNA paper 43 // S. Chauvie et al., Geant4 physics processes for microdosimetry simulation: 44 // design foundation and implementation of the first set of models, 45 // IEEE Trans. Nucl. Sci., vol. 54, no. 6, Dec. 2007. 46 // Reference for implementation model: NIM. 155, pp. 145-156, 1978 47 // Further documentation available from http://www.ge.infn.it/geant4/dna 48 49 // ------------------------------------------------------------------- 50 26 // $Id: G4FinalStateIonisationBorn.hh,v 1.4 2008/07/14 20:47:34 sincerti Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 51 28 52 29 #ifndef G4FINALSTATEIONISATIONBORN_HH 53 30 #define G4FINALSTATEIONISATIONBORN_HH 1 54 31 55 #include "globals.hh"56 32 #include "G4FinalStateProduct.hh" 57 33 #include "G4WaterIonisationStructure.hh" … … 61 37 class G4Step; 62 38 63 64 39 class G4FinalStateIonisationBorn 40 { 65 41 public: 66 42 … … 71 47 const G4FinalStateProduct& GenerateFinalState(const G4Track& track, const G4Step& step); 72 48 73 49 private: 74 50 75 // Copy constructor and assignment operator to be added here76 77 G4String name;78 51 G4double lowEnergyLimitDefault; 79 52 G4double highEnergyLimitDefault; … … 112 85 TriDimensionMap eDiffCrossSectionData[6]; 113 86 TriDimensionMap pDiffCrossSectionData[6]; 114 // TriDimensionMap eDiffCrossSectionData;115 // TriDimensionMap pDiffCrossSectionData;116 87 std::vector<double> eTdummyVec; 117 88 std::vector<double> pTdummyVec; … … 121 92 VecMap pVecm; 122 93 123 // std::ifstream eDiffCrossSection;124 // std::ifstream pDiffCrossSection;125 126 94 }; 127 95 128 129 96 #endif -
trunk/source/processes/electromagnetic/lowenergy/include/G4FinalStateIonisationRudd.hh
r819 r961 24 24 // ******************************************************************** 25 25 // 26 // 27 // $Id: G4FinalStateIonisationRudd.hh,v 1.2 2007/11/09 16:30:56 pia Exp $ 28 // GEANT4 tag $Name: $ 29 // 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) 31 // 32 // History: 33 // ----------- 34 // Date Name Modification 35 // 28 Apr 2007 M.G. Pia Created in compliance with design described in TNS paper 36 // 37 // ------------------------------------------------------------------- 38 39 // Class description: 40 // Geant4-DNA Cross total cross section for electron elastic scattering in water 41 // Reference: TNS Geant4-DNA paper 42 // Reference: TNS Geant4-DNA paper 43 // S. Chauvie et al., Geant4 physics processes for microdosimetry simulation: 44 // design foundation and implementation of the first set of models, 45 // IEEE Trans. Nucl. Sci., vol. 54, no. 6, Dec. 2007. 46 // Reference for implementation model: NIM. 155, pp. 145-156, 1978 47 // Further documentation available from http://www.ge.infn.it/geant4/dna 48 49 // ------------------------------------------------------------------- 26 // $Id: G4FinalStateIonisationRudd.hh,v 1.4 2008/07/14 20:47:34 sincerti Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 50 28 51 29 … … 53 31 #define G4FINALSTATEIONISATIONRUDD_HH 1 54 32 55 #include "globals.hh"56 33 #include "G4FinalStateProduct.hh" 57 34 #include "G4WaterIonisationStructure.hh" 58 35 #include "G4CrossSectionIonisationRuddPartial.hh" 59 60 class G4Track; 61 class G4Step; 62 class G4ParticleDefinition; 36 #include "G4Electron.hh" 37 #include "G4Proton.hh" 63 38 64 39 class G4FinalStateIonisationRudd … … 74 49 private: 75 50 76 // Copy constructor and assignment operator to be added here77 78 G4String name;79 51 G4double lowEnergyLimitDefault; 80 52 G4double highEnergyLimitDefault; … … 95 67 G4double incomingParticleEnergy, 96 68 G4double outgoingParticleEnergy, 97 G4double cosTheta,98 G4double phi);69 G4double & cosTheta, 70 G4double & phi); 99 71 100 72 G4double DifferentialCrossSection(G4ParticleDefinition* particleDefinition, … … 130 102 }; 131 103 132 133 104 #endif -
trunk/source/processes/electromagnetic/lowenergy/include/G4FinalStateKill.hh
r819 r961 26 26 // 27 27 // $Id: G4FinalStateKill.hh,v 1.1 2007/11/09 20:26:47 pia Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) -
trunk/source/processes/electromagnetic/lowenergy/include/G4FinalStateProduct.hh
r819 r961 25 25 // 26 26 // 27 // $Id: G4FinalStateProduct.hh,v 1. 4 2007/10/15 08:31:49 piaExp $28 // GEANT4 tag $Name: $27 // $Id: G4FinalStateProduct.hh,v 1.5 2009/01/20 07:50:28 sincerti Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) … … 72 72 void ModifyPrimaryParticle(const G4ThreeVector& direction, G4double energy); 73 73 74 void DoNotDepositEnergy(); 74 75 void KillPrimaryParticle(); 75 76 76 77 G4bool PrimaryParticleIsKilled() const { return killStatus; } 78 79 G4bool PrimaryParticleIsKilledAndDoNotDepositEnergy() const { return doNotDepositStatus; } 77 80 78 81 G4bool PrimaryParticleIsModified() const { return isModified; } … … 96 99 97 100 G4bool killStatus; 101 G4bool doNotDepositStatus; 98 102 G4bool isModified; 99 103 G4double localEnergyDeposit; -
trunk/source/processes/electromagnetic/lowenergy/include/G4FluoTransition.hh
r819 r961 26 26 // 27 27 // $Id: G4FluoTransition.hh,v 1.2 ???? 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Author: Elena Guardincerri (Elena.Guardincerri@ge.infn.it) -
trunk/source/processes/electromagnetic/lowenergy/include/G4LinInterpolation.hh
r819 r961 26 26 // 27 27 // $Id: G4LinInterpolation.hh,v 1.3 2006/06/29 19:35:45 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) -
trunk/source/processes/electromagnetic/lowenergy/include/G4LogLogInterpolation.hh
r819 r961 25 25 // 26 26 // 27 // $Id: G4LogLogInterpolation.hh,v 1. 4 2006/06/29 19:35:51 gunterExp $28 // GEANT4 tag $Name: $27 // $Id: G4LogLogInterpolation.hh,v 1.6 2008/12/09 13:28:02 sincerti Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) -
trunk/source/processes/electromagnetic/lowenergy/include/G4LowEnergyBremsstrahlung.hh
r819 r961 27 27 // ------------------------------------------------------------------- 28 28 // $Id: G4LowEnergyBremsstrahlung.hh,v 1.37 2006/06/29 19:35:55 gunter Exp $ 29 // GEANT4 tag $Name: $29 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 30 30 // 31 31 // Author: A. Forti -
trunk/source/processes/electromagnetic/lowenergy/include/G4LowEnergyCompton.hh
r819 r961 24 24 // ******************************************************************** 25 25 // 26 // $Id: G4LowEnergyCompton.hh,v 1.2 1 2006/06/29 19:35:57 gunterExp $27 // GEANT4 tag $Name: geant4-09-0 1-patch-02 $26 // $Id: G4LowEnergyCompton.hh,v 1.24 2008/11/04 10:14:00 pandola Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 28 28 // 29 29 // Author: A. Forti … … 48 48 #include "globals.hh" 49 49 #include "G4VDiscreteProcess.hh" 50 #include "G4ShellData.hh" 51 #include "G4DopplerProfile.hh" 50 52 51 53 class G4Track; … … 67 69 G4bool IsApplicable(const G4ParticleDefinition& definition); 68 70 69 void BuildPhysicsTable(const G4ParticleDefinition& photon);71 void BuildPhysicsTable(const G4ParticleDefinition& definition); 70 72 71 G4VParticleChange* PostStepDoIt(const G4Track& aTrack, const G4Step& aStep);73 G4VParticleChange* PostStepDoIt(const G4Track& track, const G4Step& step); 72 74 73 75 // For testing purpose only 74 G4double DumpMeanFreePath(const G4Track& aTrack,76 G4double DumpMeanFreePath(const G4Track& track, 75 77 G4double previousStepSize, 76 78 G4ForceCondition* condition) 77 { return GetMeanFreePath( aTrack, previousStepSize, condition); }79 { return GetMeanFreePath(track, previousStepSize, condition); } 78 80 79 81 protected: 80 82 81 G4double GetMeanFreePath(const G4Track& aTrack,83 G4double GetMeanFreePath(const G4Track& track, 82 84 G4double previousStepSize, 83 85 G4ForceCondition* condition); … … 102 104 const G4double intrinsicHighEnergyLimit; 103 105 106 G4ShellData shellData; 107 G4DopplerProfile profileData; 104 108 }; 105 109 -
trunk/source/processes/electromagnetic/lowenergy/include/G4LowEnergyGammaConversion.hh
r819 r961 26 26 // 27 27 // $Id: G4LowEnergyGammaConversion.hh,v 1.15 2006/06/29 19:35:59 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Author: A. Forti -
trunk/source/processes/electromagnetic/lowenergy/include/G4LowEnergyIonisation.hh
r819 r961 26 26 // ------------------------------------------------------------------- 27 27 // $Id: G4LowEnergyIonisation.hh,v 1.41 2006/06/29 19:36:01 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Author: A. Forti -
trunk/source/processes/electromagnetic/lowenergy/include/G4LowEnergyPhotoElectric.hh
r819 r961 26 26 // 27 27 // $Id: G4LowEnergyPhotoElectric.hh,v 1.28 2006/06/29 19:36:03 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Author: A. Forti -
trunk/source/processes/electromagnetic/lowenergy/include/G4LowEnergyPolarizedCompton.hh
r819 r961 25 25 // 26 26 // 27 // $Id: G4LowEnergyPolarizedCompton.hh,v 1. 9 2006/06/29 19:36:05 gunterExp $28 // GEANT4 tag $Name: $27 // $Id: G4LowEnergyPolarizedCompton.hh,v 1.10 2008/05/02 13:04:41 flongo Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // ------------------------------------------------------------ … … 57 57 #include "globals.hh" 58 58 #include "G4VDiscreteProcess.hh" 59 60 // Doppler Broadening 61 62 #include "G4ShellData.hh" 63 #include "G4DopplerProfile.hh" 64 59 65 60 66 class G4Track; … … 125 131 G4ThreeVector& polarization0, G4ThreeVector& polarization1); 126 132 133 // Doppler Broadening 134 135 G4ShellData shellData; 136 G4DopplerProfile profileData; 137 138 127 139 }; 128 140 -
trunk/source/processes/electromagnetic/lowenergy/include/G4LowEnergyPolarizedRayleigh.hh
r819 r961 25 25 // 26 26 // $Id: G4LowEnergyPolarizedRayleigh.hh,v 1.5 2006/06/29 19:36:07 gunter Exp $ 27 // GEANT4 tag $Name: $27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 28 28 // 29 29 // -------------------------------------------------------------- -
trunk/source/processes/electromagnetic/lowenergy/include/G4LowEnergyRayleigh.hh
r819 r961 26 26 // 27 27 // $Id: G4LowEnergyRayleigh.hh,v 1.16 2006/06/29 19:36:09 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/electromagnetic/lowenergy/include/G4PenelopeBremsstrahlung.hh
r819 r961 27 27 // ------------------------------------------------------------------- 28 28 // $Id: G4PenelopeBremsstrahlung.hh,v 1.8 2006/06/29 19:36:15 gunter Exp $ 29 // GEANT4 tag $Name: $29 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 30 30 // 31 31 // Author: L.Pandola -
trunk/source/processes/electromagnetic/lowenergy/include/G4PenelopeBremsstrahlungAngular.hh
r819 r961 27 27 // ------------------------------------------------------------------- 28 28 // $Id: G4PenelopeBremsstrahlungAngular.hh,v 1.3 2006/06/29 19:36:17 gunter Exp $ 29 // GEANT4 tag $Name: $29 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 30 30 // 31 31 // Author: L.Pandola -
trunk/source/processes/electromagnetic/lowenergy/include/G4PenelopeBremsstrahlungContinuous.hh
r819 r961 26 26 // 27 27 // ------------------------------------------------------------------- 28 // $Id: G4PenelopeBremsstrahlungContinuous.hh,v 1. 3 2006/06/29 19:36:19 gunterExp $29 // GEANT4 tag $Name: $28 // $Id: G4PenelopeBremsstrahlungContinuous.hh,v 1.4 2008/12/09 15:04:05 pandola Exp $ 29 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 30 30 // 31 31 // Author: L.Pandola … … 35 35 // 20 Feb 2003 L. Pandola 1st implementation 36 36 // 17 Mar 2003 L. Pandola Added the correction for positrons 37 // 09 Dec 2008 L. Pandola Cosmetics: say what variables are 38 // 37 39 // Class description: 38 40 // Calculation of continuous energy loss for Penelope Bremsstrahlung … … 54 56 public: 55 57 56 G4PenelopeBremsstrahlungContinuous(G4int Zmat,G4double tCut, G4double emin, G4double emax, 57 const G4String partName); 58 G4PenelopeBremsstrahlungContinuous(G4int Z,G4double energyCut, G4double energyMin, 59 G4double energyMax, 60 const G4String particleName); 58 61 ~G4PenelopeBremsstrahlungContinuous(); 59 G4double CalculateStopping(G4double PrimaryEnergy);62 G4double CalculateStopping(G4double energy); 60 63 61 64 private: 62 63 65 void PrepareInterpolationTable(); 64 66 void LoadFromFile(); … … 75 77 G4double ExtendedLogEnergy[NumberofExtendedEGrid]; 76 78 G4double p0[NumberofExtendedEGrid][NumberofKPoints]; 77 //G4double Pbcut[NumberofExtendedEGrid]; // serve?79 //G4double Pbcut[NumberofExtendedEGrid]; //useful? 78 80 }; 79 81 -
trunk/source/processes/electromagnetic/lowenergy/include/G4PenelopeCompton.hh
r819 r961 24 24 // ******************************************************************** 25 25 // 26 // $Id: G4PenelopeCompton.hh,v 1.1 0 2006/06/29 19:36:21 gunterExp $27 // GEANT4 tag $Name: geant4-09-0 1-patch-02 $26 // $Id: G4PenelopeCompton.hh,v 1.11 2008/03/26 15:30:19 pandola Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 28 28 // 29 29 // Author: Luciano Pandola … … 36 36 // 26 Mar 2003 L.Pandola Added fluorescence 37 37 // 18 Mar 2004 L.Pandola Use of std::map (code review) 38 // 26 Mar 2008 L.Pandola Add boolean flag to control atomic de-excitation 38 39 // 39 40 // ------------------------------------------------------------------- … … 78 79 { return GetMeanFreePath(aTrack, previousStepSize, condition); } 79 80 81 void SetUseAtomicDeexcitation(G4bool value){fUseAtomicDeexcitation = value;}; 82 83 G4bool GetUseAtomicDeexcitation(){return fUseAtomicDeexcitation;}; 84 80 85 protected: 81 86 … … 118 123 119 124 std::vector<G4VEMDataSet*> *matCrossSections; //for random choice of atom 125 120 126 G4double cutForLowEnergySecondaryPhotons; 127 G4bool fUseAtomicDeexcitation; 121 128 }; 122 129 -
trunk/source/processes/electromagnetic/lowenergy/include/G4PenelopeGammaConversion.hh
r819 r961 26 26 // 27 27 // $Id: G4PenelopeGammaConversion.hh,v 1.2 2006/06/29 19:36:25 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Author: L. Pandola -
trunk/source/processes/electromagnetic/lowenergy/include/G4PenelopeIonisation.hh
r819 r961 26 26 // ------------------------------------------------------------------- 27 27 // $Id: G4PenelopeIonisation.hh,v 1.5 2006/06/29 19:36:33 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Author: L. Pandola -
trunk/source/processes/electromagnetic/lowenergy/include/G4PenelopePhotoElectric.hh
r819 r961 26 26 // 27 27 // $Id: G4PenelopePhotoElectric.hh,v 1.4 2006/06/29 19:36:35 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Author: L.Pandola -
trunk/source/processes/electromagnetic/lowenergy/include/G4PenelopeRayleigh.hh
r819 r961 26 26 // 27 27 // $Id: G4PenelopeRayleigh.hh,v 1.5 2006/06/29 19:36:37 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Author: Luciano Pandola -
trunk/source/processes/electromagnetic/lowenergy/include/G4RangeNoTest.hh
r819 r961 26 26 // 27 27 // $Id: G4RangeNoTest.hh,v 1.4 2006/06/29 19:36:47 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) -
trunk/source/processes/electromagnetic/lowenergy/include/G4RangeTest.hh
r819 r961 26 26 // 27 27 // $Id: G4RangeTest.hh,v 1.4 2006/06/29 19:36:49 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) -
trunk/source/processes/electromagnetic/lowenergy/include/G4SemiLogInterpolation.hh
r819 r961 26 26 // 27 27 // $Id: G4SemiLogInterpolation.hh,v 1.4 2006/06/29 19:36:51 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) -
trunk/source/processes/electromagnetic/lowenergy/include/G4ShellData.hh
r819 r961 25 25 // 26 26 // 27 // $Id: G4ShellData.hh,v 1. 5 2007/02/20 16:53:16 manteroExp $28 // GEANT4 tag $Name: geant4-09-0 1-patch-02 $27 // $Id: G4ShellData.hh,v 1.7 2008/03/17 13:45:25 pia Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) … … 55 55 public: 56 56 57 G4ShellData(G4int minZ = 1, G4int maxZ = 100 );57 G4ShellData(G4int minZ = 1, G4int maxZ = 100, G4bool isOccupancy = false); 58 58 59 59 ~G4ShellData(); … … 63 63 G4int ShellId(G4int Z, G4int shellIndex) const; 64 64 65 const G4DataVector& ShellIdVector(G4int Z) const; 65 G4double ShellOccupancyProbability(G4int Z, G4int shellIndex) const; 66 67 const std::vector<G4double>& ShellIdVector(G4int Z) const; 66 68 67 69 G4double BindingEnergy(G4int Z, G4int shellIndex) const; 70 71 void SetOccupancyData() { occupancyData = true; } 68 72 69 73 void LoadData(const G4String& fileName); 70 74 71 75 void PrintData() const; 76 77 // Randomly select a shell based on shell occupancy 78 G4int SelectRandomShell(G4int Z) const; 72 79 73 80 private: … … 77 84 G4ShellData(const G4ShellData&); 78 85 79 G4int zMin; 86 const std::vector<G4double>& ShellVector(G4int Z) const; 87 88 G4int zMin; 80 89 G4int zMax; 81 90 82 std::map<G4int,G4DataVector*,std::less<G4int> > idMap; 91 G4bool occupancyData; 92 93 std::map<G4int,std::vector<G4double>*,std::less<G4int> > idMap; 83 94 std::map<G4int,G4DataVector*,std::less<G4int> > bindingMap; 84 95 std::vector<G4int> nShells; 96 std::map<G4int,std::vector<G4double>*,std::less<G4int> > occupancyPdfMap; 85 97 86 98 }; -
trunk/source/processes/electromagnetic/lowenergy/include/G4ShellEMDataSet.hh
r819 r961 25 25 // 26 26 // 27 // $Id: G4ShellEMDataSet.hh,v 1. 9 2007/10/15 08:31:49pia Exp $28 // GEANT4 tag $Name: geant4-09-0 1-patch-02 $27 // $Id: G4ShellEMDataSet.hh,v 1.12 2008/03/17 13:45:25 pia Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) … … 33 33 // ----------- 34 34 // 31 Jul 2001 MGP Created 35 // 9 Mar 2008 MGP Cleaned up unreadable code modified by former developer 36 // (Further clean-up needed) 35 37 // 36 38 // ------------------------------------------------------------------- … … 44 46 // ------------------------------------------------------------------- 45 47 46 #ifndef 47 48 #ifndef G4SHELLEMDATASET_HH 49 #define G4SHELLEMDATASET_HH 1 48 50 49 50 51 51 #include "globals.hh" 52 #include "G4VEMDataSet.hh" 53 #include <vector> 52 54 53 55 class G4VDataSetAlgorithm; 54 56 55 class G4ShellEMDataSet : public G4VEMDataSet 56 { 57 public: 58 G4ShellEMDataSet(G4int argZ, G4VDataSetAlgorithm* argAlgorithm, G4double argUnitEnergies=MeV, G4double argUnitData=barn); 59 virtual ~G4ShellEMDataSet(); 57 class G4ShellEMDataSet : public G4VEMDataSet 58 { 59 public: 60 G4ShellEMDataSet(G4int Z, 61 G4VDataSetAlgorithm* algo, 62 G4double eUnit=MeV, 63 G4double dataUnit=barn); 64 65 virtual ~G4ShellEMDataSet(); 60 66 61 virtual G4double FindValue(G4double argEnergy, G4int argComponentId=0) const;67 virtual G4double FindValue(G4double energy, G4int componentId=0) const; 62 68 63 69 virtual void PrintData(void) const; 64 70 65 virtual const G4VEMDataSet* GetComponent(G4int argComponentId) const { return components[argComponentId]; }66 virtual void AddComponent(G4VEMDataSet * argDataSet) { components.push_back(argDataSet); }67 71 virtual const G4VEMDataSet* GetComponent(G4int componentId) const { return components[componentId]; } 72 virtual void AddComponent(G4VEMDataSet* dataSet) { components.push_back(dataSet); } 73 virtual size_t NumberOfComponents(void) const { return components.size(); } 68 74 69 virtual const G4DataVector& GetEnergies(G4int argComponentId) const { return GetComponent(argComponentId)->GetEnergies(0); }70 virtual const G4DataVector& GetData(G4int argComponentId) const { return GetComponent(argComponentId)->GetData(0); }71 virtual void SetEnergiesData(G4DataVector * argEnergies, G4DataVector * argData, G4int argComponentId);75 virtual const G4DataVector& GetEnergies(G4int componentId) const { return GetComponent(componentId)->GetEnergies(0); } 76 virtual const G4DataVector& GetData(G4int componentId) const { return GetComponent(componentId)->GetData(0); } 77 virtual void SetEnergiesData(G4DataVector* energies, G4DataVector* data, G4int componentId); 72 78 73 virtual G4bool LoadData(const G4String & argFileName); 74 virtual G4bool SaveData(const G4String & argFileName) const; 79 virtual G4bool LoadData(const G4String& fileName); 80 virtual G4bool SaveData(const G4String& fileName) const; 81 82 virtual G4double RandomSelect(G4int /*componentId = 0*/) const { return -1.; }; 75 83 76 protected: 77 G4double GetUnitEnergies() const { return unitEnergies; } 78 G4double GetUnitData() const { return unitData; } 79 const G4VDataSetAlgorithm* GetAlgorithm() const { return algorithm; } 84 protected: 85 86 G4double GetUnitEnergies() const { return unitEnergies; } 87 G4double GetUnitData() const { return unitData; } 88 const G4VDataSetAlgorithm* GetAlgorithm() const { return algorithm; } 80 89 81 90 void CleanUpComponents(void); 82 91 83 private: 84 G4String FullFileName(const G4String & argFileName) const; 92 private: 93 94 G4String FullFileName(const G4String& fileName) const; 85 95 86 87 88 G4ShellEMDataSet(const G4ShellEMDataSet& copy);89 G4ShellEMDataSet& operator=(const G4ShellEMDataSet& right);96 // Hide copy constructor and assignment operator 97 G4ShellEMDataSet(); 98 G4ShellEMDataSet(const G4ShellEMDataSet& copy); 99 G4ShellEMDataSet& operator=(const G4ShellEMDataSet& right); 90 100 91 101 std::vector<G4VEMDataSet*> components; // Owned pointers 92 102 93 103 G4int z; 94 104 95 105 G4VDataSetAlgorithm* algorithm; // Owned pointer 96 106 97 98 99 107 G4double unitEnergies; 108 G4double unitData; 109 }; 100 110 #endif /* G4SHELLEMDATASET_HH */ -
trunk/source/processes/electromagnetic/lowenergy/include/G4VCrossSectionHandler.hh
r819 r961 26 26 // 27 27 // $Id: G4VCrossSectionHandler.hh,v 1.14 2006/06/29 19:37:01 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) -
trunk/source/processes/electromagnetic/lowenergy/include/G4VDataSetAlgorithm.hh
r819 r961 26 26 // 27 27 // $Id: G4VDataSetAlgorithm.hh,v 1.7 2006/06/29 19:37:07 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) -
trunk/source/processes/electromagnetic/lowenergy/include/G4VEMDataSet.hh
r819 r961 25 25 // 26 26 // 27 // $Id: G4VEMDataSet.hh,v 1. 9 2007/10/15 08:31:49pia Exp $28 // GEANT4 tag $Name: geant4-09-0 1-patch-02 $27 // $Id: G4VEMDataSet.hh,v 1.12 2008/03/17 13:45:25 pia Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) … … 44 44 // ------------------------------------------------------------------- 45 45 46 #ifndef 47 46 #ifndef G4VEMDATASET_HH 47 #define G4VEMDATASET_HH 1 48 48 49 50 49 #include "globals.hh" 50 #include "G4DataVector.hh" 51 51 52 53 54 55 56 virtual~G4VEMDataSet() { }52 class G4VEMDataSet 53 { 54 public: 55 G4VEMDataSet() { } 56 virtual ~G4VEMDataSet() { } 57 57 58 virtual G4double FindValue(G4double argEnergy, G4int argComponentId=0) const = 0;58 virtual G4double FindValue(G4double x, G4int componentId = 0) const = 0; 59 59 60 virtual voidPrintData(void) const = 0;60 virtual void PrintData(void) const = 0; 61 61 62 virtual const G4VEMDataSet * GetComponent(G4int argComponentId) const = 0;63 virtual void AddComponent(G4VEMDataSet * argDataSet) = 0;64 virtual size_tNumberOfComponents(void) const = 0;62 virtual const G4VEMDataSet* GetComponent(G4int componentId) const = 0; 63 virtual void AddComponent(G4VEMDataSet* dataSet) = 0; 64 virtual size_t NumberOfComponents(void) const = 0; 65 65 66 virtual const G4DataVector & GetEnergies(G4int argComponentId) const = 0;67 virtual const G4DataVector & GetData(G4int argComponentId) const = 0;68 virtual void SetEnergiesData(G4DataVector * argEnergies, G4DataVector * argData, G4int argComponent=0) = 0;66 virtual const G4DataVector& GetEnergies(G4int componentId) const = 0; 67 virtual const G4DataVector& GetData(G4int componentId) const = 0; 68 virtual void SetEnergiesData(G4DataVector* x, G4DataVector* data, G4int component=0) = 0; 69 69 70 virtual G4bool LoadData(const G4String & argFileName) = 0; 71 virtual G4bool SaveData(const G4String & argFileName) const = 0; 70 virtual G4bool LoadData(const G4String& fileName) = 0; 71 virtual G4bool SaveData(const G4String& fileName) const = 0; 72 73 virtual G4double RandomSelect(G4int componentId = 0) const = 0; 72 74 73 74 75 G4VEMDataSet(const G4VEMDataSet& copy);76 G4VEMDataSet & operator=(const G4VEMDataSet& right);77 75 private: 76 // Hide copy constructor and assignment operator 77 G4VEMDataSet(const G4VEMDataSet& copy); 78 G4VEMDataSet& operator=(const G4VEMDataSet& right); 79 }; 78 80 #endif /* G4VEMDATASET_HH */ -
trunk/source/processes/electromagnetic/lowenergy/include/G4VLowEnergyDiscretePhotonProcess.hh
r819 r961 25 25 // 26 26 // $Id: G4VLowEnergyDiscretePhotonProcess.hh,v 1.4 2006/06/29 19:37:13 gunter Exp $ 27 // GEANT4 tag $Name: $27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 28 28 // 29 29 // -------------------------------------------------------------- -
trunk/source/processes/electromagnetic/lowenergy/include/G4VLowEnergyTestableDiscreteProcess.hh
r819 r961 26 26 // 27 27 // $Id: G4VLowEnergyTestableDiscreteProcess.hh,v 1.3 2006/06/29 19:37:17 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 -
trunk/source/processes/electromagnetic/lowenergy/include/G4VRangeTest.hh
r819 r961 26 26 // 27 27 // $Id: G4VRangeTest.hh,v 1.3 2006/06/29 19:37:21 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) -
trunk/source/processes/electromagnetic/lowenergy/include/G4VeLowEnergyLoss.hh
r819 r961 26 26 // 27 27 // $Id: G4VeLowEnergyLoss.hh,v 1.9 2006/06/29 19:37:23 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // 3.4.2000 Veronique Lefebure: -
trunk/source/processes/electromagnetic/lowenergy/include/G4WaterExcitationStructure.hh
r819 r961 26 26 // 27 27 // $Id: G4WaterExcitationStructure.hh,v 1.1 2007/10/15 08:33:25 pia Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) -
trunk/source/processes/electromagnetic/lowenergy/include/G4WaterIonisationStructure.hh
r819 r961 26 26 // 27 27 // $Id: G4WaterIonisationStructure.hh,v 1.1 2007/11/08 20:38:40 pia Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) -
trunk/source/processes/electromagnetic/lowenergy/include/G4eBremsstrahlungSpectrum.hh
r819 r961 25 25 // 26 26 // $Id: G4eBremsstrahlungSpectrum.hh,v 1.8 2006/06/29 19:37:33 gunter Exp $ 27 // GEANT4 tag $Name: $27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 28 28 // 29 29 // ------------------------------------------------------------------- -
trunk/source/processes/electromagnetic/lowenergy/include/G4eCrossSectionExcitationEmfietzoglou.hh
r819 r961 26 26 // 27 27 // $Id: G4eCrossSectionExcitationEmfietzoglou.hh,v 1.1 2007/05/02 17:18:48 pia Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) -
trunk/source/processes/electromagnetic/lowenergy/include/G4eCrossSectionScreenedRutherford.hh
r819 r961 26 26 // 27 27 // $Id: G4eCrossSectionScreenedRutherford.hh,v 1.2 2007/10/12 12:26:34 pia Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Contact Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) -
trunk/source/processes/electromagnetic/lowenergy/include/G4eIonisationCrossSectionHandler.hh
r819 r961 24 24 // ******************************************************************** 25 25 // 26 // $Id: G4eIonisationCrossSectionHandler.hh,v 1. 6 2006/06/29 19:37:36 gunterExp $27 // GEANT4 tag $Name: $26 // $Id: G4eIonisationCrossSectionHandler.hh,v 1.7 2009/01/29 08:13:27 pandola Exp $ 27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 28 28 // 29 29 // ------------------------------------------------------------------- … … 40 40 // Modified: 41 41 // 10 Oct 2001 M.G. Pia Revision to improve code quality and consistency with design 42 // 42 // 28 Jan 2009 L.Pandola Added public method to make a easier migration of 43 // G4LowEnergyIonisation to G4LivermoreIonisationModel 43 44 // ------------------------------------------------------------------- 44 45 … … 72 73 73 74 ~G4eIonisationCrossSectionHandler(); 75 76 G4double GetCrossSectionAboveThresholdForElement(G4double energy, 77 G4double cutEnergy, 78 G4int Z); 74 79 75 80 protected: -
trunk/source/processes/electromagnetic/lowenergy/include/G4eIonisationParameters.hh
r819 r961 26 26 // 27 27 // $Id: G4eIonisationParameters.hh,v 1.8 2006/06/29 19:37:38 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // Author: Maria Grazia Pia (Maria.Grazia.Pia@cern.ch) -
trunk/source/processes/electromagnetic/lowenergy/include/G4eIonisationSpectrum.hh
r819 r961 25 25 // 26 26 // $Id: G4eIonisationSpectrum.hh,v 1.7 2006/06/29 19:37:40 gunter Exp $ 27 // GEANT4 tag $Name: $27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 28 28 // 29 29 // ------------------------------------------------------------------- -
trunk/source/processes/electromagnetic/lowenergy/include/G4eLowEnergyLoss.hh
r819 r961 26 26 // 27 27 // $Id: G4eLowEnergyLoss.hh,v 1.14 2006/06/29 19:37:42 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // ------------------------------------------------------------------- -
trunk/source/processes/electromagnetic/lowenergy/include/G4eLowEnergyLoss.icc
r819 r961 26 26 // 27 27 // $Id: G4eLowEnergyLoss.icc,v 1.8 2006/06/29 19:37:44 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // --------------------------------------------------------------- -
trunk/source/processes/electromagnetic/lowenergy/include/G4hLowEnergyLoss.hh
r819 r961 26 26 // 27 27 // $Id: G4hLowEnergyLoss.hh,v 1.17 2006/06/29 19:37:58 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // $Id: -
trunk/source/processes/electromagnetic/lowenergy/include/G4hLowEnergyLoss.icc
r819 r961 26 26 // 27 27 // $Id: G4hLowEnergyLoss.icc,v 1.3 2006/06/29 19:38:00 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // $Id: -
trunk/source/processes/electromagnetic/lowenergy/include/G4hShellCrossSectionDoubleExp.hh
r819 r961 45 45 // ------------------------------------------------------------------- 46 46 // $Id: G4hShellCrossSectionDoubleExp.hh,v 1.3 2006/06/29 19:38:12 gunter Exp $ 47 // GEANT4 tag $Name: $47 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 48 48 49 49 #ifndef G4HSHELLCROSSSECTIONDOUBLEEXP_HH -
trunk/source/processes/electromagnetic/lowenergy/include/G4hShellCrossSectionDoubleExpData.hh
r819 r961 40 40 // ------------------------------------------------------------------- 41 41 // $Id: G4hShellCrossSectionDoubleExpData.hh,v 1.3 2006/06/29 19:38:14 gunter Exp $ 42 // GEANT4 tag $Name: $42 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 43 43 44 44 #ifndef G4hShellCrossSectionDoubleExpData_HH -
trunk/source/processes/electromagnetic/lowenergy/include/G4hShellCrossSectionExp.hh
r819 r961 45 45 // ------------------------------------------------------------------- 46 46 // $Id: G4hShellCrossSectionExp.hh,v 1.3 2006/06/29 19:38:16 gunter Exp $ 47 // GEANT4 tag $Name: $47 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 48 48 49 49 #ifndef G4HSHELLCROSSSECTIONEXP_HH -
trunk/source/processes/electromagnetic/lowenergy/include/G4hShellCrossSectionExpData.hh
r819 r961 38 38 // ------------------------------------------------------------------- 39 39 // $Id: G4hShellCrossSectionExpData.hh,v 1.3 2006/06/29 19:38:18 gunter Exp $ 40 // GEANT4 tag $Name: $40 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 41 41 42 42 #ifndef G4hShellCrossSectionExpData_HH
Note: See TracChangeset
for help on using the changeset viewer.