[1228] | 1 | $Id: History,v 1.119 2009/11/30 10:20:53 gcosmo Exp $ |
---|
[831] | 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 | |
---|
[1228] | 20 | Nov 30, 2009 V.Grichine geom-csg-V09-02-08 |
---|
| 21 | - G4Orb: moved debug warning in DistanceToIn(p,v) within G4CSGDEBUG flag. |
---|
| 22 | |
---|
| 23 | Nov 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 | |
---|
| 28 | Nov 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 | |
---|
| 35 | Aug 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 | |
---|
| 40 | Jun 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 | |
---|
| 47 | Jun 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 | |
---|
| 51 | May 14, 2009 T.Nikitina geom-csg-V09-02-02 |
---|
| 52 | - G4Sphere: initialise flags for full sphere in constructor. |
---|
| 53 | |
---|
| 54 | May 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 | |
---|
| 59 | May 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 | |
---|
[921] | 71 | Nov 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 | |
---|
| 75 | Nov 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 | |
---|
| 81 | Nov 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 | |
---|
| 89 | Sep 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 | |
---|
[850] | 94 | Jul 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. |
---|
[831] | 98 | |
---|
[850] | 99 | Jun 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 | |
---|
| 105 | Jun 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 | |
---|
[831] | 112 | Apr 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 | |
---|
| 116 | Mar 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 | |
---|
| 120 | Feb 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 | |
---|
| 125 | Nov 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 | |
---|
| 129 | Oct 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 | |
---|
| 139 | Aug 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 | |
---|
| 144 | May 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 | |
---|
| 148 | May 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 | |
---|
| 157 | Oct 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 | |
---|
| 163 | Jun 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 | |
---|
| 168 | Jan 16, 2006 V.Grichine geom-csg-V08-00-00 |
---|
| 169 | - G4Sphere: fixed bug in DistanceToOut() for theta intersections. |
---|
| 170 | |
---|
| 171 | Nov 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 | |
---|
| 175 | Nov 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 | |
---|
| 181 | Oct 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 | |
---|
| 185 | Sep 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 | |
---|
| 190 | Aug 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 | |
---|
| 194 | Jul 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 | |
---|
| 199 | Jun 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 | |
---|
| 203 | Jun 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 | |
---|
| 211 | May 27, 2005 J.Allison geom-csg-V07-00-07 |
---|
| 212 | - Fixed polyhedron representation of G4Torus. |
---|
| 213 | |
---|
| 214 | May 26, 2005 G.Cosmo geom-csg-V07-00-06 |
---|
| 215 | - G4Box.cc: restored call to AddSolid() and replaced old AddThis() in |
---|
| 216 | DescribeYourselfTo(). |
---|
| 217 | |
---|
| 218 | May 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 | |
---|
| 223 | May 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 | |
---|
| 233 | Apr 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 | |
---|
| 237 | Apr 20, 2005 V.Grichine geom-csg-V07-00-03 |
---|
| 238 | - G4Trap: fix in p.x() centering to sum over all vertices. |
---|
| 239 | |
---|
| 240 | Mar 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 | |
---|
| 244 | Mar 03, 2005 J.Allison geom-csg-V07-00-01 |
---|
| 245 | - Changed AddThis() with AddSolid() for all solids in DescribeYourselfTo() |
---|
| 246 | implementation. |
---|
| 247 | |
---|
| 248 | Dec 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 | |
---|
| 253 | Nov 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 | |
---|
| 259 | Oct 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 | |
---|
| 264 | Sep 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 | |
---|
| 271 | Sep 16, 2004 V.Grichine geom-csg-V06-02-03 |
---|
| 272 | - Bug fix in G4Sphere::SurfaceNormal(p) for theta normals. |
---|
| 273 | |
---|
| 274 | Jul 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 | |
---|
| 282 | Jul 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 | |
---|
| 288 | Jul 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 | |
---|
| 297 | Mar 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 | |
---|
| 301 | Jan 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 | |
---|
| 307 | Dec 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 | |
---|
| 311 | Nov 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 | |
---|
| 315 | Nov 3, 2003 G.Cosmo geom-csg-V05-02-04 |
---|
| 316 | - Code cleanup and headers inclusion review |
---|
| 317 | (replaced by forward declarations where necessary). |
---|
| 318 | |
---|
| 319 | Nov 2, 2003 V.Grichine |
---|
| 320 | - G4Sphere, G4Orb: revision of algorithm for Phi sections in |
---|
| 321 | method Inside(). |
---|
| 322 | |
---|
| 323 | Oct 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 | |
---|
| 327 | Oct 28, 2003 G.Cosmo geom-csg-V05-02-02 |
---|
| 328 | - Migrated to new G4Exception scheme. |
---|
| 329 | |
---|
| 330 | Oct 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 | |
---|
| 334 | Sep 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 | |
---|
| 338 | Jun 25, 2003 G.Folger geom-csg-V05-01-00 |
---|
| 339 | - Added disclaimer of liability where needed. |
---|
| 340 | |
---|
| 341 | Feb 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 | |
---|
| 346 | Oct 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 | |
---|
| 355 | Jun 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 | |
---|
| 359 | Jun 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 | |
---|
| 364 | May 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 | |
---|
| 369 | Apr 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 | |
---|
| 374 | Feb 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 | |
---|
| 378 | Jan 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 | |
---|
| 383 | Jan 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 | |
---|
| 399 | Aug 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 | |
---|
| 403 | May 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 | |
---|
| 408 | Apr 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 | |
---|
| 414 | Apr 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 | |
---|
| 420 | Feb 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 | |
---|
| 427 | Feb 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 | |
---|
| 431 | Jan 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 | |
---|
| 438 | Jan 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 | |
---|
| 442 | Dec 07, 00 V. Grichine geom-solids-csg-V02-00-14 |
---|
| 443 | - G4Tubs.cc: corrections in phi-section algorithm of Inside(p). |
---|
| 444 | |
---|
| 445 | Dec 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 | |
---|
| 449 | Nov 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 | |
---|
| 453 | Nov 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 | |
---|
| 461 | Nov 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 | |
---|
| 465 | Nov 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 | |
---|
| 469 | Nov 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 | |
---|
| 474 | Oct 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 | |
---|
| 479 | Oct 26, 00 G. Cosmo geom-solids-csg-V02-00-06 |
---|
| 480 | - G4Cons::DistanceToOut(p,v): leave out warning if point is outside. |
---|
| 481 | |
---|
| 482 | Oct 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 | |
---|
| 492 | Oct 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 | |
---|
| 499 | Oct 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 | |
---|
| 507 | Aug 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 | |
---|
| 517 | Aug 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 | |
---|
| 524 | Jul 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 | |
---|
| 530 | Jun 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 | |
---|
| 541 | May 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 | |
---|
| 549 | May 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 | |
---|
| 557 | Apr 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 | |
---|
| 564 | Apr 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 | |
---|
| 581 | Mar 23, 00 G. Cosmo geom-solids-csg-V01-01-00 |
---|
| 582 | - Tagged. |
---|
| 583 | |
---|
| 584 | Mar 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 | |
---|
| 590 | Mar 14, 00 V. Grichine |
---|
| 591 | - Added diagnostics in G4Cons, G4Sphere and G4Torus in function |
---|
| 592 | DistanceToOut(p,v,...). |
---|
| 593 | |
---|
| 594 | Mar 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 | |
---|
| 600 | Jan 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 | |
---|
| 607 | Nov 17, 99 J. Apostolakis geom-solids-csg-01-00-03 |
---|
| 608 | - Tagged |
---|
| 609 | |
---|
| 610 | Nov 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 | |
---|
| 615 | Nov 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 | |
---|
| 620 | Nov 10, 99 J. Apostolakis geom-solids-csg-01-00-01 |
---|
| 621 | - Tagged |
---|
| 622 | |
---|
| 623 | May 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 | |
---|
| 627 | Apr 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 | |
---|
| 635 | Apr 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 | |
---|
| 640 | Feb 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 | |
---|
| 646 | Feb 12, 99 David Williams |
---|
| 647 | - src/G4PolyconeSide.cc updated (revision 1.4) to fix a bug discovered by |
---|
| 648 | test/testG4Polycone. |
---|
| 649 | |
---|
| 650 | Feb 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 | |
---|
| 664 | Feb 10, 99 John Apostolakis |
---|
| 665 | - History file created. |
---|