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

Last change on this file since 1253 was 1228, checked in by garnier, 14 years ago

update geant4.9.3 tag

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