| [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.
|
|---|