Ignore:
Timestamp:
Nov 5, 2010, 3:45:55 PM (14 years ago)
Author:
garnier
Message:

update ti head

Location:
trunk/source/processes/electromagnetic/utils/include
Files:
9 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/processes/electromagnetic/utils/include/G4ElectronIonPair.hh

    r1337 r1340  
    2424// ********************************************************************
    2525//
    26 // $Id: G4ElectronIonPair.hh,v 1.2 2008/10/17 14:46:16 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-04-beta-01 $
     26// $Id: G4ElectronIonPair.hh,v 1.5 2010/10/25 17:23:01 vnivanch Exp $
     27// GEANT4 tag $Name: emutils-V09-03-23 $
    2828//
    2929//
     
    6262#include "G4ParticleDefinition.hh"
    6363#include "G4ThreeVector.hh"
    64 #include "G4TrackVector.hh"
    6564#include "G4VProcess.hh"
    6665#include <vector>
     
    8685  inline G4double MeanNumberOfIonsAlongStep(const G4Step*);
    8786
     87  inline G4int SampleNumberOfIonsAlongStep(const G4Step*);
     88
    8889  // returns pointer to the new vector of positions of
    8990  // ionisation points in the World coordinate system
    90   std::vector<G4ThreeVector>*
    91   SampleIonsAlongStep(const G4ThreeVector& prePosition,
    92                       const G4ThreeVector& postPosition,
    93                       G4double numberOfIonisations);
    94 
    9591  std::vector<G4ThreeVector>* SampleIonsAlongStep(const G4Step*);
    9692
     
    115111private:
    116112
     113  void Initialise();
     114
     115  G4double FindMeanEnergyPerIonPair(const G4Material*);
     116
    117117  // hide assignment operator
    118118  G4ElectronIonPair & operator=(const G4ElectronIonPair &right);
    119119  G4ElectronIonPair(const G4ElectronIonPair&);
    120120
    121   G4double FindMeanEnergyPerIonPair(const G4Material*);
     121  // cash
     122  const G4Material*  curMaterial;
     123  G4double           curMeanEnergy;
    122124
    123   void Initialise();
    124 
    125   const G4ParticleDefinition* gamma;
    126 
    127   // cash
    128   const G4Material*           curMaterial;
    129   G4double                    curMeanEnergy;
    130 
     125  G4double FanoFactor;
     126 
    131127  G4int    verbose;             
    132128  G4int    nMaterials;
    133129
    134130  // list of G4 NIST materials with mean energy per ion defined
    135   std::vector<G4double>       g4MatData;
    136   std::vector<G4String>       g4MatNames;
    137 
     131  std::vector<G4double>  g4MatData;
     132  std::vector<G4String>  g4MatNames;
    138133};
    139134
     
    141136G4ElectronIonPair::MeanNumberOfIonsAlongStep(const G4Step* step)
    142137{
    143   return MeanNumberOfIonsAlongStep(step->GetTrack()->GetDefinition(),
     138  return MeanNumberOfIonsAlongStep(step->GetTrack()->GetParticleDefinition(),
    144139                                   step->GetPreStepPoint()->GetMaterial(),
    145140                                   step->GetTotalEnergyDeposit(),
     
    147142}
    148143
    149 inline std::vector<G4ThreeVector>*
    150 G4ElectronIonPair::SampleIonsAlongStep(const G4Step* step)
     144inline
     145G4int G4ElectronIonPair::SampleNumberOfIonsAlongStep(const G4Step* step)
    151146{
    152   return SampleIonsAlongStep(step->GetPreStepPoint()->GetPosition(),
    153                              step->GetPostStepPoint()->GetPosition(),
    154                              MeanNumberOfIonsAlongStep(step));
    155 }
     147  G4double meanion = MeanNumberOfIonsAlongStep(step);
     148  G4double sig = FanoFactor*std::sqrt(meanion);
     149  G4int nion = G4int(G4RandGauss::shoot(meanion,sig) + 0.5);
     150  return nion;
     151}
    156152
    157153inline
     
    160156  G4int subtype = -1;
    161157  const G4VProcess* proc = step->GetPostStepPoint()->GetProcessDefinedStep();
    162   if(proc) subtype = proc->GetProcessSubType();
    163   return ResidualeChargePostStep(step->GetTrack()->GetDefinition(),
     158  if(proc) { subtype = proc->GetProcessSubType(); }
     159  return ResidualeChargePostStep(step->GetTrack()->GetParticleDefinition(),
    164160                                 step->GetSecondary(),
    165161                                 subtype);
  • trunk/source/processes/electromagnetic/utils/include/G4EmMultiModel.hh

    r1337 r1340  
    2424// ********************************************************************
    2525//
    26 // $Id: G4EmMultiModel.hh,v 1.6 2007/05/22 17:31:57 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-04-beta-01 $
     26// $Id: G4EmMultiModel.hh,v 1.7 2010/07/04 17:51:09 vnivanch Exp $
     27// GEANT4 tag $Name: emutils-V09-03-23 $
    2828//
    2929// -------------------------------------------------------------------
     
    4040// Modifications:
    4141// 15-04-05 optimize internal interface (V.Ivanchenko)
     42// 04-07-10 updated interfaces according to g4 9.4 (V.Ivanchenko)
    4243//
    4344// Class Description:
    4445//
    45 // Energy loss model using several G4VEmModels
     46// EM model using several G4VEmModels for the same energy interval
    4647
    4748// -------------------------------------------------------------------
     
    5556#include <vector>
    5657
    57 class G4Region;
    58 class G4PhysicsTable;
    5958class G4DynamicParticle;
    6059
     
    6867  virtual ~G4EmMultiModel();
    6968
    70   void Initialise(const G4ParticleDefinition*, const G4DataVector&);
     69  void AddModel(G4VEmModel*);
    7170
    72   G4double MinEnergyCut(const G4ParticleDefinition*,
    73                         const G4MaterialCutsCouple*);
     71  virtual void Initialise(const G4ParticleDefinition*,
     72                          const G4DataVector&);
    7473
     74  virtual G4double ComputeDEDX(const G4MaterialCutsCouple*,
     75                               const G4ParticleDefinition*,
     76                               G4double kineticEnergy,
     77                               G4double cutEnergy);
    7578
    76   G4double ComputeDEDX(const G4MaterialCutsCouple*,
    77                        const G4ParticleDefinition*,
    78                        G4double kineticEnergy,
    79                        G4double cutEnergy);
     79  // main method to compute cross section per atom
     80  virtual
     81  G4double ComputeCrossSectionPerAtom(const G4ParticleDefinition*,
     82                                      G4double kinEnergy,
     83                                      G4double Z,
     84                                      G4double A = 0., /* amu */
     85                                      G4double cutEnergy = 0.0,
     86                                      G4double maxEnergy = DBL_MAX);
    8087
    81   G4double CrossSection(const G4MaterialCutsCouple*,
    82                         const G4ParticleDefinition*,
    83                         G4double kineticEnergy,
    84                         G4double cutEnergy,
    85                         G4double maxEnergy);
    86 
    87   void SampleSecondaries(std::vector<G4DynamicParticle*>*,
    88                          const G4MaterialCutsCouple*,
    89                          const G4DynamicParticle*,
    90                          G4double tmin,
    91                          G4double tmax);
    92 
    93   void DefineForRegion(const G4Region*);
    94 
    95   void AddModel(G4VEmModel*, G4double tmin, G4double tmax);
    96 
    97 protected:
    98 
    99   G4double MaxSecondaryEnergy(const G4ParticleDefinition*,
    100                                     G4double kineticEnergy);
     88  virtual void SampleSecondaries(std::vector<G4DynamicParticle*>*,
     89                                 const G4MaterialCutsCouple*,
     90                                 const G4DynamicParticle*,
     91                                 G4double tmin,
     92                                 G4double tmax);
    10193
    10294private:
     
    108100  G4int                         nModels;
    109101  std::vector<G4VEmModel*>      model;
    110   G4DataVector                  tsecmin;
    111   G4DataVector                  cross_section;
     102  std::vector<G4double>         cross_section;
    112103
    113104};
  • trunk/source/processes/electromagnetic/utils/include/G4EmSaturation.hh

    r1337 r1340  
    2424// ********************************************************************
    2525//
    26 // $Id: G4EmSaturation.hh,v 1.7 2009/09/25 09:16:40 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-04-beta-01 $
     26// $Id: G4EmSaturation.hh,v 1.8 2010/08/17 17:36:58 vnivanch Exp $
     27// GEANT4 tag $Name: emutils-V09-03-23 $
    2828//
    2929//
     
    140140{
    141141  G4Track* track = step->GetTrack();
    142   return VisibleEnergyDeposition(track->GetDefinition(),
     142  return VisibleEnergyDeposition(track->GetParticleDefinition(),
    143143                                 track->GetMaterialCutsCouple(),
    144144                                 step->GetStepLength(),
  • trunk/source/processes/electromagnetic/utils/include/G4LossTableManager.hh

    r1337 r1340  
    2424// ********************************************************************
    2525//
    26 // $Id: G4LossTableManager.hh,v 1.58 2010/04/27 16:59:52 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-04-beta-01 $
     26// $Id: G4LossTableManager.hh,v 1.61 2010/09/03 10:09:45 vnivanch Exp $
     27// GEANT4 tag $Name: emutils-V09-03-23 $
    2828//
    2929//
     
    9393class G4EmSaturation;
    9494class G4EmConfigurator;
     95class G4ElectronIonPair;
    9596class G4LossTableBuilder;
     97class G4VAtomDeexcitation;
    9698class G4Region;
    9799
     
    259261  const std::vector<G4VMultipleScattering*>& GetMultipleScatteringVector();
    260262
    261   inline G4VEnergyLossProcess* GetEnergyLossProcess(const G4ParticleDefinition*);
     263  inline
     264  G4VEnergyLossProcess* GetEnergyLossProcess(const G4ParticleDefinition*);
    262265
    263266  G4EmCorrections* EmCorrections();
     
    266269
    267270  G4EmConfigurator* EmConfigurator();
     271
     272  G4ElectronIonPair* ElectronIonPair();
     273
     274  G4VAtomDeexcitation* AtomDeexcitation();
     275
     276  void SetAtomDeexcitation(G4VAtomDeexcitation*);
    268277
    269278private:
     
    345354  G4EmSaturation*             emSaturation;
    346355  G4EmConfigurator*           emConfigurator;
     356  G4ElectronIonPair*          emElectronIonPair;
     357  G4VAtomDeexcitation*        atomDeexcitation;
    347358
    348359  G4int nbinsLambda;
     
    464475          G4double& length)
    465476{
    466   const G4ParticleDefinition* aParticle = dp->GetDefinition();
     477  const G4ParticleDefinition* aParticle = dp->GetParticleDefinition();
    467478  if(aParticle != currentParticle) {
    468479    std::map<PD,G4VEnergyLossProcess*,std::less<PD> >::const_iterator pos;
  • trunk/source/processes/electromagnetic/utils/include/G4VAtomDeexcitation.hh

    r1337 r1340  
    2424// ********************************************************************
    2525//
    26 // $Id: G4VAtomDeexcitation.hh,v 1.3 2010/03/30 09:19:56 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-04-beta-01 $
     26// $Id: G4VAtomDeexcitation.hh,v 1.5 2010/10/14 16:27:35 vnivanch Exp $
     27// GEANT4 tag $Name: emutils-V09-03-23 $
    2828//
    2929// -------------------------------------------------------------------
     
    5151
    5252#include "globals.hh"
     53#include "G4AtomicShell.hh"
     54#include "G4ProductionCutsTable.hh"
     55#include "G4Track.hh"
    5356#include <vector>
    5457
    55 class G4AtomicShell;
    5658class G4ParticleDefinition;
    5759class G4DynamicParticle;
     60class G4MaterialCutsCouple;
     61class G4VParticleChange;
     62
     63enum G4AtomicShellEnumerator
     64{
     65  fKShell = 0,
     66  fL1Shell,
     67  fL2Shell,
     68  fL3Shell,
     69  fM1Shell,
     70  fM2Shell,
     71  fM3Shell,
     72  fM4Shell,
     73  fM5Shell
     74};
    5875
    5976class G4VAtomDeexcitation {
    60 
    61   G4VAtomDeexcitation(const G4String& pname = "");
     77public:
     78
     79  G4VAtomDeexcitation(const G4String& modname = "Deexcitation",
     80                      const G4String& pixename = "");
    6281
    6382  virtual ~G4VAtomDeexcitation();
     
    6584  //========== initialization ==========
    6685
    67   virtual void PreparePhysicsTable(const G4ParticleDefinition&);
    68   virtual void BuildPhysicsTable(const G4ParticleDefinition&);
     86  // Overall initialisation before new run
     87  void InitialiseAtomicDeexcitation();
     88
     89  // Initialisation of deexcitation at the beginning of run
     90  virtual void InitialiseForNewRun() = 0;
     91
     92  // Initialisation for a concrete atom
     93  // May be called at run time
     94  virtual void InitialiseForExtraAtom(G4int Z) = 0;
     95
     96  // Activation of deexcitation per detector region
     97  void SetDeexcitationActiveRegion(const G4String& rname = "");
     98
     99  // Activation of Auger electron production
     100  inline void SetAugerActive(G4bool);
     101  inline G4bool IsAugerActive() const;
     102
     103  // Activation of PIXE simulation
     104  inline void SetPIXEActive(G4bool);
     105  inline G4bool IsPIXEActive() const;
     106
     107  // Deexcitation model name
     108  inline const G4String& GetName() const;
    69109
    70110  // PIXE model name
     
    72112  inline const G4String& PIXECrossSectionModel() const;
    73113
    74   // Activation of deexcitation per detector region
    75   void SetFluorescenceActiveRegion(const G4Region* region = 0);
    76   void SetAugerActiveRegion(const G4Region* region = 0);
    77   void SetPIXECrossSectionActiveRegion(const G4Region* region = 0);
    78 
    79   void SetFluorescenceActiveRegion(const G4String& rname = "");
    80   void SetAugerActiveRegion(const G4String& rname = "");
    81   void SetPIXECrossSectionActiveRegion(const G4String& rname = "");
     114  // Access to the list of atoms active for deexcitation
     115  inline const std::vector<G4bool>& GetListOfActiveAtoms() const;
     116
     117  // Verbosity level
     118  inline void SetVerboseLevel(G4int);
     119  inline G4int GetVerboseLevel() const;
    82120
    83121  //========== Run time methods ==========
    84122
    85123  // Check if deexcitation is active for a given geometry volume
    86   G4bool CheckFluorescenceActiveRegion(G4int coupleIndex);
    87 
    88   // Check if deexcitation is active for a given geometry volume
    89   G4bool CheckPIXEActiveRegion(G4int coupleIndex);
     124  inline G4bool CheckDeexcitationActiveRegion(G4int coupleIndex);
    90125
    91126  // Get atomic shell by shell index, used by discrete processes
    92127  // (for example, photoelectric), when shell vacancy sampled by the model
    93   const G4AtomicShell* GetAtomicShell(G4int Z, G4int ShellIndex);
    94 
    95   // selection of random shell for ionisation process
    96   virtual const G4AtomicShell* SelectRandomShell(const G4DynamicParticle*,
    97                                                  G4int Z);
     128  virtual
     129  const G4AtomicShell* GetAtomicShell(G4int Z,
     130                                      G4AtomicShellEnumerator shell) = 0;
    98131
    99132  // generation of deexcitation for given atom and shell vacancy
    100   virtual void GenerateParticles(std::vector<G4DynamicParticle*>*,
    101                                  const G4AtomicShell*, G4int Z) = 0;
     133  inline void GenerateParticles(std::vector<G4DynamicParticle*>* secVect, 
     134                                const G4AtomicShell*,
     135                                G4int Z,
     136                                G4int coupleIndex);
     137
     138  // generation of deexcitation for given atom and shell vacancy
     139  virtual void GenerateParticles(std::vector<G4DynamicParticle*>* secVect, 
     140                                 const G4AtomicShell*,
     141                                 G4int Z,
     142                                 G4double gammaCut,
     143                                 G4double eCut) = 0;
    102144
    103145  // access or compute PIXE cross section
    104   virtual G4double GetPIXECrossSection (const G4ParticleDefinition*,
    105                                         G4int Z, G4double kinE) = 0;
    106 
    107   // calculate PIXE cross section from the models
    108   virtual G4double CalculatePIXECrossSection(const G4ParticleDefinition*,
    109                                              G4int Z, G4double kinE) = 0;
     146  virtual G4double
     147  GetShellIonisationCrossSectionPerAtom(const G4ParticleDefinition*,
     148                                        G4int Z,
     149                                        G4AtomicShellEnumerator shell,
     150                                        G4double kinE) = 0;
     151
     152  // access or compute PIXE cross section
     153  virtual G4double
     154  ComputeShellIonisationCrossSectionPerAtom(const G4ParticleDefinition*,
     155                                            G4int Z,
     156                                            G4AtomicShellEnumerator shell,
     157                                            G4double kinE) = 0;
    110158
    111159  // Sampling of PIXE for ionisation processes
    112   virtual void
    113   AlongStepDeexcitation(std::vector<G4DynamicParticle*>* secVect,
    114                         const G4DynamicParticle* icidentParticle,
    115                         const G4MaterialCutsCouple*,
    116                         G4double trueStepLenght,
    117                         G4double eLoss) = 0;
    118 
    119 
     160  void AlongStepDeexcitation(G4VParticleChange* pParticleChange, 
     161                             const G4Step& step,
     162                             G4double& eLoss,
     163                             G4int coupleIndex);
    120164
    121165private:
     
    125169  G4VAtomDeexcitation & operator=(const G4VAtomDeexcitation &right);
    126170
     171  G4ProductionCutsTable* theCoupleTable;
     172  G4int    verbose;
     173  G4String name;
    127174  G4String namePIXE;
    128 
     175  G4bool   flagAuger;
     176  G4bool   flagPIXE;
     177  std::vector<G4bool>   activeZ;
     178  std::vector<G4bool>   activeDeexcitationMedia;
     179  std::vector<G4String> activeRegions;
     180  std::vector<G4DynamicParticle*> vdyn;
     181  std::vector<G4Track*> secVect;
    129182};
     183
     184inline void G4VAtomDeexcitation::SetAugerActive(G4bool val)
     185{
     186  flagAuger = val;
     187}
     188
     189inline G4bool G4VAtomDeexcitation::IsAugerActive() const
     190{
     191  return flagAuger;
     192}
     193
     194inline void G4VAtomDeexcitation::SetPIXEActive(G4bool val)
     195{
     196  flagPIXE = val;
     197}
     198
     199inline G4bool G4VAtomDeexcitation::IsPIXEActive() const
     200{
     201  return flagPIXE;
     202}
     203
     204inline const G4String& G4VAtomDeexcitation::GetName() const
     205{
     206  return name;
     207}
    130208
    131209inline
     
    141219}
    142220
     221inline const std::vector<G4bool>&
     222G4VAtomDeexcitation::GetListOfActiveAtoms() const
     223{
     224  return activeZ;
     225}
     226
     227inline void G4VAtomDeexcitation::SetVerboseLevel(G4int val)
     228{
     229  verbose = val;
     230}
     231
     232inline G4int G4VAtomDeexcitation::GetVerboseLevel() const
     233{
     234  return verbose;
     235}
     236
     237inline G4bool
     238G4VAtomDeexcitation::CheckDeexcitationActiveRegion(G4int coupleIndex)
     239{
     240  return activeDeexcitationMedia[coupleIndex];
     241}
     242
     243inline void
     244G4VAtomDeexcitation::GenerateParticles(std::vector<G4DynamicParticle*>* v, 
     245                                       const G4AtomicShell* as,
     246                                       G4int Z,
     247                                       G4int idx)
     248{
     249  G4double gCut = (*theCoupleTable->GetEnergyCutsVector(idx))[0];
     250  if(gCut < as->BindingEnergy()) {
     251    GenerateParticles(v, as, Z, gCut,
     252                      (*theCoupleTable->GetEnergyCutsVector(idx))[1]);
     253  }
     254}
     255
    143256#endif
    144257
  • trunk/source/processes/electromagnetic/utils/include/G4VEmModel.hh

    r1337 r1340  
    2424// ********************************************************************
    2525//
    26 // $Id: G4VEmModel.hh,v 1.75 2010/05/26 10:41:34 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-04-beta-01 $
     26// $Id: G4VEmModel.hh,v 1.77 2010/10/14 16:27:35 vnivanch Exp $
     27// GEANT4 tag $Name: emutils-V09-03-23 $
    2828//
    2929// -------------------------------------------------------------------
     
    6767// 16-02-09 Moved implementations of virtual methods to source (VI)
    6868// 07-04-09 Moved msc methods from G4VEmModel to G4VMscModel (VI)
     69// 13-10-10 Added G4VEmAngularDistribution (VI)
    6970//
    7071// Class Description:
     
    8788#include "G4DataVector.hh"
    8889#include "G4VEmFluctuationModel.hh"
     90#include "G4VEmAngularDistribution.hh"
    8991#include "G4EmElementSelector.hh"
    9092#include "Randomize.hh"
     
    146148                                                                     
    147149  // min cut in kinetic energy allowed by the model
     150  // obsolete method will be removed
    148151  virtual G4double MinEnergyCut(const G4ParticleDefinition*,
    149152                                const G4MaterialCutsCouple*);
     
    252255  //------------------------------------------------------------------------
    253256
     257  void SetParticleChange(G4VParticleChange*, G4VEmFluctuationModel* f=0);
     258
    254259  inline G4VEmFluctuationModel* GetModelOfFluctuations();
    255260
     261  inline G4VEmAngularDistribution* GetAngularDistribution();
     262
     263  inline void SetAngularDistribution(G4VEmAngularDistribution*);
     264
    256265  inline G4double HighEnergyLimit() const;
    257266
     
    284293  inline void SetDeexcitationFlag(G4bool val);
    285294
    286   inline void ActivateNuclearStopping(G4bool);
    287 
    288295  inline G4double MaxSecondaryKinEnergy(const G4DynamicParticle* dynParticle);
    289296
    290297  inline const G4String& GetName() const;
    291 
    292   inline void SetParticleChange(G4VParticleChange*, G4VEmFluctuationModel*);
    293298
    294299  inline void SetCurrentCouple(const G4MaterialCutsCouple*);
     
    310315  // ======== Parameters of the class fixed at construction =========
    311316
    312   G4VEmFluctuationModel* fluc;
     317  G4VEmFluctuationModel* flucModel;
     318  G4VEmAngularDistribution* anglModel;
    313319  const G4String   name;
    314320
     
    329335
    330336  G4VParticleChange*  pParticleChange;
    331   G4bool              nuclearStopping;
     337  //  G4bool              nuclearStopping;
    332338
    333339  // ======== Cashed values - may be state dependent ================
     
    377383G4double G4VEmModel::MaxSecondaryKinEnergy(const G4DynamicParticle* dynPart)
    378384{
    379   return MaxSecondaryEnergy(dynPart->GetDefinition(),
     385  return MaxSecondaryEnergy(dynPart->GetParticleDefinition(),
    380386                            dynPart->GetKineticEnergy());
    381387}
     
    479485inline G4VEmFluctuationModel* G4VEmModel::GetModelOfFluctuations()
    480486{
    481   return fluc;
     487  return flucModel;
     488}
     489
     490//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
     491
     492inline G4VEmAngularDistribution* G4VEmModel::GetAngularDistribution()
     493{
     494  return anglModel;
     495}
     496
     497//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
     498
     499inline void G4VEmModel::SetAngularDistribution(G4VEmAngularDistribution* p)
     500{
     501  anglModel = p;
    482502}
    483503
     
    587607}
    588608
    589 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
    590 
    591 inline void G4VEmModel::ActivateNuclearStopping(G4bool val)
    592 {
    593   nuclearStopping = val;
    594 }
    595 
    596609//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
    597610
     
    603616//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
    604617
    605 inline void G4VEmModel::SetParticleChange(G4VParticleChange* p, 
    606                                           G4VEmFluctuationModel* f = 0)
    607 {
    608   if(p && pParticleChange != p) { pParticleChange = p; }
    609   fluc = f;
    610 }
    611 
    612 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
    613 
    614618#endif
    615619
  • trunk/source/processes/electromagnetic/utils/include/G4VEmProcess.hh

    r1337 r1340  
    2424// ********************************************************************
    2525//
    26 // $Id: G4VEmProcess.hh,v 1.60 2010/04/28 14:43:13 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-04-beta-01 $
     26// $Id: G4VEmProcess.hh,v 1.61 2010/08/17 17:36:59 vnivanch Exp $
     27// GEANT4 tag $Name: emutils-V09-03-23 $
    2828//
    2929// -------------------------------------------------------------------
     
    413413inline void G4VEmProcess::InitialiseStep(const G4Track& track)
    414414{
    415   currentParticle = track.GetDefinition();
     415  currentParticle = track.GetParticleDefinition();
    416416  preStepKinEnergy = track.GetKineticEnergy();
    417417  DefineMaterial(track.GetMaterialCutsCouple());
  • trunk/source/processes/electromagnetic/utils/include/G4VEnergyLossProcess.hh

    r1315 r1340  
    2424// ********************************************************************
    2525//
    26 // $Id: G4VEnergyLossProcess.hh,v 1.92 2010/04/28 14:43:13 vnivanch Exp $
     26// $Id: G4VEnergyLossProcess.hh,v 1.93 2010/10/14 16:27:35 vnivanch Exp $
    2727// GEANT4 tag $Name:
    2828//
     
    114114class G4Region;
    115115class G4SafetyHelper;
     116class G4VAtomDeexcitation;
    116117
    117118//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
     
    466467  std::vector<G4VEmModel*>              emModels;
    467468  G4VEmFluctuationModel*                fluctModel;
     469  G4VAtomDeexcitation*                  atomDeexcitation;
    468470  std::vector<const G4Region*>          scoffRegions;
    469471  std::vector<const G4Region*>          deRegions;
  • trunk/source/processes/electromagnetic/utils/include/G4VMscModel.hh

    r1337 r1340  
    2424// ********************************************************************
    2525//
    26 // $Id: G4VMscModel.hh,v 1.9 2009/04/07 18:39:47 vnivanch Exp $
    27 // GEANT4 tag $Name: geant4-09-04-beta-01 $
     26// $Id: G4VMscModel.hh,v 1.10 2010/09/07 16:05:33 vnivanch Exp $
     27// GEANT4 tag $Name: emutils-V09-03-23 $
    2828//
    2929// -------------------------------------------------------------------
     
    140140  G4double dtrl;
    141141  G4double lambdalimit;
    142   G4double geommax;
     142  G4double geomMin;
     143  G4double geomMax;
    143144
    144145  G4MscStepLimitType steppingAlgorithm;
     
    206207                                              G4double limit)
    207208{
    208   G4double res = geommax;
     209  G4double res = geomMax;
    209210  if(track.GetVolume() != safetyHelper->GetWorldVolume()) {
    210211    res = safetyHelper->CheckNextStep(
Note: See TracChangeset for help on using the changeset viewer.