simhadteam team mailing list archive
-
simhadteam team
-
Mailing list archive
-
Message #00006
[Branch ~simhadteam/simulationshadrontherapie/G4LPC] Rev 8: Ajout de la methode G4LPCPhysicsList::ApplyNewCuts(void) pour changer la valeur de "defaultCutVal...
------------------------------------------------------------
revno: 8
committer: Daniel Cussol <cussol@xxxxxxxx>
branch nick: G4LPC
timestamp: Mon 2009-12-07 13:31:26 +0100
message:
Ajout de la methode G4LPCPhysicsList::ApplyNewCuts(void) pour changer la valeur de "defaultCutValues".
Ajout d'un "G4UserLimits" dans "G4LPCDetectorConstruction::ConstructGeometry".
modified:
include/G4LPCPhysicsList.hh
src/G4LPCDetectorConstruction.cc
src/G4LPCPhysicsList.cc
--
lp:~simhadteam/simulationshadrontherapie/G4LPC
https://code.launchpad.net/~simhadteam/simulationshadrontherapie/G4LPC
Your team Simulateurs pour la Hadronthérapie is subscribed to branch lp:~simhadteam/simulationshadrontherapie/G4LPC.
To unsubscribe from this branch go to https://code.launchpad.net/~simhadteam/simulationshadrontherapie/G4LPC/+edit-subscription.
=== modified file 'include/G4LPCPhysicsList.hh'
--- include/G4LPCPhysicsList.hh 2009-10-21 09:27:24 +0000
+++ include/G4LPCPhysicsList.hh 2009-12-07 12:31:26 +0000
@@ -78,6 +78,8 @@
virtual void UseG4Cascade(void) {bertini=false;}
virtual G4bool IsUsingBertiniCascade(void) {return bertini;}
+
+ virtual void ApplyNewCuts(void) {this->SetCuts();}
protected:
// Construct particle and physics process
=== modified file 'src/G4LPCDetectorConstruction.cc'
--- src/G4LPCDetectorConstruction.cc 2009-10-21 09:27:24 +0000
+++ src/G4LPCDetectorConstruction.cc 2009-12-07 12:31:26 +0000
@@ -1705,6 +1705,8 @@
return ConstructGeometry();
}
+#include "G4UserLimits.hh"
+
G4VPhysicalVolume* G4LPCDetectorConstruction::ConstructGeometry()
{
DefineMaterials();
@@ -1792,6 +1794,13 @@
G4String logName;
G4String physName;
char tmp[80];
+
+ //=============> NEW <=====================//
+ G4double upperStepLimit=2.*mm;
+ G4UserLimits *ul=0;
+ if(upperStepLimit > 0) ul=new G4UserLimits(upperStepLimit);
+ //=============> NEW <=====================//
+
for(G4int i=0;i<nbLayers;i++)
{
G4cout << "Layer " << i << " : " << GetLayerMaterial(i)->GetName() << " / " <<
@@ -1805,6 +1814,11 @@
logName=tmp;
layers_log[i] = new G4LogicalVolume(layer_box,
GetLayerMaterial(i),logName,0,0,0);
+
+ //=============> NEW <=====================//
+ if(ul) layers_log[i]->SetUserLimits(ul);
+ //=============> NEW <=====================//
+
sprintf(tmp,"PhysicalLayer%d",i+1);
physName=tmp;
layers_phys[i] = new G4PVPlacement(0,
=== modified file 'src/G4LPCPhysicsList.cc'
--- src/G4LPCPhysicsList.cc 2009-10-21 09:27:24 +0000
+++ src/G4LPCPhysicsList.cc 2009-12-07 12:31:26 +0000
@@ -47,9 +47,21 @@
// Valeur de Cut sur le parcours
//
+// D.Cussol: 27/11/2009
+// Comment from the release notes of version 9.2.p02:
+// "The usage of the Spline approximation of dedx and cross section tables provides a Bragg
+// peak position which is stable within 0.1 mm versus variation of production cut or step
+// limit."
+//
+// This last comment is obviously wrong since a variation of 3.4% (5-6 mm!) is observed on
+// the Bragg Peak location for 150 protons in water when the default cut value is decreased
+// from 0.02 mm to 0.0002 mm. At best, the Bragg Peak location is shifted 2 mm to higher
+// values compared to 9.1.p02 version. The new 9.2.p02 version seems to be closer to the NIST
+// data base.
+//
+
defaultCutValue = 0.02*mm;
//defaultCutValue = histogramManager->GetRangeMax()/histogramManager->GetNbinsRendement()/5.;
-cout << "Cut Value : " << defaultCutValue/mm << " mm " << endl;
}
G4LPCPhysicsList::~G4LPCPhysicsList()
@@ -457,6 +469,7 @@
void G4LPCPhysicsList::DumpInfo()
{
G4cout << "<===========================================================================>" << G4endl;
+ G4cout << "Cut Value : " << defaultCutValue/mm << " mm " << G4endl;
G4cout << "List of particles and proceses : " << G4endl;
theParticleIterator->reset();