| Message: Related to G4logicalVolume associated with Sensitive Detector | Not Logged In (login) |
|
Hi All,
I am new in Geant4 and have limited knowldge in C++. My detector geometry has 32 readout segment (within a single detector). These segments are not identical in shape. So I construct them by different way but assign only one logical vol. for all of them (obviously I did that separately) and place them individually to construct my detector. It seems working well and I will go ahead with this DetectorConstruction.cc. But before I make any other progress I would like to know "Is there any limitation of using same logicalvol with different solidname and place them as I have done". Kindly have look a part of the program (it is very simple) below: Any support and comments are highly appreciated. Thanks in advance Pradip
if(i==0)
{
..........Solid with name "scyl1_strap2" is constructed here..............
lcyl1_strap1 = new G4LogicalVolume(scyl1_strap2,Ge,"logic_cyl2+trap2",0,0,0);
for(G4int j=0;j<4;j++)
{
//---------------------I have defined Z0Rot and x, y, z here--------------- pcyl1_strap1 = new G4PVPlacement(z0Rot,G4ThreeVector(x, y, z),lcyl1_strap1,"Cyld0_Trap1+2",logicWorld,false,i+10*j);
}
} // end if i==0
if(i==1)
{
...Solid with name "scyl1_strap1" is constructed here. It is of different shape.. lcyl1_strap1 = new G4LogicalVolume(scyl1_strap1,Ge,"logic_cyl1+trap1",0,0,0);
for(G4int j=0;j<4;j++)
{
//---------------------I have defined Z0Rot and x, y, z here--------------- pcyl1_strap1 = new G4PVPlacement(z0Rot,G4ThreeVector(x, y, z),lcyl1_strap1,"Cyld1_Trap1",logicWorld,false,i+10*j);
}
} // end if i==1
Thus, you see, I have different shapes. I assigned same name lcyl1_strap1 and place them at different coordinates (definition of x,y,z is depends on j) within the "j" loop.
|
|
to: |