Message: Re: G4LogicalBorderSurface in Assembly Not Logged In (login)
 Next-in-Thread Next-in-Thread
 Next-in-Forum Next-in-Forum

None Re: G4LogicalBorderSurface in Assembly 

Forum: Processes Involving Optical Photons
Re: None G4LogicalBorderSurface in Assembly (Zach Miller)
Re: Feedback Re: G4LogicalBorderSurface in Assembly (Gumplinger Peter)
Date: 28 Aug, 2012
From: Zach Miller <Zach Miller>

Hi Peter,

Thanks for getting back to me so quickly, very much appreciated.

I'm attaching a few images of my detector. The first is a wide shot of it, that shows the whole bar. The light blue "angle pieces" are light guides for the odd layered scintillators, the dark blue for the even scintillators. The zoomed in view is a view of the scintillating bar... showing the layers.

Currently, the whole thing is built as an assembly; where I just add the logical volumes then physically place the assembly.

The way I have added the wrap currently is to place a volume of "air" around each piece that is to be wrapped, and then wrap that air volume in scintillator with G4LogicalSkinSurface; as that gave me more control on the wrapping process. However, the difficulty is that I need to wrap each layer individually to match our detector design, not just wrapping the outside of the whole bar. When I wrap the layer, I need to not wrap the contact point between the blue light guides and the green/pink scintillator; as I need to be able to freely pass optical photons between the light guide and the scintillator. However, I also need to not allow optical photons to pass between scintillator layers (green to pink/pink to green).

So, if I can quickly summarize, I need my wrap to do the following:

1) "prevent" pink to green/green to pink transmission of opticalPhotons. 2) Allow green to dark blue & pink to light blue transmission 3) "prevent" loss of light from any layer to the mother volume

("prevent" meaning, act as teflon does in practice.)

The solution I thought of was to define only specific borders as needing the wrap using G4LogicalBorderSurface; but as you mentioned, I'd need a physical volume for this... and I'm not sure how to do that in an Assembly; as I need this to remain an assembly for the future of the project (I'll eventually be placing 20 of these bars).

I've already tried adding an extra volume and attaching the skinSurface there, but the geometry makes this not ideal, as it prevents the transmission of light into the lightguides.

I won't burden you with the code, as it was/is one of my first "larger" projects and is quite... ugly. I was learning as I went, and did somethings in a rather inefficient and round-about way. I plan on cleaning it up, once I get everything working in it's present state. It's all functional, just inefficient.

Hopefully this clears up what I'm trying to do. I've tried a few more solutions since I posted earlier today, but none have worked yet. So any other suggestions would be lovely.

Cheers, Zach


 Add Message Add Message
to: "Re: G4LogicalBorderSurface in Assembly"

 Subscribe Subscribe

This site runs SLAC HyperNews version 1.11-slac-98, derived from the original HyperNews