Composite shape simulation

Dear Rooters,

I simulate the geometry of detector CB
and there is a question connected with  simulation of light-guide.
It has shape like this :
we have such a trapezia with circular form of corners as a 1 surface
and a circle at another side of light guide. 
(where the PM has to be mounted).
They are coupled as it is shown in the picture in attachment.

I will be grateful for any advise how to simulate this shape, using ROOT

With best regards,


As far as I can understand your shape from the drawing, you might do the following:

  • trapezia part: use TGeoTrd1
    TGeoShape *trd = new TGeoTrd1(“trd”, params…);

  • rounded corners: use the outscribed tube (or cone - I do not well understand the Z profile of the trapezia part), that ‘cuts’ a bit the corners in the desired way
    TGeoShape *cone = new TGeoCone(“con”, params…);

  • I gues the ‘circular part’ is a tube:
    TGeoShape *tube = new TGeoTube(“tub”, params…);

  • define the required translations according the reference frameat your choice:
    TGeoTranslation *tr1 = new TGeoTranslation(0,0,Ztrd)
    TGeoTranslation *tr2 = new TGeoTranslation(0,0,Ztub)

  • make your piece as a composite shape:
    TGeoCompositeShape piece = new TGeoCompositeShape(“MyPiece”, "(trdcon)+tub"); meaning: intersect the trap with the outscribed cone and then make the union with the tube.

Attach your piece to some volume and you are done… :wink:

If you are a bit familiar with TGeo classes, it will be easy, otherwise, it might take you a while… To visualize, use raytracing (the only supported so far for composite shapes).

Good luck and send me the picture when you have done it… 8)