Message: Placement of large number of volumes on a sphere Not Logged In (login)
 Next-in-Thread Next-in-Thread
 Next-in-Forum Next-in-Forum

Question Placement of large number of volumes on a sphere 

Forum: Geometry
Date: 25 Aug, 2015
From: <duso>

I simulating a detector made of a large (~20000) amount of PMT (photo-multiplyer) placed on a sphere (all PMTs are at the same distance from the center). All the PMT have the same shape and material but have a different orientation because they point to the center of the sphere. The 3D position and orientation of the PMT is stored in arrays

G4double px[20000];
G4double py[20000];
G4double pz[20000];

G4double phi[20000];
G4double theta[20000];
G4double psi[20000];

and the placement of the PMTs is done using the
class PmtParameterisation : public G4VPVParameterisation

where the ComputeTransformation method is defined as

void PmtParameterisation::ComputeTransformation
(const G4int copyNo, G4VPhysicalVolume* physVol) const
  G4ThreeVector origin(px[copyNo],py[copyNo],pz[copyNo]);

  G4RotationMatrix *rot = new G4RotationMatrix();

The placement is done specifying kUndefined in

G4VPhysicalVolume* physPmt = new G4PVParameterised("pmt",logicPmt,logicDet,kUndefined,nPmt,pmtParam);

The problem is that my application uses a huge amount of memory for the visualization and the navigation inside the geometry is very slow.

Is there a better way to place volumes in a spherical symmetric detector, a sort of G4PVReplica in spherical coordinate?

Thanks a lot

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

1 None: Re: Placement of large number of volumes on a sphere   (Joseph Perl - 26 Aug, 2015)
2 None: Re: Placement of large number of volumes on a sphere   (John Apostolakis - 27 Aug, 2015)
 Add Message Add Message
to: "Placement of large number of volumes on a sphere"

 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 ]