source: trunk/source/geometry/solids/CSG/History @ 1347

Last change on this file since 1347 was 1347, checked in by garnier, 13 years ago

geant4 tag 9.4

File size: 32.8 KB
Line 
1$Id: History,v 1.135 2010/11/23 14:46:11 gcosmo Exp $
2-------------------------------------------------------------------
3
4     =========================================================
5     Geant4 - an Object-Oriented Toolkit for Simulation in HEP
6     =========================================================
7
8                      Sub-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 directory-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
20Nov 23, 2010  G.Cosmo                    geom-csg-V09-03-14 & V09-03-12
21- Fixed one left cases of cout precision restoring in G4Sphere.
22
23Oct 19, 2010  G.Cosmo                    geom-csg-V09-03-11
24- Implemented Clone() virtual method for all solids, returning a pointer to a
25  dynamically allocated copy of the solid. To be used by Geant4-MT.
26
27Sep 23, 2010  G.Cosmo                    geom-csg-V09-03-10
28- Initialize fpPolyhedron to zero in G4CSGSolid copy-ctor and operator=().
29
30Sep 22, 2010  G.Cosmo                    geom-csg-V09-03-09
31- Relaxed checking condition on SetOuterRadius() method to avoid
32  restrictions in order of calls for modifiers.
33
34Sep 17, 2010  G.Cosmo                    geom-csg-V09-03-08
35- Implemented copy-constructor and assignment operator for all solids
36  to facilitate conversion to Geant4-MT.
37
38Sep 17, 2010  G.Cosmo                    geom-csg-V09-03-07
39- Added missing validity checks on radii to modifiers in G4Tubs.
40
41Sep 07, 2010  G.Cosmo                    geom-csg-V09-03-06
42- Fix within G4CSGDEBUG code for restoring cout precision.
43
44Aug 23, 2010  G.Cosmo                    geom-csg-V09-03-05
45- G4Cons: fixed trivial compilation warning on Linux.
46
47Aug 19, 2010  T.Nikitina                 geom-csg-V09-03-04
48- G4Torus: fix in DistanceToOut(p,v,...) to address problem report #1081.
49
50Jul 12, 2010  G.Cosmo                    geom-csg-V09-03-03
51- Fixed condition in G4Tubs::Inside(p) for point on surface (T.Nikitina).
52- Corrected use of std::fabs() in place of std::abs() in G4Tubs, G4Cons,
53  G4Sphere and G4Torus. Use pre-computed half-tolerance constants in G4Torus.
54
55Jul 08, 2010  G.Cosmo                    geom-csg-V09-03-02
56- Improved initialisation logic in constructor for: G4Box, G4Cons, G4Orb,
57  G4Para, G4Sphere, G4Torus, G4Trap, G4Trd, G4Tubs.
58- Corrected cases of not-restored cout precision in: G4Box, G4Cons, G4Orb,
59  G4Para, G4Torus, G4Trap, G4Tubs.
60- G4Torus: fixed call to internal method for finding roots, to avoid copy
61  of sdt::vector() by parameters. Some cleanup to avoid unnecessary protected
62  section and virtual table.
63- Updated unit test for G4Sphere (V.Grichine).
64
65May 25, 2010  G.Cosmo                    geom-csg-V09-03-01
66- G4Box: more minor fixes in coding style, following code review discussion.
67
68May 18, 2010  G.Cosmo                    geom-csg-V09-03-00
69- G4Box: first implementation of speed improvements and corrections from joint
70  code review of G4Box class: introduced half-tolerance constants and better
71  logic in some conditional statements.
72- Some code cleanup.
73
74Dec 04, 2009  V.Grichine
75- G4Orb: modified DistanceToIn(p,v) to be more consistent with Inside(p).
76
77Nov 30, 2009  V.Grichine                 geom-csg-V09-02-08
78- G4Orb: moved debug warning in DistanceToIn(p,v) within G4CSGDEBUG flag.
79
80Nov 26, 2009  T.Nikitina                 geom-csg-V09-02-07
81- G4Torus: fix in SolveNumericJT() in order to take in account the difference
82  in the value of theta for different intervals, [0:pi] or [-pi:0], and for
83  SPhi in [0:twopi] or [-twopi:0]. Addresses problem report #1086.
84
85Nov 12, 2009  T.Nikitina                 geom-csg-V09-02-06
86- G4Cons: fix to DistanceToIn(p,v), added a check on the direction in case
87  of point on surface. Fixes a problem of stuck tracks observed in CMS, due
88  to wrong reply from the solid for points on the inner radius surface base
89  with direction along the imaginary extension of the cone.
90- Added test case to internal test testG4Cons2.
91
92Aug 07, 2009  T.Nikitina                 geom-csg-V09-02-05
93- G4Sphere: fix for the calculation of the normal in DistanceToOut()
94  to avoid cases of division by zero in specific configurations.
95  Addresses problem report #977.
96
97Jun 30, 2009  T.Nikitina                 geom-csg-V09-02-04
98- Introduced to DistanceToIn(p,v) splitting of the distance for point very far
99  from intersection area and big difference between solid dimensions and
100  distance to it; resolves issue observed on 64 bits problem. Affected solids:
101  G4Tubs, G4Cons, G4Sphere, G4Orb. Addresses problem report #1022.
102- Fixed rare cases of NaN on G4Sphere.
103
104Jun 09, 2009  G.Cosmo                    geom-csg-V09-02-03
105- Fixed case of non-initialised start-Phi value in G4Tubs and G4Cons,
106  problem introduced following modifications in tag "geom-csg-V09-02-00".
107
108May 14, 2009  T.Nikitina                 geom-csg-V09-02-02
109- G4Sphere: initialise flags for full sphere in constructor.
110
111May 14, 2009  T.Nikitina                 geom-csg-V09-02-01
112- G4Sphere: correction di DistanceToOut(p,v, ...) for phi sections for
113  rays passing though zero.
114- More minor refiniments to G4Sphere following review.
115
116May 08, 2009  G.Cosmo                    geom-csg-V09-02-00
117- G4Sphere: implemented speed improvements and corrections from joint
118  code review of G4Sphere class. Cached computation for half-tolerances
119  and use of Boolean flag for identifying if full-sphere, shell or section.
120  Implemented caching of trigonometric values, now directly computed inside
121  modifiers for Phi and Theta angles as required for parametrised cases.
122  Rationalised usage of relative radial tolerances.
123- G4Tubs, G4Cons: rationalised usage of modifiers for Phi angles and
124  simplified constructors.
125- Added new test case for relatively big spheres in unit tests testG4Orb
126  and testG4Sphere, based on problem report #1046.
127
128Nov 21, 2008  G.Cosmo                    geom-csg-V09-01-08
129- G4Sphere: defined Get/SetInnerRadius() accessors to be compliant with
130  other CSG solids and allow consistent treatment in persistency code...
131
132Nov 06, 2008  G.Cosmo                    geom-csg-V09-01-07
133- G4Tubs, G4Cons: implemented caching of trigonometric values, now directly
134  computed inside modifiers for Phi angles and required for parametrised
135  cases. Improvement bringing up to 20% speedup in normal tracking for
136  tube/cone-sections placements.
137
138Nov 05, 2008  G.Cosmo                    geom-csg-V09-01-06
139- G4Cons: implemented first speed improvements and corrections from joint
140  code review of G4Cons class. Cached computation for half-tolerance and
141  use of Boolean flag for identifying if full-cone or section.
142- G4Tubs: more refinements to previous review; corrected implementation
143  of constructor to conform to implementation as in G4Cons. Fixed issue in
144  SetDeltaPhi() method after changes introduced in the previous tag.
145
146Sep 18, 2008  T.Nikitina                 geom-csg-V09-01-05
147- G4Tubs: implemented first speed improvements and corrections from joint
148  code review of G4Tubs class. Cached computation for half-tolerance and
149  use of Boolean flag for identifying if full-tube or section.
150
151Jul 07, 2008  V.Grichine                 geom-csg-V09-01-04
152- G4Sphere: fixed bug in DistanceToOut(p, v, ...) for normal 'fSTheta'
153  greater than 90*deg, and use of tangent giving negative value.
154  Completes series of corrections introduced in previous tag.
155
156Jun 23, 2008  T.Nikitina                 geom-csg-V09-01-03
157- G4Tubs: fix in DistanceToIn(p,v, ...) in case of point on surface with
158  very small tangent direction; now returning kInfinity and no longer zero.
159  It fixes rare observed cases of zero value returned by both DistanceToIn()
160  and DistanceToOut(), causing stuck tracks with zero step length.
161
162Jun 20, 2008  V.Grichine
163- G4Sphere: fixed calculation of roots in DistanceToOut(p,v,...) for
164  theta-conical surfaces interserctions and for sTheta<=90 degree intersection.
165  Addresses issue reported when running PET application with optical photons
166  about mis-computation of distance on half-sphere constructs.
167- Updated unit test for sphere.
168
169Apr 22, 2008  V.Grichine                 geom-csg-V09-01-02
170- G4Trap: corrections for arithmetic operations in 8-point constructor.
171  Addressing problem report #934.
172
173Mar 13, 2008  G.Cosmo                    geom-csg-V09-01-01
174- Cleared compilation warnings in G4Sphere on gcc-4.3.0 for
175  ambiguous use of parentheses in condition statements.
176
177Feb 20, 2008  T.Nikitina                 geom-csg-V09-01-00
178- G4Cons:
179  o Added protection against NaN in GetPointOnSurface() in the case the
180    check is run for Rmax1==Rmax2.
181
182Nov 23, 2007  T.Nikitina                 geom-csg-V09-00-02
183- Fixed problem of undefined side for valid surface normal in case of Phi
184  section and direction through the center of either A G4Tubs or G4Cons shape.
185
186Oct 2, 2007  T.Nikitina                  geom-csg-V09-00-01
187- G4Torus:
188  o Fixed bug in CalculateExtent() for case of non-rotated full-phi
189    torus definition: added protection against negative value for sqrt()
190    and corrected formula for 'delta'. Fixes problem of NaN detected in
191    initialisation by CMS.
192  o Fixed bug in SolveNumericJT(): corrected handling of complex roots,
193    'rootsrefined' is used only if the number of refined roots is the same
194    as for primary roots. Addresses problem report #969.
195
196Aug 16, 2007  T.Nikitina                 geom-csg-V09-00-00
197- G4Tubs: fixed bug in DistanceToOut(p,v,..) for negative value under sqrt()
198  for the case of point p on the surface and v tangent to the surface.
199  Responsible for rare cases of NaN.
200
201May 18, 2007  G.Cosmo                    geom-csg-V08-03-01
202- Use kAngTolerance and kRadTolerance from G4GeometryTolerance class.
203- Coworks with tag "global-V08-03-03".
204
205May 16, 2007  T.Nikitina                 geom-csg-V08-03-00         
206- G4Tubs: fixed bug for DistanceToOut(p,v) for phi section.
207  Bug was causing segmentation fault in recursive_test (problem report #784).
208  For v crossing the center of the tub DistanceToOut was always giving
209  Radial distance and not distance in Phi. 
210- G4Cons: fixed bug for DistanceToOut(p,v) for phi section,
211  the same as for G4Tubs.
212- Updated unit tests.
213
214Oct 19, 2006  G.Cosmo                    geom-csg-V08-01-00
215- Added explicit computation for GetSurfaceArea() for all solids
216  (by H.Dierckx).
217- Implemented caching mechanism for computation of surface area in
218  G4CSGSolid, as done for the geometrical volume computation.
219
220Jun 06, 2006  V.Grichine                 geom-csg-V08-00-01
221- G4Tubs: added protection against NaNs in CalculateExtent() to avoid
222  sqrt() of negative numbers due to round-off.
223- Updated unit tests testG4Sphere and testDistanceAccuracy.
224
225Jan 16, 2006  V.Grichine                 geom-csg-V08-00-00
226- G4Sphere: fixed bug in DistanceToOut() for theta intersections.
227
228Nov 20, 2005  V.Grichine                 geom-csg-V07-01-05
229- G4Torus: fixed bug in Inside(p) for phi sections.
230  Fixes problem report #810.
231
232Nov 9, 2005  G.Cosmo                     geom-csg-V07-01-04
233- Added fake default constructor for all concrete solids and relevant
234  utility classes, for usage of direct object persistency.
235- Implemented changes to support CLHEP-2.0.X for explicit usage of the
236  CLHEP/HepGeom namespaces for CLHEP types.
237
238Oct 23, 2005  V.Grichine                 geom-csg-V07-01-03
239- G4Para: fixed bug in DistanceToOut(p,v) for the case v.x()<0.
240  Following problem report from user posted on Hypernews (#452).
241
242Sep 5, 2005  O.Link                      geom-csg-V07-01-02
243- Moved implementation for DistanceToIn/Out() in G4Torus to make use of
244  G4JTPolynomialSolver for precise calculation of the intersections.
245- Reviewed unit tests and reduced statistics.
246
247Aug 8, 2005  D.Anninos                   geom-csg-V07-01-01
248- Added GetPointOnSurface() to all solids. The method returns a random
249  point according to a quasi-uniform distribution along the surface.
250
251Jul 25, 2005  O.Link                     geom-csg-V07-01-00
252- Fixed bug in G4Sphere::DistanceToOut(p,v):
253  added check for intersection with double cone.
254- Added new unit test testDistanceAccuracy (V.Grichine).
255
256Jun 8, 2005  V.Grichine                  geom-csg-V07-00-09
257- Keep old specification for SurfaceNormal() to treat usage of the
258  function for points not at the surface.
259
260Jun 6, 2005  V.Grichine                  geom-csg-V07-00-08
261- Correction to SurfaceNormal() for G4Cons, G4Sphere, G4Torus, G4Tubs
262  for properly handling location on z-axis and in the frame origin.
263  Fixed bug in G4Cons::SurfaceNormal(p) for normals returned from
264  rmax and rmin.
265- Moved debug printouts for surface-normals to G4CSGDEBUG.
266- Cleared compilation warnings in unit tests and updates.
267
268May 27, 2005  J.Allison                  geom-csg-V07-00-07
269- Fixed polyhedron representation of G4Torus.
270
271May 26, 2005  G.Cosmo                    geom-csg-V07-00-06
272- G4Box.cc: restored call to AddSolid() and replaced old AddThis() in
273  DescribeYourselfTo().
274
275May 11, 2005  V.Grichine                 geom-csg-V07-00-05
276- G4Para: bug fixed in SurfaceNormal(p) for x-distance, to be now in
277  accordance with the surface selection using Inside(p).
278- Updated unit test testSurfaceNormal.cc.
279
280May 09, 2005  V.Grichine                 geom-csg-V07-00-04
281- Updated implementation of SurfaceNormal(p) to get consistence with
282  Inside(p) functions for the treatment of phi/theta surfaces.
283  They are treated now in both functions in terms of kAngTolerance.
284  The reason is that historically SurfaceNormal(p) was using only
285  kCarTolerance for estimation of shortest distance to a surface. Now,
286  following the new updated specification, the surface selection is made
287  according to Inside(p) approach (as kSurface is selected), i.e. - for
288  phi/theta surfaces in terms of kAngTolerance.
289
290Apr 26, 2005  V.Grichine, J.Apostolakis
291- Simplified and revised the new implementation for SurfaceNormal(p)
292  with edges/vertices and made becoming the default one for all solids.
293
294Apr 20, 2005  V.Grichine                 geom-csg-V07-00-03
295- G4Trap: fix in p.x() centering to sum over all vertices.
296
297Mar 23, 2005  J.Allison                  geom-csg-V07-00-02
298- Added test for Number-Of-Rotation-Steps in G4CSGSolid::GetPolyhedron().
299  Requires tag "greps-V07-00-02".
300
301Mar 03, 2005  J.Allison                  geom-csg-V07-00-01
302- Changed AddThis() with AddSolid() for all solids in DescribeYourselfTo()
303  implementation.
304
305Dec 02, 2004  V.Grichine                 geom-csg-V07-00-00
306- New alternative implementation of SurfaceNormal(p) with edges/vertices
307  for G4Box, G4Para, G4Trap, G4Trd. Old implementation is still the default.
308  Can be activated by setting G4NEW_SURF_NORMAL variable before compilation.
309
310Nov 15, 2004  V.Grichine                 geom-csg-V06-02-06
311- G4Trap: added check for X-centering for constructor by verteces.
312  Fixes problem report #687.
313- New unit test for surface-normal and updated unit tests for sphere
314  and trap.
315
316Oct 10, 2004  J.Allison                  geom-csg-V06-02-05
317- Added GetPolyhedron, a smart access function that creates a G4Polyhedron
318  on request and stores for future access.  A null pointer means "not
319  available".
320
321Sep 22, 2004  V.Grichine                 geom-csg-V06-02-04
322- Added specific implementation of GetCubicVolume() for all CSG solids.
323  The method compute the exact geometrical values and stores it.
324  The value is reset each time a parameter of the solid is modified.
325- Moved inline methods for G4Orb to .icc file.
326- Added unit test testSurfaceInOut.cc.
327
328Sep 16, 2004  V.Grichine                 geom-csg-V06-02-03
329- Bug fix in G4Sphere::SurfaceNormal(p) for theta normals.
330
331Jul 28, 2004  V.Grichine                 geom-csg-V06-02-02
332- Fix in G4Cons::DistanceToIn(p,v) on fRmax surface and move in,
333  the condition became a bit more strict && determinant >=0, i.e.
334  intersections in addition to go in.
335  Fixes a rare problem of dIn=dOut=0 observed in 3 events over a
336  statistics of 10^8..
337- Updated unit test testSurfaceInOut.cc to consider the test-case above.
338
339Jul 16, 2004  V.Grichine                 geom-csg-V06-02-01
340- Fix in G4Sphere::DistanceToOut(p,v,...) on fRmin moving outside.
341  The bug showed 3 events of dIn=dOut=0 for 10^7 statistics in
342  testSurfaceInOut.
343- Added new unit test testSurfaceInOut.cc.
344
345Jul 02, 2004  V.Grichine                 geom-csg-V06-02-00
346- Fixes curing rare conditions of loops at boundaries for G4Orb and G4Sphere:
347  o G4Orb.cc: bug fix in DistanceToIn(p,v) on fRmax surface allowing
348    move near fRmax-fCarTolerance/2.
349  o G4Sphere.cc: bug fix in DistanceToIn(p,v) on Rmax/min surface for
350    condition of intersection with (Rmax/min-kCarTolerance) artificial
351    surface.
352- Updated unit test for G4Orb.
353
354Mar 18, 2004  V.Grichine                 geom-csg-V06-00-01
355- G4Torus.cc: bug fix in Inside(p) fixing warnings reported in
356  debug-mode of 'point p is outside'.
357
358Jan 26, 2004  V.Grichine                 geom-csg-V06-00-00
359- Converted strong exceptions in warning notifications for rare anomalous
360  conditions in DistanceToOut(p,v,..).
361- G4Cons.cc: bug fix in DistanceToIn(p,v) to resolve situations of calls
362  to DistanceToOut() for points outside.
363
364Dec 4, 2003   V.Grichine                 geom-csg-V05-02-06
365- G4Trap.cc: fixed initialisation of planes in default constructor.
366- Added new unit test for G4Sphere and new test case for G4Cons.
367
368Nov 5, 2003   V.Grichine                 geom-csg-V05-02-05
369- G4Orb[.hh.cc]: introduced relative tolerance accuracy on fRmax surface
370  in all methods.
371
372Nov 3, 2003   G.Cosmo                    geom-csg-V05-02-04
373- Code cleanup and headers inclusion review
374  (replaced by forward declarations where necessary).
375
376Nov 2, 2003   V.Grichine
377- G4Sphere, G4Orb: revision of algorithm for Phi sections in
378  method Inside().
379
380Oct 29, 2003   J.Apostolakis             geom-csg-V05-02-03
381- G4Sphere.cc: fix for in Inside() for a point with Phi angle:
382  0.5 kAngTol < phi < Phi_start
383
384Oct 28, 2003   G.Cosmo                   geom-csg-V05-02-02
385- Migrated to new G4Exception scheme.
386
387Oct 09, 2003   V.Grichine                geom-csg-V05-02-01
388- Initialise safe=0.0 in DistanceToIn/Out(p) in all solids.
389- Introduced G4Orb solid: a simple sphere with only outer radius.
390
391Sep 30, 2003   G.Cosmo                   geom-csg-V05-02-00
392- Updated GNUmakefile for unit tests, according to new structure
393  introduced in "geometry-V05-02-00".
394
395Jun 25, 2003   G.Folger                  geom-csg-V05-01-00
396- Added disclaimer of liability where needed.
397
398Feb 03, 2003   G.Cosmo                   geom-csg-V05-00-00
399- G4Cons.cc: enhanced treatment of phi-sections,
400  according to algorithm used also in G4Tubs (V.Grichine).
401- Updated unit tests.
402
403Oct 28, 2002   G.Cosmo                   geom-csg-V04-01-01
404- Added implementation of StreamInfo() to comply with new interface for
405  G4VSolid in "geommng-V04-01-03".
406- Moved inline functions to .icc files, reorganised comments for the Software
407  Reference Manual.
408- Some cosmetic changes to code formatting, removed all <TAB> characters and
409  adopted uniform code indentation.
410- Extended unit tests for G4Cons and G4Sphere (V.Grichine).
411
412Jun 26, 2002   V.Grichine                geom-csg-V04-01-00
413- G4Cons.cc: bug fixed in DistanceToIn(p,v) concerning z-crossing at the
414  edge with Rmin,Rmax.
415
416Jun 19, 2002   V.Grichine                geom-csg-V04-00-05
417- G4Sphere.cc: bug fixed in Inside() for treatment of point p on z-axis.
418  Added new condition [(rho2 || p.z()) && fDTheta < M_PI - kAngTolerance*0.5)]
419  for treating special case. Fixes problem report #378.
420
421May 15, 2002   G.Cosmo                   geom-csg-V04-00-04
422- G4Trap.cc, G4Tubs.cc: changed local enum 'kUndefined' to 'kUndef',
423  to co-work with tag "global-V04-00-06", where 'kUndefined' is now
424  defined for EAxis.
425
426Apr 16, 2002   V.Grichine                geom-csg-V04-00-03
427- G4Tubs.cc: restored "vertices" algorithm for CalculateExtent() which
428  was temporarly disabled (see reference to tag geom-solids-csg-V03-00-03).
429- Updated unit test for G4Tubs, testG4Tubs.cc.
430
431Feb 15, 2002   V.Grichine                geom-csg-V04-00-02
432- G4Para.cc: fixed bug in G4Para::Inside() in calculation of xt,
433  according to problem report #357.
434
435Jan 31, 2002   V.Grichine                geom-csg-V04-00-01
436- G4Sphere.cc: bug fix in Inside() function.
437  Fix problem report #216.
438- Updated unit test for G4Sphere.
439
440Jan 10, 2002   G.Cosmo                   geom-solids-csg-V04-00-00
441- Moved all verbosity mode warnings to G4CSGDEBUG and commented exceptions.
442- Activated G4CSGDEBUG mechanism in GNUmakefile.
443- G4Sphere.cc: fixed a problem with tolerances in the case of large Radius.
444  The case (test18) involves an Rmax = 250 000 000.00 mm
445  The ratio                         -9
446              tolerance       1.0 10              -17
447              ----------- =  ------------ = 0.4 10
448                  Rmax                +8
449                                2.5 10
450  which is smaller than the precision of doubles.
451  Solution (for DistanceToOut(), where problem occured):
452  use a flexible tolerance, equal to the maximum of (kRadTolerance, 10 * R )
453  (J.Apostolakis).
454- Upgraded unit tests and fixed warnings on gcc-2.95-2.
455
456Aug 27, 2001   V.Grichine                geom-solids-csg-V03-02-00
457- G4Sphere.cc: bug fixed in G4Sphere::SurfaceNormal for the case kNETheta.
458  Fixes problem report #290.
459
460May 18, 2001   G.Cosmo                   geom-solids-csg-V03-01-02
461- Added G4CSGDEBUG preprocessor flag to discriminate for debug verbosity
462  specific to CSG solids. Included in G4Exception of DistanceToOut() for
463  "point p is outside" in G4Box, G4Cons, G4Tubs.
464
465Apr 20, 2001   G.Cosmo                   geom-solids-csg-V03-01-01
466- Updates for migration to STL vector.
467  Modified files: G4Box.cc, G4Cons.cc, G4Para.cc, G4Sphere.cc,
468                  G4Torus.cc, G4Trap.cc, G4Trd.cc, G4Tubs.cc.
469  Require coworking with the rest of geometry-V03-01-00.
470
471Apr 18,   01   V. Grichine               geom-solids-csg-V03-01-00
472- G4Trap.cc:
473  o Fixed memory leak in CalculateExtent() for creation of vertices in
474    case of finite rotation. (courtesy of D.Williams)
475  o Removed useless inclusion of math.h.
476
477Feb 21,   01   V. Grichine               geom-solids-csg-V03-00-03
478- G4Tubs.cc:
479  o Fixed bug in function Inside(p) in computation of pPhi
480    for points at phi = 0 if the (start phi)+(delta phi) is at phi = 0.
481  o Temporarly modified CalculateExtent(...), now simply based on
482    G4Box::CalculateExtent(...). Updated unit test testG4Tubs.cc.
483
484Feb 01,   01   V. Grichine               geom-solids-csg-V03-00-02
485- G4Box: introduced checks against negative (or <2*kCarTolerance) dimensions
486  in methods SetXHalfLength(), SetYHalfLength() and SetZHalfLength().
487
488Jan 29,   00   G. Cosmo                  geom-solids-csg-V03-00-01
489- G4Box: introduced fixes to algorithm for computation of rotated vertices
490  in CalculateExtent() as previously committed in tag geom-solids-csg-V02-00-10.
491- G4Torus: extracted logic for G4PolynomialSolver now included in
492  global/HEPNumerics. Coworks with tag global-V03-00-02.
493- Added dependency to global/HEPNumerics in GNUmakefile.
494
495Jan 18,   00   V. Grichine               geom-solids-csg-V03-00-00
496- Fixed condition from (pPhi<0) to (pPhi<-0.5*kAngleTolerance) in
497  G4Tubs::Inside(p). Fixes problem report #198.
498
499Dec 07,   00   V. Grichine               geom-solids-csg-V02-00-14
500- G4Tubs.cc: corrections in phi-section algorithm of Inside(p).
501
502Dec 01,   00   G. Cosmo                  geom-solids-csg-V02-00-13
503- Increased basic number of iterations from 8 to 12 for Newton algorithm
504  in G4Torus.cc to assure root retrivial.
505
506Nov 28,   00   V. Grichine               geom-solids-csg-V02-00-12
507- Bug fixed in G4Tubs::Inside(p) for analysis of phi positioning when
508  on +-fDz surface.
509
510Nov 20,   00   G. Cosmo                  geom-solids-csg-V02-00-11
511- Fixes to remove warnings from "-Wall -ansi -pedantic" g++ compiler options:
512  o commented out variables declared and not used.
513  o fixed declaration of variables used before being initialised.
514  o fixed order of initialisation of member data in constructors.
515  o fixed usage of unsigned-int (size_t) for array indeces.
516- NB: based on tag geom-solids-csg-V02-00-09.
517
518Nov 16,   00   V. Grichine               geom-solids-csg-V02-00-10
519- G4Box.cc: introduced fixes to algorithm for computation of rotated vertices
520  in CalculateExtent(). (D.Williams)
521
522Nov 10,   00   G. Cosmo                  geom-solids-csg-V02-00-09
523- G4Torus.cc: removed debug print-out which was still included by mistake
524  in constructor.
525
526Nov 02,   00   G. Cosmo                  geom-solids-csg-V02-00-08
527- QA code revision and cleanup (+fixes from CodeWizard filtering):
528  o Removed virtual keyword from GetEntityType() concrete function.
529  o General cosmetics.
530
531Oct 31,   00   V. Grichine               geom-solids-csg-V02-00-07
532- G4Tubs::DistanceToOut(p,v,...):
533  o Initialised sr and sphi to kInfinity and re-introduced additional
534    condition on check for Rmin intersection (t2 >= 0).
535
536Oct 26,   00   G. Cosmo                  geom-solids-csg-V02-00-06
537- G4Cons::DistanceToOut(p,v): leave out warning if point is outside.
538
539Oct 23,   00   G. Cosmo                  geom-solids-csg-V02-00-05
540- G4Tubs::DistanceToOut(p,v,...):
541  o Still correction to thickness of conical surfaces. (V.Grichine)
542  o Commented-out additional condition on check for Rmin intersection
543    (t2 >= 0), recently introduced (roi2).
544    Requires further investigation !!
545- G4Torus:
546  o Introduced more stable numerical method (Newton-based) for computing
547    roots of equations in DistanceToIn() and DistanceToOut(). (E.Medernach)
548
549Oct 18,   00   V. Grichine               geom-solids-csg-V02-00-04
550- G4Cons.cc, G4Tubs.cc:
551  added check against negative distance returned by DistanceToIn/DistanceToOut.
552- G4Cons.cc:
553  added correction for thickness of conical surfaces, remarkable for big
554  opening angles, in DistanceToIn/DistanceToOut functions.
555
556Oct 05,   00   V. Grichine               geom-solids-csg-V02-00-03
557- G4Cons.cc:
558  o fix in DistanceToIn(p,v): corrected condition on conical surface to
559    consider a real projection of the conical surface thickness on XY
560    plane (0.5*kCarTolerance*secRMin instead of 0.5*kCarTolerance), when
561    dealing with cons with large opening angle.
562  o Updated unit test testG4Cons2.cc.
563
564Aug 16,   00   V. Grichine               geom-solids-csg-V02-00-02
565- G4Cons.cc:
566  o fix in constructor to check if one of the Rmin is equal to 0,
567    if so, it will be set to 1e3*kRadTolerance.
568  o Deactivated call to G4Exception in DistanceToOut(p) if p is outside,
569    replaced by simple warning.
570- G4Tubes.cc, G4Box.cc:
571  o Deactivated call to G4Exception in DistanceToOut(p) if p is outside,
572    replaced by simple warning.
573
574Aug 08,   00   V. Grichine               geom-solids-csg-V02-00-01
575- G4Cons.cc, G4Tubs.cc:
576  o fixes to DistanceToOut(p,v,...) to make roots of quadratic equations
577    more stable.
578  o added check if point is outside in G4Tubes::DistanceToOut(p),
579    some code formatting.
580
581Jul 27,   00   V. Grichine               geom-solids-csg-V02-00-00
582- G4Cons.cc:
583  o added more diagnostics in DistanceToOut(p)
584  o cosmetics changes
585- Updated unit test for G4Cons.
586
587Jun 22,   00   V. Grichine               geom-solids-csg-V01-01-04
588- G4Box.cc:
589  o added safety against call from outside in DistanceToOut(p)
590  o added more diagnostics before exception in DistanceToOut(p,v,...)
591  o cosmetics changes
592- G4Torus[.hh.cc]:
593  o added new alternative functions SolveBiQuadratic/CubicNew.
594  o fix in SolveBiQuadratic() for ambiguous expression in looping index
595    detected by Insure++.
596- Updated unit tests testG4Torus and testG4Trd.
597
598May 17,   00   V. Grichine               geom-solids-csg-V01-01-03
599
600- G4Tubs.cc:
601  o introduced fix in DistanceToOut(p,v,...) in computation of xi, yi for
602    (sphi >= -0.5*kCarTolerance). This fixes problem reports #76 and #91.
603  o added more diagnostics in case of invalid enum for DistanceToOut.
604- Updated unit test for G4Tubs.
605
606May 05,   00   V. Grichine               geom-solids-csg-V01-01-02
607
608- G4Box.cc, G4Trd.cc:
609  o modified DistanceToIn(p,v) to return 0 distance in case computed
610    value is less than 0.5*kCarTolerance.
611  o Cosmetic changes.
612- Updated unit tests for G4Box and G4Trd.
613
614Apr 11,   00   J. Allison
615
616- Removed implementations of GetExtent in most sub-classes of G4VSolid (a
617  default implementation exists in G4VSolid).
618- All implementations of DescribeYourselfTo (G4VGraphicsScene& scene) const
619  now correctly written: scene.AddThis(*this).
620
621Apr 05,   00   G. Cosmo                  geom-solids-csg-V01-01-01
622 - G4Tubs.cc: fixed bug in function Inside(p).
623              Removed (commented) in the code umproper addition of 2PI
624              to Phi-angle particle (V.Grichine)
625 - G4Hype[.hh.cc]: fixed several longstanding issues and bring methods
626                   into compliance with specifications  (D.Williams)
627 - Moved to "specific" the following classes:
628   G4ClippablePolygon, G4EnclosingCylinder, G4Hype, G4PolyPhiFace,
629   G4Polycone, G4PolyconeSide, G4Polyhedra, G4PolyhedraSide,
630   G4ReduciblePolygon, G4IntersectingCone, G4SolidExtentList,
631   G4VCSGface, G4VCSGfaceted.
632 - Moved testG4Hype.cc and testG4Polycone.cc from CSG/test to
633   specific/test
634 - Moved generic tests "SBT" and "Fred" one level up to solids/test.
635 - Organised class description comments for the Software Reference Manual
636   in all headers.
637
638Mar 23,   00   G. Cosmo                  geom-solids-csg-V01-01-00
639 - Tagged.
640
641Mar 22,   00   D. Williams
642 - G4PolyhedraSide.cc: fixed bug in G4PolyhedraSide::Normal(...).
643   The method Normal(...) (used by G4VCSGfaceted::SurfaceNormal) was not
644   filling in the argument bestDistance. This fixes a bug observed in
645   G4Polyhedra::SurfaceNormal.
646
647Mar 14,   00   V. Grichine
648 - Added diagnostics in G4Cons, G4Sphere and G4Torus in function
649   DistanceToOut(p,v,...).
650
651Mar 03,   00   G. Cosmo                   geom-solids-csg-V01-00-05
652 - Minor fixes to unit tests to make them up-to-date with recent
653   development versions (already included in tag geometry-V01-00-00a).
654 - G4PolyconeSide.cc, G4PolyhedraSide.cc: added explicit cast to G4int
655   to avoid warnings on Linux.
656
657Jan 19,   00   G. Cosmo                   geom-solids-csg-01-00-04
658 - Fixed bug in DistanceToIn(p,v). Modified files: G4Trap.cc and
659   testG4Trap.cc. (V.Grichine)
660 - Syncronized file versions with HEAD (essentially CVS headers changes).
661 - Fixes for missing migration on HEAD related to some files in test/fred
662   and test/SBT.
663 
664Nov 17,   99   J. Apostolakis             geom-solids-csg-01-00-03
665 - Tagged
666
667Nov 17,   99   V. Grichine
668 - Added initialisation to Eside "side" variable in DistanceToOut(p,v)
669   in CSG solids   -->   Problem report from D.C. Williams, BaBar
670 - A check in G4Trap Makeplane added.
671
672Nov 10,   99   J. Apostolakis             geom-solids-csg-01-00-02-cand
673 - Included  David Williams' modifications to
674   G4IntersectingCone.cc, G4PolyconeSide.cc and G4VCSGfaceted.cc
675   and to  test/SBT/SBT.cc  and  test/SBT/polycone.geant4
676
677Nov 10,   99   J. Apostolakis             geom-solids-csg-01-00-01
678 - Tagged
679
680May 18,   99   David Williams
681 - Replaced 1/DBL_MAX with DBL_MIN (valid correction, seen in tests for STL)
682   in G4PolyPhiFace.cc, G4PolyconeSide.cc and G4PolyhedraSide.cc
683
684Apr 29,   99   David Williams
685 - G4Polyhedra and G4Polycone (and G4VCSGfaceted) modified:
686         1. Implemented correct copy constructors and assignment operators.
687         2. Fix some leaks for tracks that pass exactly through an edge.
688            Some leaks still remain: particularly if a track passes through
689             a corner and between the curved edges of G4Polycone.
690         3. G4Polyhedra argument numSide changed to G4int (from G4double)
691
692Apr 13,   99   Vladimir Grichine and Simone Giani
693 - Minor consistency fix to 8 basic CSG solids:
694   Tolerance used in calculation of extent but not in one place,
695   and not another - this tripped up the client code.
696
697Feb 16,   99   David Williams
698 - Repaired bugs in G4Polycone (G4PolyconeSide.cc) as found in
699   test/testG4Polycone and missed in below.
700 - Updated definition of DistanceToIn(p) and DistanceToOut(p) to
701   return zero when the point p is on the surface of the solid.
702
703Feb 12,   99   David Williams
704 - src/G4PolyconeSide.cc updated (revision 1.4) to fix a bug discovered by
705   test/testG4Polycone.
706
707Feb   9,  99   David C. Williams      (davidw@scipp.ucsc.edu)
708 - I've committed new versions of the CSG Polycone and Polyhedra in the
709   geant4 repository, including a new utility class called
710   G4ReduciblePolygon. The new versions fix several subtle bugs which my 
711   "test3" batch geometry testing code uncovered. In addition, the new class
712   G4ReduciblePolygon is used to run strict tests on the validity of input
713   parameters.
714   To fix a bug in Polyhedra, I had to back out some fancy code that
715   allowed it to calculate intersections at a speed that was independent of
716   the number of sides. The new version now runs at a speed proportional to
717   the number of sides, and is thus much slower for polyhedras with many
718   sides. I can fix this, but I thought it would be best to get the bug fixes
719   in as soon as possible.
720
721Feb  10,  99   John Apostolakis
722 - History file created.
Note: See TracBrowser for help on using the repository browser.