From fd91b6647c0fdf6ce81522959405d4ae20c01b5e Mon Sep 17 00:00:00 2001 From: fca Date: Wed, 21 Jun 2000 17:40:15 +0000 Subject: [PATCH] Adding possibility to set ISTRA, PAI model --- TGeant3/TGeant3.cxx | 20 ++++++++++++++++++++ TGeant3/TGeant3.h | 20 +++++++++++++++++--- 2 files changed, 37 insertions(+), 3 deletions(-) diff --git a/TGeant3/TGeant3.cxx b/TGeant3/TGeant3.cxx index 4e5474dc826..fe2b882136c 100644 --- a/TGeant3/TGeant3.cxx +++ b/TGeant3/TGeant3.cxx @@ -15,6 +15,9 @@ /* $Log$ +Revision 1.26 2000/05/16 13:10:41 fca +New method IsNewTrack and fix for a problem in Father-Daughter relations + Revision 1.25 2000/04/07 11:12:35 fca G4 compatibility changes @@ -598,6 +601,7 @@ void TGeant3::LoadAddress() gcomad(PASSCHARD("GCNUM"), (int*&) fGcnum PASSCHARL("GCNUM")); gcomad(PASSCHARD("GCSETS"),(int*&) fGcsets PASSCHARL("GCSETS")); gcomad(PASSCHARD("GCPHYS"),(int*&) fGcphys PASSCHARL("GCPHYS")); + gcomad(PASSCHARD("GCPHLT"),(int*&) fGcphlt PASSCHARL("GCPHLT")); gcomad(PASSCHARD("GCOPTI"),(int*&) fGcopti PASSCHARL("GCOPTI")); gcomad(PASSCHARD("GCTLIT"),(int*&) fGctlit PASSCHARL("GCTLIT")); gcomad(PASSCHARD("GCVDMA"),(int*&) fGcvdma PASSCHARL("GCVDMA")); @@ -1112,6 +1116,10 @@ void TGeant3::SetProcess(const char* flagName, Int_t flagValue) fGcphys->imuls=flagValue; else if(!strcmp(flagName,"RAYL")) fGcphys->irayl=flagValue; + else if(!strcmp(flagName,"STRA")) + fGcphlt->istra=flagValue; + else if(!strcmp(flagName,"SYNC")) + fGcphlt->isync=flagValue; else Warning("SetFlag","Flag %s not implemented\n",flagName); } @@ -3443,6 +3451,18 @@ void TGeant3::SetRAYL(Int_t par) fGcphys->irayl = par; } +//_____________________________________________________________________________ +void TGeant3::SetSTRA(Int_t par) +{ + // + // To control energy loss fluctuations + // with the PhotoAbsorption Ionisation model. + // par =0 no Straggling. + // =1 Straggling yes => no Delta rays. + // + fGcphlt->istra = par; +} + //_____________________________________________________________________________ void TGeant3::SetSWIT(Int_t sw, Int_t val) { diff --git a/TGeant3/TGeant3.h b/TGeant3/TGeant3.h index 225fe2a9684..abd353be2bb 100644 --- a/TGeant3/TGeant3.h +++ b/TGeant3/TGeant3.h @@ -308,9 +308,6 @@ typedef struct { // + ,ILOSS,SLOSS,SOLOSS,STLOSS,DPHYS2 // + ,IMULS,SMULS,SOMULS,STMULS,DPHYS3 // + ,IRAYL,SRAYL,SLRAYL,ZINTRA,STEPRA -// COMMON/GCPHLT/ILABS,SLABS,SLLABS,ZINTLA,STEPLA -// + ,ISYNC -// + ,ISTRA typedef struct { Int_t ipair; Float_t spair; @@ -378,6 +375,20 @@ typedef struct { Float_t zintra; Float_t stepra; } Gcphys_t; + +//----------GCPHLT +// COMMON/GCPHLT/ILABS,SLABS,SLLABS,ZINTLA,STEPLA +// + ,ISYNC +// + ,ISTRA +typedef struct { + Int_t ilabs; + Float_t slabs; + Float_t sllabs; + Float_t zintla; + Float_t stepla; + Int_t isync; + Int_t istra; +} Gcphlt_t; //----------GCOPTI // COMMON/GCOPTI/IOPTIM @@ -536,6 +547,7 @@ protected: Gcflag_t *fGcflag; Gctmed_t *fGctmed; Gcphys_t *fGcphys; + Gcphlt_t *fGcphlt; Gcking_t *fGcking; Gckin2_t *fGckin2; Gckin3_t *fGckin3; @@ -657,6 +669,7 @@ public: virtual Gcflag_t* Gcflag() const {return fGcflag;} virtual Gctmed_t* Gctmed() const {return fGctmed;} virtual Gcphys_t* Gcphys() const {return fGcphys;} + virtual Gcphlt_t* Gcphlt() const {return fGcphlt;} virtual Gcking_t* Gcking() const {return fGcking;} virtual Gckin2_t* Gckin2() const {return fGckin2;} virtual Gckin3_t* Gckin3() const {return fGckin3;} @@ -825,6 +838,7 @@ public: virtual void SetPFIS(Int_t par=1); virtual void SetPHOT(Int_t par=1); virtual void SetRAYL(Int_t par=1); + virtual void SetSTRA(Int_t par=0); virtual void SetSWIT(Int_t sw, Int_t val=1); virtual void SetTRIG(Int_t nevents=1); virtual void SetUserDecay(Int_t ipart); -- 2.39.3