Geant4 Cross Reference |
1 # Category param History << 1 $Id: History,v 1.12 2001/04/03 15:26:42 japost Exp $ 2 << 2 ------------------------------------------------------------------- 3 See `CONTRIBUTING.rst` for details of **requir << 4 which **must** added in reverse chronological << 5 It must **not** be used as a substitute for wr << 6 << 7 ---------------------------------------------- << 8 << 9 ## 2023-11-21 I. Hrivnacova (param-V11-01-04) << 10 - In G4GlobalFastSimulationManager: << 11 use G4ThreadLocalSingleton to avoid undelete << 12 << 13 ## 2023-10-18 Ben Morgan (param-V11-01-03) << 14 - Apply standard and extended clang-tidy fixes << 15 - Mark empty/obsolete functions as deprecated << 16 << 17 ## 2023-10-16 Ben Morgan (param-V11-01-02) << 18 - Apply standard clang-format-ing. << 19 - Normal order accessors and docstrings. << 20 << 21 ## 2023-09-04 Gabriele Cosmo (param-V11-01-01) << 22 - In G4FastTrack, removed references to G4Touc << 23 which is now deprecated. << 24 << 25 ## 2023-03-23 Anna Zaborowska (param-V11-01-00 << 26 - Added missing virtual destructor to G4VFastS << 27 << 28 ## 2022-11-23 Gabriele Cosmo (param-V11-00-04) << 29 - Fixed compilation warnings for implicit type << 30 << 31 ## 2022-10-27 Makoto Asai (param-V11-00-03) << 32 - G4FastSimHitMaker - making compatible to com << 33 << 34 ## 2022-08-24 Vladimir Ivanchenko (param-V11-0 << 35 - G4FastStep - delete copy constructor and ope << 36 << 37 ## 2022-01-19 Witek Pokorski (param-V11-00-01) << 38 - Adding the 'flush' method to the fast simula << 39 This method allows to process the input buff << 40 the end of the G4 event. It is used when par << 41 The 'flash' is triggered inside the event lo << 42 The fast simulation model may add secondarie << 43 by Geant4. << 44 << 45 ## 2021-12-10 Ben Morgan (param-V11-00-00) << 46 - Change to new Markdown History format << 47 << 48 --- << 49 << 50 # History entries prior to 11.0 << 51 << 52 April 16, 2021 Ben Morgan (param-V10-07-00) << 53 - Migrate build to modular CMake API << 54 << 55 October 5, 2020, A. Zaborowska (param-V10-06-0 << 56 - Introduce general facilities based on GFlash << 57 to facilitate multiple hit (energy & positio << 58 from fast simulation models. << 59 << 60 September 9, 2020, G. Cosmo (param-V10-06-02) << 61 - Fixed minor Coverity defect for uninitialise << 62 << 63 April 21, 2020, A. Zaborowska (param-V10-06-01 << 64 - Sanity check for root logical volumes for re << 65 UI command /param/showSetup works also if no << 66 << 67 March 26, 2020, I. Semeniouk (param-V10-06-00) << 68 - G4FastSimulationHelper : merge ActivateFastS << 69 - G4FastSimulationManager.hh, G4VFastSimulatio << 70 redefinition of G4Envelope type << 71 << 72 October 30, 2019, A. Zaborowska (param-v10-05- << 73 - Register G4FastSimulationManagerProcess with << 74 G4FastSimulationManagerHelper to ensure it i << 75 invoked for a given step (ExclusivelyForced) << 76 StronglyForced processes will be considered. << 77 << 78 December 19, 2017, G. Cosmo (param-V10-04-00) << 79 - Fixed self-consistency in G4FastSimulationVe << 80 Thanks to Raphael Isemann for reporting this << 81 << 82 November 03, 2016, M. Verderi (param-V10-02-01 << 83 - New G4FastSimulationManagerHelper utility fo << 84 adding G4FastSimulationManagerProcess to a << 85 process manager. << 86 << 87 November 02, 2016, M. Verderi (param-V10-02-00 << 88 - fix various Coverity defects. << 89 << 90 March 27, 2013, M. Verderi (param-V09-06-00) << 91 - remove unused field 'fOnBoundary' in G4FastS << 92 as this was causing a warning from clang. << 93 << 94 July 10, 2012, G. Cosmo (param-V09-05-00) << 95 - Explicitly use inclusion of headers for syst << 96 constants, in plan to remove implicit inclus << 97 << 98 September 30, 2011, M. Verderi (param-V09-04-0 << 99 - Added missing new header file (G4FastSimulat << 100 sources.cmake. << 101 << 102 September 30, 2011, M. Verderi (param-V09-04-0 << 103 - Migration to new G4Exception scheme. << 104 - what is V09-04-01 tag ? << 105 << 106 February 11, 2011, M. Verderi (param-V09-04-00 << 107 - Implementation of method << 108 void ProposePrimaryTrackFinalKineticEnergy ( << 109 was missing : modified file G4FastStep.icc << 110 << 111 March 13, 2008, G. Cosmo (param-V09-01-00) << 112 - Cleared compilation warnings in G4FastSimula << 113 G4FastSimulationMessenger on gcc-4.3.0 for a << 114 parentheses in nested if-else statements. << 115 << 116 November 30, 2007, M. Verderi << 117 - Add Along methods to G4FSMP process << 118 - tag as param-V09-00-01 << 119 << 120 November 30, 2007, M. Verderi << 121 - minor corrections to G4FastSimulationManager << 122 * add call fPathFinder->prepareNewrack(...) << 123 * deactivate ghost navigator in EndOfTracki << 124 - tag as param-V09-00-00 << 125 << 126 May 18, 2007, M. Verderi << 127 - tag as param-V08-03-00 << 128 << 129 May 11, 2007, M. Verderi << 130 - remove include/G4FastSimulationManagerProces << 131 include/G4FlavoredParallelWorld.hh << 132 include/G4GFSManager81.hh << 133 src/G4FastSimulationManagerProcess81. << 134 src/G4GFSManager81.cc << 135 << 136 << 137 November 10, 2006, M. Verderi - param-V08-01-0 << 138 - Limited number of warning messages printed b << 139 G4GlobalFastSimulationManager. << 140 - Renamed G4FastSimulationManagerProcess_forCo << 141 G4FastSimulationManagerProcess81. << 142 In addition, this class can now handle the c << 143 i.e., the navigator for tracking, regardless << 144 G4CoupledTransportation is used. (For other << 145 of course no choice, and G4CoupledTransporta << 146 << 147 November 3, 2006 M. Verderi << 148 - Introduced G4FastSimulationManagerProcess_fo << 149 handling fast simulation in new parallel geo << 150 the G4CoupledTransportation to be active. << 151 - Introduced G4GFSManager81 class that gathers << 152 default at next major release in the G4Globa << 153 - G4FastSimulationManager: adapted to new sche << 154 backward compatibilty. << 155 - G4FastSimulationManagerProcess: mostly the s << 156 - G4FastSimulationMessenger: new command creat << 157 to show the fast simulation setup (region, m << 158 It is only valid for geometry closed state. << 159 command in the run manager for this. << 160 << 161 November 25, 2005, M.Verderi - param-V07-01-0 << 162 - put back Makoto's change: StartTracking(G4Tr << 163 << 164 November 25, 2005, M Verderi - param-V07-01-03 << 165 - Make ghost functionnality available with G4R << 166 - ** Note ** Change back StartTracking(G4Track << 167 StartTracking(G4Track*) was intro << 168 because (I guess) of procman-V07-01-01 << 169 This is to make param-V07-01-03 compatible w << 170 << 171 November 21, 2005 M.Asai - param-V07-01-02 << 172 - Fix warning message. << 173 << 174 November 02, 2005 G.Cosmo - param-V07-01-01 << 175 - Corrected setting of envelope volumes and so << 176 - Migrated old scheme for G4Exception and some << 177 << 178 October 28, 2005 M.Asai - param-V07-01-00 << 179 - Working tag for merging "envelope" to G4Regi << 180 << 181 December 07, 2004 G. Cosmo - param-V06-02-01 << 182 - Implemented migration to <cmath>. << 183 << 184 November 26, 2004 M. Verderi - param-V06-02-00 << 185 - Implemented migration to new G4VParticleChan << 186 << 187 December 12, 2003 G. Cosmo - param-V06-00-00 << 188 - G4FastSimulationVector.icc: use std_pvector: << 189 base class. Fixes compilation problem on Int << 190 << 191 November 10, 2003 G. Cosmo - param-V05-02-01 << 192 - G4FastTrack: use G4Navigator::CreateTouchabl << 193 CreateTouchableHistory() in method FRecordsA << 194 << 195 October 4, 2003 G. Cosmo - param-V05-02-00 << 196 - Modified GNUmakefile: << 197 o added dependency to new module "geometry/n << 198 - Coworks with "geometry-V05-02-00" and "digit << 199 << 200 May 21, 2003 G. Cosmo - param-V05-01-00 << 201 o Fixed pedantic warnings on Linux-g++ << 202 o Call base class in copy-constructor << 203 << 204 Nov 20, 2002 G. Cosmo - param-V04-01-02 << 205 o Patched access to public static data in G4 << 206 and G4GlobalFastSimulationManager.cc to al << 207 Windows DLLs. << 208 << 209 Nov 15, 2002 S. Sadilov - param-V04-01-01 << 210 o Fixed compilation problems on Windows in << 211 G4FastSimulationManager.cc and G4GlobalFas << 212 << 213 Nov 02, 2002 M. Verderi - param-V04-01-00 << 214 o Add method to retrieve G4VFastSimulationMo << 215 The user's method is in G4GlobalFastSimula << 216 << 217 GetFastSimulationModel(); << 218 << 219 it is accompagnied by same methods name in << 220 G4FastSimulationManager class. << 221 << 222 o Add "test" directory, used to test above f << 223 << 224 Oct 26, 2001 M. Verderi - param-V03-02-00 << 225 Fixes to clear warnings produced with gcc-2. << 226 - loop index, where comparison with method " << 227 G4std::vector<T>, changed: int -> size_t << 228 - change "if ( a=b ) {..}" by "if ( (a=b) ) << 229 this makes the compiler sure you want to mak << 230 assignement in the "if" condition << 231 - re-order initialisations of a few variable << 232 to match the declaration order. << 233 Some warnings still exist, but regard the G4 << 234 3 >> 4 ========================================================= >> 5 Geant4 - an Object-Oriented Toolkit for Simulation in HEP >> 6 ========================================================= >> 7 >> 8 Category History file >> 9 --------------------- >> 10 This file should be used by G4 developers and category coordinators >> 11 to briefly summarize all major modifications introduced in the code >> 12 and keep track of all category-tags. >> 13 It DOES NOT substitute the CVS log-message one should put at every >> 14 committal in the CVS repository ! >> 15 >> 16 ---------------------------------------------------------- >> 17 * Reverse chronological order (last date on top), please * >> 18 ---------------------------------------------------------- 235 Apr 3, 2001 J. Apostolakis - param-V03-00-00 19 Apr 3, 2001 J. Apostolakis - param-V03-00-00 236 - Modified G4FastSimulationManagerProcess call 20 - Modified G4FastSimulationManagerProcess call to PropagatorInField ComputeStep 237 to use new interface with G4FieldTrack (in 21 to use new interface with G4FieldTrack (in place of now obsolete interface.) 238 22 239 Nov 14, 2000 G. Cosmo - param-V02-00-01 23 Nov 14, 2000 G. Cosmo - param-V02-00-01 240 - Moved specific parameterisation models to th 24 - Moved specific parameterisation models to the new top category 241 "parameterisations". Moved files: 25 "parameterisations". Moved files: 242 G4FoamXrayTRmodel[.hh.cc], G4GamDistrXrayTRm 26 G4FoamXrayTRmodel[.hh.cc], G4GamDistrXrayTRmodel[.hh.cc], 243 G4IrregularXrayTRmodel[.hh.cc], G4PAIcluster 27 G4IrregularXrayTRmodel[.hh.cc], G4PAIclusterModel[.hh.cc], 244 G4PhotoClusterModel[.hh.cc], G4PlateIrrGasXr 28 G4PhotoClusterModel[.hh.cc], G4PlateIrrGasXrayTRmodel[.hh.cc], 245 G4RegularXrayTRmodel[.hh.cc], G4VClusterMode 29 G4RegularXrayTRmodel[.hh.cc], G4VClusterModel[.hh.cc], 246 G4VXrayTRmodel[.hh.cc]. 30 G4VXrayTRmodel[.hh.cc]. 247 - Cleaned-up GNUmakefile of non necessary depe 31 - Cleaned-up GNUmakefile of non necessary dependencies. 248 32 249 Aug 03, 2000 G. Cosmo - param-V02-00-00r 33 Aug 03, 2000 G. Cosmo - param-V02-00-00r 250 - Changed RandGauss to G4RandGauss in G4Irregu 34 - Changed RandGauss to G4RandGauss in G4IrregularXrayTRmodel.cc and 251 G4VXrayTRmodel.cc to fix events' reproducibi 35 G4VXrayTRmodel.cc to fix events' reproducibility problem. 252 - G4VXrayTRmodel.cc: fix to class destructor ( 36 - G4VXrayTRmodel.cc: fix to class destructor (V.Grichine) 253 37 254 Jun 15, 2000 G. Cosmo - param-V01-01-04 38 Jun 15, 2000 G. Cosmo - param-V01-01-04 255 - The tag coworks with global-V01-01-04 and ma 39 - The tag coworks with global-V01-01-04 and materials-V01-01-00: 256 o Fixed usage of G4complex type for ISO and 40 o Fixed usage of G4complex type for ISO and non-ISO compilers. 257 Affected files: G4FoamXrayTRmodel.cc, G4Ga 41 Affected files: G4FoamXrayTRmodel.cc, G4GamDistrXrayTRmodel.cc, G4PlateIrrGasXrayTRmodel.cc 258 and G4RegularXrayTRmodel.c 42 and G4RegularXrayTRmodel.cc. 259 In case of G4complex types passed to mathe 43 In case of G4complex types passed to mathematical functions, use G4std:: prefix. 260 o Fixed usage of G4Integrator class, now cha 44 o Fixed usage of G4Integrator class, now changed to templated to allow porting of the 261 code on SUN-CC compiler which does not imp 45 code on SUN-CC compiler which does not implement templated member functions. 262 Affected files: G4VXrayTRmodel[.hh.cc] 46 Affected files: G4VXrayTRmodel[.hh.cc] 263 47 264 Jun 6, 2000 M. Verderi & P. Mora de Freitas 48 Jun 6, 2000 M. Verderi & P. Mora de Freitas 265 - fixed compilation errors with HP-aCC for the 49 - fixed compilation errors with HP-aCC for the files G4RegularXrayTRmodel.cc, 266 G4GamDistrXrayTRmodel.cc and G4FoamXrayTRmod 50 G4GamDistrXrayTRmodel.cc and G4FoamXrayTRmodel.cc. 267 51 268 May 30, 2000 M. Verderi & P. Mora de Freitas 52 May 30, 2000 M. Verderi & P. Mora de Freitas 269 53 270 - parameterisation category is now RW free. 54 - parameterisation category is now RW free. 271 55 272 September 16, 1999 M. Verderi & P. Mora de Fre 56 September 16, 1999 M. Verderi & P. Mora de Freitas 273 57 274 - Fixed bug in G4FastStep::CheckIt() method. 58 - Fixed bug in G4FastStep::CheckIt() method. 275 59 276 April 19, 1999 M. Verderi & P. Mora de Freitas 60 April 19, 1999 M. Verderi & P. Mora de Freitas 277 61 278 Changes in G4FastStep to co-work with track-01 62 Changes in G4FastStep to co-work with track-01-00-04: 279 63 280 1) The method void CheckIt(const G4Track&) bec << 64 1) The method void CheckIt(const G4Track&) becomes 281 G4bool CheckIt(const G4Track&); 65 G4bool CheckIt(const G4Track&); 282 2) The FAST_STEP_DEBUG compiling option disapp 66 2) The FAST_STEP_DEBUG compiling option disappears; 283 3) Call to CheckIt controled by the G4VParticl 67 3) Call to CheckIt controled by the G4VParticleChange::debugFlag attribute. 284 68 285 Miscellaneous: the declaration "G4double mass 69 Miscellaneous: the declaration "G4double mass = masss =..." in G4FastStep.hh 286 corrected to G4double mass =...". 70 corrected to G4double mass =...". 287 71 288 April 15, 1999 M. Verderi & P. Mora de Freitas 72 April 15, 1999 M. Verderi & P. Mora de Freitas 289 73 290 Tasks to decouple visualization from processes 74 Tasks to decouple visualization from processes/parameterisation: 291 75 292 1) G4GlobalFastSimulationManager now inherites 76 1) G4GlobalFastSimulationManager now inherites from the intercoms/ 293 G4VGlobalFastSimulationManager to allow visual << 77 G4VGlobalFastSimulationManager to allow visualisation to get a 294 concrete instance pointer to the G4GlobalFastS 78 concrete instance pointer to the G4GlobalFastSimulationManager, 295 if any. 79 if any. 296 80 297 2) G4FlavoredParallelWorld now inherites from 81 2) G4FlavoredParallelWorld now inherites from the intercoms/ 298 G4VFlavoredParallelWorld, a pure virtual abstr 82 G4VFlavoredParallelWorld, a pure virtual abstract class to interface 299 parameterisation with visualization. 83 parameterisation with visualization. 300 84 301 Co-works with intercoms-01-00-01 tag 85 Co-works with intercoms-01-00-01 tag 302 86 303 Modified files: 87 Modified files: 304 --------------- 88 --------------- 305 G4FlavoredParallelWorld.hh 89 G4FlavoredParallelWorld.hh 306 G4GlobalFastSimulationManager.hh 90 G4GlobalFastSimulationManager.hh 307 G4GlobalFastSimulationManager.cc 91 G4GlobalFastSimulationManager.cc 308 92 309 Done, tested, system-tested on HP-aCC with exe 93 Done, tested, system-tested on HP-aCC with exemple N05. 310 94 311 April 14, 1999 M. Verderi & P. Mora de Freitas 95 April 14, 1999 M. Verderi & P. Mora de Freitas 312 96 313 Several consolidation tasks (thanks to G. Cosm 97 Several consolidation tasks (thanks to G. Cosmo): 314 98 315 1) Warning: << 99 1) Warning: 316 ----------- 100 ----------- 317 101 318 Pointers usage 102 Pointers usage 319 103 320 - Setting pointers to 0 after delete: 104 - Setting pointers to 0 after delete: 321 105 322 delete pA; 106 delete pA; 323 pA = 0; 107 pA = 0; 324 108 325 - Avoid to use "NULL". 109 - Avoid to use "NULL". 326 110 327 Modified files: 111 Modified files: 328 --------------- 112 --------------- 329 G4FastSimulationManager.hh 113 G4FastSimulationManager.hh 330 G4FastTrack.hh 114 G4FastTrack.hh 331 G4FlavoredParallelWorld.hh 115 G4FlavoredParallelWorld.hh 332 G4FastSimulationManager.cc 116 G4FastSimulationManager.cc 333 G4FastSimulationMessenger.cc 117 G4FastSimulationMessenger.cc 334 G4FastSimulationManagerProcess.cc 118 G4FastSimulationManagerProcess.cc 335 G4FastTrack.cc 119 G4FastTrack.cc 336 G4GlobalFastSimulationManager.cc 120 G4GlobalFastSimulationManager.cc 337 G4VFastSimulationModel.cc 121 G4VFastSimulationModel.cc 338 122 339 Status: << 123 Status: 340 ------- 124 ------- 341 Done, tested, system-tested on HP-aCC with exe 125 Done, tested, system-tested on HP-aCC with exemple N05. 342 126 343 2) Warning: 127 2) Warning: 344 ----------- 128 ----------- 345 include/G4FastSimulationManager.hh:163 129 include/G4FastSimulationManager.hh:163 346 Public member functions shall always retur 130 Public member functions shall always return const handles to member data 347 Severe violation: Universal Coding Standar 131 Severe violation: Universal Coding Standards item 18 348 132 349 offending code: 133 offending code: 350 --------------- 134 --------------- 351 inline G4VParticleChange* G4FastSimulationMana 135 inline G4VParticleChange* G4FastSimulationManager::GettheParticleChange() 352 { 136 { 353 return &fFastStep; 137 return &fFastStep; 354 } 138 } 355 139 356 Diagnostic: 140 Diagnostic: 357 ---------- 141 ---------- 358 142 359 Called by the G4FastSimulationManagerProcess << 143 Called by the G4FastSimulationManagerProcess to return it in the 360 PostStepDoIt call. << 144 PostStepDoIt call. 361 145 362 Action: 146 Action: 363 ------- 147 ------- 364 The G4FastSimulationManager::GettheParticleCha 148 The G4FastSimulationManager::GettheParticleChange() method doesn't exist any 365 more. The G4VParticleChange* is now returned d 149 more. The G4VParticleChange* is now returned directly when invoking the 366 G4FastSimulationManager::InvokePostStepDoIt() 150 G4FastSimulationManager::InvokePostStepDoIt() and 367 G4FastSimulationManager::InvokeAtRestDoIt() me 151 G4FastSimulationManager::InvokeAtRestDoIt() methodes. 368 152 369 Modified files: 153 Modified files: 370 --------------- 154 --------------- 371 G4FastSimulationManager.hh 155 G4FastSimulationManager.hh 372 G4FastSimulationManager.cc 156 G4FastSimulationManager.cc 373 G4FastSimulationManagerProcess.cc 157 G4FastSimulationManagerProcess.cc 374 158 375 Status: << 159 Status: 376 ------- 160 ------- 377 Done, tested, system-tested on HP-aCC with exe 161 Done, tested, system-tested on HP-aCC with exemple N05. 378 162 379 3) Warning: 163 3) Warning: 380 ----------- 164 ----------- 381 include/G4FastSimulationManagerProcess.hh:52 165 include/G4FastSimulationManagerProcess.hh:52 382 If a class has virtual functions it shall 166 If a class has virtual functions it shall have a virtual destructor 383 Severe violation: Universal Coding Standar 167 Severe violation: Universal Coding Standards item 17 384 class G4FastSimulationManagerProcess has v 168 class G4FastSimulationManagerProcess has virtual functions without a virtual destructor. 385 169 386 offending code: 170 offending code: 387 --------------- 171 --------------- 388 ~G4FastSimulationManagerProcess(); 172 ~G4FastSimulationManagerProcess(); 389 173 390 Diagnostic: 174 Diagnostic: 391 ---------- 175 ---------- 392 Nobody should inherites from G4FastSimulatio << 176 Nobody should inherites from G4FastSimulationManagerProcess BUT for virtual 393 is added. 177 is added. 394 178 395 Action: 179 Action: 396 ------- 180 ------- 397 virtual ~G4FastSimulationManagerProcess(); 181 virtual ~G4FastSimulationManagerProcess(); 398 182 399 Modified files: 183 Modified files: 400 --------------- 184 --------------- 401 G4FastSimulationManagerProcess.hh 185 G4FastSimulationManagerProcess.hh 402 186 403 Status: << 187 Status: 404 ------- 188 ------- 405 Done. 189 Done. 406 190 407 4) Warning: 191 4) Warning: 408 ----------- 192 ----------- 409 include/G4FastSimulationMessenger.hh:36 193 include/G4FastSimulationMessenger.hh:36 410 If a class has virtual functions it shall 194 If a class has virtual functions it shall have a virtual destructor 411 Severe violation: Universal Coding Standar 195 Severe violation: Universal Coding Standards item 17 412 class G4FastSimulationMessenger has virtua 196 class G4FastSimulationMessenger has virtual functions without a virtual destructor. 413 197 414 198 415 offending code: 199 offending code: 416 --------------- 200 --------------- 417 ~G4FastSimulationMessenger(); 201 ~G4FastSimulationMessenger(); 418 202 419 Diagnostic: 203 Diagnostic: 420 ---------- 204 ---------- 421 Nobody should inherites from G4FastSimulatio << 205 Nobody should inherites from G4FastSimulationMessenger BUT for virtual 422 is added. 206 is added. 423 207 424 Action: 208 Action: 425 ------- 209 ------- 426 virtual ~G4FastSimulationMessenger(); 210 virtual ~G4FastSimulationMessenger(); 427 211 428 Modified files: 212 Modified files: 429 --------------- 213 --------------- 430 G4FastSimulationMessenger.hh 214 G4FastSimulationMessenger.hh 431 215 432 Status: << 216 Status: 433 ------- 217 ------- 434 Done. 218 Done. 435 219 436 5) Warning: 220 5) Warning: 437 ----------- 221 ----------- 438 include/G4FastStep.hh:224 222 include/G4FastStep.hh:224 439 Operator= should call base class operator= 223 Operator= should call base class operator= 440 Possible severe violation: Effective C++ i 224 Possible severe violation: Effective C++ item 16 441 operator= in class G4FastStep, should call 225 operator= in class G4FastStep, should call operator= in base class G4VParticleChange 442 226 443 offending code: 227 offending code: 444 --------------- 228 --------------- 445 G4FastStep & G4FastStep::operator=(const G4Fas 229 G4FastStep & G4FastStep::operator=(const G4FastStep &right) 446 { 230 { 447 if (this != &right) 231 if (this != &right) 448 { 232 { 449 theListOfSecondaries = right.th 233 theListOfSecondaries = right.theListOfSecondaries; 450 theSizeOftheListOfSecondaries = right.th 234 theSizeOftheListOfSecondaries = right.theSizeOftheListOfSecondaries; 451 theNumberOfSecondaries = right.th 235 theNumberOfSecondaries = right.theNumberOfSecondaries; 452 theStatusChange = right.th 236 theStatusChange = right.theStatusChange; 453 theMomentumChange = right.th 237 theMomentumChange = right.theMomentumChange; 454 thePolarizationChange = right.th 238 thePolarizationChange = right.thePolarizationChange; 455 thePositionChange = right.th 239 thePositionChange = right.thePositionChange; 456 theTimeChange = right.th 240 theTimeChange = right.theTimeChange; 457 theEnergyChange = right.th 241 theEnergyChange = right.theEnergyChange; 458 theTrueStepLength = right.th 242 theTrueStepLength = right.theTrueStepLength; 459 theLocalEnergyDeposit = right.th 243 theLocalEnergyDeposit = right.theLocalEnergyDeposit; 460 theSteppingControlFlag = right.th 244 theSteppingControlFlag = right.theSteppingControlFlag; 461 theWeightChange = right.th 245 theWeightChange = right.theWeightChange; 462 } 246 } 463 return *this; 247 return *this; 464 } 248 } 465 249 466 Diagnostic: 250 Diagnostic: 467 ---------- 251 ---------- 468 Bug detected. 252 Bug detected. 469 253 470 Action: 254 Action: 471 ------- 255 ------- 472 Insert the call 256 Insert the call 473 G4VParticleChange::operator=(right); 257 G4VParticleChange::operator=(right); 474 258 475 Status: 259 Status: 476 ------- 260 ------- 477 Done, tested, system-tested on HP-aCC with e 261 Done, tested, system-tested on HP-aCC with exemple N05. 478 262 479 Modified files: 263 Modified files: 480 --------------- 264 --------------- 481 G4FastStep.cc 265 G4FastStep.cc 482 266 483 6) Warning: 267 6) Warning: 484 ----------- 268 ----------- 485 include/G4FastStep.hh:59 269 include/G4FastStep.hh:59 486 Avoid data members in the public interface 270 Avoid data members in the public interface 487 Violation: Effective C++ item 20 271 Violation: Effective C++ item 20 488 Public data members for class G4FastStep: 272 Public data members for class G4FastStep: 489 debugFlag 273 debugFlag 490 274 491 275 492 offending code: 276 offending code: 493 --------------- 277 --------------- 494 public: 278 public: 495 ... 279 ... 496 G4bool debugFlag; 280 G4bool debugFlag; 497 281 498 Diagnostic: 282 Diagnostic: 499 ---------- 283 ---------- 500 Historical usage. 284 Historical usage. 501 285 502 Action: 286 Action: 503 ------- 287 ------- 504 Replaced by #ifdef FAST_STEP_DEBUG in the G4 288 Replaced by #ifdef FAST_STEP_DEBUG in the G4FastStep.cc file. 505 289 506 Modified files: 290 Modified files: 507 --------------- 291 --------------- 508 G4FastStep.hh, G4FastStep.cc 292 G4FastStep.hh, G4FastStep.cc 509 293 510 Status: 294 Status: 511 ------- 295 ------- 512 Done, tested, system-tested on HP-aCC with e 296 Done, tested, system-tested on HP-aCC with exemple N05. 513 297 514 7) Warning: 298 7) Warning: 515 ----------- 299 ----------- 516 include/G4FastStep.hh:59 300 include/G4FastStep.hh:59 517 If a class has virtual functions it shall 301 If a class has virtual functions it shall have a virtual destructor 518 Severe violation: Universal Coding Standar 302 Severe violation: Universal Coding Standards item 17 519 class G4FastStep has virtual functions wit 303 class G4FastStep has virtual functions without a virtual destructor. 520 304 521 305 522 offending code: 306 offending code: 523 --------------- 307 --------------- 524 ~G4FastStep(); 308 ~G4FastStep(); 525 309 526 Diagnostic: 310 Diagnostic: 527 ---------- 311 ---------- 528 Nobody should inherites from G4FastStep BUT 312 Nobody should inherites from G4FastStep BUT virtual added. 529 313 530 Action: 314 Action: 531 ------- 315 ------- 532 virtual ~G4FastStep(); 316 virtual ~G4FastStep(); 533 317 534 Modified files: 318 Modified files: 535 --------------- 319 --------------- 536 G4FastStep.hh 320 G4FastStep.hh 537 321 538 Status: 322 Status: 539 ------- 323 ------- 540 Done, tested, system-tested on HP-aCC with e 324 Done, tested, system-tested on HP-aCC with exemple N05. 541 325 542 326 543 December 7, 1998 M. Verderi 327 December 7, 1998 M. Verderi 544 G4FastSimulationManagerProcess class: 328 G4FastSimulationManagerProcess class: 545 Fixes made for ghost navigation with 329 Fixes made for ghost navigation with 546 mag-field: 330 mag-field: 547 LocateGlobalPointAndUpdateTouchable is 331 LocateGlobalPointAndUpdateTouchable is 548 always used (in not the Locate...Setup 332 always used (in not the Locate...Setup 549 method) 333 method) 550 In PostStepDoIt: correction of position and 334 In PostStepDoIt: correction of position and 551 direction of the track are made when << 335 direction of the track are made when 552 possible in case of mag-field. 336 possible in case of mag-field. 553 This correction comes from the fact that a 337 This correction comes from the fact that a 554 small discrepancy appears on those quantitie 338 small discrepancy appears on those quantities 555 because of the numerical integration along 339 because of the numerical integration along 556 the field on the track path: the G4FSMP 340 the field on the track path: the G4FSMP 557 proposes a curve-length, the transportation 341 proposes a curve-length, the transportation 558 moves the track along this curve, however 342 moves the track along this curve, however 559 the end point position and direction are 343 the end point position and direction are 560 slightly different from those expected by 344 slightly different from those expected by 561 the G4FSMP when it proposed the length. 345 the G4FSMP when it proposed the length. 562 346 563 November 20,1998 M. Verderi 347 November 20,1998 M. Verderi 564 G4FastStep class: 348 G4FastStep class: 565 Remove track/G4BiasingTag.hh dependancy (ob 349 Remove track/G4BiasingTag.hh dependancy (obsolete). 566 Adapted to new shceme of Event Biasing mech 350 Adapted to new shceme of Event Biasing mechanism, 567 consistently with track-00-04-01 tag. 351 consistently with track-00-04-01 tag. 568 352 569 November 11,1998 M. Verderi 353 November 11,1998 M. Verderi 570 Merge of param-00-03-02 & param-00-03-02a i 354 Merge of param-00-03-02 & param-00-03-02a into 571 param-00-03-04a (hopefully...) 355 param-00-03-04a (hopefully...) 572 The point is the chnage of signature in the 356 The point is the chnage of signature in the 573 LocateGlobalPointAndSetup(..) of the G4Navi 357 LocateGlobalPointAndSetup(..) of the G4Navigator making use now 574 of the track direction. The G4FastSimulatio 358 of the track direction. The G4FastSimulationManagerProcess is 575 changed accordingly: 359 changed accordingly: 576 fGhostNavigator.LocateGlobalPointAndSetup(t 360 fGhostNavigator.LocateGlobalPointAndSetup(track.GetPosition(), &direction, true); 577 361 578 362 579 November 6, 1998 M. Verderi 363 November 6, 1998 M. Verderi 580 - Extension of the G4FastStep to allow the 364 - Extension of the G4FastStep to allow the biasing technic. 581 Changes are made in: 365 Changes are made in: 582 - G4FastStep.hh/.icc: 366 - G4FastStep.hh/.icc: 583 new member G4BiasingTa 367 new member G4BiasingTag fBiasTag; 584 new method SetPrimaryT 368 new method SetPrimaryTrackFinalBiasingTag 585 ( G4BiasingTag 369 ( G4BiasingTag aTag ); 586 - G4FastStep.cc: 370 - G4FastStep.cc: 587 Initialize(); 371 Initialize(); 588 operator=; << 372 operator=; 589 UpdateForPostStep(); 373 UpdateForPostStep(); 590 UpdateForAtRest(); << 374 UpdateForAtRest(); 591 375 592 October 26, 1998 P.Mora de Freitas 376 October 26, 1998 P.Mora de Freitas 593 - G4FastSimulationManagerProcess and G4Fast 377 - G4FastSimulationManagerProcess and G4FastSimulationManager adapted to deal 594 with at rest parameterisations also when 378 with at rest parameterisations also when using parallel geometry. 595 379 596 October 8, 1998 P.Mora de Freitas 380 October 8, 1998 P.Mora de Freitas 597 - The G4VFastSimulationModel::IsApplicable( 381 - The G4VFastSimulationModel::IsApplicable() becomes a pure virtual 598 methode. 382 methode. 599 - G4FastSimulationManager optimisation: 383 - G4FastSimulationManager optimisation: 600 - New G4ParticleDefinition* fLastCrossedP 384 - New G4ParticleDefinition* fLastCrossedParticle data member, keeps 601 the last particle type with touched the 385 the last particle type with touched the envelope; 602 - New G4RWTPtrOrderedVector<G4VFastSimula 386 - New G4RWTPtrOrderedVector<G4VFastSimulationModel> fApplicableModelList 603 data member, keeps the model list of th << 387 data member, keeps the model list of the applicable models for 604 the actual fLastCrossedParticle particl 388 the actual fLastCrossedParticle particle type; 605 - Changes in the PostStepGetFastSimulatio << 389 - Changes in the PostStepGetFastSimulationManagerTrigger() and 606 AtRestGetFastSimulationManagerTrigger() << 390 AtRestGetFastSimulationManagerTrigger()methodes to update the 607 fApplicableModelList when needed (fLast 391 fApplicableModelList when needed (fLastCrossedParticle != 608 the actual tracked particle); 392 the actual tracked particle); 609 - Changes in the << 393 - Changes in the 610 G4FastSimulationManager() (Constructor) 394 G4FastSimulationManager() (Constructor) 611 ActivateFastSimulationModel(), 395 ActivateFastSimulationModel(), 612 InActivateFastSimulationModel(), 396 InActivateFastSimulationModel(), 613 AtRestGetFastSimulationManagerTrigger(), 397 AtRestGetFastSimulationManagerTrigger(), 614 AddFastSimulationModel(), 398 AddFastSimulationModel(), 615 RemoveFastSimulationModel() 399 RemoveFastSimulationModel() 616 methodes to set the fLastCrossedParticle to 400 methodes to set the fLastCrossedParticle to NULL, forcing the 617 fApplicableModelList to be rebuilt. 401 fApplicableModelList to be rebuilt. 618 402 619 September 22, 1998 P.Mora de Freitas 403 September 22, 1998 P.Mora de Freitas 620 Fixed bug in parallel navigation. << 404 Fixed bug in parallel navigation. 621 File touched: G4FastSimulationManagerProces 405 File touched: G4FastSimulationManagerProcess.cc 622 Tested on HP-aCC. 406 Tested on HP-aCC. 623 407 624 September 17, 1998 P.Mora de Freitas 408 September 17, 1998 P.Mora de Freitas 625 G4FastSimulationManager::RemoveFastSimulati 409 G4FastSimulationManager::RemoveFastSimulationModel() updated to look 626 for also in the fInactivatedModels list. 410 for also in the fInactivatedModels list. 627 411 628 Tested on HP-aCC. 412 Tested on HP-aCC. 629 413 630 September 16, 1998 P.Mora de Freitas 414 September 16, 1998 P.Mora de Freitas 631 New /param/ control commands: 415 New /param/ control commands: 632 416 633 /param/ActivateModel <ModelName> 417 /param/ActivateModel <ModelName> 634 /param/InActivateModel <ModelName> 418 /param/InActivateModel <ModelName> 635 419 636 Activate or inactivate a given parameterisat 420 Activate or inactivate a given parameterisation model. 637 421 638 Tested on HP-aCC. 422 Tested on HP-aCC. 639 423 640 August 21, 1998 P.Mora de Freitas 424 August 21, 1998 P.Mora de Freitas 641 G4FastSimulationManagerProcess's G4ProcessTy 425 G4FastSimulationManagerProcess's G4ProcessType set to 642 fParameterisation, accordingly with procman-00 426 fParameterisation, accordingly with procman-00-02-03. 643 427 644 Tested on HP-aCC. 428 Tested on HP-aCC. 645 429 646 August 12, 1998 P.Mora de Freitas 430 August 12, 1998 P.Mora de Freitas 647 Improved the "close parameterisation control << 431 Improved the "close parameterisation control" to 648 432 649 1) avoid the close looping when unnecessary 433 1) avoid the close looping when unnecessary (mostly cases); 650 2) force re-close when necessary (insert/rem 434 2) force re-close when necessary (insert/remove ghosts). 651 435 652 Changes: 436 Changes: 653 437 654 1) the G4GlobalFastSimulationManager::fClose << 438 1) the G4GlobalFastSimulationManager::fClosed is now initialised 655 to true by the G4GlobalFastSimulationMana 439 to true by the G4GlobalFastSimulationManager constructor; 656 440 657 2) new method << 441 2) new method 658 442 659 void << 443 void 660 G4GlobalFastSimulationManager::FastSimula 444 G4GlobalFastSimulationManager::FastSimulationNeedsToBeClosed(); 661 445 662 called by the AddGhostPlacement and Remov << 446 called by the AddGhostPlacement and RemoveGhostPlacement 663 G4FastSimulationManager methods to set fa 447 G4FastSimulationManager methods to set false the fClosed flag; 664 448 665 3) changes in the G4GlobalFastSimulationMana 449 3) changes in the G4GlobalFastSimulationManager::Notify method 666 to deal with these changes. 450 to deal with these changes. 667 451 668 Tested on HP-aCC. 452 Tested on HP-aCC. 669 453 670 August 11, 1998 P.Mora de Freitas 454 August 11, 1998 P.Mora de Freitas 671 Fix to the G4FastStep::KillPrimaryTrack() me 455 Fix to the G4FastStep::KillPrimaryTrack() method to drop the 672 nonsense line 456 nonsense line 673 457 674 SetMomentumChange(0.,0.,0.) ; /* necessary ? 458 SetMomentumChange(0.,0.,0.) ; /* necessary ? */ 675 459 676 Tested on HP-aCC. 460 Tested on HP-aCC. 677 (Thanks to Willy Langeveld) 461 (Thanks to Willy Langeveld) 678 462 679 463 680 August 10, 1998 P.Mora de Freitas 464 August 10, 1998 P.Mora de Freitas 681 Fix to the SetPrimaryTrackFinalKineticEnergy 465 Fix to the SetPrimaryTrackFinalKineticEnergyAndDirection() method 682 from the G4FastStep class the SetMomentumChang 466 from the G4FastStep class the SetMomentumChange() call to insure that 683 the new momentum direction is a unit vector (a << 467 the new momentum direction is a unit vector (as asked by the 684 G4DynamicParticle::SetMomentumDirection method 468 G4DynamicParticle::SetMomentumDirection method). 685 469 686 Touched files: G4FastStep.hh (improved comme 470 Touched files: G4FastStep.hh (improved comments) 687 G4FastStep.cc (fixed) 471 G4FastStep.cc (fixed) 688 472 689 Tested on HP-aCC. 473 Tested on HP-aCC. 690 (Thanks to Willy Langeveld) 474 (Thanks to Willy Langeveld) 691 475 692 August 7, 1998 P.Mora de Freitas 476 August 7, 1998 P.Mora de Freitas 693 New /param/ commands directory with the comm 477 New /param/ commands directory with the commands: 694 478 695 /param/listEnvelopes [ParticleName] 479 /param/listEnvelopes [ParticleName] 696 480 697 - List all the envelope names for a given pa 481 - List all the envelope names for a given particle 698 (or for all particles if without parameter 482 (or for all particles if without parameters). 699 483 700 /param/listModels [EnvelopeName] 484 /param/listModels [EnvelopeName] 701 485 702 - List all the Model names for a given envel 486 - List all the Model names for a given envelope 703 (or for all envelopes if without parameter 487 (or for all envelopes if without parameters). 704 488 705 /param/listIsApplicable [ModelName] 489 /param/listIsApplicable [ModelName] 706 490 707 - List all the particle names a given model 491 - List all the particle names a given model is applicable 708 (or for all models if without parameters). 492 (or for all models if without parameters). 709 493 710 494 711 August 7, 1998 P.Mora de Freitas 495 August 7, 1998 P.Mora de Freitas 712 History file Created. 496 History file Created.