public G4HadronicInteraction

// Base class for intra-nuclear transport models in geant4. By merit of inheriting from this class a intra-nuclear transport model can be used in conjunction with any precompound, string parton model or other high energy generator in the generation of final states for inelastic scattering.



  explicit G4VIntraNuclearTransportModel(const G4String& mName = "CascadeModel",
                     G4VPreCompoundModel* ptr = nullptr);

  virtual ~G4VIntraNuclearTransportModel();

  G4ReactionProductVector* Propagate(G4KineticTrackVector* theSecondaries,
                     G4V3DNucleus* theNucleus) = 0;

  G4ReactionProductVector* PropagateNuclNucl(G4KineticTrackVector* theSecondaries,
                     G4V3DNucleus* theNucleus,
                                     G4V3DNucleus* theProjectileNucleus);    // Uzhi Nov. 2012

  inline void SetDeExcitation(G4VPreCompoundModel* ptr);

  inline void Set3DNucleus(G4V3DNucleus* const value);

  inline void SetPrimaryProjectile(const G4HadProjectile &aPrimary);

  inline const G4String& GetModelName() const;

  virtual void ModelDescription(std::ostream& outFile) const ;
  virtual void PropagateModelDescription(std::ostream& outFile) const ;


  G4VIntraNuclearTransportModel(const G4VIntraNuclearTransportModel& right) = delete;
  const G4VIntraNuclearTransportModel& operator=(const G4VIntraNuclearTransportModel &right) = delete;
  int operator==(const G4VIntraNuclearTransportModel& right) const = delete;
  int operator!=(const G4VIntraNuclearTransportModel& right) const = delete;


  inline G4V3DNucleus* Get3DNucleus() const;

  inline G4VPreCompoundModel* GetDeExcitation() const;

  inline const G4HadProjectile* GetPrimaryProjectile() const;

  G4String theTransportModelName;

  G4V3DNucleus* the3DNucleus;

  G4VPreCompoundModel* theDeExcitation;

  const G4HadProjectile* thePrimaryProjectile;
© Hongyi Wu            updated: 2018-08-10 07:14:22

results matching ""

    No results matching ""