Changeset 963 for trunk/source/processes
- Timestamp:
- Apr 6, 2009, 12:34:39 PM (15 years ago)
- Location:
- trunk/source/processes
- Files:
-
- 89 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/processes/management/History
r819 r963 1 $Id: History,v 1.5 1.2.1.2.1 2008/04/25 11:47:06 kurasigeExp $1 $Id: History,v 1.58 2008/06/23 08:58:40 gcosmo Exp $ 2 2 ------------------------------------------------------------------- 3 3 … … 17 17 * Reverse chronological order (last date on top), please * 18 18 ---------------------------------------------------------- 19 - Apr. 25, 2008 H.Kurashige (procman-V09-00-06) 19 20 - Jun. 23, 2008 G.Cosmo (procman-V09-01-03) 21 - Fixed un-necessary double deletion/creation of vector in 22 G4ProcessVector::operator=() 23 24 - Mar. 20, 2008 H.Kurashige (procman-V09-01-02) 25 - revert changes in G4processmanager::StartTracking 26 27 - Mar. 14, 2008 H.Kurashige (procman-V09-01-01) 28 - fix warning message of g++ 29 - Change order of invocation of processes in G4processmanager::StartTracking 30 31 - Dec. 15, 2007 H.Kurashige (procman-V09-01-00) 20 32 - fixed a bug of invoking ResetNumberOfInteractionLengthLeft 21 33 at the zero length step 22 34 - allow zero mean free path for PostStepDoIt 23 35 - add ProcessSubType to G4VProcess 24 36 25 37 - Dec. 12, 2007 G.Cosmo (procman-V09-00-05a) 26 38 - Moved inline definitions of virtual methods in G4WrapperProcess to 27 .cc file. 39 .cc file. Included in tag "procman-V09-00-". 28 40 29 41 - Nov. 28, 2007 H.Kurashige (procman-V09-00-05) -
trunk/source/processes/management/include/G4IVContinuousDiscreteProcess.hh
r819 r963 26 26 // 27 27 // $Id: G4IVContinuousDiscreteProcess.hh,v 1.8 2006/06/29 21:07:14 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // $Id: -
trunk/source/processes/management/include/G4IVRestDiscreteProcess.hh
r819 r963 26 26 // 27 27 // $Id: G4IVRestDiscreteProcess.hh,v 1.8 2006/06/29 21:07:16 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // $Id: -
trunk/source/processes/management/include/G4ParticleTypes.hh
r819 r963 26 26 // 27 27 // $Id: G4ParticleTypes.hh,v 1.6 2006/06/29 21:07:18 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/management/include/G4ProcTblElement.hh
r819 r963 26 26 // 27 27 // $Id: G4ProcTblElement.hh,v 1.11 2006/06/29 21:07:20 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/management/include/G4ProcTblElement.icc
r819 r963 26 26 // 27 27 // $Id: G4ProcTblElement.icc,v 1.8 2006/06/29 21:07:22 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/management/include/G4ProcessAttribute.hh
r819 r963 26 26 // 27 27 // $Id: G4ProcessAttribute.hh,v 1.5 2006/06/29 21:07:24 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/management/include/G4ProcessManager.hh
r819 r963 26 26 // 27 27 // $Id: G4ProcessManager.hh,v 1.16 2007/10/02 08:23:20 kurasige Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/management/include/G4ProcessManager.icc
r819 r963 26 26 // 27 27 // $Id: G4ProcessManager.icc,v 1.6 2007/03/30 01:02:28 kurasige Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/management/include/G4ProcessManagerMessenger.hh
r819 r963 26 26 // 27 27 // $Id: G4ProcessManagerMessenger.hh,v 1.7 2006/06/29 21:07:30 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/management/include/G4ProcessTable.hh
r819 r963 27 27 // 28 28 // $Id: G4ProcessTable.hh,v 1.10 2006/06/29 21:07:32 gunter Exp $ 29 // GEANT4 tag $Name: $29 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 30 30 // 31 31 // -
trunk/source/processes/management/include/G4ProcessTable.icc
r819 r963 26 26 // 27 27 // $Id: G4ProcessTable.icc,v 1.5 2006/06/29 21:07:34 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // History: -
trunk/source/processes/management/include/G4ProcessTableMessenger.hh
r819 r963 26 26 // 27 27 // $Id: G4ProcessTableMessenger.hh,v 1.7 2006/06/29 21:07:36 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/management/include/G4ProcessType.hh
r819 r963 26 26 // 27 27 // $Id: G4ProcessType.hh,v 1.5 2006/06/29 21:07:38 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/management/include/G4ProcessVector.hh
r819 r963 26 26 // 27 27 // $Id: G4ProcessVector.hh,v 1.10 2006/06/29 21:07:40 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/management/include/G4ProcessVector.icc
r819 r963 26 26 // 27 27 // $Id: G4ProcessVector.icc,v 1.5 2006/06/29 21:07:42 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 inline G4bool G4ProcessVector::operator==(const G4ProcessVector &right) const -
trunk/source/processes/management/include/G4VContinuousDiscreteProcess.hh
r819 r963 25 25 // 26 26 // 27 // $Id: G4VContinuousDiscreteProcess.hh,v 1. 8.4.1 2008/04/25 11:47:06kurasige Exp $28 // GEANT4 tag $Name: geant4-09-0 1-patch-02 $27 // $Id: G4VContinuousDiscreteProcess.hh,v 1.9 2007/11/15 04:10:18 kurasige Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/management/include/G4VContinuousProcess.hh
r819 r963 26 26 // 27 27 // $Id: G4VContinuousProcess.hh,v 1.6 2006/06/29 21:07:46 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/management/include/G4VDiscreteProcess.hh
r819 r963 26 26 27 27 // 28 // $Id: G4VDiscreteProcess.hh,v 1. 8.4.1 2008/04/25 11:47:06kurasige Exp $29 // GEANT4 tag $Name: geant4-09-0 1-patch-02 $28 // $Id: G4VDiscreteProcess.hh,v 1.9 2007/11/15 04:10:18 kurasige Exp $ 29 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 30 30 // 31 31 // -
trunk/source/processes/management/include/G4VProcess.hh
r819 r963 25 25 // 26 26 // 27 // $Id: G4VProcess.hh,v 1.2 4 2007/10/02 08:23:20kurasige Exp $28 // GEANT4 tag $Name: geant4-09-0 1-patch-02 $27 // $Id: G4VProcess.hh,v 1.25 2007/11/15 04:09:58 kurasige Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // … … 53 53 // Added PreparePhysicsTable 20 Aug. 2004 H.Kurashige 54 54 // Added isXXXXDoItIsEnabled 2 Oct. 2007 H.Kurashige 55 // Added ProcessSubType 15 Nov. 2007 H.Kurashige 55 56 56 57 #ifndef G4VProcess_h … … 261 262 // Set the process type. 262 263 264 G4int GetProcessSubType() const; 265 // Returns the process sub type. 266 267 void SetProcessSubType(G4int ); 268 // Set the process sub type. 269 263 270 static const G4String& GetProcessTypeName(G4ProcessType ); 264 271 // Returns the process type name … … 329 336 // The type of the process 330 337 338 G4int theProcessSubType; 339 // The sub type of the process 340 331 341 G4double thePILfactor; 332 342 // factor for PhysicsInteractionLength … … 379 389 } 380 390 391 inline 392 G4int G4VProcess::GetProcessSubType() const 393 { 394 return theProcessSubType; 395 } 396 397 inline 398 void G4VProcess::SetProcessSubType(G4int value) 399 { 400 theProcessSubType = value; 401 } 402 381 403 inline void G4VProcess::SetVerboseLevel(G4int value) 382 404 { -
trunk/source/processes/management/include/G4VRestContinuousDiscreteProcess.hh
r819 r963 25 25 // 26 26 // 27 // $Id: G4VRestContinuousDiscreteProcess.hh,v 1. 8.4.1 2008/04/25 11:47:06kurasige Exp $28 // GEANT4 tag $Name: geant4-09-0 1-patch-02 $27 // $Id: G4VRestContinuousDiscreteProcess.hh,v 1.9 2007/11/15 04:10:18 kurasige Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/management/include/G4VRestContinuousProcess.hh
r819 r963 26 26 // 27 27 // $Id: G4VRestContinuousProcess.hh,v 1.6 2006/06/29 21:07:54 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/management/include/G4VRestDiscreteProcess.hh
r819 r963 25 25 // 26 26 // 27 // $Id: G4VRestDiscreteProcess.hh,v 1. 8.4.1 2008/04/25 11:47:07kurasige Exp $28 // GEANT4 tag $Name: geant4-09-0 1-patch-02 $27 // $Id: G4VRestDiscreteProcess.hh,v 1.9 2007/11/15 04:10:18 kurasige Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/management/include/G4VRestProcess.hh
r819 r963 26 26 // 27 27 // $Id: G4VRestProcess.hh,v 1.6 2006/06/29 21:07:58 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/management/include/G4WrapperProcess.hh
r819 r963 26 26 // 27 27 // $Id: G4WrapperProcess.hh,v 1.9 2007/12/12 10:09:49 gcosmo Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/management/src/G4IVContinuousDiscreteProcess.cc
r819 r963 25 25 // 26 26 // 27 // $Id: G4IVContinuousDiscreteProcess.cc,v 1. 9.4.1 2008/04/25 11:47:07kurasige Exp $28 // GEANT4 tag $Name: geant4-09-0 1-patch-02 $27 // $Id: G4IVContinuousDiscreteProcess.cc,v 1.10 2007/11/15 04:10:18 kurasige Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // $Id: -
trunk/source/processes/management/src/G4IVRestDiscreteProcess.cc
r819 r963 25 25 // 26 26 // 27 // $Id: G4IVRestDiscreteProcess.cc,v 1. 9.4.1 2008/04/25 11:47:07kurasige Exp $28 // GEANT4 tag $Name: geant4-09-0 1-patch-02 $27 // $Id: G4IVRestDiscreteProcess.cc,v 1.10 2007/11/15 04:10:18 kurasige Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // $Id: -
trunk/source/processes/management/src/G4ProcTblElement.cc
r819 r963 26 26 // 27 27 // $Id: G4ProcTblElement.cc,v 1.7 2006/06/29 21:08:06 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/management/src/G4ProcessAttribute.cc
r819 r963 26 26 // 27 27 // $Id: G4ProcessAttribute.cc,v 1.5 2006/06/29 21:08:08 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/management/src/G4ProcessManager.cc
r819 r963 25 25 // 26 26 // 27 // $Id: G4ProcessManager.cc,v 1.3 4 2007/11/28 17:47:57kurasige Exp $28 // GEANT4 tag $Name: geant4-09-0 1-patch-02 $27 // $Id: G4ProcessManager.cc,v 1.36 2008/03/20 02:57:09 kurasige Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/management/src/G4ProcessManagerMessenger.cc
r819 r963 26 26 // 27 27 // $Id: G4ProcessManagerMessenger.cc,v 1.10 2006/06/29 21:08:12 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/management/src/G4ProcessTable.cc
r819 r963 26 26 // 27 27 // $Id: G4ProcessTable.cc,v 1.13 2007/10/06 05:33:58 kurasige Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/management/src/G4ProcessTableMessenger.cc
r819 r963 25 25 // 26 26 // 27 // $Id: G4ProcessTableMessenger.cc,v 1.1 7 2006/06/29 21:08:16 gunterExp $28 // GEANT4 tag $Name: geant4-09-0 1-patch-02 $27 // $Id: G4ProcessTableMessenger.cc,v 1.18 2008/03/14 02:55:04 kurasige Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // … … 438 438 for (idx = 0; idx < 1000 ; idx ++ ) { 439 439 G4String typeName = G4VProcess::GetProcessTypeName(G4ProcessType(idx)); 440 if ( isFoundEndMark = typeName.contains("---")) break; 440 isFoundEndMark = typeName.contains("---"); 441 if ( isFoundEndMark ) break; 441 442 } 442 443 if ( isFoundEndMark ) { -
trunk/source/processes/management/src/G4ProcessVector.cc
r819 r963 25 25 // 26 26 // 27 // $Id: G4ProcessVector.cc,v 1. 4 2006/06/29 21:08:18 gunterExp $28 // GEANT4 tag $Name: $27 // $Id: G4ProcessVector.cc,v 1.5 2008/06/23 08:58:26 gcosmo Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // … … 38 38 #include "G4ProcessVector.hh" 39 39 40 41 40 /////// Constructors 42 G4ProcessVector::G4ProcessVector(size_t):pProcVector(0) 41 // 42 G4ProcessVector::G4ProcessVector(size_t) 43 43 { 44 44 pProcVector = new G4ProcVector(); 45 45 } 46 46 … … 51 51 52 52 /////// destructor 53 // 53 54 G4ProcessVector::~G4ProcessVector() 54 55 { 55 56 // delete pProcVector 56 if (pProcVector != 0 ) { 57 // 58 if (pProcVector != 0 ) 59 { 57 60 pProcVector->clear(); 58 61 delete pProcVector; … … 61 64 62 65 ////// assignment oeprator 66 // 63 67 G4ProcessVector & G4ProcessVector::operator=(G4ProcessVector &right) 64 68 { 65 if (this != &right) { 69 if (this != &right) 70 { 66 71 // delete pProcVector 67 if (pProcVector != 0 ) { 72 // 73 if (pProcVector != 0 ) 74 { 68 75 pProcVector->clear(); 69 76 delete pProcVector; … … 73 80 74 81 // copy all contents in pProcVector 75 if (pProcVector != 0) { 76 pProcVector->clear(); 77 delete pProcVector; 78 } 79 pProcVector = new G4ProcVector(); 82 // 80 83 G4ProcVector::iterator i; 81 for (i = pProcVector->begin(); i!= pProcVector->end(); ++i) { 84 for (i = pProcVector->begin(); i!= pProcVector->end(); ++i) 85 { 82 86 pProcVector->push_back(*i); 83 87 } … … 85 89 return *this; 86 90 } 87 88 -
trunk/source/processes/management/src/G4VContinuousDiscreteProcess.cc
r819 r963 26 26 // 27 27 // $Id: G4VContinuousDiscreteProcess.cc,v 1.6 2007/10/02 08:23:20 kurasige Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/management/src/G4VContinuousProcess.cc
r819 r963 26 26 // 27 27 // $Id: G4VContinuousProcess.cc,v 1.5 2007/10/02 08:23:20 kurasige Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/management/src/G4VDiscreteProcess.cc
r819 r963 26 26 // 27 27 // $Id: G4VDiscreteProcess.cc,v 1.6 2007/10/02 08:23:20 kurasige Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/management/src/G4VProcess.cc
r819 r963 25 25 // 26 26 // 27 // $Id: G4VProcess.cc,v 1.1 5.2.1 2008/04/25 11:47:07kurasige Exp $28 // GEANT4 tag $Name: geant4-09-0 1-patch-02 $27 // $Id: G4VProcess.cc,v 1.16 2007/11/15 04:10:18 kurasige Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // … … 52 52 theProcessName(aName), 53 53 theProcessType(aType), 54 theProcessSubType(-1), 54 55 thePILfactor(1.0), 55 56 57 56 enableAtRestDoIt(true), 57 enableAlongStepDoIt(true), 58 enablePostStepDoIt(true), 58 59 verboseLevel(0) 60 59 61 { 60 62 pParticleChange = &aParticleChange; … … 71 73 theProcessName(right.theProcessName), 72 74 theProcessType(right.theProcessType), 75 theProcessSubType(right.theProcessSubType), 73 76 thePILfactor(1.0), 74 enableAtRestDoIt(true),75 enableAlongStepDoIt(true),76 enablePostStepDoIt(true),77 77 enableAtRestDoIt(right.enableAtRestDoIt), 78 enableAlongStepDoIt(right.enableAlongStepDoIt), 79 enablePostStepDoIt(right.enablePostStepDoIt), 80 verboseLevel(right.verboseLevel) 78 81 { 79 82 } … … 86 89 theNumberOfInteractionLengthLeft -= previousStepSize/currentInteractionLength; 87 90 if(theNumberOfInteractionLengthLeft<0.) { 88 theNumberOfInteractionLengthLeft=perMillion;91 theNumberOfInteractionLengthLeft=perMillion; 89 92 } 90 93 91 94 } else { 92 95 #ifdef G4VERBOSE … … 186 189 { 187 190 G4cout << "Process Name " << theProcessName ; 188 G4cout << " : Type[" << GetProcessTypeName(theProcessType) << "]"<< G4endl; 191 G4cout << " : Type[" << GetProcessTypeName(theProcessType) << "]"; 192 G4cout << " : SubType[" << theProcessSubType << "]"<< G4endl; 189 193 } 190 194 -
trunk/source/processes/management/src/G4VRestContinuousDiscreteProcess.cc
r819 r963 26 26 // 27 27 // $Id: G4VRestContinuousDiscreteProcess.cc,v 1.6 2007/10/02 08:23:20 kurasige Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/management/src/G4VRestContinuousProcess.cc
r819 r963 26 26 // 27 27 // $Id: G4VRestContinuousProcess.cc,v 1.6 2007/10/02 08:23:20 kurasige Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/management/src/G4VRestDiscreteProcess.cc
r819 r963 26 26 // 27 27 // $Id: G4VRestDiscreteProcess.cc,v 1.6 2007/10/02 08:23:20 kurasige Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/management/src/G4VRestProcess.cc
r819 r963 26 26 // 27 27 // $Id: G4VRestProcess.cc,v 1.6 2007/10/02 08:23:20 kurasige Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/management/src/G4WrapperProcess.cc
r819 r963 26 26 // 27 27 // $Id: G4WrapperProcess.cc,v 1.1 2007/12/12 10:09:49 gcosmo Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/optical/History
r819 r963 16 16 * Reverse chronological order (last date on top), please * 17 17 ---------------------------------------------------------- 18 19 14th Jan 2009 Peter Gumplinger (op-V09-02-00) 20 respond to bug report 1040 by fixing G4OpBoundaryProcess.cc 21 22 07th Nov 2008 Peter Gumplinger (op-V09-01-09) 23 use new global/HEPRandom's G4RandomTools.hh 24 25 24th Oct 2008 Peter Gumplinger (op-V09-01-08) 26 use local G4OpProcessSubType.hh 27 28 21st Oct 2008 Peter Gumplinger (op-V09-01-07) 29 add SetProcessSubType for G4OpAbsorption, G4OpBoundaryProcess, 30 G4OpRayleigh and G4OpWLS 31 32 18th Aug 2008 Peter Gumplinger (op-V09-01-06) 33 use signatures G4SwapPtr(T*& and G4SwapObj(T* 34 in G4OpBoundaryProcess - to work with global-V09-01-12 35 36 15th Aug 2008 Peter Gumplinger (op-V09-01-05) 37 replaced G4SwapPtr with G4SwapObj for Rindex 38 in G4OpBoundaryProcess - serious error since op-V09-01-00 39 (see also Problem Report 1020) 40 41 4th July 2008 Peter Gumplinger (op-V09-01-04) 42 In G4OpWLS now SetTouchableHandle(aTrack.GetTouchableHandle()) 43 for the secondaries in the DoIt. 44 In G4OpBoundaryProcess.cc initialize the pointer: 45 G4LogicalSurface* Surface = NULL; 46 47 27th June 2008 Peter Gumplinger (op-V09-01-03) 48 In G4OpBoundaryProcess changed unsafe cast 49 (G4OpticalSurface*) to dynamic_cast<G4OpticalSurface*> 50 following suggestion in bug-report #1014 51 52 6th June 2008 Peter Gumplinger (op-V09-01-02) 53 G4OpRayleigh, G4OpWLS = trivial name changes: 54 momentum->energy, momenta->energies 55 56 5th June 2008 Peter Gumplinger (op-V09-01-00) 57 G4OpBoundaryProcess: Removed G4Swap methods - replaced by 58 G4SwapPtr. Removed G4IsotropicRand method - replaced by 59 G4RandomDirection. Add commented code to change absorption 60 at a dielectric/metal boundary into transmission. 18 61 19 62 29th Oct 2007 Peter Gumplinger (op-V09-00-01) -
trunk/source/processes/optical/include/G4OpAbsorption.hh
r819 r963 26 26 // 27 27 // $Id: G4OpAbsorption.hh,v 1.9 2006/06/29 21:08:36 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 //////////////////////////////////////////////////////////////////////// -
trunk/source/processes/optical/include/G4OpBoundaryProcess.hh
r819 r963 25 25 // 26 26 // 27 // $Id: G4OpBoundaryProcess.hh,v 1.1 6 2007/10/15 21:16:24gum Exp $28 // GEANT4 tag $Name: $27 // $Id: G4OpBoundaryProcess.hh,v 1.18 2008/11/07 17:59:37 gum Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // … … 68 68 #include "geomdefs.hh" 69 69 #include "Randomize.hh" 70 71 #include "G4RandomTools.hh" 72 #include "G4RandomDirection.hh" 73 70 74 #include "G4Step.hh" 71 75 #include "G4VDiscreteProcess.hh" … … 162 166 private: 163 167 164 void G4Swap(G4double* a, G4double* b) const;165 166 void G4Swap(G4Material* a, G4Material* b) const;167 168 void G4VectorSwap(G4ThreeVector* vec1, G4ThreeVector* vec2) const;169 170 168 G4bool G4BooleanRand(const G4double prob) const; 171 172 G4ThreeVector G4IsotropicRand() const;173 174 G4ThreeVector G4LambertianRand(const G4ThreeVector& normal);175 176 G4ThreeVector G4PlaneVectorRand(const G4ThreeVector& normal) const;177 169 178 170 G4ThreeVector GetFacetNormal(const G4ThreeVector& Momentum, … … 229 221 230 222 inline 231 void G4OpBoundaryProcess::G4Swap(G4double* a, G4double* b) const232 {233 // swaps the contents of the objects pointed234 // to by 'a' and 'b'!235 236 G4double temp;237 238 temp = *a;239 *a = *b;240 *b = temp;241 }242 243 inline244 void G4OpBoundaryProcess::G4Swap(G4Material* a, G4Material* b) const245 {246 // ONLY swaps the pointers; i.e. what used to be pointed247 // to by 'a' is now pointed to by 'b' and vice versa!248 249 G4Material* temp = a;250 251 a = b;252 b = temp;253 }254 255 inline256 void G4OpBoundaryProcess::G4VectorSwap(G4ThreeVector* vec1,257 G4ThreeVector* vec2) const258 {259 // swaps the contents of the objects pointed260 // to by 'vec1' and 'vec2'!261 262 G4ThreeVector temp;263 264 temp = *vec1;265 *vec1 = *vec2;266 *vec2 = temp;267 }268 269 inline270 223 G4bool G4OpBoundaryProcess::G4BooleanRand(const G4double prob) const 271 224 { … … 273 226 274 227 return (G4UniformRand() < prob); 275 }276 277 inline278 G4ThreeVector G4OpBoundaryProcess::G4IsotropicRand() const279 {280 /* Returns a random isotropic unit vector. */281 282 G4ThreeVector vect;283 G4double len2;284 285 do {286 287 vect.setX(G4UniformRand() - 0.5);288 vect.setY(G4UniformRand() - 0.5);289 vect.setZ(G4UniformRand() - 0.5);290 291 len2 = vect.mag2();292 293 } while (len2 < 0.01 || len2 > 0.25);294 295 return vect.unit();296 }297 298 inline299 G4ThreeVector G4OpBoundaryProcess::300 G4LambertianRand(const G4ThreeVector& normal)301 {302 /* Returns a random lambertian unit vector. */303 304 G4ThreeVector vect;305 G4double ndotv;306 307 do {308 vect = G4IsotropicRand();309 310 ndotv = normal * vect;311 312 if (ndotv < 0.0) {313 vect = -vect;314 ndotv = -ndotv;315 }316 317 } while (!G4BooleanRand(ndotv));318 return vect;319 }320 321 inline322 G4ThreeVector G4OpBoundaryProcess::323 G4PlaneVectorRand(const G4ThreeVector& normal) const324 325 /* This function chooses a random vector within a plane given326 by the unit normal */327 {328 G4ThreeVector vec1 = normal.orthogonal();329 330 G4ThreeVector vec2 = vec1.cross(normal);331 332 G4double phi = twopi*G4UniformRand();333 G4double cosphi = std::cos(phi);334 G4double sinphi = std::sin(phi);335 336 return cosphi * vec1 + sinphi * vec2;337 228 } 338 229 -
trunk/source/processes/optical/include/G4OpRayleigh.hh
r819 r963 26 26 // 27 27 // $Id: G4OpRayleigh.hh,v 1.9 2006/06/29 21:08:40 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/optical/include/G4OpWLS.hh
r819 r963 26 26 // 27 27 // $Id: G4OpWLS.hh,v 1.4 2006/06/29 21:08:42 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 //////////////////////////////////////////////////////////////////////// -
trunk/source/processes/optical/src/G4OpAbsorption.cc
r819 r963 25 25 // 26 26 // 27 // $Id: G4OpAbsorption.cc,v 1. 7 2006/06/29 21:08:50 gunterExp $28 // GEANT4 tag $Name: $27 // $Id: G4OpAbsorption.cc,v 1.9 2008/10/24 19:52:28 gum Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 //////////////////////////////////////////////////////////////////////// … … 52 52 53 53 #include "G4ios.hh" 54 #include "G4OpProcessSubType.hh" 55 54 56 #include "G4OpAbsorption.hh" 55 57 … … 76 78 G4cout << GetProcessName() << " is created " << G4endl; 77 79 } 80 81 SetProcessSubType(fOpAbsorption); 78 82 } 79 83 -
trunk/source/processes/optical/src/G4OpBoundaryProcess.cc
r819 r963 67 67 68 68 #include "G4ios.hh" 69 #include "G4OpProcessSubType.hh" 70 69 71 #include "G4OpBoundaryProcess.hh" 70 72 #include "G4GeometryTolerance.hh" … … 93 95 G4cout << GetProcessName() << " is created " << G4endl; 94 96 } 97 98 SetProcessSubType(fOpBoundary); 95 99 96 100 theStatus = Undefined; … … 220 224 OpticalSurface = NULL; 221 225 222 G4LogicalSurface* Surface = G4LogicalBorderSurface::GetSurface 223 (pPreStepPoint ->GetPhysicalVolume(), 224 pPostStepPoint->GetPhysicalVolume()); 226 G4LogicalSurface* Surface = NULL; 227 228 Surface = G4LogicalBorderSurface::GetSurface 229 (pPreStepPoint ->GetPhysicalVolume(), 230 pPostStepPoint->GetPhysicalVolume()); 225 231 226 232 if (Surface == NULL){ … … 249 255 } 250 256 251 // if (Surface) OpticalSurface = dynamic_cast <G4OpticalSurface*> (Surface->GetSurfaceProperty());252 if (Surface) OpticalSurface = (G4OpticalSurface*) Surface->GetSurfaceProperty();257 if (Surface) OpticalSurface = 258 dynamic_cast <G4OpticalSurface*> (Surface->GetSurfaceProperty()); 253 259 254 260 if (OpticalSurface) { … … 429 435 430 436 DielectricMetal(); 437 438 // Uncomment the following lines if you wish to have 439 // Transmission instead of Absorption 440 // if (theStatus == Absorption) { 441 // return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); 442 // } 431 443 432 444 } … … 579 591 if( !G4BooleanRand(theReflectivity) && n == 1 ) { 580 592 593 // Comment out DoAbsorption and uncomment theStatus = Absorption; 594 // if you wish to have Transmission instead of Absorption 595 581 596 DoAbsorption(); 597 // theStatus = Absorption; 582 598 break; 583 599 … … 657 673 Through = false; 658 674 theGlobalNormal = -theGlobalNormal; 659 G4Swap (Material1,Material2);660 G4Swap (&Rindex1,&Rindex2);675 G4SwapPtr(Material1,Material2); 676 G4SwapObj(&Rindex1,&Rindex2); 661 677 } 662 678 … … 864 880 else { 865 881 Swap = !Swap; 866 G4Swap (Material1,Material2);867 G4Swap (&Rindex1,&Rindex2);882 G4SwapPtr(Material1,Material2); 883 G4SwapObj(&Rindex1,&Rindex2); 868 884 } 869 885 if ( theFinish == groundbackpainted ) -
trunk/source/processes/optical/src/G4OpRayleigh.cc
r819 r963 25 25 // 26 26 // 27 // $Id: G4OpRayleigh.cc,v 1.1 4 2006/06/29 21:08:54 gunterExp $28 // GEANT4 tag $Name: $27 // $Id: G4OpRayleigh.cc,v 1.17 2008/10/24 19:51:12 gum Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // … … 57 57 58 58 #include "G4ios.hh" 59 #include "G4OpProcessSubType.hh" 60 59 61 #include "G4OpRayleigh.hh" 60 62 … … 78 80 : G4VDiscreteProcess(processName, type) 79 81 { 82 SetProcessSubType(fOpRayleigh); 80 83 81 84 thePhysicsTable = 0; … … 248 251 const G4Material* aMaterial = aTrack.GetMaterial(); 249 252 250 G4double thePhoton Momentum = aParticle->GetTotalMomentum();253 G4double thePhotonEnergy = aParticle->GetTotalEnergy(); 251 254 252 255 G4double AttenuationLength = DBL_MAX; … … 258 261 AttenuationLength = 259 262 (*thePhysicsTable)(aMaterial->GetIndex())-> 260 GetValue(thePhoton Momentum, isOutRange);263 GetValue(thePhotonEnergy, isOutRange); 261 264 } 262 265 else { … … 270 273 if(AttenuationLengthVector){ 271 274 AttenuationLength = AttenuationLengthVector -> 272 GetProperty(thePhoton Momentum);275 GetProperty(thePhotonEnergy); 273 276 } 274 277 else{ … … 305 308 306 309 // Retrieve vectors for refraction index 307 // and photon momentumfrom the material properties table310 // and photon energy from the material properties table 308 311 309 312 G4MaterialPropertyVector* Rindex = aMPT->GetProperty("RINDEX"); … … 325 328 while (++(*Rindex)) { 326 329 327 e = (Rindex->GetPhoton Momentum());330 e = (Rindex->GetPhotonEnergy()); 328 331 329 332 refraction_index = Rindex->GetProperty(); … … 332 335 333 336 if (verboseLevel>0) { 334 G4cout << Rindex->GetPhoton Momentum() << " MeV\t";337 G4cout << Rindex->GetPhotonEnergy() << " MeV\t"; 335 338 G4cout << xlambda << " mm\t"; 336 339 } … … 347 350 } 348 351 RayleighScatteringLengths-> 349 InsertValues(Rindex->GetPhoton Momentum(), Dist);352 InsertValues(Rindex->GetPhotonEnergy(), Dist); 350 353 } 351 354 -
trunk/source/processes/optical/src/G4OpWLS.cc
r819 r963 25 25 // 26 26 // 27 // $Id: G4OpWLS.cc,v 1. 9 2007/10/30 03:53:36gum Exp $28 // GEANT4 tag $Name: $27 // $Id: G4OpWLS.cc,v 1.13 2008/10/24 19:50:50 gum Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 //////////////////////////////////////////////////////////////////////// … … 46 46 47 47 #include "G4ios.hh" 48 #include "G4OpProcessSubType.hh" 49 48 50 #include "G4OpWLS.hh" 49 51 #include "G4WLSTimeGeneratorProfileDelta.hh" … … 61 63 : G4VDiscreteProcess(processName, type) 62 64 { 65 SetProcessSubType(fOpWLS); 66 63 67 theIntegralTable = 0; 64 68 … … 161 165 for (G4int i = 0; i < NumPhotons; i++) { 162 166 163 // Determine photon momentum167 // Determine photon energy 164 168 165 169 G4double CIIvalue = G4UniformRand()*CIImax; 166 G4double sampled Momentum=170 G4double sampledEnergy = 167 171 WLSIntegral->GetEnergy(CIIvalue); 168 172 169 173 if (verboseLevel>1) { 170 G4cout << "sampled Momentum = " << sampledMomentum<< G4endl;174 G4cout << "sampledEnergy = " << sampledEnergy << G4endl; 171 175 G4cout << "CIIvalue = " << CIIvalue << G4endl; 172 176 } … … 217 221 photonPolarization.z()); 218 222 219 aWLSPhoton->SetKineticEnergy(sampled Momentum);223 aWLSPhoton->SetKineticEnergy(sampledEnergy); 220 224 221 225 // Generate new G4Track object: … … 230 234 G4Track* aSecondaryTrack = 231 235 new G4Track(aWLSPhoton,aSecondaryTime,aSecondaryPosition); 232 233 aSecondaryTrack->SetTouchableHandle((G4VTouchable*)0); 236 237 aSecondaryTrack->SetTouchableHandle(aTrack.GetTouchableHandle()); 238 // aSecondaryTrack->SetTouchableHandle((G4VTouchable*)0); 234 239 235 240 aSecondaryTrack->SetParentID(aTrack.GetTrackID()); … … 285 290 286 291 // Retrieve the first intensity point in vector 287 // of (photon momentum, intensity) pairs292 // of (photon energy, intensity) pairs 288 293 289 294 theWLSVector->ResetIterator(); … … 295 300 if (currentIN >= 0.0) { 296 301 297 // Create first (photon momentum)302 // Create first (photon energy) 298 303 299 304 G4double currentPM = theWLSVector-> 300 GetPhoton Momentum();305 GetPhotonEnergy(); 301 306 302 307 G4double currentCII = 0.0; … … 311 316 G4double prevIN = currentIN; 312 317 313 // loop over all (photon momentum, intensity)318 // loop over all (photon energy, intensity) 314 319 // pairs stored for this material 315 320 … … 317 322 { 318 323 currentPM = theWLSVector-> 319 GetPhoton Momentum();324 GetPhotonEnergy(); 320 325 321 326 currentIN=theWLSVector-> … … 355 360 const G4Material* aMaterial = aTrack.GetMaterial(); 356 361 357 G4double thePhoton Momentum = aParticle->GetTotalMomentum();362 G4double thePhotonEnergy = aParticle->GetTotalEnergy(); 358 363 359 364 G4MaterialPropertiesTable* aMaterialPropertyTable; … … 369 374 if ( AttenuationLengthVector ){ 370 375 AttenuationLength = AttenuationLengthVector-> 371 GetProperty (thePhoton Momentum);376 GetProperty (thePhotonEnergy); 372 377 } 373 378 else { -
trunk/source/processes/parameterisation/History
r819 r963 1 $Id: History,v 1.3 7.2.2 2008/04/23 08:51:21gcosmo Exp $1 $Id: History,v 1.39 2008/03/26 14:54:40 gcosmo Exp $ 2 2 ------------------------------------------------------------------- 3 3 … … 18 18 ---------------------------------------------------------- 19 19 20 April 23 2008, G. Cosmo (param-V09-00-02)21 - Tag for release 9.1.p02.22 23 20 March 13 2008, G. Cosmo (param-V09-01-00) 24 - Cleared compilation warnings in G4GeometryManager on gcc-4.3.0 for 25 ambiguous use of parentheses in nested if-else statements. 21 - Cleared compilation warnings in G4FastSimulationManagerProcess and 22 G4FastSimulationMessenger on gcc-4.3.0 for ambiguous use of 23 parentheses in nested if-else statements. 26 24 27 25 November 30 2007, M. Verderi -
trunk/source/processes/parameterisation/include/G4FastSimulationManager.hh
r819 r963 26 26 // 27 27 // $Id: G4FastSimulationManager.hh,v 1.13 2007/05/11 13:50:20 mverderi Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/parameterisation/include/G4FastSimulationManagerProcess.hh
r819 r963 26 26 // 27 27 // $Id: G4FastSimulationManagerProcess.hh,v 1.16 2007/11/30 18:05:14 mverderi Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/parameterisation/include/G4FastSimulationMessenger.hh
r819 r963 26 26 // 27 27 // $Id: G4FastSimulationMessenger.hh,v 1.7 2007/05/11 13:50:20 mverderi Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/parameterisation/include/G4FastStep.hh
r819 r963 26 26 // 27 27 // $Id: G4FastStep.hh,v 1.8 2006/06/29 21:09:14 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/parameterisation/include/G4FastStep.icc
r819 r963 26 26 // 27 27 // $Id: G4FastStep.icc,v 1.5 2006/06/29 21:09:16 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // $id: G4ParticleChange.icc,v 1.6 1998/04/14 02:25:54 kurasige Exp $ -
trunk/source/processes/parameterisation/include/G4FastTrack.hh
r819 r963 26 26 // 27 27 // $Id: G4FastTrack.hh,v 1.8 2007/05/11 13:50:20 mverderi Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // $Id: -
trunk/source/processes/parameterisation/include/G4GlobalFastSimulationManager.hh
r819 r963 26 26 // 27 27 // $Id: G4GlobalFastSimulationManager.hh,v 1.13 2007/05/11 13:50:20 mverderi Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/parameterisation/include/G4VFastSimulationModel.hh
r819 r963 26 26 // 27 27 // $Id: G4VFastSimulationModel.hh,v 1.7 2006/06/29 21:09:24 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/parameterisation/src/G4FastSimulationManager.cc
r819 r963 26 26 // 27 27 // $Id: G4FastSimulationManager.cc,v 1.13 2007/05/11 13:50:20 mverderi Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 //--------------------------------------------------------------- -
trunk/source/processes/parameterisation/src/G4FastSimulationManagerProcess.cc
r819 r963 25 25 // 26 26 // 27 // $Id: G4FastSimulationManagerProcess.cc,v 1.1 7.2.1 2008/04/23 08:50:16gcosmo Exp $28 // GEANT4 tag $Name: geant4-09-0 1-patch-02 $27 // $Id: G4FastSimulationManagerProcess.cc,v 1.18 2008/03/13 16:03:23 gcosmo Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/parameterisation/src/G4FastSimulationMessenger.cc
r819 r963 25 25 // 26 26 // 27 // $Id: G4FastSimulationMessenger.cc,v 1. 8.2.1 2008/04/23 08:50:16gcosmo Exp $28 // GEANT4 tag $Name: geant4-09-0 1-patch-02 $27 // $Id: G4FastSimulationMessenger.cc,v 1.9 2008/03/13 16:03:23 gcosmo Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 -
trunk/source/processes/parameterisation/src/G4FastStep.cc
r819 r963 26 26 // 27 27 // $Id: G4FastStep.cc,v 1.16 2006/06/29 21:09:32 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 //--------------------------------------------------------------- -
trunk/source/processes/parameterisation/src/G4FastTrack.cc
r819 r963 26 26 // 27 27 // $Id: G4FastTrack.cc,v 1.10 2006/06/29 21:09:34 gunter Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 //--------------------------------------------------------------- -
trunk/source/processes/parameterisation/src/G4GlobalFastSimulationManager.cc
r819 r963 26 26 // 27 27 // $Id: G4GlobalFastSimulationManager.cc,v 1.20 2007/05/11 13:50:20 mverderi Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/parameterisation/src/G4VFastSimulationModel.cc
r819 r963 26 26 // 27 27 // $Id: G4VFastSimulationModel.cc,v 1.7 2007/05/11 13:50:20 mverderi Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 //--------------------------------------------------------------- -
trunk/source/processes/scoring/History
r819 r963 1 $Id: History,v 1.1 6 2007/05/30 17:49:56 ahowardExp $1 $Id: History,v 1.18 2008/09/07 17:12:38 asaim Exp $ 2 2 ------------------------------------------------------------------- 3 3 … … 17 17 * Reverse chronological order (last date on top), please * 18 18 ---------------------------------------------------------- 19 20 September 7th, 2008 M.Asai (procscore-V09-01-01) 21 - Correction of incorrect modification in the previous tag. 22 23 February 12th, 2008 M.Asai (procscore-V09-01-00) 24 - Add copying non-ionizing energy deposit in G4Step. 19 25 20 26 May 30th A.Howard (procscore-V08-03-03) -
trunk/source/processes/scoring/include/G4ParallelWorldScoringProcess.hh
r819 r963 26 26 // 27 27 // $Id: G4ParallelWorldScoringProcess.hh,v 1.4 2007/05/30 17:47:10 ahoward Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -
trunk/source/processes/scoring/src/G4ParallelWorldScoringProcess.cc
r819 r963 25 25 // 26 26 // 27 // $Id: G4ParallelWorldScoringProcess.cc,v 1. 8 2007/05/30 17:47:11 ahowardExp $28 // GEANT4 tag $Name: geant4-09-0 1-patch-02 $27 // $Id: G4ParallelWorldScoringProcess.cc,v 1.11 2008/09/06 06:18:12 asaim Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // … … 376 376 fGhostStep->SetStepLength(step.GetStepLength()); 377 377 fGhostStep->SetTotalEnergyDeposit(step.GetTotalEnergyDeposit()); 378 fGhostStep->SetNonIonizingEnergyDeposit(step.GetNonIonizingEnergyDeposit()); 378 379 fGhostStep->SetControlFlag(step.GetControlFlag()); 379 380 -
trunk/source/processes/transportation/History
r819 r963 1 $Id: History,v 1.1 47 2008/01/17 10:31:17 gcosmoExp $1 $Id: History,v 1.151 2008/11/26 13:03:28 japost Exp $ 2 2 ------------------------------------------------------------------- 3 3 … … 17 17 * Reverse chronological order (last date on top), please * 18 18 ---------------------------------------------------------- 19 November 26th, 2008, J.Apostolakis transport-V09-01-03 20 ---------------------------------- 21 - G4CoupledTransportation: 22 o Fix: initialise new data member (in constructor) - found by STT 23 24 November 21st, 2008, J.Apostolakis transport-V09-01-02 25 ---------------------------------- 26 - G4Transportation & G4CoupledTransportation: 27 o Performance improvement/correction 28 Avoid to compute safety at end of step for neutral particles 29 30 November 21st, 2008, J.Apostolakis transport-V09-01-01 31 ---------------------------------- 32 33 - G4Transportation & G4CoupledTransportation: 34 o Push value & origin of safety to SafetyHelper 35 only when its value comes from ComputeSafety 19 36 20 37 January 17th, 2008, J.Apostolakis transport-V09-01-00 -
trunk/source/processes/transportation/include/G4CoupledTransportation.hh
r819 r963 25 25 // 26 26 // 27 // $Id: G4CoupledTransportation.hh,v 1. 6 2007/05/29 13:50:14japost Exp $28 // GEANT4 tag $Name: $27 // $Id: G4CoupledTransportation.hh,v 1.7 2008/11/21 18:27:42 japost Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // … … 61 61 #include "G4Step.hh" 62 62 #include "G4ParticleChangeForTransport.hh" 63 class G4SafetyHelper; 63 64 64 65 class G4CoupledTransportation : public G4VProcess … … 216 217 G4double fMaxEnergyKilled; 217 218 219 G4SafetyHelper* fpSafetyHelper; // To pass it the safety value obtained 220 218 221 // Verbosity 219 222 G4int fVerboseLevel; -
trunk/source/processes/transportation/include/G4CoupledTransportation.icc
r819 r963 26 26 // 27 27 // $Id: G4CoupledTransportation.icc,v 1.4 2007/05/29 13:50:15 japost Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 -
trunk/source/processes/transportation/include/G4NeutronKiller.hh
r819 r963 25 25 // 26 26 // $Id: G4NeutronKiller.hh,v 1.2 2007/06/01 07:53:26 ahoward Exp $ 27 // GEANT4 tag $Name: $27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 28 28 // 29 29 //--------------------------------------------------------------------------- -
trunk/source/processes/transportation/include/G4NeutronKillerMessenger.hh
r819 r963 25 25 // 26 26 // $Id: G4NeutronKillerMessenger.hh,v 1.2 2007/06/01 07:53:26 ahoward Exp $ 27 // GEANT4 tag $Name: $27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 28 28 // 29 29 //--------------------------------------------------------------------------- -
trunk/source/processes/transportation/include/G4StepLimiter.hh
r819 r963 26 26 // 27 27 // $Id: G4StepLimiter.hh,v 1.4 2007/06/01 07:53:26 ahoward Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // class description -
trunk/source/processes/transportation/include/G4TrackTerminator.hh
r819 r963 26 26 // 27 27 // $Id: G4TrackTerminator.hh,v 1.4 2007/06/01 07:53:26 ahoward Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // ---------------------------------------------------------------------- -
trunk/source/processes/transportation/include/G4Transportation.hh
r819 r963 25 25 // 26 26 // 27 // $Id: G4Transportation.hh,v 1.1 6 2007/11/08 17:59:38japost Exp $28 // GEANT4 tag $Name: geant4-09-0 1-patch-02 $27 // $Id: G4Transportation.hh,v 1.17 2007/11/09 15:39:20 japost Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // … … 55 55 #include "G4Step.hh" 56 56 #include "G4ParticleChangeForTransport.hh" 57 class G4SafetyHelper; 57 58 58 59 class G4Transportation : public G4VProcess … … 205 206 G4bool fShortStepOptimisation; 206 207 208 G4SafetyHelper* fpSafetyHelper; // To pass it the safety value obtained 209 207 210 // Verbosity 208 211 G4int fVerboseLevel; -
trunk/source/processes/transportation/include/G4Transportation.icc
r819 r963 26 26 // 27 27 // $Id: G4Transportation.icc,v 1.11 2007/11/08 17:59:52 japost Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 -
trunk/source/processes/transportation/include/G4UserSpecialCuts.hh
r819 r963 25 25 // 26 26 // $Id: G4UserSpecialCuts.hh,v 1.11 2007/06/01 07:53:26 ahoward Exp $ 27 // GEANT4 tag $Name: $27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 28 28 // 29 29 // class description -
trunk/source/processes/transportation/include/G4VTrackTerminator.hh
r819 r963 26 26 // 27 27 // $Id: G4VTrackTerminator.hh,v 1.8 2007/06/01 07:53:26 ahoward Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // ---------------------------------------------------------------------- -
trunk/source/processes/transportation/src/G4CoupledTransportation.cc
r819 r963 25 25 // 26 26 // 27 // $Id: G4CoupledTransportation.cc,v 1.2 4 2007/12/07 16:29:07japost Exp $27 // $Id: G4CoupledTransportation.cc,v 1.27 2008/11/26 13:01:28 japost Exp $ 28 28 // --> Merged with 1.60.4.2.2.3 2007/05/09 09:30:28 japost 29 // GEANT4 tag $Name: $29 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 30 30 // ------------------------------------------------------------ 31 31 // GEANT 4 class implementation … … 86 86 } 87 87 fPathFinder= G4PathFinder::GetInstance(); 88 fpSafetyHelper = transportMgr->GetSafetyHelper(); // New 88 89 89 90 // Following assignment is to fix small memory leak from simple use of 'new' … … 289 290 fPreviousMassSafety = newMassSafety ; 290 291 fPreviousFullSafety = newFullSafety ; 291 // f SafetyHelper->SetCurrentSafety( newFullSafety, startPosition);292 // fpSafetyHelper->SetCurrentSafety( newFullSafety, startPosition); 292 293 293 294 #ifdef G4DEBUG_TRANSPORT … … 397 398 398 399 // Update safety for the end-point, if becomes negative at the end-point. 399 // To-Try: No safety update if at a boundary 400 if( startFullSafety < endpointDistance ) // && !fAnyGeometryLimitedStep ) 400 401 if( (startFullSafety < endpointDistance ) 402 && ( particleCharge != 0.0 ) ) // Only needed to prepare for Mult Scat. 403 // && !fAnyGeometryLimitedStep ) // To-Try: No safety update if at a boundary 401 404 { 402 405 G4double endFullSafety = … … 408 411 // ==> so we use the all-geometry safety as a precaution 409 412 413 fpSafetyHelper->SetCurrentSafety( endFullSafety, fTransportEndPosition); 414 // Pushing safety to Helper avoids recalculation at this point 415 410 416 G4ThreeVector centerPt= G4ThreeVector(0.0, 0.0, 0.0); // Used for return value 411 417 G4double endMassSafety= fPathFinder->ObtainSafety( fNavigatorId, centerPt); … … 415 421 fPreviousFullSafety = endFullSafety; 416 422 fPreviousSftOrigin = fTransportEndPosition ; 417 // fSafetyHelper->SetCurrentSafety( endFullSafety, fTransportEndPosition);418 423 419 424 // The convention (Stepping Manager's) is safety from the start point -
trunk/source/processes/transportation/src/G4NeutronKiller.cc
r819 r963 25 25 // 26 26 // $Id: G4NeutronKiller.cc,v 1.2 2007/06/01 07:53:27 ahoward Exp $ 27 // GEANT4 tag $Name: $27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 28 28 // 29 29 //--------------------------------------------------------------------------- -
trunk/source/processes/transportation/src/G4NeutronKillerMessenger.cc
r819 r963 25 25 // 26 26 // $Id: G4NeutronKillerMessenger.cc,v 1.2 2007/06/01 07:53:27 ahoward Exp $ 27 // GEANT4 tag $Name: $27 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 28 28 // 29 29 //--------------------------------------------------------------------------- -
trunk/source/processes/transportation/src/G4StepLimiter.cc
r819 r963 26 26 // 27 27 // $Id: G4StepLimiter.cc,v 1.4 2007/06/01 07:53:27 ahoward Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -------------------------------------------------------------- -
trunk/source/processes/transportation/src/G4Transportation.cc
r819 r963 25 25 // 26 26 // 27 // $Id: G4Transportation.cc,v 1.72.2. 1 2007/12/07 17:18:11japost Exp $28 // GEANT4 tag $Name: geant4-09-0 1-patch-02 $27 // $Id: G4Transportation.cc,v 1.72.2.3 2008/11/21 18:35:15 japost Exp $ 28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // ------------------------------------------------------------ … … 37 37 // geometrical sub-volumes of the detectors. 38 38 // 39 // It is also tasked with part of updating the "safety". 39 // It is also tasked with the key role of proposing the "isotropic safety", 40 // which will be used to update the post-step point's safety. 40 41 // 41 42 // ======================================================================= 42 43 // Modified: 43 // 19 Jan 2006, P.MoraDeFreitas: Fix for suspended tracks (StartTracking) 44 // 11 Aug 2004, M.Asai: Add G4VSensitiveDetector* for updating stepPoint. 45 // 21 June 2003, J.Apostolakis: Calling field manager with 46 // track, to enable it to configure its accuracy 47 // 13 May 2003, J.Apostolakis: Zero field areas now taken into 48 // account correclty in all cases (thanks to W Pokorski). 49 // 29 June 2001, J.Apostolakis, D.Cote-Ahern, P.Gumplinger: 50 // correction for spin tracking 51 // 20 Febr 2001, J.Apostolakis: update for new FieldTrack 52 // 22 Sept 2000, V.Grichine: update of Kinetic Energy 44 // 20 Nov 2008, J.Apostolakis: Push safety to helper - after ComputeSafety 45 // 9 Nov 2007, J.Apostolakis: Flag for short steps, push safety to helper 46 // 19 Jan 2006, P.MoraDeFreitas: Fix for suspended tracks (StartTracking) 47 // 11 Aug 2004, M.Asai: Add G4VSensitiveDetector* for updating stepPoint. 48 // 21 June 2003, J.Apostolakis: Calling field manager with 49 // track, to enable it to configure its accuracy 50 // 13 May 2003, J.Apostolakis: Zero field areas now taken into 51 // account correclty in all cases (thanks to W Pokorski). 52 // 29 June 2001, J.Apostolakis, D.Cote-Ahern, P.Gumplinger: 53 // correction for spin tracking 54 // 20 Febr 2001, J.Apostolakis: update for new FieldTrack 55 // 22 Sept 2000, V.Grichine: update of Kinetic Energy 53 56 // Created: 19 March 1997, J. Apostolakis 54 57 // ======================================================================= … … 58 61 #include "G4ParticleTable.hh" 59 62 #include "G4ChordFinder.hh" 63 #include "G4SafetyHelper.hh" 60 64 #include "G4FieldManagerStore.hh" 61 65 class G4VSensitiveDetector; … … 89 93 fFieldPropagator = transportMgr->GetPropagatorInField() ; 90 94 91 // fpSafetyHelper = fpTransportManager->GetSafetyHelper(); // New95 fpSafetyHelper = transportMgr->GetSafetyHelper(); // New 92 96 93 97 // Cannot determine whether a field exists here, … … 108 112 G4Transportation::~G4Transportation() 109 113 { 110 111 // --- Alternative code to delete 'junk data' in touchable handle112 // ** Corresponds to the case that the constructor has113 // fCurrentTouchableHandle = new G4TouchableHistory();114 // ** Likely incorrect - as at the end of the simulation115 // the handle no longer holds the original 'null' history116 // G4VTouchable* pTouchable= fCurrentTouchableHandle(); // Incorrect117 // delete pTouchable; // Incorrect118 119 114 if( (fVerboseLevel > 0) && (fSumEnergyKilled > 0.0 ) ){ 120 115 G4cout << " G4Transportation: Statistics for looping particles " << G4endl; … … 233 228 fPreviousSftOrigin = startPosition ; 234 229 fPreviousSafety = newSafety ; 235 // f SafetyHelper->SetCurrentSafety( newSafety, startPosition);230 // fpSafetyHelper->SetCurrentSafety( newSafety, startPosition); 236 231 237 232 // The safety at the initial point has been re-calculated: … … 312 307 fPreviousSftOrigin = startPosition ; 313 308 fPreviousSafety = currentSafety ; 314 // f SafetyHelper->SetCurrentSafety( newSafety, startPosition);309 // fpSafetyHelper->SetCurrentSafety( newSafety, startPosition); 315 310 316 311 // Get the End-Position and End-Momentum (Dir-ection) … … 415 410 if( currentSafety < endpointDistance ) 416 411 { 417 G4double endSafety = 412 // if( particleCharge == 0.0 ) 413 // G4cout << " Avoiding call to ComputeSafety : charge = 0.0 " << G4endl; 414 415 if( particleCharge != 0.0 ) { 416 417 G4double endSafety = 418 418 fLinearNavigator->ComputeSafety( fTransportEndPosition) ; 419 420 421 422 // fSafetyHelper->SetCurrentSafety( currentSafety, fTransportEndPosition);423 424 425 426 427 419 currentSafety = endSafety ; 420 fPreviousSftOrigin = fTransportEndPosition ; 421 fPreviousSafety = currentSafety ; 422 fpSafetyHelper->SetCurrentSafety( currentSafety, fTransportEndPosition); 423 424 // Because the Stepping Manager assumes it is from the start point, 425 // add the StepLength 426 // 427 currentSafety += endpointDistance ; 428 428 429 429 #ifdef G4DEBUG_TRANSPORT 430 431 432 433 434 435 430 G4cout.precision(12) ; 431 G4cout << "***G4Transportation::AlongStepGPIL ** " << G4endl ; 432 G4cout << " Called Navigator->ComputeSafety at " << fTransportEndPosition 433 << " and it returned safety= " << endSafety << G4endl ; 434 G4cout << " Adding endpoint distance " << endpointDistance 435 << " to obtain pseudo-safety= " << currentSafety << G4endl ; 436 436 #endif 437 } 437 438 } 438 439 -
trunk/source/processes/transportation/src/G4UserSpecialCuts.cc
r819 r963 26 26 // 27 27 // $Id: G4UserSpecialCuts.cc,v 1.17 2007/06/01 07:53:27 ahoward Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // -------------------------------------------------------------- -
trunk/source/processes/transportation/src/G4VTrackTerminator.cc
r819 r963 26 26 // 27 27 // $Id: G4VTrackTerminator.cc,v 1.7 2007/06/01 07:53:27 ahoward Exp $ 28 // GEANT4 tag $Name: $28 // GEANT4 tag $Name: geant4-09-02-ref-02 $ 29 29 // 30 30 // ----------------------------------------------------------------------
Note: See TracChangeset
for help on using the changeset viewer.