source: trunk/source/geometry/navigation/History@ 1222

Last change on this file since 1222 was 1058, checked in by garnier, 17 years ago

file release beta

File size: 37.9 KB
Line 
1$Id: History,v 1.132 2009/05/20 08:27:26 gcosmo Exp $
2-------------------------------------------------------------------
3
4 =========================================================
5 Geant4 - an Object-Oriented Toolkit for Simulation in HEP
6 =========================================================
7
8 Category History file
9 ---------------------
10This file should be used by G4 developers and category coordinators
11to briefly summarize all major modifications introduced in the code
12and keep track of all category-tags.
13It DOES NOT substitute the CVS log-message one should put at every
14committal in the CVS repository !
15
16 ----------------------------------------------------------
17 * Reverse chronological order (last date on top), please *
18 ----------------------------------------------------------
19
20May 20th, 2009 - P.Arce (geomnav-V09-02-05)
21-----------------------
22- Added method BuildContainerSolid() taking a solid as argument to
23 G4PhantomParameterisation. Added protection to GetMaterialIndex()
24 for zero index.
25
26May 18th, 2009 - T.Nikitina (geomnav-V09-02-04)
27---------------------------
28- Enhanced algorithm for 'FB_intersects' in order to speedup BrentLocator.
29- Fix in the usage of the geometrical tolerance in G4VIntersectionLocator
30 in method AdjustementOfFoundIntersection().
31
32May 13th, 2009 - J.Apostolakis (geomnav-V09-02-03)
33------------------------------
34- Fix in G4PathFinder: A geometry is at a boundary if its step is within
35 tolerance of the minimum step for any geometry.
36
37May 5th, 2009 - T.Nikitina (geomnav-V09-02-02)
38--------------------------
39- Fix in G4Navigator::ComputeStep() for the computation of rotation of the
40 'LocalExitNormal' in cases when DistanceToOut() returns non-valid normal
41 for optical photons in rotated solids. Addresses problem report #1059.
42
43February 26th, 2009 - T.Nikitina (geomnav-V09-02-01)
44--------------------------------
45- Fixed problem in G4BrentLocator::EstimateIntersectionPoint() responsible
46 for rare cases of negative steps.
47
48January 27th, 2009 - G.Cosmo (geomnav-V09-02-00)
49----------------------------
50- Added G4RegularNavigationHelper class, used by G4RegularNavigation for
51 counting the number of step lengths in each voxel of the regular structure
52 (by P.Arce).
53- Some code cleanup...
54
55December 11th, 2008 - T.Nikitina (geomnav-V09-01-10)
56--------------------------------
57- Reinstated G4MultiLevelLocator as the default locator to allow for proper
58 tuning of parameters in propagation in field and avoid CPU penalty currently
59 induced by default parameters.
60- Corrected text in exceptions in locators classes.
61
62November 14th, 2008 - T.Nikitina, J.Apostolakis (geomnav-V09-01-09)
63-----------------------------------------------
64- Introduced first implementation of new optional method in locator classes
65 AdjustementOfFoundIntersection() using surface-normal of the intersecting
66 solid to boost accuracy. Added the optional call to the new method in each
67 concrete locator.
68- Removed unnecessary accessors for Brent locator in G4PropagatorInField.
69- G4VoxelNavigation: implemented additional check when running in "check"
70 mode; if it is on the surface, ensure that it can move on next step;
71 either DistanceToIn(p,v) or DistanceToOut(p,v) should return a finite
72 value greater than the tolerance.
73
74November 10th, 2008 - G.Cosmo (geomnav-V09-01-08)
75-----------------------------
76- G4PathFinder: cleared unecessary calls to ComputeSafety() in ReLocate().
77
78October 28th, 2008 - T.Nikitina (geomnav-V09-01-07)
79-------------------------------
80- Moved method LocateIntersectionPoint() in G4PropagatorInField to a separate
81 class G4VIntersectionLocator, now allowing to use different location
82 algorithms: Brent, MultiLevel, Simple.
83- New classes: G4VIntersectionLocator, G4SimpleLocator, G4BrentLocator and
84 G4MultiLevelLocator.
85- Coworks with tag "field-V09-01-03".
86
87October 10th, 2008 - G.Cosmo (geomnav-V09-01-06)
88----------------------------
89- Introduced optional Boolean argument in G4Navigator::ComputeSafety() to
90 allow for computation of safety without modifying the state restoring of
91 the navigator.
92- Modified accordingly the following classes, for calls to ComputeSafety():
93 G4SafetyHelper, G4PathFinder (now calling ComputeSafety() with TRUE
94 argument to preserve navigator's state), G4MultiNavigator and
95 G4ErrorPropagationNavigator.
96
97May 5th, 2008 - T.Nikitina (geomnav-V09-01-05)
98--------------------------
99- Added Brent method for LocateIntersectionPoint() in G4PropagatorInField.
100 The Brent method is now used as default and can be switched off through
101 call to the proper accessor function SetBrentMethod().
102- Requires related update to G4ChordFinder in geometry/magneticfield module
103 included in tag "field-V09-01-02".
104
105April 29th, 2008 - M.Asai (geomnav-V09-01-04)
106-------------------------
107- G4PathFinder: commented out warning and exception in ComputeStep()
108 for step smaller than minimum threshold.
109
110April 28th, 2008 - G.Cosmo (geomnav-V09-01-03)
111--------------------------
112- Corrected condition for wrong evaluation order introduced in the
113 previous tag.
114
115March 13th, 2008 - G.Cosmo (geomnav-V09-01-02)
116--------------------------
117- Cleared compilation warnings in G4ReplicaNavigation on gcc-4.3.0 for
118 ambiguous use of parentheses in condition statements.
119
120January 24th, 2008 - T.Nikitina (geomnav-V09-01-01)
121-------------------------------
122- G4PropagatorInField: changed condition for 'ReEstimationEndPoint'
123 in order to better handle very strict parameters of propagation.
124 Also added more verbosity in case of error for negative step.
125 Fixes rare problem observed in production by ATLAS.
126
127January 22nd, 2008 - P.Arce (geomnav-V09-01-00)
128---------------------------
129- G4PhantomParameterisation:
130 o Bug fix in GetReplicaNo() to catch overflows in X and Y.
131 (on suggestion by S.Stute)
132 o Made CheckVoxelsFillContainer() visible in public interface.
133
134November 16th, 2007 - G.Cosmo (geomnav-V09-00-12)
135-----------------------------
136- Cleared compilation warnings for shadowing of variables in classes
137 within the module.
138
139November 14th, 2007 - G.Cosmo (geomnav-V09-00-11)
140-----------------------------
141- Reintroduced artificial push in G4ReplicaNavigation::ComputeStep().
142 Further investigation and eventually reimplementation of LevelLocate()
143 required to take into account point and direction ...
144
145November 14th, 2007 - G.Cosmo (geomnav-V09-00-10)
146-----------------------------
147- Trial to remove artificial push in G4ReplicaNavigation::ComputeStep().
148- Some minor cleanup.
149
150November 9th, 2007 - J.Apostolakis (geomnav-V09-00-09)
151----------------------------------
152- G4SafetyHelper: Improved ComputeSafety() not to call G4Navigator
153 if exactly on safety 'center'.
154- G4PathFinder: correction to debug code under #ifdef G4DEBUG_NAVIGATION.
155
156November 9th, 2007 - G.Cosmo (geomnav-V09-00-08)
157----------------------------
158- Fix in G4ReplicaNavigation::DistanceToOut() for exact classification of
159 the linear step for Cartesian case.
160- Made IdentifyAndPlaceSolid() method inlined in G4ParameterisedNavigation.
161- Minor cosmetics and cleanup.
162
163November 6th, 2007 - P.Arce (geomnav-V09-00-07)
164---------------------------
165- Optimisation in G4RegularNavigation: use voxelBox->DistanceToOut() instead
166 of ComputeStep() in ComputeStepSkippingEqualMaterials().
167- Some cleanup and proper formatting of error/warning messages.
168
169November 2nd, 2007 - J.Apostolakis (geomnav-V09-00-06)
170----------------------------------
171- Merging fixes in "geomnav-V09-00-03b" and "geomnav-V09-00-03c" on top
172 of tag "geomnav-V09-00-05".
173
174November 2nd, 2007 - J.Apostolakis (geomnav-V09-00-03c)
175----------------------------------
176- G4PathFinder:
177 o Added setting of 'fNoGeometriesLimiting' in DoNextCurvedStep().
178 o Check to verify that 'fNoGeometriesLimiting' is set by DoNext*Step methods.
179 o Revised data type of 'fNoGeometriesLimiting' to be a int, so that < 0
180 shows 'unset'.
181- G4PropagatorInField:
182 o Fixes for compilation of code under G4DEBUG_FIELD (problem report #982).
183 o Added extra check of method LocateIntersectionPoint() arguments.
184- Tag based on "geomnav-V09-00-03b".
185
186October 29th, 2007 - J.Apostolakis (geomnav-V09-00-03b)
187----------------------------------
188- G4PathFinder: first fix for problem of another process shortening steps
189 (between calls to ComputeStep by different processes in same step.)
190 I.e. First call to ComputeStep (geom 1) has proposed Step = 3.0 cm
191 Next call to ComputeStep (geom 2) has proposed Step = 1.0 cm
192 (e.g. Multiple Scattering)
193- Tag based on "geomnav-V09-00-03a".
194
195October 24th, 2007 - J.Apostolakis (geomnav-V09-00-05)
196----------------------------------
197- Merging fixes introduced in "geomnav-V09-00-03a" on top of
198 "geomnav-V09-00-04".
199
200October 24th, 2007 - J.Apostolakis (geomnav-V09-00-03a)
201----------------------------------
202- G4PathFinder: fix to now set 'fNoGeometriesLimiting' in DoNextLinearStep()
203 when WhichLimited() is not called, i.e. in case of one navigator
204 optimisation.
205- Tag based on "geomnav-V09-00-03".
206
207October 18th, 2007 - G.Cosmo (geomnav-V09-00-04)
208----------------------------
209- Added new specific navigation for regular structures and phantoms.
210 New classes: G4RegularNavigation, G4PhantomParameterisation (by P.Arce).
211 Added cases to G4Navigator. Added dependency on "materials" module.
212
213October 12th, 2007 - J.Apostolakis (geomnav-V09-00-03)
214----------------------------------
215- G4PathFinder: added new methods GetNumberGeometriesLimitingStep()
216 and GetMinimumStep() needed by G4CoupledTransportation to see whether
217 to relocate.
218
219September 25th, 2007 - G.Cosmo (geomnav-V09-00-02)
220------------------------------
221- Some code cleanup in G4PathFinder. Switch off additional optimisation
222 for safety in method DoNextLinearStep().
223- Set 'fRecomputeFactor' in G4SafetyHelper to 0.0, to switch off internal
224 optimisation and allow for reproducibility of steps (A.Howard).
225
226July 12th, 2007 - J.Apostolakis (geomnav-V09-00-01)
227-------------------------------
228- Restores fixes/improvements of geomnav-V08-03-07
229- G4PathFinder: includes fix for result of ObtainSafety(), used in
230 CoupledTransportation.
231
232July 12th, 2007 - J.Apostolakis (geomnav-V09-00-00)
233-------------------------------
234- G4PathFinder:
235 o Include correction to signature of method PrepareNewTrack().
236 (This was done on a branch for this class in order to keep only
237 development of geomnav-V08-03-06)
238- G4PropagatorInField:
239 o Included revisions and fixes for G4PropagatorInField of June 8th.
240- This tag is based on "geomnav-V08-03-06" and does NOT include the
241 revisions of "geomnav-V08-03-07".
242
243July 5th, 2007 - G.Cosmo
244------------------------
245- G4PathFinder:
246 o Corrected signature to method PrepareNewTrack().
247 Resolves linking problems detected on SUN-CC platform.
248- Changes included in tag "geomnav-V08-03-02c", included in relase 9.0.p01.
249
250June 8th, 2007 - T.Nikitina
251---------------------------
252- G4PropagatorInField:
253 o Put in the constructor creation of array of FieldTracks used in
254 LocateInterSectionPoint().
255 o Change in ReEstimateNewPoint() in order to handle cases with zero step
256 caused by diffCurve=0.
257 o In case of proposed step less than tolerance, now return 'kInfinity'
258 as per convention of geometry instead of 'DBL_MAX'.
259 (by J.Apostolakis, May 18th 2007)
260- Changes included in tag "geomnav-V08-03-02b", included in release 9.0.
261
262June 5th, 2007 - J.Apostolakis (geomnav-V08-03-07)
263------------------------------
264- G4PathFinder:
265 o New method to return the safety sphere last calculated for
266 a PreStep point (it could be a previous one - due to optimasation).
267 >> If last step(s) were smaller than safety, then for a linear
268 track (no field or no charge) Navigator's ComputeSafety is not
269 called. The older PreStep (previous step or some steps back
270 in case of many small steps) is stored for this - and provided.
271 o ComputeStep() still returns current PreStep point's safety (must).
272 o Revisions are to make this (used by CoupledTransportation) more
273 compatible with the old direct use of G4Navigator by G4Transportation.
274
275May 29th, 2007 - J.Apostolakis (geomnav-V08-03-06)
276------------------------------
277- G4Navigator
278 o Fixed **ComputeSafety**: wrong coordinates used (last tag only).
279 For certainty reinstated LocateGlobalPointWithinVolume (for now).
280 o Corrected calculation of fStepEndPoint (in ComputeStep)
281 for case of step not limited by geometry
282- G4PathFinder
283 o PrepareNewTrack: calls to re-initialise SafetyHelper (reset safety)
284 o ReLocate: Corrected check of move (avoid one side effect on stored safety)
285 --> ComputeSafety still results individual navigators' values.
286
287May 24th, 2007 - J.Apostolakis (geomnav-V08-03-05)
288------------------------------
289- G4PathFinder: 1 correction and 2 optimisations:
290 o PrepareNewTrack() clear safety - to avoid potential problems in overlaps.
291 o DoNextLinearStep() only calls ComputeStep() for a navigator whose safety
292 greater than the step.
293 o DoNextCurvedStep(), if there's one geometry, no longer calls
294 ComputeSafety() at start.
295- G4Navigator ComputeSafety:
296 o Corrected it to address use at non-endpoint
297 o Replaced call to LocateGlobalPointWithinVolume() with calls to
298 sub-navigators.
299
300May 21st, 2007 - G.Cosmo
301------------------------
302- Made 'fVerbose' protected in G4Navigator, reused in G4MultipleNavigator.
303- Some cleanup in G4MultipleNavigator implementation.
304- Make G4PathFinder singleton definition canonical.
305- Added method CheckPointExiting() in G4AuxiliaryNavServices utility
306 class (by P.Arce).
307
308May 19th, 2007 - J.Apostolakis (geomnav-V08-03-04)
309------------------------------
310- Corrections and additions in G4PathFinder:
311 1) Added calculation of start-point safety in DoNextCurvedStep
312 2) Corrected GetCurrentSafety() - uses mininum of 1)
313 3) Added method to obtain safety of one navigator (after call to all).
314 4) Deleted obsolete data member 'fMinSafety'.
315 5) If only one geometry, do not call WhichLimited in DoNextLinearStep (optimisation)
316 6) ComputeSafety: save the values of isotropic safety for each navigator
317
318May 18th, 2007 - A.Howard (geomnav-V08-03-03)
319------------------------
320- Fixed return value for G4PathFinder::ComputeStep in case of
321 step smaller than tolerance (now kInfinity): fixes one PathFinder issue (JA).
322- Added compiler flags for verbosity in G4PathFinder.cc
323- Added compiler flags for verbosity in G4MultiNavigator.cc
324
325May 18th, 2007 - G.Cosmo (geomnav-V08-03-02)
326------------------------
327- Use kAngTolerance and kRadTolerance from G4GeometryTolerance class.
328- Coworks with tag "global-V08-03-03".
329
330May 16th, 2007 - G.Cosmo (geomnav-V08-03-01)
331------------------------
332- Introduced new class G4ErrorPropagationNavigator, a specialised navigator
333 for performing double navigation in the detector geometry and on the
334 target surface for error propagation (by P.Arce).
335- Fixed bug in G4GeomTestSegment in case of TestPoint on the surface,
336 reducing cases of reported spurious overlaps.
337- Coworks with tag "global-V08-03-02".
338
339May 16th, 2007 - J.Apostolakis (geomnav-V08-03-00a)
340------------------------------
341- Moved to G4PathFinder version without extra prints
342
343April 26th, 2007 - G.Cosmo (geomnav-V08-03-00)
344--------------------------
345- Use call to G4GeometryTolerance instead of kCarTolerance where needed.
346- Revised data members in G4SafetyHelper to conform to convention.
347- Requires tag "global-V08-03-00" and related tag set.
348
349April 26th, 2007 - T.Nikitina (geomnav-V08-02-03)
350-----------------------------
351- Fixed case of out of range access in G4GeomTestSegment responsible for
352 crashes observed when recursive-grid test for overlaps was run.
353 Addressing problem report #784.
354
355April 20th, 2007 - G.Cosmo (geomnav-V08-02-02)
356--------------------------
357- Some cleanup and minor cosmetics ...
358
359April 12st, 2007 - V.Ivanchenko
360-------------------------------
361- G4SafetyHelper become a unique class, which can be accessed via
362 G4TransporationManager. Depending on type of navigation (single
363 world or multiple navigation) it uses mass navigator or G4PathFinder.
364 All calls from EM processes to geometry are provided by G4SafetyHelper.
365- G4TransportationManager: added G4SafetyHelper.
366- G4PathFinder: initialisation of G4SafetyHelper.
367- Tagged "geomnav-V08-02-02-beta2".
368
369March 31st, 2007 - J. Apostolakis
370---------------------------------
371- G4Navigator:
372 o New method CheckNextStep() makes a trial step, without
373 changing the state of the Navigator (to be verified).
374 It is a variant of ComputeStep, whose signature it shares.
375- Tagged "geomnav-V08-02-02-beta1".
376
377February 13th, 2007 - J.Apostolakis
378-----------------------------------
379- G4Navigator:
380 o Improvement for creating touchable history when located outside world.
381 Retain whether last point was located outside, and if so call default
382 TouchableHistory constructor (that initialised world to null).
383 NOTE: testing found problems with SteppingManager::SetInitialStep()
384 as the Vertex physical volume was not set. Protection is potentially
385 required, or bigger issue to be resolved.
386 Currently, changes in G4Navigator.hh,cc are safe, but the fix in .icc is
387 temporarly suspended and NOT included.
388- Attempted fix created Dec 7th, 2006
389
390February 13th, 2007 - J.Apostolakis (geomnav-V08-02-01)
391-----------------------------------
392- G4PropagatorInField:
393 o Implemented ClearPropagatorState() to clear all the track-dependent
394 state (incl. safety, zero-steps, loop flag ...).
395 ** Calling this is mandatory for each new track because in the case of
396 geometry overlaps, the safety can be easily inconsistent (and/or
397 incorrect) otherwise
398 ** Must be called from G4Transportation (or alternatives) !!
399- Fix created Jan 25th, 2007
400
401January 31st, 2007 - G.Cosmo (geomnav-V08-02-00)
402----------------------------
403- G4Navigator: forcing call to CheckOverlaps() on the current volume
404 before event abortion for cases of stuck tracks.
405- Requires tag "geommng-V08-02-00".
406
407November 23rd, 2006 - J.Apostolakis (geomnav-V08-01-08)
408-----------------------------------
409- G4PathFinder:
410 o Fix when report a problem only if move > safety (additional check).
411 o Revised condition for extra checking against safety.
412 o Many small and cosmetic changes in debug printing.
413
414November 18th, 2006 - J.Apostolakis (geomnav-V08-01-07)
415-----------------------------------
416- G4PathFinder:
417 o Fix for problem when step is fully taken.
418 Note: this occurs due to optimisation in PiF that avoids calling
419 G4(Multi)Navigator!!
420 o Function LimitedString( ELimited lim ) enables printing this enum
421 o Improved printing in IntersectChord. Deleted/simplified few prints in
422 ComputeStep().
423- G4MultiNavigator: cleanup, cosmetics
424
425November 13th, 2006 - G.Cosmo (geomnav-V08-01-06)
426-----------------------------
427- Fixed compilation warnings and some cleanup ...
428
429November 11th, 2006 - J.Apostolakis (geomnav-V08-01-05)
430-----------------------------------
431- G4PathFinder improvements for parallel Navigation
432 o ComputeStep method signature extended to add volume
433 o Use G4MultiNavigator for tracking in field.
434- G4MultiNavigator:
435 o Several fixes, primarily for taking care of condition of
436 geometry limited step.
437
438November 11th, 2006 - J.Apostolakis (geomnav-V08-01-04)
439-----------------------------------
440- G4PropagatorInField:
441 o Refined fix in LocateIntersectionPoint(), to subdivide
442 in case it cannot find intersection point quickly (T.Nikitina).
443 Second version, with several levels of cutting.
444 o NOTE: Special tags made (later) not including the Developments in
445 G4TransportationManager, G4PathFinder, G4SafetyHelper for parallel
446 navigation. i.e. - based on tag "geomnav-V08-01-03".
447
448November 11th, 2006 - J.Apostolakis
449-----------------------------------
450- Created G4MultiNavigator class and utilised it from G4PathFinder
451 to implement curved trajectory parallel navigation.
452
453November 10th, 2006 - J.Apostolakis (geomnav-V08-01-03)
454-----------------------------------
455- G4PropagatorInField:
456 o Fix in LocateIntersectionPoint(), to subdivide in case it cannot find
457 intersection point quickly (T.Nikitina).
458 First version, only one level of cutting
459 o NOTE: Special tags made (later) not including the Developments in
460 G4TransportationManager, G4PathFinder, G4SafetyHelper for parallel
461 navigation. i.e. - based on tag "geomnav-V08-01-02".
462
463November 9th, 2006 - J.Apostolakis
464-----------------------------------
465- G4SafetyHelper:
466 o Changed default value of 'fUseParallelGeometries' to 'false'.
467 This is the default, except when using parallel geometries.
468 Value 'true' will become the default.
469
470November 4th, 2006 - M.Asai
471---------------------------
472- G4TransportationManager:
473 o added new method SetWorldForTracking() to enable change of world from
474 the RunManager.
475
476October 31st, 2006 - J.Apostolakis
477----------------------------------
478- G4SafetyHelper
479 o Added new class variable 'fUseParallelGeometries', to enable
480 it to work call G4Navigator of Mass geometry directly, in
481 the case of single geometry (when G4PathFinder is disabled).
482 o Default value is currently 'true' --> for parallel navigation development.
483- G4PathFinder
484 o Improved the code that checks within relocation whether position
485 is proposed to be moved outside safety sphere from endpoint.
486
487October 26th, 2006 - G.Cosmo (geomnav-V08-01-02)
488----------------------------
489- G4Navigator:
490 o Added inline methods EnteredDaughterVolume() and ExitedMotherVolume() to
491 allow for verification of a point entering a daughter volume or exiting
492 the mother volume.
493 o Made LocateGlobalPointAndSetup() method virtual. Moved to non virtual
494 and inline LocateGlobalPointAndUpdateTouchableHandle() method.
495 o Moved 'fHistory' data member to protected to aloow for more complete
496 subclassing.
497 o Minor cosmetics to recently introduced printout diagnostics in
498 ComputeSafety() method.
499- G4TransportationManager:
500 o Added methods to access the list of the registered worlds.
501- NOTE: this tag does NOT include the recent developments introduced for
502 G4PathFinder. It resumes from tag "geomnav-V08-00-01"; anything else
503 introduced after it, except for changes in G4Navigator, is NOT included !
504
505October 25th, 2006 - J.Apostolakis
506----------------------------------
507- G4PathFinder: fixed initialisation of cached value for the
508 G4TransportationManager to cope with singletons.
509
510October 16th, 2006 - J.Apostolakis (geomnav-V08-01-01)
511----------------------------------
512- G4Navigator: moved debug printing behind fVerbose conditions
513
514October 12th, 2006 - J.Apostolakis (geomnav-V08-01-00)
515----------------------------------
516- New class G4SafetyHelper to aid multiple scattering inn
517 determining the correct Mass geometry step (via PathFinder)
518 and all-geometry safety.
519- Several revisions, fixes to G4PathFinder.
520
521June 8th, 2006 - J.Apostolakis (geomnav-V08-00-06)
522------------------------------
523- G4PathFinder:
524 o New method 'ComputeSafety' to compute safety at endpoint of last step.
525
526June 2nd, 2006 - J.Apostolakis (geomnav-V08-00-05)
527------------------------------
528- G4PathFinder:
529 o New method ReLocate() for non-Transportation classes to call when moving
530 the endpoint of a particle. Uses LocateGlobalPointWithinVolume() method
531 of the navigators.
532 o Small fixes and protection of debug printing with Verbose flag.
533 o Default verbose level is now 0.
534
535May 28th, 2006 - J.Apostolakis (geomnav-V08-00-04)
536------------------------------
537- G4PathFinder:
538 o Check whether a process shifted the position since the last step.
539 o Corrected checking for 'Unique', i.e. one process limiting step.
540 o Revised printing (more information, some protected by verbose flag).
541
542May 27th, 2006 - J.Apostolakis (geomnav-V08-00-03)
543------------------------------
544- G4PathFinder revised significantly:
545 o Workaround for problem of CreateHistory() when outside world.
546 o Revised for new counting of Navigator IDs (M.Asai).
547 o Added MovePoint() method that signals if it moved.
548 o Added state to cope with cases where a full step is taken,
549 i.e. to cope with steps that return kInfinity:
550 New state:
551 RelocatedPoint - to show if it is moved;
552 TrueMinStep - finite whereas reported can be kInfinity.
553 and to aid in clarifying the state of the (singleton) object:
554 LastStepNo - already kept in one method (static), now exposed;
555 CurrentStepNo - mostly for debugging and printing out.
556 o Small improvements in tests.
557
558May 23rd, 2006 - J.Apostolakis (geomnav-V08-00-02)
559------------------------------
560- Added new prototype class G4PathFinder to coupled navigation
561 in parallel geometries.
562
563May 22nd, 2006 - G.Cosmo (geomnav-V08-00-01)
564------------------------
565- Extended G4TransportationManager to handle multiple navigators.
566 Preserved interface for navigation in mass/tracking geometry.
567- Added activation flag to G4Navigator and related accessor methods.
568
569Feb 8th, 2006 - J.Apostolakis (geomnav-V08-00-00)
570-----------------------------
571- Addressing problem with convergence in LocateIntersectionPoint()
572 of G4PropagatorInField (problem identified by Atlas, observed when
573 requesting high precision, i.e. small values of eps_min/max, delta_one_step,
574 due e.g. to need for small delta_intersection):
575 o First solution by increasing maximum iterations (from 100 to 10,000).
576 o Until correct information can be returned, an Exception is thrown
577 in case of too many iterations.
578 o Warn in case over 1000 iterations, to let user see difficulty.
579- This fix is an interim solution, in lieu of improving the algorithm
580 for location (or returning correct incomplete progress).
581
582Nov 24th, 2005 - J.Apostolakis (geomnav-V07-01-02)
583------------------------------
584- Revised G4ParameterisedNavigation, to use new interface for
585 ComputeMaterial(). Now no longer needing 'Physical Touchable'.
586
587Sep 19th, 2005 - G.Cosmo (geomnav-V07-01-01)
588------------------------
589- G4DrawVoxels: removed unnecessary 'panic' message in ComputeVoxelPolyhedra()
590 and some code cleanup.
591
592Jul 25th, 2005 - G.Cosmo (geomnav-V07-01-00)
593------------------------
594- Some cleanup and cosmetic changes for Software Reference Manual.
595
596Jun 14th, 2005 - J.Apostolakis (geomnav-V07-00-00)
597------------------------------
598- Added ability to use Nested Parameterisations to Parameterised Navigation
599 Coworks with tag "geomvol-V07-00-01".
600
601Dec 2nd, 2004 - G.Cosmo (geomnav-V06-02-08)
602-----------------------
603- Implemented migration to <cmath> for standard mathematical functions.
604
605Nov 24th, 2004 - G.Cosmo (geomnav-V06-02-07)
606------------------------
607- Fix in G4ReplicaNavigation::DistanceToOutPhi() for the case of phi
608 sections on convex surfaces. Fixes problem report #651.
609
610Nov 19th, 2004 - J.Apostolakis (geomnav-V06-02-06)
611------------------------------
612- New access method in G4Navigator for SeverityOfZeroStepping().
613
614Nov 17th, 2004 - G.Cosmo (geomnav-V06-02-05)
615------------------------
616- Allow consecutive corrections for stuck tracks in G4Navigator::ComputeStep()
617 up to 10 times before aborting the event.
618
619Sep 28th, 2004 - G.Cosmo (geomnav-V06-02-04)
620------------------------
621- Invoke G4LogicalVolume::UpdateMaterial() instead of SetMaterial() for
622 parameterised navigation in G4Navigator and G4ParameterisedNavigation
623 (M.Asai).
624- Coworks with tag "geommng-V06-02-02".
625
626Sep 13th, 2004 - G.Cosmo (geomnav-V06-02-03)
627------------------------
628- G4Navigator: corrected computation of fGrandMotherExitNormal in ComputeStep()
629 in the case where a not valid exit-normal exists.
630
631Sep 11th, 2004 - G.Cosmo (geomnav-V06-02-02)
632------------------------
633- Dump out contents from the solid when a fatal G4Exception is thrown from
634 the navigators in ComputeStep().
635 Modified files G4NormalNavigation.cc, G4ParameterisedNavigation.cc,
636 G4ReplicaNavigation.cc, G4VoxelNavigation.cc.
637
638Aug 31st, 2004 - D.C.Williams (geomnav-V06-02-01)
639-----------------------------
640- G4GeomTestSegment: fix to correctly determine whether starting trajectory
641 is entering or exiting the solid when the starting point is on a surface.
642 Added additional tests on solid consistencies (from roundoff sometimes) to
643 avoid incorrect overlap warnings. Addresses problem reports #610 and #652.
644
645Jun 29th, 2004 - G.Cosmo (geomnav-V06-02-00)
646------------------------
647- Fixed zero step-length problem in G4ReplicaNavigation::ComputeStep()
648 for cases where different replica types are coincident. Resolves
649 problem report #633.
650- G4NormalNavigation: added extra verbosity to print out information
651 for each solid which returns a 'lowest-yet' step, including the
652 mother volume. It is activated by setting verbose level to 2 or
653 more (J.Apostolakis).
654
655Jun 18th, 2004 - G.Cosmo (geomnav-V06-01-03)
656------------------------
657- Enhanced check for null step in G4Navigator::ComputeStep().
658 Now attempting a corrective action after 10 consecutive zero steps.
659 Event gets aborted after 25 zero steps.
660
661Jun 15th, 2004 - G.Cosmo (geomnav-V06-01-02)
662------------------------
663- Relax exception in G4Navigator::ComputeStep() for stuck tracks.
664 Event gets aborted after 25 zero steps.
665
666Jun 11th, 2004 - G.Cosmo (geomnav-V06-01-01)
667------------------------
668- Added check to G4Navigator to count the number of steps with zero length
669 and issue an exception for tracks that get stuck in a loop (J.Apostolakis).
670- Modified GNUmakefile to define G4GEOMETRY_ALLOC_EXPORT flag for DLLs
671 build on Windows.
672
673May 17th, 2004 - G.Cosmo (geomnav-V06-01-00)
674------------------------
675- Added more verbosity on solids response for navigators (optimised/not
676 optimised) if "check_mode" state is combined with verbose level-1.
677
678Mar 11th, 2004 - G.Cosmo (geomnav-V06-00-02)
679------------------------
680- Added "check_mode" state for navigators. The state can be activated by
681 a new UI command (geometry/navigator/check_mode [true/false]) and will
682 force more strict and less tolerant checks in step/safety computation to
683 verify the correctness of solids' response in the geometry.
684- Reorganised verbosity levels. Added more useful information activated
685 when in G4VERBOSE mode and verbosity level selected.
686 Fixed output formatting when entering/exiting verbose blocks.
687
688Feb 27th, 2004 - G.Cosmo (geomnav-V06-00-01)
689------------------------
690- G4Navigator.cc:
691 o Fixed old outstanding bug in ComputeStep() for the location of the
692 the local point in the calculation of a valid exit normal. (V.Grichine)
693
694Feb 9th, 2004 - J.Apostolakis (geomnav-V06-00-00)
695------------------------------
696- G4PropagatorInField.cc:
697 o ReEstimateEndpoint: Changed to cope with a failure of AccurateAdvance,
698 by calling it iteratively up maximum 20 times.
699 o SetVerboseLevel, now forwards the verbosity (minus 3) to integration driver
700
701Dec 11th, 2003 - J.Apostolakis (geomnav-V05-02-15)
702------------------------------
703- G4PropagatorInField.cc:
704 o LocateIntersectionPoint: Refined re-setting of finalSection.
705 --> Endpoint recalculation is returned only for final section.
706 (trial fix in -14 is replaced by above code)
707 o Fixed ReEstimateEndPoint which ignored return code of AccurateAdvance
708 and moved to short end-point for long requests
709 It now leaves the endpoint unchanged, when it cannot improve it.
710 o Few format changes for PrintStatus
711
712Dec 10th, 2003 - J.Apostolakis (geomnav-V05-02-14)
713------------------------------
714- G4PropagatorInField.cc on top of latest (not 1.7):
715 o Fix for the case where two previous corrections are 'operational'
716 Problem if the current endpoint is not the final one, and it has been
717 recalculated, and we need to go beyond the current section to the
718 final one -- the recalcuted endpoint no longer valid!
719
720Dec 10th, 2003 - J.Apostolakis (geomnav-V05-02-13)
721------------------------------
722- G4PropagatorInField.cc:
723 o Gone back to version 1.7, without the fix in LocateIntersectionPoint
724 for the "long-standing error".
725
726Dec 5th, 2003 - G.Cosmo - (geomnav-V05-02-12)
727------------------------
728- G4TransportationManager.cc:
729 o removed initialisation of allocators for navigation levels, where they
730 were introduced as workaround for solving static initialisation a long
731 time ago. Now moved to "volumes" module, where they should belong, in
732 G4TouchableHistory.cc.
733- Restored original unit-tests, using inherited navigator.
734 --> Requires geomvol-V05-02-08
735
736Dec 4th, 2003 - J.Apostolakis (geomnav-V05-02-11)
737------------------------------
738- G4PropagatorInField.cc
739 o Corrected placement of #endif for two #ifdef VERBOSE
740
741Dec 2nd, 2003 - J.Apostolakis (geomnav-V05-02-10)
742------------------------------
743- G4PropagatorInField[.hh.cc]:
744 o Fixed LocateIntersectionPoint for long-standing error.
745 A section of the chord was not considered in use case where
746 a previous chord at first appeared to have an intersection, but did not.
747
748Nov 26th, 2003 - J.Apostolakis (geomnav-V05-02-09)
749------------------------------
750- G4PropagatorInField[.hh.cc]:
751 o Added argument Method LocateIntersectionPoint G4bool& recalculatedEndPt
752 to return 'true' if the endpoint has been recalculated.
753 This fixes a problem that can occasionally cause the skipping of a volume
754 boundary - in the case when a re-integration was done near a boundary,
755 because the new endpoint was previously not passed back.
756 o ComputeStep also changed to accept above recalculation.
757 o New method GetVerboseLevel(), closer to std naming than Verbose()
758
759Nov 14th, 2003 - J.Apostolakis (geomnav-V05-02-08)
760------------------------------
761- Retagged the files of tag "geomnav-V05-02-07", due to tagging with same
762 name incorrectly files in another directory and, as such confusing Bonsai.
763
764Nov 13th, 2003 - J.Apostolakis (geomnav-V05-02-07)
765------------------------------
766- G4PropagatorInField[.hh.icc.cc]:
767 o Pass safety sphere information to G4ChordFinder for optimisation
768 o Including G4ChordFinder.hh only in .cc file
769- Requires and coworks with "field-V05-02-08" tag.
770
771
772Nov 10th, 2003 - G.Cosmo (geomnav-V05-02-06)
773------------------------
774- G4Navigator[.hh.icc.cc] - methods review:
775 o Removed obsolete methods: IsExitNormalValid(), GetLocalExitNormal().
776 o Renamed method LocateGlobalPointAndSetup(p,v,history) to
777 ResetHistoryAndLocate(p,v,history).
778 o Moved to protected the following methods: GetCurrentLocalCoordinate(),
779 ComputeLocalPoint(), ComputeLocalAxis(), NetTranslation(),
780 NetRotation(), EnteredDaughterVolume().
781 o Fixed consistency of inline/not-inline implementations of methods.
782- Coworks with tag "tracking-V05-02-03".
783
784Nov 6th, 2003 - J.Apostolakis (geomnav-V05-02-05)
785-----------------------------
786- G4PropagatorInField[.hh.icc.cc]:
787 o Implements move of EpsilonMin / Max to G4FieldManager.
788- Requires and coworks with "field-V05-02-04" or later tag.
789
790Nov 6th, 2003 - G.Cosmo (geomnav-V05-02-04)
791-----------------------
792- G4Navigator[.hh.icc.cc]:
793 o Made relevant methods virtual to verify performance impact.
794 If tests will behave reasonably, a further refinement in the
795 design of the class will be applied, in view of a more consistent
796 design review next year.
797
798Nov 3rd, 2003 - G.Cosmo (geomnav-V05-02-03)
799-----------------------
800- Code cleanup and headers inclusion review
801 (replaced by forward declarations where necessary).
802- Added build system to tests. Cleared compilation warnings.
803
804Oct 29th, 2003 - J.Apostolakis (geomnav-V05-02-02)
805------------------------------
806- G4PropagatorInField:
807 Added option to turn On/Off the optimisation of using the safety
808 in calling G4Navigator.
809- Unit tests: moved test testG4NavigatorX, X=1,2,3,4,5,6 here from
810 "volumes" module.
811
812Oct 24th, 2003 - G.Cosmo (geomnav-V05-02-01)
813------------------------
814- Migrated calls to G4Exception to new scheme.
815- Fixed compilation warning in G4PropagationInField.
816
817Sep 29th, 2003 - G.Cosmo (geomnav-V05-02-00)
818------------------------
819- Created.
820 Imported classes from "volumes", "management" and "verification" modules:
821 G4AuxiliaryNavServices[.hh.icc] - from geometry/volumes
822 G4GeometryMessenger[.hh.cc] - " "
823 G4Navigator[.hh.icc.cc] - " "
824 G4NormalNavigation[.hh.icc.cc] - " "
825 G4ParameterisedNavigation[.hh.icc.cc] - " "
826 G4PropagatorInField[.hh.icc.cc] - " "
827 G4ReplicaNavigation[.hh.icc.cc] - " "
828 G4TransportationManager[.hh.icc.cc] - " "
829 G4VoxelNavigation[.hh.icc.cc] - " "
830 G4DrawVoxels[.hh.cc] - from geometry/management
831 G4GeomTest*[.hh.cc] - from geometry/verification
832- Cleared call to PV->Setup() according to changes in G4VPhysicalVolume.
833 Affected files: G4Navigator[.icc.cc], G4ParameterisedNavigation[.icc.cc],
834 G4VoxelNavigation[.icc.cc], G4ReplicaNavigation[.icc.cc],
835 G4NormalNavigation[.icc.cc].
836- G4DrawVoxels: retrieve top transformation through touchable history in
837 method DrawVoxels(). Removed old method GetAbsoluteTransformation().
838- G4GeomTestErrorList.cc: retrieve top transformation through touchable
839 history in method FindGlobalCoordinateSystem().
840
841+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
842Imported History file from old geometry/verification module
843+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
844
845May 20th, 2003 G.Cosmo (geomver-V05-01-00)
846- G4GeomTestVolume[.hh.cc]:
847 o Added methods TestRecursiveLine() and TestRecursiveCylinder() for
848 allowing recursion on line_test and cylinder_test respectively.
849 o Introduced ability to control depth and starting level of recursion.
850
851Jul 30th, 2002 G.Cosmo (geomver-V04-01-00)
852- G4GeomTestVolume.cc: fixed recursive call to G4GeomTestVolume passing also
853 'tolerance' as argument in the recursive test algorithm.
854
855Apr 19th, 2002 G.Cosmo (geomver-V04-00-00)
856- Moved inline constructors and destructors to no inline.
857 Affected files: G4GeomTestStreamLogger[.hh.cc].
858
859Oct 24th, 2001 G.Cosmo (geomver-V03-02-02)
860- Fixed compilation error and warnings on HP-aCC. Modified files:
861 G4GeomTestVolume.cc, G4GeomTestStreamLogger.cc.
862
863Oct 24th, 2001 G.Cosmo (geomver-V03-02-01)
864- Moved messenger to geometry/volumes and renamed G4GeometryMessenger.
865- Removed dependencies from intercoms and geometry/volumes.
866
867Oct 22nd, 2001 G.Cosmo (geomver-V03-02-00)
868- Added "/geomtest/tolerance" command to set custom error tolerance.
869 Added Set/GetTolerance() methods to G4GeomTestVolume class.
870- Introduced additional diagnostics in G4GeomTestStreamLogger to report
871 in case no intersections/overlaps are detected.
872
873Oct 16th, 2001 G.Cosmo
874- Added messenger for geometry overlaps testing.
875- General source code formatting.
876- G4TestGeom* classes implementation by D.C.Williams (UCSC, BaBar).
Note: See TracBrowser for help on using the repository browser.