- Jul 28, 2020
-
-
Benedikt Volkel authored
Don't rely on the engine to set the current track after popping from TMCManagerStack but do it implicitly.
-
- Jan 22, 2020
-
-
Ivana Hrivnacova authored
'wmat' values were not updated when the function is called with nlmat<0, as they should be to mimic the Geant3 behavior.
-
- Oct 09, 2019
-
-
Ivana Hrivnacova authored
- Only rely on presence of TMCManager in multi run (PR#6 in vmc-project/vmc) - Withdraw unwanted TMCVerbose modifications to avoid changes in the tests outputs - Recover TGeoManager::fIsOutside for transfer tracks (PR#3 in vmc-project/vmc)
-
- Jun 13, 2019
-
-
Ivana Hrivnacova authored
This function is needed for newly introduced sensitive detectors framework to provide a hook for a central call to fill ROOT trees before resetting data in sensitive detector's end of event.
-
- May 31, 2019
-
-
Benedikt Volkel authored
The index of the geometry state belonging to a track is now reset properly when the TMCManagerStack is notified on the restored geometry.
-
- Mar 26, 2019
-
-
Benedikt Volkel authored
This is an extension allowing the VMC package to run a simulation with multiple different engines at a time. Tracks can be transferred among engines during a simulation run based on conditions specified by the user. Important notes on the extensions: 1) This extension preserves backward-compatibility in the sense that user code relying on the former version of VMC is still running with the extended version. Was tested with GEANT3_VMC@v2-6 and GEANT4_VMC@v3-6-p1. 2) A shared simulation is only possible when TGeo is used for geometry construction and navigation. 3) A TMCManager singleton object is responsible for handling multiple engines and can be obtained on request calling TVirtualMCApplication::RequestManager() during construction of the user application class. 4) The introduced TMCParticleStatus objects hold additional information to keep track of properties when a track is transferred between engines. 5) When a track is interrupted in one engine to be transferred to another, the geometry state is cached in the form of a TGeoBranchArray object. It will be used to initialize the navigator when this track is picked up for further transport in the next engine. This is especially useful/required when a track is transferred at a volume boundary in order to be picked up in the entered volume and not in the one just left. This is a main reason why geometry management is forced to be done via TGeo. A more comprehensive introduction concerning the usage and implementation in the user code can be found in the montecarlo/vmc/README.md Further note: This commit also applies the clang format to the modified and new files.
-
- Apr 25, 2018
-
-
Ivana Hrivnacova authored
Details: - Added support for user defined sensitive detectors o TVirtualMCSensitiveDetector: the interface class for a user sensitive detector o New functions in TVirtualMC: void SetSensitiveDetector(const TString &volName, TVirtualMCSensitiveDetector *sd); TVirtualMCSensitiveDetector *GetSensitiveDetector(const TString &volName) const; void SetExclusiveSDScoring(Bool_t exclusiveSDScoring); o New function in TVirtualMCApplication: void ConstructSensitiveDetectors(); - Added new TVirtualMC::NIELEdep() function - Removed default implementation for TVirtualMC::TrackPosition/Momentum with Float_t arguments
-
- Jun 06, 2017
-
-
Vassil Vassilev authored
ClassImp is a macro defined in Rtypes.h. It can be written without trailing semicolon. However, clang-format is based on lexing and it doesn't know at all about preprocessors and how to expand macros. When visiting ClassImp(X) it thinks this is not a completed entity (as it doesn't expand macros) and considers the next line as continuation of the previous. Inserting a semicolon fixes the issue and makes formatting with clang-format in the ROOT codebase less tricky.
-
- Mar 27, 2017
-
-
Ivana Hrivnacova authored
-
Ivana Hrivnacova authored
(previously distributed in geant4_vmc/mtroot)
-
- Feb 07, 2017
-
-
Ivana Hrivnacova authored
-
- Jul 27, 2016
-
-
Axel Naumann authored
-
- May 09, 2016
-
-
Ivana Hrivnacova authored
- Make TVirtualMC::GetMC() inlined and the getters accessing data members non-virtual.
-
- Dec 01, 2015
-
-
Olivier Couet authored
-
- Nov 30, 2015
-
-
Ivana Hrivnacova authored
-
- Jun 26, 2015
-
-
Axel Naumann authored
-
- Jun 07, 2015
-
-
Axel Naumann authored
-
- Aug 29, 2014
-
-
Ivana Hrivnacova authored
-
- Aug 05, 2014
-
-
Philippe Canal authored
-
- Apr 29, 2014
-
-
Ivana Hrivnacova authored
(according to Geant4 tls.hh and G4Threading.hh)
-
- Jun 28, 2012
-
-
Ivana Hrivnacova authored
git-svn-id: http://root.cern.ch/svn/root/trunk@44794 27541ba8-7e3a-0410-8455-c3a389f83636
-
- Jun 04, 2012
-
-
Axel Naumann authored
using namespace std; from Riostream.h, which has huge consequences for all of ROOT. Riostream.h is now a simple wrapper for fstream, iostream, iomanip for backward compatibility; Riosfwd.h simply wraps iosfwd. Because of templates and their inline functions, Riostream.h needed to be included in headers, too (e.g. TParameter.h), which violated the assumption that Riostream.h is not exposing its using namespace std to headers. ROOT now requires R__ANSISTREAM, R__SSTREAM, which does not change the set of supported compilers. Without "using namespace std", several identifiers are now prefixed by std::; e.g. roofit/* source files now have a using namespace std to keep their coding style. TFile::MakeProject() now generates "using namespace std" to convert the CINT-style class names into C++ ones. git-svn-id: http://root.cern.ch/svn/root/trunk@44507 27541ba8-7e3a-0410-8455-c3a389f83636
-
- Mar 22, 2012
-
-
Ivana Hrivnacova authored
Making TVirtualMC and TVirtualMCApplication instances thread local; behind #if defined(__linux__) && !defined(__CINT__) git-svn-id: http://root.cern.ch/svn/root/trunk@43453 27541ba8-7e3a-0410-8455-c3a389f83636
-
- Oct 11, 2011
-
-
Axel Naumann authored
git-svn-id: http://root.cern.ch/svn/root/trunk@41330 27541ba8-7e3a-0410-8455-c3a389f83636
-
- Nov 10, 2010
-
-
Ivana Hrivnacova authored
git-svn-id: http://root.cern.ch/svn/root/trunk@36585 27541ba8-7e3a-0410-8455-c3a389f83636
-
- Aug 13, 2010
-
-
Ivana Hrivnacova authored
Make sure that TGeoManager exists before each call to gGeoManager (call gGeoManager via a function which performs a test). This fixes a crash in VMC examples when the VMC application builds geometry via TVirtualMC and then selects TGeant3TGeo as MC. git-svn-id: http://root.cern.ch/svn/root/trunk@34810 27541ba8-7e3a-0410-8455-c3a389f83636
-
- Jun 30, 2010
-
-
Rene Brun authored
git-svn-id: http://root.cern.ch/svn/root/trunk@34204 27541ba8-7e3a-0410-8455-c3a389f83636
-
- Jan 15, 2009
-
-
Rene Brun authored
Replace all references to Text_t by char, still keeping the definition in Rtypes.h git-svn-id: http://root.cern.ch/svn/root/trunk@27157 27541ba8-7e3a-0410-8455-c3a389f83636
-
- Jan 09, 2009
-
-
Rene Brun authored
there is added setter/getter for TVirtualMagField in TVirtualMC. If the field object is set, the MCApplication::Field is not used, if not, it is used as before, but there is issued a warning that MCApplication::Field is now deprecated and user should move to TVirtualMagField. There is also included a correction in the new classes headers, as there was a problem in compilation when using include of uniform field. And added a setter/getter for the field value in uniform field. git-svn-id: http://root.cern.ch/svn/root/trunk@27106 27541ba8-7e3a-0410-8455-c3a389f83636
-
- Apr 11, 2008
-
-
Fons Rademakers authored
eg, g4root, pythia6, pythia8, vmc git-svn-id: http://root.cern.ch/svn/root/trunk@23136 27541ba8-7e3a-0410-8455-c3a389f83636
-