Message: Magnetic field with DICOM example (medical) crashes Not Logged In (login)
 Next-in-Thread Next-in-Thread
 Next-in-Forum Next-in-Forum

Question Magnetic field with DICOM example (medical) crashes 

Forum: Fields: Magnetic and Otherwise
Date: 20 May, 2011
From: Asja Pfaffenberger <Asja Pfaffenberger>

When i insert a magnetic field into the extended/medical/DICOM example, it is aborted after around 10^7 events or so. Here are the error messages and below you find what i have done.

It quits with

ERROR - G4PhantomParameterisation::GetReplicaNo()
        local point - (-5.431587134,196.0012772,2.938380313) - is outside container solid: PhantomContainer

*** G4Exception : InvalidSetup
      issued by : G4PhantomParameterisation::GetReplicaNo()
Point outside voxels!
*** Fatal Error In Argument *** core dump ***

 *** G4Exception: Aborting execution **

Before i get several

*** G4Exception : Bad-location-of-point
      issued by : G4Navigator::ComputeStep()
Point is relocated in voxels, while it should be outside!
*** This is just a warning message.

and some

WARNING - G4Navigator::ComputeStep()
          Track stuck, not moving for 10 steps
          in volume -World- at point (3.266307043,-61.80774729,94.99671271)
          direction: (-0.1409028091,0.8898647521,-0.4339206394).
          Potential geometry or navigation problem !
          Trying pushing it of 9e-10 mm ...
ERROR - G4Navigator::ComputeStep()
        Track stuck, not moving for 25 steps
        in volume -World- at point (3.264582274,-61.79696971,94.99155518)
        direction: (-0.1402959037,0.8930126217,-0.427604393).

---

This is what i did:

In DicomDetectorConstruction.hh, i have added

 class G4UniformMagField;

 public:
 void SetMagField(G4ThreeVector);

 protected:
 G4UniformMagField* magField;

Then in DicomDetectorConstruction.cc:

#include “G4UniformMagField.hh”
#include “G4FieldManager.hh”
#include “G4TransportationManager.hh”
void DicomDetectorConstruction::SetMagField(G4ThreeVector fieldValues)
{
G4UniformMagField* magField = new G4UniformMagField(fieldValues);
G4FieldManager* fieldMgr
  = G4TransportationManager::GetTransportationManager()->GetFieldManager();
fieldMgr->SetDetectorField(magField);
fieldMgr->CreateChordFinder(magField);
}

And in main before runManager->SetUserInitialization(theGeometry);

 theGeometry->SetMagField(G4ThreeVector(0.,0.,1.5*tesla));

I comment out interactivity and start my simulation with

 runManager->BeamOn(50000000); 

In DicomPrimaryGeneratorAction.cc I use “gamma” instead of “e-“ and “3.*MeV” instead of “5.*MeV”.

---

Thanks in advance.

Inline Depth:
 1 1
 All All
Outline Depth:
 1 1
 2 2
 All All
Add message: (add)

1 Feedback: Re: Magnetic field with DICOM example (medical) crashes   (Gumplinger Peter - 20 May, 2011)
 Add Message Add Message
to: "Magnetic field with DICOM example (medical) crashes"

 Subscribe Subscribe

This site runs SLAC HyperNews version 1.11-slac-98, derived from the original HyperNews


[ Geant 4 Home | Geant 4 HyperNews | Search | Request New Forum | Feedback ]