Reading GDML File in ROOT 6.25

Hi,
I have problem reading my gdml geometry with ROOT 6.25.
I am using following command on ROOT shell

TGeoManager::Import("mother_draw.gdml");

where mother_draw.gdml is a mother volume which imports child gdml files with each volume of the full geometry.

It gives me this error

===================================================================
Info in <TGeoManager::Import>: Reading geometry from file: mother_draw.gdml
Info in <TGeoManager::TGeoManager>: Geometry GDMLImport, Geometry imported from GDML created
Fatal in <TGDMLParse::Tessellated>: Vertex REAR-VETO458_v0 not defined
aborting
============================================================

Can you please suggest how to resolve this issue? Does ROOT support tessellated volumes?

Thanks

ROOT Version: v6.25
Platform: macOS / Big Sur
Compiler: Cling

I hope, @agheata can help you.

Can you share the gdml file, looks like a vertex isn’t found. Tessellated volumes are supported.

Hi @agheata,

Here are the mother_draw.gdml and the REAR-VETO.gdml files.

Thanks

gdml_files.zip (2.6 KB)

Hi @agheata,

do you have any clue about the source of this issue?
Thanks,

Francesco

I can reproduce, checking now.

Hi Francesco,
The reason is that whenever GDML tags are defined in a separate file, they get appended the file name to the original name. So the position: REAR-VETO458_v0 gets in fact the name: REAR-VETO458_v0_Volumes/REAR-VETO458.gdml so it won’t be found by name by the tessellated parser function. A quick solution is to check if merging the vertices definition into the file mother_draw.gdml fixes the issue, ot if changing the names of the positions does the trick. I’m not quite sure why the parser implementation has this feature, it was done like this long ago.

Hi @agheata,

sorry for the late reply.
I’ve tried what you suggested and I tried to define REAR_VETO458 in the mother_draw.gdml. But I get an other crash:

root [0] TGeoManager::Import(“mother_draw.gdml”);
Info in TGeoManager::Import: Reading geometry from file: mother_draw.gdml
Info in TGeoManager::TGeoManager: Geometry GDMLImport, Geometry imported from GDML created
Error in TGeoVolume::AddNode: Volume is NULL
*** Break *** segmentation violation

Is there an other was to define this volume in the mother one?
mother_draw.gdml.zip (1.6 KB)

I attached the modified gdml file.

Thanks!
Francesco

Hi @agheata,

do you know the reason for this crash? Have I mistaken how to define the volumes?

Thanks,

Francesco

Hi Francesco, try the attached gdml file.
mother_draw.tgz (319 Bytes)

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.