Message: Re: Example B1 scoring volumes Not Logged In (login)
 Next-in-Thread Next-in-Thread
 Next-in-Forum Next-in-Forum

Idea Re: Example B1 scoring volumes 

Forum: Biasing and Scoring
Re: None Example B1 scoring volumes (Tim Fulcher)
Date: 20 Sep, 2017
From: Tim Meehan <Tim Meehan>

Ok - I haven't really tested this out, but here is how I would go about it:

The scoring volume is stored as a pointer in B1DetectorConstruction, and also in B1SteppingAction. You would need to make a few changes to the header files and cc files for both of these. In B1DetectorConstruction.hh, you would have to make two pointer members, and you would have to add another "getter" method. In B1DetectorConstruction.cc, you would need to set the pointer to the logical volumes in B1DetectorConstruction::Construct.

In B1SteppingAction.hh, you would need to add another pointer member for the second logical volume, you would need to modify the constructor definition, and I added some changes to B1SteppingAction::UserSteppingAction(const G4Step*) - specifically to check for volume 1 or volume 2. You then add energy to a new member in B1EventAction.

In B1EventAction, you need to add another double value to hold the energy stored in volume 1 and for the energy stored in volume 2. You need to add another method to increment the energy as well. I changed AddEdep to AddEdep1 and AddEdep2.

Lastly, you would need to take care of the two different volumes that energy is tracked for in B1RunAction::EndOfRunAction, namely, that since the energy is stored for two volumes, you need to add up the mass of the two volumes for the dose calculation.

I could post a patch file to show you - but it is a complete hack job, and all I can guarantee is that it compiled without error on my machine.

 Add Message Add Message
to: "Re: Example B1 scoring volumes"

 Subscribe Subscribe

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