Re: Sequential Tracking Method

From: Andrei Gheata <Andrei.Gheata_at_cern.ch>
Date: Wed, 26 Sep 2007 17:07:42 +0200


Hi Akira,

You are only partially right: FindNextBoundary (more precise FindNextBoundaryAndStep) can serve any raytracing purpose, but it is sequential by nature, because it needs geometry state initialized with a 3D point/direction from which it will propagate just to the first boundary encountered. Of course that no a-priori knowledge of the boundary sequence is considered (which may indeed improve tracking speed), but for a simple system it does not matter much. The expensiveness will come mostly from the level of detail you want to 'scan' your optical device with (light) rays.

Cheers,
Andrei

OKUMURA, Akira wrote:
> Hello ROOTers,
>
> I am planning to write a simple raytrace program using the geometry
> library. I found that FindNextBoundary could work as a primary function
> for raytracing. However it seems to be a non-sequential tracking
> calculation which checks all boundaries of volumes. (Actually I have not
> read the source in detail.)
>
> I would like to know if there is any method which can calculate tracking
> sequentially because non-sequential calculation will be very expensive
> for simple optical system,
>
> For instance, if I build a optical system which consists of two lenses
> and a focal plane, it will be as follows.
> /Top/Lens1
> /Top/Lens2
> /Top/FocalPlane
>
> First, rays pass through /Top/Lens1, and then pass through /Top/Lens2.
> Finally they stop at /Top/Focal/Plane. In advance, I know that rays
> always go through in this sequence. If there is any sequential
> calculation method, CPU cost will be reduced significantly.
>
> Sincerely
>
> OKUMURA, Akira oxon_at_icrr.u-tokyo.ac.jp
> Institute for Cosmic Ray Research, University of Tokyo
> 5-1-5 Kashiwanoha Kashiwa Chiba 277-8582 Japan
> Phone/Fax : +81 4-7136-3153
> Skype : okumura.akira
>
Received on Wed Sep 26 2007 - 17:07:50 CEST

This archive was generated by hypermail 2.2.0 : Fri Sep 28 2007 - 11:50:02 CEST