Presentation is loading. Please wait.

Presentation is loading. Please wait.

Makoto Asai.  In the past, material is considered only if it appears in the mass (tracking) world. The user might define parallel world(s) for artificial.

Similar presentations


Presentation on theme: "Makoto Asai.  In the past, material is considered only if it appears in the mass (tracking) world. The user might define parallel world(s) for artificial."— Presentation transcript:

1 Makoto Asai

2  In the past, material is considered only if it appears in the mass (tracking) world. The user might define parallel world(s) for artificial purposes, i.e. shower parameterization envelopes, readout/scoring geometry, dedicated stepping action.  Now, the user may define a material in parallel world(s) which is also seen by physics processes.

3  How it works  How to use it  How it is implemented  First user findings  Additional immediate use-cases  Issues on geometry

4 Mass worldParallel world - 1 Parallel world - 2Tracking time

5  A step is limited on the boundary of any volume of any world.  The step (and all physics processes) sees the material defined in the top-most later. If the top-most layer has null pointer to material, material in next layer is used.

6 int main(int argc,char** argv) { G4String paraWorldName = "ParallelWorld"; Tst1DetectorConstruction* realWorld = new Tst1DetectorConstruction; Tst1ParallelWorldConstruction* parallelWorld = new Tst1ParallelWorldConstruction(paraWorldName); realWorld->RegisterParallelWorld(parallelWorld); runManager->SetUserInitialization(realWorld); // G4VUserPhysicsList* physics = newTst1PhysicsList(paraWorldName); runManager->SetUserInitialization(physics);

7 Tst1ParallelWorldConstruction:: Tst1ParallelWorldConstruction (G4String& parallelWorldName) :G4VUserParallelWorld(parallelWorldName) {;}

8 void Tst1ParallelWorldConstruction::Construct() { // World G4VPhysicalVolume* ghostWorld = GetWorld (); G4LogicalVolume* worldLogical = ghostWorld->GetLogicalVolume(); G4Material* water = G4Material::GetMaterial("Water"); // parallel world placement box G4VSolid* paraBox = new G4Box("paraBox",5.0*cm,30.0*cm,5.0*cm); G4LogicalVolume* paraBoxLogical = new G4LogicalVolume(paraBox, water,"paraBox"); new G4PVPlacement(0,G4ThreeVector(-25.0*cm,0.,0.),paraBoxLogical, "paraBox",worldLogical,false,0);

9 #include "G4ParallelWorldProcess.hh" void Tst1PhysicsList::AddParallelWorldProcess() { G4ParallelWorldProcess* theParallelWorldProcess = new G4ParallelWorldProcess("paraWorldProc"); theParallelWorldProcess->SetParallelWorld(pWorldName); theParallelWorldProcess-> SetLayeredMaterialFlag(); theParticleIterator->reset(); while( (*theParticleIterator)() ){ G4ParticleDefinition* particle = theParticleIterator->value(); if(particle!=G4ChargedGeantino::Definition()) { G4ProcessManager* pmanager = particle->GetProcessManager(); pmanager->AddProcess(theParallelWorldProcess); if(theParallelWorldProcess->IsAtRestRequired(particle) { pmanager->SetProcessOrderingToLast(theParallelWorldProcess, idxAtRest); } pmanager->SetProcessOrdering(theParallelWorldProcess, idxAlongStep, 1); pmanager->SetProcessOrderingToLast(theParallelWorldProcess, idxPostStep); }

10  Material-cuts-couple (MCC) is examined for all worlds.  At the tracking time, material pointer and MCC pointer in G4StepPoint are changed to those for top-most layer before invoking GPIL() of each physics process.

11  Brachytherapy treatment for prostate cancer. Manually implemented DICOM

12  Firstly seeds were placed in the empty parallel world DICOM

13  Seeds in the parallel world were encapsulated in empty boxes for faster navigation DICOM

14  Two major use-cases  Concept of “many” in Geant3  Reducing Boolean solids  Different level of complexity for different particle types  In HENP  Rapid prototyping for complicated detector  Sampling calorimeter  In space  Satellite structure and loaded apparatus  In medicine  Treatment head overlapping to DICOM data  In industry  Object floating on liquid

15  Nothing was added in Geometry to have this new functionality except a small extension in G4Region/G4RegionStore.  This parallel layered mass geometry relies upon parallel world transportation  Stable navigation, no stuck track  Performance of G4CoupledTransportation


Download ppt "Makoto Asai.  In the past, material is considered only if it appears in the mass (tracking) world. The user might define parallel world(s) for artificial."

Similar presentations


Ads by Google