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

Last change on this file since 1337 was 1315, checked in by garnier, 14 years ago

update geant4-09-04-beta-cand-01 interfaces-V09-03-09 vis-V09-03-08

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