Created attachment 215 [details] GDML input using an assembly of an assembly. Geant4 allows assemblies to be made up of physvols and other assemblies; the GDML schema also allows this. An assembly of physvols works fine. However, I cannot get an assembly of an assembly to be added to the geometry. I am using load_gdml from example G01, and the heprep viewer. I attach a minimal gdml file illustrating the problem. I hoped to get 7 balls, but see only 3 (the physvol and the assembly, but not the nested assembly). What am I doing wrong?
Tatiana has kindly agreed to look into this.
Dear Nigel, Thank you for reporting this problem and for proposing the example. I don't see errors in proposed GDML file. Also in the documentation(GDML user's guide)the part about how to use assembly is missing. I will examinate this problem. Best Regards, Tatiana.
Dear Nigel, I have reproduced this problem, it is an error in G4GDML Reader, I will fix it. Best Regards, Tatiana.
Dear Nigel, By making different tests I found that error was in your assembly file. <physvol name="Ball600"> <volumeref ref="BallC" /> </physvol> <physvol name="Ball300"> <volumeref ref="BallB" /> </physvol> <physvol name="BallCentre"> <volumeref ref="BallA" /> </physvol> All physical volumes are positioned in the centre of your system coordinates, this way you see only 3 boxes. You need move one of assembly by adding position or/and rotation to physical volume. For example : <physvol name="Ball300"> <volumeref ref="BallB" /> <position name="Dumb5" z="300"/> </physvol> Best Regards, Tatiana