Creating an envelop enclosing a honeycomb assembly solid?

Hi everyone,

I have 7 physical volumes made from G4Tubs and a G4Polyhedra(hexagon) after applying boolean subtraction as shown below

I am struggling to build a ‘solid’ air envelope around the above crystal which should completely overlap the crystal and must be of the same shape, a honeycomb.

Can someone please suggest an efficient and computationally light way of going about this.

Please let me know for any further clarification.

Thanks a lot !

Not there :slight_smile: But I’ll keep going…

So the “air” should be a simple cylinder (G4Tubs), with the honeycomb crystal embeded inside it? If that’s the case, create the air volume first as a “mother volume”, and place the crystal honeycomb within it as a daughter.

Sorry there were some edits

So I am trying to make an air envelop which is similar in shape, like the honeycomb just extends a bit more than the solid.

One way is to place it exactly like the way for solid but I am getting overlaps there as the crystals are then lying in two envelop volumes one hexagon and one cylindrical. I was wondering if it Is feasiblecreate a single envelop whose shape is like the outer boundary of a solid.

Thank You for your reply and time !

Ah, Now I understand more from your drawing, but not everything. Is the air just a hole punched through the whole “honeycomb” shape? Is your world volume also air, or is your world volume G4_Galactic or something?

If you just want to punch a hole through the honeycomb, I would do that with either an “extruded polygon” or a G4MultiUnion of six hexagons, and then do a G4Subtraction through that.

If your world volume is not air, and you really want a cylindrical “air bubble”, then you can do that by making an extruded polygon or a G4MultiUnion of seven hexagons (so the whole thing is solid!), and then place a G4Tubs of air at the center. If the Z values are equal for the two volumes, then the coincident surface should be safe (there’s no computation or interpolation needed).

Sorry for not clarifying properly. So here are the specifications
World: G4Air
Desired Envelope around the honeycomb solid: G4Galactic

Sorry I am a bit confused here
G4Tubs or should I place the extruded volume here ?

This is applicable only for the G4UnionSolid, right? Actually I think the z value (length) of the G4Galactic envelope will be slightly longer than the honeycomb solid.

Thanks a lot for your time mad efforts!

This doesn’t sound consistent. So what you want is G4_Galactic, with some volume (probably a large hexagon, for convenience) of G4_Air inside it, and then your nice “honeycomb” shape with a hole in the center inside that?

That’s three volumes. Each one is a daughter volume of the previous one, and conveniently you should be able to place them all one within the other at (0,0,0).

  1. Your World should be something simple, like a cube or a rectangular box.

  2. Create a simple hexagon (G4Polyhedra) slightly larger than your honeycomb in all dimensions, filled with G4_Air.

  3. Build your honeycomb as an extruded solid, such that (0,0,0) is at the center. You can use the separate G4Polyhedra constructor with a list of (r,z) corners to build the outer shape, then do a boolean subtraction of the central cylinder.

Ok I will try that. Thanks a lot for your reply.