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

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

import all except CVS

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