source: trunk/source/geometry/volumes/History @ 850

Last change on this file since 850 was 850, checked in by garnier, 16 years ago

geant4.8.2 beta

File size: 39.1 KB
Line 
1$Id: History,v 1.153 2008/08/19 15:32:14 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
20Aug 19th, 2008      G.Cosmo - geomvol-V09-01-02
21- Restored names of methods DumpInfo() to G4LogicalSkinSurface and
22  G4LogicalBorderSurface.
23
24Jul 16th, 2008      P.Gumplinger - geomvol-V09-01-01
25- Change the name of the method DumpInfo() to DumpTableInfo()
26  in G4LogicalSkinSurface and G4LogicalBorderSurface.
27
28Feb 4th, 2008       I.Hrivnacova - geomvol-V09-01-00
29- Fixed problem of double-deletion of rotation matrix in destructor
30  of G4AssemblyVolume.
31
32Nov 16th, 2007      G.Cosmo - geomvol-V09-00-01
33- Added inline specification to methods in G4AssemblyTriplet class.
34
35Oct 12th, 2007      P.Gumplinger - geomvol-V09-00-00
36- Minor cleanup: moved typedef to begin of include files and rename to
37  theSkinSurfaceTable in G4LogicalBorderSurface and G4LogicalSkinSurface classes.
38- Added explicit initialisation of first volume entry to zero in
39  G4TouchableHistory constructor, to ensure correct behavior for 'out-of-world'
40  touchable handle. (J.Apostolakis)
41
42May 11th, 2007      G.Cosmo - geomvol-V08-03-00
43- Use call to G4GeometryTolerance instead of kCarTolerance in
44  G4ReflectionFactory.
45- Requires tag "global-V08-03-00" and related tag set.
46
47Apr 11th, 2007      G.Cosmo - geomvol-V08-02-02
48- More extensions to the CheckOverlaps() algorithm:
49  o Added possibility to define a tolerance for reporting overlaps; added
50    new argument to signature, by default tolerance is set to zero.
51  o Optimised implementation for detecting daughter volumes which are
52    totally overlapping.
53  o Added check on current volume to optimise and correctly handle the
54    case of explicit call of the method when geometry is constructed.
55
56Mar 23rd, 2007      G.Cosmo - geomvol-V08-02-01
57- Extended CheckOverlaps() algorithm, detect also cases of daughter volumes
58  which are totally overlapping. Made warning message message more clear.
59
60Jan 31st, 2007      G.Cosmo - geomvol-V08-02-00
61- Added flag for controlling verbosity to CheckOverlaps() method for
62  G4PVPlacement and G4PVParameterised. By default, verbosity is ON.
63- Requires tag "geommng-V08-02-00".
64
65Nov 10th, 2006      G.Cosmo - geomvol-V08-01-00
66- Use 'direct' rotation/translation instead of 'frame' rotation/translation
67  in concrete CheckOverlaps() method of G4PVPlacement and G4PVParameterised
68  volumes. Fixes a problem reported for wrong transformation associated
69  to overlap-check in displaced boolean solids (V.Grichine).
70- Updated unit test 'testG4NavigationHistory': added test for NULL
71  navigation-history (J.Apostolakis).
72
73May 5th, 2006       G.Cosmo - geomvol-V08-00-04
74- G4AssemblyVolume:
75  o Corrected decomposition of transformation in G4AssemblyVolume.
76  o Added methods GetVolumesIterator() and TotalImprintedVolumes() for
77    accessing the list of physical-volumes imprinted
78  o Cleaned up comments and descriptions.
79- Corrected conditions for overlap check in G4PVPlacement constructors.
80
81May 2nd, 2006       G.Cosmo - geomvol-V08-00-03
82- G4AssemblyVolume: now G4AssemblyVolume can support assembly of assemblies
83  and reflections. Reviewed and modified MakeImprint() methods to act
84  recursively (kind contribution of I.Hrivnacova).
85- Extended overlaps check also for reflection of placements.
86- Moved G4AssemblyTriplet class from 'management' module.
87- Protect against checking overlaps on world volume placement ...
88- Requires tag "geommng-V08-00-04".
89
90Apr 4th, 2006       G.Cosmo - geomvol-V08-00-02
91- Moved G4VNestedParameterisation and G4VVolumeMaterialScanner classes to
92  'management' module, to support material scanning in G4Region.
93- Requires tag "geommng-V08-00-01".
94
95Mar 15th, 2006      G.Cosmo - geomvol-V08-00-01
96- G4AssemblyVolume: added default boolean argument to MakeImprint()
97  methods to allow for optional check for overlaps of constituent volumes.
98
99Dec 20th, 2005      G.Cosmo - geomvol-V08-00-00
100- G4AssemblyVolume: fixed initialisation of names for placed volumes
101  which was corrupted after migration to <sstream> as side effect.
102
103Nov 24th, 2005      J. Apostolakis - geomvol-V07-01-05
104- Revised implementation of G4VNestedParameterisation,
105  taking out use of G4PhysicalTouchable.
106- Added implementations of virtual methods to identify materials
107  for nested parameterisations.
108- Removed G4PhysicalTouchable helper class.
109
110Nov 16th, 2005      J. Apostolakis - geomvol-V07-01-04
111- Corrections to tag below:
112  o Fixed G4PVPlacement's IsRegularStructure() method.
113  o Added missing methods for regular-structures to G4PhysicalTouchable.
114
115Nov 11th, 2005      J. Apostolakis - geomvol-V07-01-03
116- Added methods to identify regular structures in physical-volume derived
117  classes (replicas, parameterised volumes, placements).
118  New virtual methods implemented:
119   - IsRegularStructure()     [from G4VPhysicalVolume, defined in Replica]
120   - GetRegularStructureId()
121  Note that G4PVPlacement always return 'false' and 0 respectively.
122  New method defined for Replicas:
123   - SetRegularStructureId()  virtual
124
125Nov 9th, 2005       G. Cosmo - geomvol-V07-01-02
126- Added fake default constructor for concrete types of volumes (placements,
127  parameterised and replica), for usage of direct object persistency.
128- Implemented migration to <sstream> for affected classes: G4AssemblyVolume.
129
130Oct 19th, 2005      G. Cosmo - geomvol-V07-01-01
131- Introduced first implementation for optional check of overlaps at
132  construction to G4PVPlacement and G4PVParameterised volumes. Default
133  resolution of 1000 points is defined for the check.
134  The check is disabled by default.
135- Introduced method CheckOverlaps(p) for placements and parameterised
136  volumes. The resolution for the check can be specified providing the
137  number of points wished to be generated.
138- Updated unit test for G4ReflectedSolid.
139
140Jul 25th, 2005      G. Cosmo - geomvol-V07-01-00
141- Cleanup and fixes in use of inline methods in G4VNestedParameterisation
142  and G4PhysicalTouchable.
143
144Jun 14th, 2005      J. Apostolakis - geomvol-V07-00-01
145- Added G4VNestedParameterisation with ability to use parent information
146  to compute/change material.
147- Added G4PhysicalTouchable class to enable this type of parameterisation.
148  This class is an implementation class only, and its name especially
149  and potentially other aspect is/are likely to be changed.   
150  ---> A revision of the interface of G4VPVParamerisation can provide this
151       capability in future, in a simpler way.
152  This tag coworks with "geomnav-V07-00-00".
153
154Jun 6th, 2005       G. Cosmo - geomvol-V07-00-00
155- Moved constructors/destructors and operators for G4NavigationLevelRep
156  and G4NavigationLevel to .cc file and not inlined.
157
158Dec 2nd, 2004       G. Cosmo - geomvol-V06-02-01
159- Implemented migration to <cmath> for standard mathematical functions.
160
161Sep 7th, 2004       G. Cosmo - geomvol-V06-02-00
162- G4ReflectionFactory.cc: added automatic reflection for visualization
163  attributes, biasing weights and regions associated to the logical volume.
164
165Jun 9th, 2004       G. Cosmo - geomvol-V06-01-03
166- Adopt G4DLLIMPORT/G4DLLEXPORT technique to handle extern simbols for
167  allowing support of DLLs on Windows.
168- Coworks with "global-V06-01-02b".
169
170Jun 7th, 2004       G. Cosmo - geomvol-V06-01-02
171- Export extern symbols for allowing support of DLLs on Windows.
172  Modified files: G4NavigationLevel.icc, G4NavigationLevelRep.icc.
173- Coworks with "global-V06-01-02a".
174
175May 19th, 2004      G. Cosmo - geomvol-V06-01-01
176- Added CleanSurfaceTable() static methods in G4LogicalBorderSurface and
177  G4LogicalSkinSurface classes for the clearing of the surface tables in
178  case of dynamic geometries (by T.MacPhail).
179
180May 13th, 2004      G. Cosmo - geomvol-V06-01-00
181- Imported G4ReflectionFactory and unit test 'testG4ReflectedSolid' from
182  module "solids/Boolean".
183- Enhanced G4ReflectionFactory to support reflection of divided volumes
184  (courtesy of I.Hrivnacova). Added Divide(...) set of methods.
185- Coworks with tags: geommng-V06-01-00, geomdiv-V06-01-00 and
186                     geom-bool-V06-01-00.
187
188March 4th, 2004     G. Cosmo - geomvol-V06-00-01
189- G4NavigationHistory.icc: fixed bug in NewLevel() causing segmentation
190  violation for cases of geometry with deep nested levels. Fixes problem
191  report #597. (Thanks to A.Zoglauer who reported this)
192
193January 19th, 2004  G. Cosmo - geomvol-V06-00-00
194- G4AssemblyVolume.cc: fixed initial value for 'numberOfDaughters' of
195  imprinted volumes copy-numbers. Fixes problem report #566.
196
197December 5th, 2003  G. Cosmo - geomvol-V05-02-08
198- G4TouchableHistory.cc: added initialisation of allocators for navigation
199  levels, moved from G4TransportationManager, where they were introduced
200  as workaround for solving static initialisation a long time ago.
201
202December 4th, 2003  G. Cosmo - geomvol-V05-02-07
203- G4NavigationHistory[.icc.cc]: fixed redundant calls and initialisations.
204- G4NavigationLevel.icc, G4NavigationLevelRep.icc: fixed implementation of
205  operator=() for inlining.
206
207December 1st, 2003  G. Cosmo - geomvol-V05-02-06
208- G4LogicalBorderSurface[.hh.icc.cc], G4LogicalSkinSurface[.hh.icc.cc]:
209  o modified to use G4SurfaceProperty instead of G4OpticalSurface.
210    Requires tag "materials-V05-02-00".
211    Requires tag "geommng-V05-02-05".
212- Updated unit tests to use derived navigator.
213
214November 17th, 2003  G. Cosmo - geomvol-V05-02-05
215- Added protection to placement and replica constructors for cases
216  where a volume is placed inside itself.
217
218November 10th, 2003  G. Cosmo - geomvol-V05-02-04
219- Migrated unit tests to new G4Navigator interface.
220
221November 2nd, 2003  G. Cosmo - geomvol-V05-02-03
222- Code cleanup and headers inclusion review (replaced by forward
223  declarations where necessary).
224
225October 23rd, 2003  G. Cosmo - geomvol-V05-02-02
226- Migrated calls to G4Exception to new scheme.
227
228September 30th, 2003  G. Cosmo - geomvol-V05-02-01
229- Logical reorganisation and restructure of modules.
230  Moved files to geometry/management:
231    G4BlockingList[.hh.icc.cc]
232    G4IdentityTrajectoryFilter[.hh.cc]
233    G4VCurvedTrajectoryFilter[.hh.cc]
234  Moved files to new module geometry/navigation:
235    G4AuxiliaryNavServices[.hh.icc.cc]
236    G4GeometryMessenger[.hh.cc]
237    G4Navigator[.hh.icc.cc]
238    G4NormalNavigation[.hh.icc.cc]
239    G4ParameterisedNavigation[.hh.icc.cc]
240    G4PropagatorInField[.hh.icc.cc]
241    G4ReplicaNavigation[.hh.icc.cc]
242    G4TransportationManager[.hh.icc.cc]
243    G4VoxelNavigation[.hh.icc.cc]
244  Imported files from geometry/management:
245    G4AssemblyVolume[.hh.icc.cc]
246    G4PVParameterised[.hh.cc]
247    G4PVPlacement[.hh.cc]
248    G4PVReplica[.hh.cc]
249- Removed implementation of method Setup() and updated initialisation of
250  data, according to changes in the base class G4VPhysicalVolume.
251  Affected classes: G4PVPlacement, G4PVReplica.
252- Updated GNUmakefile in test directory.
253
254September 12th, 2003  J. Apostolakis - geomvol-V05-02-00
255- G4PropagatorInField.cc:
256  o Made optional the printing of information on 'looping' particles.
257    It is now controlled by the verbose flag.
258    Addresses CMS request in problem report #509.
259
260June 25th, 2003     G. Folger - geomvol-V05-01-04
261- Added disclaimer of liability where needed.
262
263June 21st, 2003     J. Apostolakis - geomvol-V05-01-03
264- G4PropagatorInField (the tag requires "field-V05-01-05"):
265  Likeliest to cause effect on Users is this:
266  *************************************************************************
267  * Changed default value of "maximum step count" to 1,000 (from 10,000)  *
268  *   --> this may cause more particles to be recognised to loop earlier, *
269  *          as this parameter controls this too.                         *
270  *************************************************************************
271  Also neccessary fixes and improvements:
272   1) Added new method FindAndSetFieldManager() to find the current field manager
273        and set it for the Propagator.
274   2) Added new method SetDetectorFieldManager(),
275         so as to have it updated when the global field manager is changed.
276   3) Added new state variable to insure that the current field Manager
277         has been set for the current step
278      The flag ensures that the method FindAndSetFieldManager() is always
279      called once for each call to ComputeStep().
280 - G4TransportationManager: corrected the method SetFieldManager().
281   It now messages the current global PropagatorInField to notify it
282 - Changes from "g4std" to <std> incorporated.
283
284May 26th, 2003      J. Apostolakis - geomvol-V05-01-02
285- G4PropagatorInField:  use safety in G4PropagatorInField.
286    (Adds to the state of this class).
287  Reinstates the changes in "geomvol-V04-01-08"
288
289May 20th, 2003      G. Cosmo - geomvol-V05-01-01
290- G4GeometryMessenger[.hh.cc]:
291  o Added new commands for controlling geometry overlaps: added recursion
292    to line_test and cylinder_test; added possibility to customise the
293    resolution and shape of grid/cylinder for the test; added ability to
294    select depth of recursion in the geometry tree.
295  o Added explicit call to OpenGeometry() in method CheckGeometry() to
296    force cleanup of voxelisation when command navigator/reset is called.
297- Coworks with tag "geomver-V05-01-00" for geometry/verification.
298- Does NOT include changes in "geomvol-V04-01-08".
299
300May 8th, 2003       G. Cosmo - geomvol-V05-01-00
301- G4PropagatorInField.cc: fix in ComputeStep() to avoid step computation
302  if proposed step length is too small (less than kCarTolerance).
303  Fixes problem report #485.
304- Does NOT include changes in "geomvol-V04-01-08".
305
306Mar 31st, 2003      G. Cosmo - geomvol-V05-00-03
307- Fixed trivial strict pedantic warnings.
308- Does NOT include changes in "geomvol-V04-01-08".
309
310Mar 17th, 2003      G. Cosmo - geomvol-V05-00-02
311- G4Navigator[.hh.cc]: added 'inline' specifier in declaration of
312  method LocateGlobalPointAndUpdateTouchableHandle().
313  Removed redundant calculation of localPoint in method
314  LocateGlobalPointWithinVolume()
315- G4GeometryMessenger[.hh.cc]: added UI command for setting navigator
316  verbosity at run-time (/geometry/navigator/verbose [n], n in [0..4]).
317- G4ReplicaNavigation.icc: fixed debug statement in VoxelLocate().
318- G4VoxelNavigation.cc: fixed debug statement in destructor.
319- Does NOT include changes in "geomvol-V04-01-08".
320
321Mar 5th, 2003       G. Cosmo - geomvol-V05-00-01
322- G4NavigationHistory.icc: fix in  methods Clear() and SetFirstEntry().
323  Correctly initialise navigation levels. Resolves discrepancy in the
324  copy number assigned to the world volume, if retrieved through the
325  touchable or explicitely through the physical volume.
326- Does NOT include changes in "geomvol-V04-01-08".
327
328Feb 6th, 2003       G. Cosmo - geomvol-V05-00-00
329- Fix in G4GeometryMessenger to check for geometry closed when commands
330  are applied. Command /geometry/navigator/reset and test commands apply
331  only when system is in "Idle" state.
332- G4VCurvedTrajectoryFilter[.hh.cc]: fixed initialisation of data member
333  in constructor. Fixed comments layout for Software Reference Manual.
334- G4IdentityTrajectoryFilter[.hh.cc]: fixed comments layout for
335  Software Reference Manual.
336- Does NOT include changes in "geomvol-V04-01-08".
337
338Nov 30th, 2002      S. Sadilov - geomvol-V04-01-09
339- Small correction on the top of "geomvol-V04-01-07a" in files:
340    G4IdentityTrajectoryFilter.cc
341    G4VCurvedTrajectoryFilter.cc
342  to fix cout/G4cout, endl/G4endl mistakes.
343- Does NOT include changes in "geomvol-V04-01-08".
344
345Nov 29th, 2002      J. Apostolakis - geomvol-V04-01-08
346- G4PropagatorInField:  use safety in G4PropagatorInField.
347    (Adds to the state of this class).
348
349Nov 29th, 2002      S. Sadilov - geomvol-V04-01-07a
350- Minor corrections (cout/G4cout, endl/G4endl) to files
351  G4IdentityTrajectoryFilter.cc G4VCurvedTrajectoryFilter.cc
352
353Nov 27th, 2002      G. Cosmo - geomvol-V04-01-07
354- G4BlockingList.cc: fixed initialisation of fBlockTagNo to 1.
355  Fixes warnings reported by Valgrind to G4BlockingList, G4VoxelNavigation
356  and G4ParameterisedNavigation.
357
358Nov 19th, 2002      J. Generowicz - geomvol-V04-01-06
359- Created G4IdentityTrajectoryFilter, making G4VCurvedTrajectoryFliter
360  truly abstract.
361
362Nov 8th, 2002       J. Generowicz
363- Introduced G4VCurvedTrajectoryFilter, and gave PIF means of
364  manipulating and communicating with it.
365
366Oct 29th, 2002       J. Apostolakis - geomvol-V04-01-05
367- G4PropagatorInField
368  Re-introduced memory of Charge Mass and Momentum into PropagatorInField,
369  in order for it to message the correct ChordFinder at each step with this
370  information.  It now does this task.
371
372Aug  6th, 2002       G. Cosmo - geomvol-V04-01-04
373- Formatting cleanup in source implementation files.
374
375Jul 29th, 2002       G. Cosmo - geomvol-V04-01-03
376- G4PropagatorInField[.hh.icc.cc]:
377  Restored call to GetChordFinder()->SetChargeMomentumMass() in method
378  SetChargeMomentumMass(), as was originally in release 4.1.
379  All modifications introduced in tag "geomvol-V04-00-11" have now been removed.
380
381Jul 29th, 2002       G. Cosmo - geomvol-V04-01-02
382- G4PropagatorInField.cc:  (J.Apostolakis)
383  o Restored ComputeStep() as it was before tag "geomvol-V04-00-11", by
384    removing call to GetChordFinder()->SetChargeMomentumMass().
385    This call was responsible for failure of unit tests, where no field strength
386    was observed in some cases.
387  o Set 'fNoZeroStep' to zero if (fNoZeroStep > fAbandonThreshold_NoZeroSteps)
388    at the end of ComputeStep(). Fixes problem report from P.M.DeFreitas
389    occurring in Mokka (Tesla), when reading primaries from their Pythia files.
390- G4PropagatorInField[.hh.cc]:
391  o Removed not-implemented constructor taking G4Navigator* as argument.
392  o Get rid of static const data for default epsilonStep size.
393  o Initialise all data members in constructor !
394  o Code cleanup.
395
396Jul 24th, 2002       G. Cosmo - geomvol-V04-01-01
397- Removed static initialisations of data of G4FieldManager.
398  Coworks with tag "field-V04-01-01".
399
400Jul 23rd, 2002       G. Cosmo - geomvol-V04-01-00
401- Some code cleanup and cosmetics...
402
403Jun 18th, 2002       J. Apostolakis - geomvol-V04-00-11
404- G4PropagatorInField.cc
405  o Fix for messaging incorrect ChordFinder with Mass, Charge, Momentum.
406   ( Problem seen for multiple FieldManagers - reported by Grahame Blair )
407
408Jun 13th, 2002       J. Apostolakis - geomvol-V04-00-10
409- G4Navigator.cc
410  o Fix for navigation problem (dereference null volume pointer) in exampleN05
411     caused by ExitNormal fix.
412
413Jun  3rd, 2002       G. Cosmo - geomvol-V04-00-09
414- G4Navigator[.hh.icc.cc]:
415  o Cosmetics for Software Reference Manual and formatting.
416  o Fixed few cases of endl/G4endl mystypes...
417
418May 31st, 2002      J. Apostolakis - geomvol-V04-00-08
419- G4Navigator.cc:
420  o Corrections for problem report #351, #284 concerning ExitNormal:
421     - using Daugther's solid preferentially (if applicable)
422     - adjusting fEntering/fEnteredDaugther in LocateGlobalPointAndSetup
423         to enable this
424     - correcting location of point for which exit normal is requested
425         for 'non-convex point' on solid boundary
426  Thanks to Bryan Tipton (tipton@krl.caltech.edu),
427            Antonis Papanestis (antonis.papanestis@cern.ch)
428       and  Peter Gumplinger for their demonstrations of the delicate problem.
429
430May 15th, 2002      G. Cosmo - geomvol-V04-00-07
431- G4ParameterisedNavigation:
432  o Introduced 3D voxelisation technique for parameterised volumes with
433    unspecified axis. Changed to become subclass of G4VoxelNavigation and
434    adopt the same voxel location algorithms for optimised navigation.
435- G4VoxelNavigation:
436  o Changed to become base class for optimised navigation.
437  o Cosmetics and reformatting.
438- G4NormalNavigation.icc, G4ReplicaNavigation.icc, G4VoxelNavigation.icc:
439  o Minor optimisations.
440  o Cosmetics and reformatting.
441- G4Navigator.cc:
442  o Invoke specific VoxelLocate call for parameterised navigation.
443- Co-works with "global-V04-00-06" and "geommng-V04-00-05".
444
445Apr 19th, 2002      G. Cosmo - geomvol-V04-00-06
446- Moved inline constructors and destructors to no inline.
447  Affected files: G4BlockingList[.icc,cc], G4NavigationHistory[.icc,.cc],
448                  G4PropagatorInField[.hh.icc.cc].
449
450Apr 3rd, 2002       G. Cosmo - geomvol-V04-00-05
451- G4GeometryMessenger[.hh.cc]: added new commands to exploit more features of the
452  G4GeomTestVolume class for detecting geometry overlaps:
453  o /geometry/test/grid_test - runs the default grid test, same as "run".
454  o /geometry/test/recursive_test - runs the grid test in recursive mode.
455  o /geometry/test/cylinder_test - to shoot lines in a cylindrical pattern.
456  o /geometry/test/line_test - to shoot a line according to position and direction.
457
458Mar 22nd, 2002       J. Apostolakis - geomvol-V04-00-04
459- G4PropagatorInField: added Set/Get methods for MaximumEpsilonStep
460
461Feb 20th, 2002       G. Cosmo - geomvol-V04-00-03
462- G4GeometryMessenger.cc: fixed local variable name not to clash with
463  class data member.
464
465Jan 21st, 2002       J. Apostolakis - geomvol-V04-00-02
466- G4Navigator: reset blocked volume when locating 'within volume',
467    after ensuring that it does not get called when
468    ComputeSafety() is at a boundary.
469   --> Fix for cases of longstanding 'Point P is Inside' errors.
470
471Jan 10th, 2002       G. Cosmo - geomvol-V04-00-01
472- Activated mechanism in GNUmakefile for allowing compilation with
473  G4DEBUG_FIELD or G4DEBUG_NAVIGATION flags. Replaced DEBUG with
474  G4DEBUG_NAVIGATION in G4Navigator.cc.
475
476Jan  8th, 2002       J. Apostolakis - geomvol-V04-00-00
477- G4AuxiliaryNavServices
478  o Fixed it so that it only considers whether a (Point,Direction) 'ray' if
479    it is on the surface (it was mistakenly also checking those inside, and
480    rejecting them.)
481    [ This erroneous condition occurred frequently in the new usage of Locate
482      with Direction to initialise a step. 
483      It's unclear if it occurred also at other times.]
484
485Jan 8th, 2002        G. Cosmo
486- Fixed compilation problems and warnings on unit tests.
487  (G.Cosmo, R.Chytracek)
488
489Dec 11th, 2001       G. Cosmo - geomvol-V03-02-08
490- G4Navigator:
491  o Added kNormal and Copy Number to NewLevel (Navigation Level) for
492    Normal Navigation
493    Now all TouchableHistory objects should have a valid entry in ReplicaNumber:
494    - in the case of a placement volume it will be the copy number
495    - in replicated volumes it will be the replica number
496  o Commented out fix introduced in geomvol-V03-02-05.
497
498Dec 11th, 2001       J. Apostolakis - geomvol-V03-02-07
499- G4Navigator:
500  o Undoing the fix in geomvol-V03-02-05 -- because of problems in
501    several tests (mostly large N tests).
502    ----> Must resolve these !! <----
503
504Dec  8th, 2001       J. Apostolakis - geomvol-V03-02-06
505- G4PropagatorInField:
506  o additional thresholds for No of steps, + get/Set methods
507  o Modified choice of subsequent step size in case of Zero step
508    - decrease quickly at first to try to ensure that the first/second
509      "re-steps" are enough in most cases.
510    - utilise addition threshold parameters (for # of steps)
511      to slow down the rate of decrease of the step size
512      for the 'difficult' cases which do not converse after
513      a few steps.                           
514
515Dec  6th, 2001       J. Apostolakis - geomvol-V03-02-05
516- G4Navigator:
517  Fix for Locate Global Point Within Volume: clear state
518  variables (that had erroneously been forgotten).
519
520Dec  6th, 2001       R. Chytracek - geomvol-V03-02-04
521- G4Navigator:
522  o Fixed mirroring of the input argument for global direction into
523    local variable in LocateGlobalPointAndSetup().
524  o Cosmetics for the Software Reference Manual in .hh file.
525
526Dec  4th, 2001       J. Apostolakis - geomvol-V03-02-03
527- G4Navigator:
528  o Modified the interface
529    - creating a new ResetState method (that only reset state - not stack)
530    - adding a new optional argument to LocateGlobalPointAndSetup method
531    - adding direction argument to LGPAS w/ touchable history
532  o Modified the implementation
533    - to reset its state when touchable history is used to re-initialise it
534    - to use the direction in LocateGlobalPointAndSetup methods!
535- G4PropagatorInField:
536  o Added use of new Largest Acceptable Step data member.
537  o Protected, in reseting of Proposed Step length, against
538    making it bigger in cases where several zero steps seen.
539  o Several debugging prints added. (only in G4Verbose, ...)
540
541Nov 28th, 2001       J. Apostolakis - geomvol-V03-02-02
542- Added GetCurrentFieldManager method to PropagatorInField
543- Incorporates additions seen in "geomvol-V03-02-00a/b/c"
544   and in "geomvol-V03-02-01".
545- This tag is required by the new tag "transport-V03-02-06" in Transportation.
546
547Oct 18th, 2001       J. Apostolakis - geomvol-V03-02-01
548- Added a new 'maximum' epsilon value in G4PropagatorInField,
549  as some ill-conditions appear to be due to large proposed relative errors.
550  NOTE: does NOT include changes in "geomvol-V03-02-00a/b/c".
551
552Nov 8th, 2001        G. Cosmo - geomvol-V03-02-00c
553- Added handles for reference counting: G4GRSSolidHandle, G4GRSVolumeHandle,
554  G4TouchableHistoryHandle.
555- Modified G4Navigator for reference counted touchables. Introduced new methods
556  CreateTouchableHistoryHandle() and LocateGlobalPointAndUpdateTouchableHandle(...).
557- New unit tests testG4ParameterisedMaterial.cc and testG4TouchableHandle.cc.
558
559Nov 1st, 2001        G. Cosmo - geomvol-V03-02-00b
560- G4GeometryMessenger.cc: fixed definition of unit category for tolerance.
561
562Oct 24th, 2001       G. Cosmo - geomvol-V03-02-00a
563- Moved G4GeomTestMessenger from geometry/verification to geometry/volumes.
564  Renamed to G4GeometryMessenger.
565- GeometryMessenger: renamed directory to geometry/test. Added directory
566                     geometry/navigator. Added geometry/navigator/reset command
567                     for resetting navigation history and position.
568- G4PropagatorInField.icc: fixed warning on Linux-g++....
569
570Oct 18th, 2001       J. Apostolakis - geomvol-V03-02-00
571- Corrected the initialisation of fEpsilonMin in G4PropagatorInField
572   constructor, which was forgotten.
573
574May 31st, 2001       G. Cosmo - geomvol-V03-01-08
575- Fixed usage of 'fabs', which belongs to global scope, NOT in std
576  namespace. Detected by compilation error on DEC ISO/ANSI setup.
577- G4VoxelNavigation.icc: initialised data-member in initialiser list of
578  constructor with explicit initialisation to dummy values to allow porting
579  on ObjecSpace STL.
580
581May 23rd, 2001       J. Apostolakis - geomvol-V03-01-07
582- Added methods to Set the minimum epsilon (relative accuracy) to
583  Propagator In Field.
584
585May 23rd, 2001       J. Apostolakis - geomvol-V03-01-06
586- Added new parameter to Propagator In Field,
587  fEpsilonMin which is the minimal relative accuracy for MF driving.
588
589May 23rd, 2001       J. Apostolakis - geomvol-V03-01-05
590- Moved Delta Intersection and One Step from PropagatorInField to Field Manager.
591- Modified G4TransportationManager.cc to initialise default values accordingly.
592  (Incorporating changes into a tag, finally, after fix to G4FieldManager
593  constructors. )
594o This tag requires and co-works with field-V03-01-01.
595  This now ENABLES the use of different Field Managers for different parts of
596  the detector.  First implementation allows a volume that has a field
597  manager to override the global one. 
598  Note: All field managers currently must refer to fields in global coordinates
599o New ability: to set the delta accuracy parameters differently in different
600  volumes (even while maintaining the same field as the global one!). 
601
602May 23rd, 2001       G. Cosmo - geomvol-V03-01-04
603- Fixes in G4ReplicaNavigation for bug reports #253 and #254:
604  o in VoxelLocate(...), treated particular case of rotational symmetry
605    with extent over 360 degrees (courtesy of H.Boie).
606  o in DistanceToOutPhi(...), fix to correctly handle cases where the
607    starting point is on boundary of replicas and direction is along boundary.
608
609May 15th, 2001       G. Cosmo - geomvol-V03-01-03
610- G4AuxiliaryNavServices::CheckPointOnSurface(): added additional check to resolve
611  endless looping of G4Navigator in case the track is passing through a point, edge
612  or surface shared by two solids.
613  This problem occured when G4Navigator was trying to transport a particle when
614  exiting a solid. Transportation will now perform a few zero steps and continues
615  stepping instead of looping around the same point. Fixes problem report #185.
616
617April 27th, 2001     G. Cosmo - geomvol-V03-01-02
618- G4VoxelNavigation.icc: fixed compilation warnings on HP-UX, concerning
619  potential uninitialised vector elements.
620
621April 20th, 2001     G. Cosmo - geomvol-V03-01-01
622- Updated unit tests to conform to recent STL vector migration.
623
624April 17th, 2001     G. Cosmo - geomvol-V03-01-00
625- Migration to STL vector:
626  o Modified classes:
627    G4VoxelNavigation, G4NavigationHistory, G4BlockingList,
628    G4LogicalSkinSurface, G4LogicalBorderSurface.
629  o Removed GetIndex() and table-index data from G4LogicalSkinSurface
630    and G4LogicalBorderSurface.
631
632March 19th, 2001     J. Apostolakis - geomvol-V03-00-03
633- G4PropagatorInField:
634     Modified to use new (not obsolete) methods of G4FieldTrack.
635     Deleted old/obsolete ComputeStep method
636         (that was being used only for testing purposes, but
637          could not be used anymore after change to Momentum Integration.)
638
639March 12th, 2001     G. Cosmo - geomvol-V03-00-02
640- G4ReplicaNavigation::ComputeStep(): apply push of kCarTolerance to ourStep
641  in case the proposed step is zero.
642
643February 23rd, 2001  G. Cosmo - geomvol-V03-00-01
644- Restored original 0.5 shift for kPhi transformation in ComputeTransformation()
645  methods, as original specifications from P.Kent impose.
646- Fixed bug in ComputeTransformation(const G4int rNo, G4VPhysicalVolume* pVol)
647  where 'pVol' was NOT passed to SetPhiTransformation() in the kPhi case (!).
648
649February 15th, 2001  G. Cosmo - geomvol-V03-00-00
650
651- Fix in G4ReplicaNavigation::ComputeTransformation(...) for kPhi case.
652  Removed shift of 0.5 to center of replica volume to conform with original
653  specifications for replica transformations in Phi.
654- Cosmetics in G4ReplicaNavigation.cc.
655
656November 20th, 2000  G. Cosmo - geomvol-V02-00-01
657
658- Fixes to remove warnings from "-Wall -ansi -pedantic" g++ compiler options:
659  o commented out variables declared and not used.
660  o fixed declaration of variables used before being initialised.
661  o fixed order of initialisation of member data in constructors.
662  o fixed usage of unsigned-int (size_t) for array indeces.
663
664November 1st, 2000   G. Cosmo - geomvol-V02-00-00
665
666- QA code revision and cleanup (+fixes from CodeWizard filtering):
667  o Added (private) copy constructor and assignment operator where needed.
668  o Added "const" qualifier to accessor methods, wherever needed.
669  o Added equality check on operator= where needed.
670  o Made destructor "virtual" for classes having virtual methods,
671    wherever missing.
672  o Changed virtual functions to non-inline wherever's the case.
673  o Changed return value to be "const" pointer to functions:
674    - G4LogicalBorderSurface::GetVolume1()
675    - G4LogicalBorderSurface::GetVolume2()
676    - G4LogicalSkinSurface::GetLogicalVolume()
677  o G4NavigationHistory: moved kHistoryMax and kHistoryStride to
678    geomdefs.hh and made static constants. Reorganised comments.
679  o G4VoxelNavigation: moved kNavigatorVoxelStackMax in geomdefs.hh.
680    Changed "do-loops" with "while-loops" where convenient.
681  o Added "inline" qualifier to methods' declarations.
682  o General cosmetics
683
684June     2nd, 2000  J. Apostolakis - geomvol-V01-01-02
685
686include/G4PropagatorInField.hh,icc
687  o Moved Delta Intersection and Delta One Step to FieldManager
688     (from Propagator in Field),  to allow them to differ over the detector.
689
690G4TransportationManager.cc
691  o Changed static variable for above (default values).
692
693
694May     17th, 2000   G. Cosmo - geomvol-V01-01-01
695
696G4ReplicaNavigation.cc:
697- Added check to returned safety value in DistanceToOut(). Zero is
698  returned if the computed velue is less than kCarTolerance.
699- Introduced temporary fix to ComputeStep() in the first step computation
700  for replica boundaries. 'ourStep' is not set to the computed 'sampleStep'
701  if 'sampleStep' happens to be zero.
702  This fix helps to get rid of infinite loops when a point is on a
703  shared surface of a replica or on a shared vertex; a more definitive
704  solution to the problem is needed for the correct replica location.
705
706May     16th, 2000   J. Apostolakis
707
708G4PropagatorInField[.hh.icc]:
709- Added implementations for SetDeltaOneStep and SetDeltaIntersection.
710
711May      9th, 2000   J. Apostolakis - geomvol-V01-01-00
712
713Improvements in G4PropagatorInField  incorporating include file fixes
714in geometry-V01-01-02
715[ ie: Introduced kCarTolerance for check over taken step length and
716TruePathLength in G4PropagatorInField::ComputeStep(). ]
717
718May      8th, 2000   J. Apostolakis - geomvol-fieldImprove1
719
720Internal tag for version that improves the behavior of the field.
721[ it does not include the changes of geometry-V01-01-02 ]
722
723May      5th, 2000   J. Apostolakis
724
725G4PropagatorInField improvements modifying:
726 i) the comparison for detecting probable loop condition
727      - to accomodate solids that (wrongly) return small finite answer instead
728        of zero for Distance on surface.  [ can probably be reversed eventually]
729ii) the condition for exit from while (sufficient path length) to
730    avoid making a very small final step :  used the tolerance.
731
732April 25th, 2000   G. Cosmo
733
734- Reorganised comments for the Software Reference Manual.
735- Moved inlined definition to .icc files, where needed.
736  Created: G4LogicalBorderSurface.icc and G4LogicalSkinSurface.icc.
737- Removed obsolete G4Transform class. Removed files:
738  G4Transform[.hh.icc].
739
740January 19th, 2000   G. Cosmo - geomvol-V01-00-00
741
742Sycronized files versions with HEAD after ISO-C++ migration.
743(essentially CVS headers changes). Left out only G4Navigator[.hh.cc].
744
745December 2nd, 1999   G. Cosmo - geomvol-V00-01-02
746
747G4TransportationManager: Fixed definition of the singleton to conform
748    to the canonical implementation. Moved default constructor from private
749    to protected and added call to G4Exception in case of multiple instances
750    through derived classes.
751
752November 26th, 1999   J. Apostolakis - geomvol-V00-01-01
753
754G4TouchableHistory: Moved GetTranslation and GetRotation from inline file
755    to source file -- as they use static variables in the methods themselves.
756        --> cannot be handled by new HP aCC compiler
757
758G4PropagatorInField: Initialised fVerboseLevel in constructor. (omision)
759        --> on WinNT 4.0sp4 / VC++ 6.0  it was given value of 1 not 0.
760
761November 10th, 1999   J. Apostolakis - geomvol-01-01-01b
762
763Modified test/GNUmakefile to make it use fully-granular libraries.
764New test code in testG4Volumes for Object/Frame Rotation/Translation.
765
766October  29th, 1999   J. Apostolakis - geomvol-01-01-01a
767
768Moved initialisation of static data members of G4PropagatorInField
769  fDefault_Delta_Intersection_Val
770  fDefault_Delta_One_Step_Value
771to G4TransportationManager.cc, to ensure correct order initialisation
772of static (class) data members
773
774G4PropagatorInField warning message about integration inaccuracy
775now printed (for a maximum of 10 times) and in Verbose.
776
777July     27th, 1999   J. Apostolakis - geomvol-01-01-02
778
779Modified G4Navigator to distinguish Candidate volume from Blocked volume
780
781July     27th, 1999   J. Apostolakis - geomvol-01-01-01
782
783Tagged  --- here ??? ---
784
785July     27th, 1999   J. Apostolakis
786G4PropagatorInField:
787Added instance variables to keep track of "abnormal" case - which caused loop:
788
789  This is induced when a step at a boundary goes into one volume
790    - but in that volume it encounters an intermediate boundary
791      and when the step is subdivided it finds a zero step.
792   Then it looped between the volumes
793
794This is corrected by finding this problem (#subsequent zero steps > threshold)
795and attempting ever smaller trial steps until it succeeds.
796
797->  it was not done for the first step
798
799July     27th, 1999   J. Apostolakis
800
801G4PropagatorInField:
802  Made DeltaIntersection and DeltaOneStep instance variables (not class var.)
803  Added Get/Set methods.   Old  values of are now the defaults.
804
805
806July      1st, 1999   J. Apostolakis - field-01-00-06a
807
808In G4PropagatorInField   --> method LocateIntersectionPoint():
809
810  Integration inaccuracies cause an internal step's mid-point and endpoint
811    to be further apart than their curve length difference.  (Unphysical)
812
813  In order to compensate, we re-compute the step's endpoint.  [ This also
814    requires modification in G4ChordFinder::ApproxCurvePointV  ]
815
816A better solution would be to re-start/re-structure the loop to handle this
817sort of case.   But this would be a more major change ...
818
819May      19, 99      J.Apostolakis, F. Behner
820
821   In G4Navigator: Changed cout -> G4cout
822                   Changed protection for printing of Physical volume name:
823                    (because of warning on SUN;  same functionality)
824
825
826   In G4NavigationLevel, created an optional operator delete(void *, void *)
827    this is accepted by DEC, and not accepted by SUN, HP
828    new flag created in architecture for protection: ~ G4NO_ISO_DELETES
829
830May      17, 99      J. Allison.
831   In G4NavigationLevel, changed operator new(size_t, G4NavigationLevel *)
832   to operator new(size_t, void *) because the former is not accepted
833   by Sun CC 4.2 (with STL Interface.)
834
835May       3, 99      J. Apostolakis
836   testG4ReplicaNavigation.cc
837      Changed comparison of doubles, to give it a tolerance. 
838
839April     8, 99      (committed & recorded J. Apostolakis  May 3rd)
840   G4NavigationLevel.{hh,icc}: Minor Changes
841      added const to copy constructor and
842      new 'new' operator with size_t - for STL use with preallocated containers"
843
844
845March    19, 99      J. Apostolakis        geomvol-01-00-03
846
847   New tag for replica fix.
848
849
850March    18, 99      J. Apostolakis
851
852   A fix for looping in Replicas:
853        In the case where a zero step is done in Replicas, we must allow
854    ReplicaNavigator to handle the case itself - or else we loop.
855
856March    11, 99      J. Apostolakis
857
858   G4GRSVolume.icc: corrected G4Exception messages.
859
860February 18, 99      J. Apostolakis       
861
862 include/G4VoxelNavigation.hh
863 src/G4VoxelNavigation.cc    : overwrote versions 1.2 with production version
864      --->  when changes are refined and retested, they could be reincorporated
865
866February 17, 99      J. Apostolakis        geomvol-01-00-02
867
868 Moved G4PropagatorInField here from magneticfield to remove correct
869  dependency.
870
871February 15, 99      J. Apostolakis        geomvol-01-00-01
872
873   Only fixes in G4Navigator's incorporated.
874   GNUmakefile corrected (for SUN-CC).
875
876January      99,     J. Apostolakis
877
878Fix for ComputeSafety in Navigator:                              G4Navigator.cc
879            the voxel information that was used was incorrect       v 1.3
880                -> it resulted in wrong value of safety
881
882
883December     98                                   geant4-00-RandD
884
885 include/G4VoxelNavigation.hh
886 src/G4VoxelNavigation.cc    : versions 1.2 are trial versions from beta "head"
887
888December     98                                   
889
890Trial fix for navigation in replicas                             G4Navigator.cc
891                                                                    v 1.2
892         (a problem persists with this version)
893
894
895December     98                                   geant4-00
896
897   Code moved: production tag from beta repository.
Note: See TracBrowser for help on using the repository browser.