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

Last change on this file since 1354 was 1347, checked in by garnier, 15 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.