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 | ------------------------- |
---|
10 | This file should be used by G4 developers and category coordinators |
---|
11 | to briefly summarize all major modifications introduced in the code |
---|
12 | and keep track of all directory-tags. |
---|
13 | It DOES NOT substitute the CVS log-message one should put at every |
---|
14 | committal in the CVS repository ! |
---|
15 | |
---|
16 | ---------------------------------------------------------- |
---|
17 | * Reverse chronological order (last date on top), please * |
---|
18 | ---------------------------------------------------------- |
---|
19 | |
---|
20 | May 25, 2010 G.Cosmo geom-csg-V09-03-01 |
---|
21 | - G4Box: more minor fixes in coding style, following code review discussion. |
---|
22 | |
---|
23 | May 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 | |
---|
29 | Dec 04, 2009 V.Grichine |
---|
30 | - G4Orb: modified DistanceToIn(p,v) to be more consistent with Inside(p). |
---|
31 | |
---|
32 | Nov 30, 2009 V.Grichine geom-csg-V09-02-08 |
---|
33 | - G4Orb: moved debug warning in DistanceToIn(p,v) within G4CSGDEBUG flag. |
---|
34 | |
---|
35 | Nov 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 | |
---|
40 | Nov 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 | |
---|
47 | Aug 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 | |
---|
52 | Jun 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 | |
---|
59 | Jun 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 | |
---|
63 | May 14, 2009 T.Nikitina geom-csg-V09-02-02 |
---|
64 | - G4Sphere: initialise flags for full sphere in constructor. |
---|
65 | |
---|
66 | May 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 | |
---|
71 | May 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 | |
---|
83 | Nov 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 | |
---|
87 | Nov 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 | |
---|
93 | Nov 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 | |
---|
101 | Sep 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 | |
---|
106 | Jul 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 | |
---|
111 | Jun 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 | |
---|
117 | Jun 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 | |
---|
124 | Apr 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 | |
---|
128 | Mar 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 | |
---|
132 | Feb 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 | |
---|
137 | Nov 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 | |
---|
141 | Oct 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 | |
---|
151 | Aug 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 | |
---|
156 | May 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 | |
---|
160 | May 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 | |
---|
169 | Oct 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 | |
---|
175 | Jun 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 | |
---|
180 | Jan 16, 2006 V.Grichine geom-csg-V08-00-00 |
---|
181 | - G4Sphere: fixed bug in DistanceToOut() for theta intersections. |
---|
182 | |
---|
183 | Nov 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 | |
---|
187 | Nov 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 | |
---|
193 | Oct 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 | |
---|
197 | Sep 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 | |
---|
202 | Aug 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 | |
---|
206 | Jul 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 | |
---|
211 | Jun 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 | |
---|
215 | Jun 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 | |
---|
223 | May 27, 2005 J.Allison geom-csg-V07-00-07 |
---|
224 | - Fixed polyhedron representation of G4Torus. |
---|
225 | |
---|
226 | May 26, 2005 G.Cosmo geom-csg-V07-00-06 |
---|
227 | - G4Box.cc: restored call to AddSolid() and replaced old AddThis() in |
---|
228 | DescribeYourselfTo(). |
---|
229 | |
---|
230 | May 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 | |
---|
235 | May 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 | |
---|
245 | Apr 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 | |
---|
249 | Apr 20, 2005 V.Grichine geom-csg-V07-00-03 |
---|
250 | - G4Trap: fix in p.x() centering to sum over all vertices. |
---|
251 | |
---|
252 | Mar 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 | |
---|
256 | Mar 03, 2005 J.Allison geom-csg-V07-00-01 |
---|
257 | - Changed AddThis() with AddSolid() for all solids in DescribeYourselfTo() |
---|
258 | implementation. |
---|
259 | |
---|
260 | Dec 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 | |
---|
265 | Nov 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 | |
---|
271 | Oct 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 | |
---|
276 | Sep 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 | |
---|
283 | Sep 16, 2004 V.Grichine geom-csg-V06-02-03 |
---|
284 | - Bug fix in G4Sphere::SurfaceNormal(p) for theta normals. |
---|
285 | |
---|
286 | Jul 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 | |
---|
294 | Jul 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 | |
---|
300 | Jul 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 | |
---|
309 | Mar 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 | |
---|
313 | Jan 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 | |
---|
319 | Dec 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 | |
---|
323 | Nov 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 | |
---|
327 | Nov 3, 2003 G.Cosmo geom-csg-V05-02-04 |
---|
328 | - Code cleanup and headers inclusion review |
---|
329 | (replaced by forward declarations where necessary). |
---|
330 | |
---|
331 | Nov 2, 2003 V.Grichine |
---|
332 | - G4Sphere, G4Orb: revision of algorithm for Phi sections in |
---|
333 | method Inside(). |
---|
334 | |
---|
335 | Oct 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 | |
---|
339 | Oct 28, 2003 G.Cosmo geom-csg-V05-02-02 |
---|
340 | - Migrated to new G4Exception scheme. |
---|
341 | |
---|
342 | Oct 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 | |
---|
346 | Sep 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 | |
---|
350 | Jun 25, 2003 G.Folger geom-csg-V05-01-00 |
---|
351 | - Added disclaimer of liability where needed. |
---|
352 | |
---|
353 | Feb 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 | |
---|
358 | Oct 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 | |
---|
367 | Jun 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 | |
---|
371 | Jun 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 | |
---|
376 | May 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 | |
---|
381 | Apr 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 | |
---|
386 | Feb 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 | |
---|
390 | Jan 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 | |
---|
395 | Jan 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 | |
---|
411 | Aug 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 | |
---|
415 | May 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 | |
---|
420 | Apr 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 | |
---|
426 | Apr 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 | |
---|
432 | Feb 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 | |
---|
439 | Feb 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 | |
---|
443 | Jan 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 | |
---|
450 | Jan 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 | |
---|
454 | Dec 07, 00 V. Grichine geom-solids-csg-V02-00-14 |
---|
455 | - G4Tubs.cc: corrections in phi-section algorithm of Inside(p). |
---|
456 | |
---|
457 | Dec 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 | |
---|
461 | Nov 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 | |
---|
465 | Nov 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 | |
---|
473 | Nov 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 | |
---|
477 | Nov 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 | |
---|
481 | Nov 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 | |
---|
486 | Oct 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 | |
---|
491 | Oct 26, 00 G. Cosmo geom-solids-csg-V02-00-06 |
---|
492 | - G4Cons::DistanceToOut(p,v): leave out warning if point is outside. |
---|
493 | |
---|
494 | Oct 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 | |
---|
504 | Oct 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 | |
---|
511 | Oct 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 | |
---|
519 | Aug 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 | |
---|
529 | Aug 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 | |
---|
536 | Jul 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 | |
---|
542 | Jun 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 | |
---|
553 | May 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 | |
---|
561 | May 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 | |
---|
569 | Apr 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 | |
---|
576 | Apr 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 | |
---|
593 | Mar 23, 00 G. Cosmo geom-solids-csg-V01-01-00 |
---|
594 | - Tagged. |
---|
595 | |
---|
596 | Mar 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 | |
---|
602 | Mar 14, 00 V. Grichine |
---|
603 | - Added diagnostics in G4Cons, G4Sphere and G4Torus in function |
---|
604 | DistanceToOut(p,v,...). |
---|
605 | |
---|
606 | Mar 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 | |
---|
612 | Jan 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 | |
---|
619 | Nov 17, 99 J. Apostolakis geom-solids-csg-01-00-03 |
---|
620 | - Tagged |
---|
621 | |
---|
622 | Nov 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 | |
---|
627 | Nov 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 | |
---|
632 | Nov 10, 99 J. Apostolakis geom-solids-csg-01-00-01 |
---|
633 | - Tagged |
---|
634 | |
---|
635 | May 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 | |
---|
639 | Apr 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 | |
---|
647 | Apr 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 | |
---|
652 | Feb 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 | |
---|
658 | Feb 12, 99 David Williams |
---|
659 | - src/G4PolyconeSide.cc updated (revision 1.4) to fix a bug discovered by |
---|
660 | test/testG4Polycone. |
---|
661 | |
---|
662 | Feb 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 | |
---|
676 | Feb 10, 99 John Apostolakis |
---|
677 | - History file created. |
---|