SetMaxStep implemented via FSTEPSZ common.
authormorsch <morsch@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 8 Oct 2004 05:44:55 +0000 (05:44 +0000)
committermorsch <morsch@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 8 Oct 2004 05:44:55 +0000 (05:44 +0000)
TFluka/TFluka.cxx
TFluka/TFluka.h

index 2ecb13c4b493ed26130455c6f73c68bceb4ae961..1ab0ab9ab9e15b9aca111ec559ad5fb9328b4f99 100644 (file)
@@ -35,7 +35,7 @@
 #include "TCallf77.h"      //For the fortran calls
 #include "Fdblprc.h"       //(DBLPRC) fluka common
 #include "Fepisor.h"       //(EPISOR) fluka common
-#include "Ffinuc.h"        //(FINUC) fluka common
+#include "Ffinuc.h"        //(FINUC)  fluka common
 #include "Fiounit.h"       //(IOUNIT) fluka common
 #include "Fpaprop.h"       //(PAPROP) fluka common
 #include "Fpart.h"         //(PART)   fluka common
@@ -43,7 +43,8 @@
 #include "Fpaprop.h"       //(PAPROP) fluka common
 #include "Ffheavy.h"       //(FHEAVY) fluka common
 #include "Fopphst.h"       //(OPPHST) fluka common
-#include "Fstack.h"        //(STACK) fluka common
+#include "Fstack.h"        //(STACK)  fluka common
+#include "Fstepsz.h"       //(STEPSZ) fluka common
 
 #include "TVirtualMC.h"
 #include "TMCProcess.h"
@@ -2024,11 +2025,14 @@ fin:
 
 
 //______________________________________________________________________________ 
-void TFluka::SetMaxStep(Double_t)
+void TFluka::SetMaxStep(Double_t step)
 {
-// SetMaxStep is dummy procedure in TFluka !
-  if (fVerbosityLevel >=3)
-  cout << "SetMaxStep is dummy procedure in TFluka !" << endl;
+// Set the maximum step size
+    if (step > 1.e4) return;
+    
+    Int_t mreg, latt;
+    fGeom->GetCurrentRegion(mreg, latt);
+    STEPSZ.stepmx[mreg - 1] = step;
 }
 
 //______________________________________________________________________________ 
@@ -2220,7 +2224,7 @@ Double_t TFluka::Edep() const
 // -->no energy loss along the track
 // if TRACKR.ntrack > 0, TRACKR.mtrack > 0:
 // -->energy loss distributed along the track
-// TRACKR.dtrack = energy deposition of the jth deposition even
+// TRACKR.dtrack = energy deposition of the jth deposition event
 
   // If coming from bxdraw we have 2 steps of 0 length and 0 edep
   Int_t caller = GetCaller();
@@ -2538,6 +2542,7 @@ Int_t TFluka::StepProcesses(TArrayI &proc) const
     default:
        iproc = ProdProcess(0);
     }
+    proc[0] = iproc;
     return 1;
 }
 //______________________________________________________________________________ 
index 2e4638a7c1fe7bcc456e70a7e07054abbad251ab..29121a01109ba519610737808d889c26f8814336 100644 (file)
@@ -147,7 +147,7 @@ class TFluka : public TVirtualMC {
   virtual void   SetStopEvent(Bool_t flag) {fStopEvent = flag;}
   
   // Set methods
-  virtual void SetMaxStep(Double_t);
+  virtual void SetMaxStep (Double_t step);
   virtual void SetMaxNStep(Int_t);
   virtual void SetUserDecay(Int_t);