Ellipsoid/Eltub

Heya,

I’m using vGATE 9.4.1

Probably a super simple question, but is there any way to create a hollow ellipsoid tube? I’m trying to create thin ellipsoid rings but am running into issues creating this specific shape. The large number of ellipsoid rings I need precludes the option of using many trapz.

Any ideas would be wonderfully appreciated!

Kind thanks!

Hi @nlowey,

Welcome to the Geant4 forum!

There are a couple of options you might consider for defining a hollow ellipsoid tube:

  • Using a daughter volume: You can place a daughter volume made of the same material as the surrounding medium inside the ellipsoid to effectively create a hollow region
  • Using G4Polycone: If some approximation is acceptable, a G4Polycone can also be used to approximate the shape

While using Boolean operations (such as subtraction) or G4TessellatedSolid might seem like convenient solutions, be aware that they can have a significant impact on performance.

If others have alternative approaches, I’d be glad to learn about them as well.

Thank you for your time!

Best regards,
Alvaro

1 Like

Just to complement the previous post. A hollow elliptical tube can be constructed as a G4ScaledSolid from G4Tubs.

1 Like

I hadn’t encountered G4ScaledSolid before! Is it allowed to be used as the base solid for a G4VParameterised placement?

We have detectors with thousands of little (photolithography) elliptical pads. For the simulation code, I made them rectangles (G4Box) with equal area, because doing things like boolean slices of ellipsoids just wouldn’t work.

I don’t know, I have zero experience with G4PVParameterised. I am curious, why you used G4Box and not G4EllipticalTube?

We started developing this code back when we were still on 10.3 or maybe earlier; my vague memory from that many years ago was that there were solids that just didn’t play well with parameterised (maybe only the CSG ones, not “specific”?). EllipticalTube is exactly what we should use for these sensors.

Hi Mike, not all solids can be parameterised and implement the required interfaces. Solids that can be parameterised are: G4Box, G4Tubs, G4Trd, G4Trap, G4Cons, G4Sphere, G4Orb, G4Ellipsoid, G4Torus, G4Para, G4Polycone, G4Polyhedra and G4Hype.
Also, any Boolean composition or transformation on those solids is not recommended for parameterisations.

1 Like

Thanks, Gabriele! That was my memory. Then what I did long ago (2018, apparently) was correct for our needs. We get the right area coverage for phonon collection, and the right thermal mass and conductivity calculation.