[Gate-users] Annulus cylinder source/phantom pair in Gate 6.2

Marc Chamberland MarcChamberland at cmail.carleton.ca
Fri Jun 28 15:48:41 CEST 2013


After a bit more of snooping around, the source particles are also generated with a call to the same function, which means that the inner radius of your source will be effectively ignored and you'll be left with a full cylindrical source.

You'll definitely need to fix the bug in the Geant4 code.

Marc



__________________________

Marc Chamberland, MSc
PhD candidate
Department of Physics
Carleton University
Ottawa (ON)

On 2013-06-28, at 9:40 AM, Marc Chamberland <MarcChamberland at cmail.carleton.ca<mailto:MarcChamberland at cmail.carleton.ca>>
 wrote:

Hi Leo,

I'm replying to the mailing list because I think this might be relevant to other people.


Your macro commands looked fine, so my first thought was there must be a problem with the visualization. After a bit of snooping in the source code, I tracked down the source visualization to a call to:

void G4SPSPosDistribution::GeneratePointsInVolume()
{
 G4ThreeVector RandPos;
 G4double tempx, tempy, tempz;
 G4double x, y, z;
 x = y = z = 0.;
 if(SourcePosType != "Volume" && verbosityLevel >= 1)
   G4cout << "Error SourcePosType not Volume" << G4endl;
 //Private method to create points in a volume

[Marc's note: I'm skipping some irrelevant lines here]

 else if(Shape == "Cylinder")
   {
     x = Radius*2.;
     y = Radius*2.;
     while(((x*x)+(y*y)) > (Radius*Radius))
{
 x = posRndm->GenRandX();
 y = posRndm->GenRandY();
 z = posRndm->GenRandZ();

 x = (x*2.*Radius) - Radius;
 y = (y*2.*Radius) - Radius;
 z = (z*2.*halfz) - halfz;
}
   }


(This is from the file G4SPSPosDistribution.cc within Geant4's source code.)

As you can see, the visualization of a cylindrical (or annulus) volume does NOT take into account the inner radius (radius0); it only takes into account the outer radius! This is why the source looks wrong. I would consider this a bug in Geant4.

It should not be too hard to fix by yourself, though.

Cheers,
Marc



__________________________

Marc Chamberland, MSc
PhD candidate
Department of Physics
Carleton University
Ottawa (ON)

On 2013-06-28, at 9:23 AM, Leo Read <leoread at gmail.com<mailto:leoread at gmail.com>>
wrote:

Hi Marc,

Thank you for your prompt reply. The reason I posted is because I tried to write the code (see below the figure) to define my annular phantom but got the following result. I must be missing something very trivial as I can't seem to figure out how to get the source (white dots) to stay occupy the same volume as the phantom.



I'd greatly appreciate any advice. I will post the final solution to the forum once I have it sorted out.

Thanks,
Leo

##code to define annular phantom
/gate/world/daughters/name myphantom
/gate/world/daughters/insert cylinder
/gate/myphantom/setMaterial Water
/gate/myphantom/geometry/setRmax   32 cm
/gate/myphantom/geometry/setRmin   30 cm
/gate/myphantom/geometry/setHeight 15 cm

/gate/myphantom/vis/forceSolid
/gate/myphantom/vis/setColor magenta
/gate/myphantom/vis/setVisible 1

/gate/myphantom/attachPhantomSD

##code to define source to occupy region defined by the phantom
/gate/source/addSource             mysource
/gate/source/mysource/setActivity     100000. becquerel
/gate/source/mysource/gps/particle    gamma
/gate/source/mysource/setType         backtoback
/gate/source/mysource/gps/energytype     Mono
/gate/source/mysource/gps/monoenergy    511 keV

/gate/source/mysource/gps/angtype    iso
#/gate/source/mysource/gps/mintheta     90 deg
#/gate/source/mysource/gps/maxtheta     90 deg
#/gate/source/mysource/gps/minphi     0 deg
#/gate/source/mysource/gps/maxphi     360 deg

/gate/source/mysource/gps/type         Volume
/gate/source/mysource/gps/shape     Cylinder
/gate/source/mysource/gps/radius0     30 cm
/gate/source/mysource/gps/radius     32 cm

/gate/source/mysource/gps/halfz     7.5 cm

/gate/source/mysource/gps/centre         0.0 0.0 0. mm

/gate/source/list

/gate/source/mysource/visualize         2000 white



On Fri, Jun 28, 2013 at 8:07 AM, Marc Chamberland <MarcChamberland at cmail.carleton.ca<mailto:MarcChamberland at cmail.carleton.ca>> wrote:
Hi Leo,

I'm not sure what you mean. Gate can create a cylindrical annulus: a cylinder with a different inner and outer radius. This can be used for either a phantom or a source.

For example, if you want your source to be inside the phantom, you just have to define your source to be exactly the same shape as the phantom.

Am I missing something?

Marc



__________________________

Marc Chamberland, MSc
PhD candidate
Department of Physics
Carleton University
Ottawa (ON)

On 2013-06-28, at 7:56 AM, Leo Read <leoread at gmail.com<mailto:leoread at gmail.com>>
wrote:

Hello all,

I'm new to Gate (using version 6.2) and it seems like there isn't a simple solution to model the commonly used annulus cylindrical phantom with the source embedded inside. Could somebody please help?

Thank you all for your time and assistance.

Best regards,
Leo
_______________________________________________
Gate-users mailing list
Gate-users at lists.opengatecollaboration.org<mailto:Gate-users at lists.opengatecollaboration.org>
http://lists.opengatecollaboration.org/mailman/listinfo/gate-users


_______________________________________________
Gate-users mailing list
Gate-users at lists.opengatecollaboration.org<mailto:Gate-users at lists.opengatecollaboration.org>
http://lists.opengatecollaboration.org/mailman/listinfo/gate-users



_______________________________________________
Gate-users mailing list
Gate-users at lists.opengatecollaboration.org<mailto:Gate-users at lists.opengatecollaboration.org>
http://lists.opengatecollaboration.org/mailman/listinfo/gate-users


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opengatecollaboration.org/mailman/private/gate-users/attachments/20130628/722cd401/attachment.html>


More information about the Gate-users mailing list