Geant4 Cross Reference |
1 # Category geom-specific History << 1 ------------------------------------------------------------------- 2 2 3 See `CONTRIBUTING.rst` for details of **requir << 3 ========================================================= 4 which **must** added in reverse chronological << 4 Geant4 - an Object-Oriented Toolkit for Simulation in HEP 5 It must **not** be used as a substitute for wr << 5 ========================================================= >> 6 >> 7 Sub-Category History file >> 8 ------------------------- >> 9 This file should be used by G4 developers and category coordinators >> 10 to briefly summarize all major modifications introduced in the code >> 11 and keep track of all directory-tags. >> 12 It DOES NOT substitute the log-message one should put at every >> 13 committal in the source repository ! >> 14 >> 15 ---------------------------------------------------------- >> 16 * Reverse chronological order (last date on top), please * >> 17 ---------------------------------------------------------- 6 18 7 ---------------------------------------------- << 19 13-January-2021 G.Cosmo (geom-specific-V10-06-11) 8 << 9 ## 2024-10-01 Evgueni Tcherniaev (geom-specifi << 10 - G4GenericTrap: Fixed minor defect reported b << 11 << 12 ## 2024-07-18 Alvaro Tolosa-Delgado (geom-spec << 13 - Remove internal state of G4TwistedTubs and G << 14 << 15 ## 2024-07-10 Evgueni Tcherniaev (geom-specifi << 16 - G4ExtrudedSolid: Fixed defects reported by C << 17 << 18 ## 2024-07-08 Gabriele Cosmo (geom-specific-V1 << 19 - Fixed reported Coverity defect; in G4Voxeliz << 20 plain vector copy in methods BuildReduceVoxe << 21 BuildBoundaries() and CreateMiniVoxels(..). << 22 << 23 ## 2024-05-29 Evgueni Tcherniaev (geom-specifi << 24 - Added new methods GetNumOfConstituents() and << 25 << 26 ## 2024-05-27 Evgueni Tcherniaev (geom-specifi << 27 - Completely revised G4GeneriTrap, it addresse << 28 << 29 ## 2024-05-26 Evgueni Tcherniaev (geom-specifi << 30 - New testG4GenericTrap.cc << 31 << 32 ## 2024-04-02 Gabriele Cosmo (geom-specific-V1 << 33 - Applied trivial clang-tidy fixes to classes, << 34 'default' keywords. << 35 << 36 ## 2024-02-01 Gabriele Cosmo (geom-specific-V1 << 37 - Use std::size_t for array sizes in G4Polyhed << 38 << 39 ## 2023-07-10 Evgueni Tcherniaev (geom-specifi << 40 - Fixed bounding box calculation in G4VTwisted << 41 << 42 ## 2023-06-16 Stephan Hageboeck (geom-specific << 43 - Fix an uninitialised value in G4VCSGfaceted: << 44 << 45 ## 2023-06-12 Gabriele Cosmo (geom-specific-V1 << 46 - Use const iterator in G4Voxelizer::GetPointV << 47 - Fixed use of index in G4Tet::GetPointOnSurfa << 48 << 49 ## 2023-05-10 Gabriele Cosmo (geom-specific-V1 << 50 - Applied clang-tidy fixes (readability, moder << 51 << 52 ## 2023-03-20 Gabriele Cosmo (geom-specific-V1 << 53 - Fixed more potential uninitialised values in << 54 G4SolidExtentList and G4VTwistSurface. << 55 << 56 ## 2023-03-13 Gabriele Cosmo (geom-specific-V1 << 57 - Fixed potential uninitialised value for boun << 58 G4VTwistSurface::GetBoundaryAtPZ(). << 59 << 60 ## 2023-01-02 Evgueni Tcherniaev (geom-specifi << 61 - G4QuadrangularFacet: Fixed warning message << 62 << 63 ## 2022-11-10 Gabriele Cosmo (geom-specific-V1 << 64 - Fixed compilation warnings for implicit type << 65 << 66 ## 2022-10-05 Gabriele Cosmo (geom-specific-V1 << 67 - Fixed compilation warnings in Intel/icx comp << 68 but never used. << 69 << 70 ## 2022-04-03 Evgueni Tcherniaev (geom-specifi << 71 - G4GenericTrap.cc, G4UGenericTrap.cc, G4UExtr << 72 G4TessellatedSolid.cc, G4TessellatedSolid.cc << 73 revision of CreatePolyhedron() << 74 << 75 ## 2022-02-04 Evgueni Tcherniaev (geom-specifi << 76 - G4VTwistedFaceted: used numerical evaluation << 77 integral to calculate lateral face surface a << 78 << 79 ## 2022-02-01 Evgueni Tcherniaev (geom-specifi << 80 - G4ExtrudedSolid, G4UExtrudedSolid: added def << 81 parameters in the constructor with two z-sec << 82 - G4ExtrudedSolid::ZSection, G4UExtrudedSolid: << 83 added default constructor << 84 << 85 ## 2022-01-26 Evgueni Tcherniaev (geom-specifi << 86 - G4GenericTrap::GetCubicVolume(): calculation << 87 using analytical expression; removed private << 88 GetFaceCubicVolume(); << 89 - G4GenericTrap::GetSurfaceArea(): improved ca << 90 of the area of lateral faces; private functi << 91 GetFaceSurfaceArea(), GetTwistedFaceSurfaceA << 92 replaced with private function GetLateralFac << 93 << 94 ## 2022-01-21 Evgueni Tcherniaev (geom-specifi << 95 - G4Ellipsoid::LateralSurfaceArea(): Enhanced << 96 the lateral surface area << 97 << 98 ## 2022-01-11 Evgueni Tcherniaev (geom-specifi << 99 - G4VTwistedFaceted: fCubicVolume, fSurfaceAre << 100 GetCubicVolume(), GetSurfaceArea() moved to << 101 - G4VTwistedFaceted, G4TwistedBox, G4TwistedTr << 102 calculation of volume and surface area << 103 << 104 ## 2022-01-06 Evgueni Tcherniaev (geom-specifi << 105 - G4TwistedTubs: Implemented GetSurfaceArea() << 106 analytical expressions; added private functi << 107 GetLateralArea() and GetPhiCutArea() << 108 << 109 ## 2021-12-19 Evgueni Tcherniaev (geom-specifi << 110 - G4Hype: Used analytical expression in GetCub << 111 and GetSurfaceArea() << 112 << 113 ## 2021-12-10 Ben Morgan (geom-specific-V11-00 << 114 - Change to new Markdown History format << 115 << 116 --- << 117 << 118 # History entries prior to 11.0 << 119 << 120 03-December-2021 E.Tcherniaev (geom-speci << 121 - G4TwistedTubs: Accurate calculation of the b << 122 BoundingLimits() and GetExtent(), fixing mea << 123 penalty. Addressing problem report #2450. << 124 - G4TwistedTubs, G4VTwistedFaceted: Fixed GetC << 125 << 126 15-October-2021 E.Tcherniaev (geom-speci << 127 - G4Tet, G4UTet: Added SetBoundingLimits() << 128 << 129 06-October-2021 E.Tcherniaev (geom-speci << 130 - G4Tet: some changes in calculation of boundi << 131 - G4UTet: added CheckDegeneracy() and SetVerti << 132 << 133 27-September-2021 E.Tcherniaev (geom-speci << 134 - Added degeneracyFlag to the list of paramete << 135 it addresses first part of the problem repor << 136 << 137 24-September-2021 E.Tcherniaev (geom-speci << 138 - Implemented G4TesselatedSolid::GetFacetIndex << 139 << 140 10-September-2021 E.Tcherniaev (geom-speci << 141 - Implemented G4TesselatedSolid::CheckStructur << 142 - Optimisation in G4TessellatedSolid::SetExtre << 143 shuffle of vertices and checking of six extr << 144 << 145 21-July-2021 E.Tcherniaev (geom-speci << 146 - More accurate calculation of distance from p << 147 in G4TriangularFacet, it addresses problem r << 148 << 149 25-June-2021 G.Cosmo (geom-speci << 150 - Added missing accessor in G4UTet. << 151 << 152 12-May-2021 E.Tcherniaev (geom-speci << 153 - Reimplemented CreatePolyhedron() in << 154 G4Polyhedra, G4Polycone, G4GenericPolycone, << 155 G4UPolyhedra, G4UPolycone, G4UGenericPolycon << 156 << 157 30-April-2021 G.Cosmo (geom-speci << 158 - Fixed use of conversion factor in G4UPolyhed << 159 polyhedra constructs. << 160 << 161 19-April-2021 E.Tcherniaev (geom-speci << 162 - G4Polyhedra, G4Polycone: Fix calculation of << 163 of negative phiStart, it addresses also prob << 164 << 165 30-March-2021 B.Morgan (geom-speci << 166 - Migrate sources.cmake to modular build API << 167 << 168 18-March-2021 E.Tcherniaev (geom-speci << 169 - Fix calculation of bounding box position in << 170 it addresses problem report #2301 << 171 << 172 13-January-2021 G.Cosmo (geom-speci << 173 - Reduce cases of bad speculation in G4Polyhed 20 - Reduce cases of bad speculation in G4PolyhedraSide::Inside() and 174 G4PolyPhiFace::InsideEdges(), based on repor 21 G4PolyPhiFace::InsideEdges(), based on report in profiling analysis 175 by G.Amadio. 22 by G.Amadio. 176 23 177 30-October-2020 E.Tcherniaev (geom-speci 24 30-October-2020 E.Tcherniaev (geom-specific-V10-06-10) 178 - G4Polycone: Revised GetPointOnSurface(); 25 - G4Polycone: Revised GetPointOnSurface(); 179 Added protected auxiliary method SetSurfaceE 26 Added protected auxiliary method SetSurfaceElements(); 180 Removed GetPointOnCone(), GetPointOnTubs(), 27 Removed GetPointOnCone(), GetPointOnTubs(), GetPointOnCut(), GetPointOnRing(); 181 - G4GenericPolycone: Revised GetPointOnSurface 28 - G4GenericPolycone: Revised GetPointOnSurface(); 182 Added protected auxiliary method SetSurfaceE 29 Added protected auxiliary method SetSurfaceElements(); 183 - G4Polyhedra: Revised GetPointOnSurface(); 30 - G4Polyhedra: Revised GetPointOnSurface(); 184 Added protected auxiliary method SetSurfaceE 31 Added protected auxiliary method SetSurfaceElements(); 185 Removed GetPointOnPlane(), GetPointOnTriangl 32 Removed GetPointOnPlane(), GetPointOnTriangle(); 186 33 187 01-October-2020 E.Tcherniaev (geom-speci 34 01-October-2020 E.Tcherniaev (geom-specific-V10-06-09) 188 - G4Polycone, G4GenericPolycone, G4Polyhedra: 35 - G4Polycone, G4GenericPolycone, G4Polyhedra: 189 implemented GetSurfaceArea(), GetCubicVolume 36 implemented GetSurfaceArea(), GetCubicVolume(). 190 37 191 May 21, 2020 Guilherme Lima (geom-speci 38 May 21, 2020 Guilherme Lima (geom-specific-V10-06-08) 192 ---------------------------- 39 ---------------------------- 193 - Fix constructor signatures in G4UExtrudedSol 40 - Fix constructor signatures in G4UExtrudedSolid wrappers, to match those in G4 version. 194 There were missing const and reference quali 41 There were missing const and reference qualifiers in non-POD parameters. 195 42 196 30-April-2020 G.Cosmo (geom-speci 43 30-April-2020 G.Cosmo (geom-specific-V10-06-07) 197 - Adopt new convention for location of headers 44 - Adopt new convention for location of headers in VecGeom for all wrappers. 198 45 199 09-April-2020 E.Tcherniaev (geom-speci 46 09-April-2020 E.Tcherniaev (geom-specific-V10-06-06) 200 - Added G4GenericTrap::GetTwistedFaceSurfaceAr 47 - Added G4GenericTrap::GetTwistedFaceSurfaceArea(). 201 - testG4GenericTrap.cc: fixed test for calcula 48 - testG4GenericTrap.cc: fixed test for calculation of surface area. 202 - testG4ExtrudedSolid.cc: fixed assert stateme 49 - testG4ExtrudedSolid.cc: fixed assert statements for cases where 203 point flys along the surface (DistanceToIn() 50 point flys along the surface (DistanceToIn() returns kInfinity). 204 51 205 17-January-2020 E.Tcherniaev (geom-speci 52 17-January-2020 E.Tcherniaev (geom-specific-V10-06-05) 206 - Implemented G4Tet::SetVertices(), it address 53 - Implemented G4Tet::SetVertices(), it addresses request made 207 at Geant4 Technical Forum. 54 at Geant4 Technical Forum. 208 55 209 14-January-2020 Gabriele Cosmo (geom-speci 56 14-January-2020 Gabriele Cosmo (geom-specific-V10-06-04) 210 - Added protection in G4VFacet header for doub 57 - Added protection in G4VFacet header for double definition of global 211 symbols from Windows Kits code. 58 symbols from Windows Kits code. 212 59 213 08-January-2020 E.Tcherniaev (geom-speci 60 08-January-2020 E.Tcherniaev (geom-specific-V10-06-03) 214 - Complete revision of G4Tet, speed up, new te 61 - Complete revision of G4Tet, speed up, new testG4Tet.cc. 215 It also fixes issues spotted by new unit tes 62 It also fixes issues spotted by new unit test. 216 63 217 16-December-2019 E.Tcherniaev (geom-speci 64 16-December-2019 E.Tcherniaev (geom-specific-V10-06-02) 218 - Complete revision of G4Ellipsoid, it fixes i 65 - Complete revision of G4Ellipsoid, it fixes issues with former 219 implementation, in particular it addresses p 66 implementation, in particular it addresses problem report #2206. 220 30%-70% speed-up in all main methods. << 67 30%-70% speed-up in all main methods. 221 68 222 11-December-2019 B.Morgan (geom-speci 69 11-December-2019 B.Morgan (geom-specific-V10-06-01) 223 - Cleanup CMake build, removing obsolete granu 70 - Cleanup CMake build, removing obsolete granular library options and 224 explicit include_directories. 71 explicit include_directories. 225 72 226 10-December-2019 G.Cosmo (geom-speci 73 10-December-2019 G.Cosmo (geom-specific-V10-06-00) 227 - Re-established parameterisation mechanism fo 74 - Re-established parameterisation mechanism for G4Tet and G4UTet which was 228 removed by mistake. Addressing problem repor 75 removed by mistake. Addressing problem report #2209. 229 76 230 26-November-2019 G.Cosmo (geom-speci 77 26-November-2019 G.Cosmo (geom-specific-V10-05-21) 231 - Fixed cases of implicit type conversions fro 78 - Fixed cases of implicit type conversions from size_t to G4int. 232 79 233 05-November-2019 E.Tcherniaev (geom-speci 80 05-November-2019 E.Tcherniaev (geom-specific-V10-05-20) 234 - G4TesselatedSolid.cc: fixed minor Coverity d 81 - G4TesselatedSolid.cc: fixed minor Coverity defect (uninitialized array) 235 82 236 07-October-2019 E.Tcherniaev (geom-speci 83 07-October-2019 E.Tcherniaev (geom-specific-V10-05-19) 237 - G4TesselatedSolid.cc: fixed minor Coverity d 84 - G4TesselatedSolid.cc: fixed minor Coverity defect 238 85 239 16-September-2019 G.Cosmo (geom-speci 86 16-September-2019 G.Cosmo (geom-specific-V10-05-18) 240 - Rationalise header inclusions for faceted so 87 - Rationalise header inclusions for faceted solids. 241 88 242 06-September-2019 G.Cosmo (geom-speci 89 06-September-2019 G.Cosmo (geom-specific-V10-05-17) 243 - Removed unnecessary forward declaration in G 90 - Removed unnecessary forward declaration in G4VFacet header. 244 91 245 29-August-2019 G.Cosmo (geom-speci 92 29-August-2019 G.Cosmo (geom-specific-V10-05-16) 246 - Minor c++11 revision and headers cleanup. Co 93 - Minor c++11 revision and headers cleanup. Code formatting. 247 - Use pre-increment wherever possible. 94 - Use pre-increment wherever possible. 248 95 249 19-August-2019 G.Lima (geom-speci 96 19-August-2019 G.Lima (geom-specific-V10-05-15) 250 - G4ExtrudedSolid: fixed a bug in DistanceToOu 97 - G4ExtrudedSolid: fixed a bug in DistanceToOut(), affecting extruded solids 251 defined off-center along the z-axis. 98 defined off-center along the z-axis. 252 99 253 19-August-2019 G.Cosmo (geom-speci 100 19-August-2019 G.Cosmo (geom-specific-V10-05-14) 254 - G4GenericTrap: fixed compilation warnings fo 101 - G4GenericTrap: fixed compilation warnings for variable shadowing on clang-8. 255 102 256 13-August-2019 G.Cosmo (geom-speci 103 13-August-2019 G.Cosmo (geom-specific-V10-05-13) 257 - Enabled wrappers for VecGeom implementation 104 - Enabled wrappers for VecGeom implementation of G4EllipticalTube, 258 G4EllipticalCone and G4Ellipsoid. 105 G4EllipticalCone and G4Ellipsoid. 259 106 260 10-July-2019 E.Tcherniaev (geom-speci 107 10-July-2019 E.Tcherniaev (geom-specific-V10-05-12) 261 - Fixed G4UExtrudedSolid::CreatePolyhedron(). 108 - Fixed G4UExtrudedSolid::CreatePolyhedron(). 262 Addressing visualization part of the problem 109 Addressing visualization part of the problem report #2171. 263 110 264 04-July-2019 G.Cosmo (geom-speci 111 04-July-2019 G.Cosmo (geom-specific-V10-05-11) 265 - Avoid defining kCarTolerance as 'static cons 112 - Avoid defining kCarTolerance as 'static const' in G4VFacet. 266 Addressing problem report #2172. 113 Addressing problem report #2172. 267 114 268 11-June-2019 E.Tcherniaev (geom-speci 115 11-June-2019 E.Tcherniaev (geom-specific-V10-05-10) 269 - Use GetVertices() instead of GetParametersLi 116 - Use GetVertices() instead of GetParametersList() in the wrapper G4UTet. 270 117 271 29-May-2019 G.Cosmo (geom-speci 118 29-May-2019 G.Cosmo (geom-specific-V10-05-09) 272 - Fixed minor Coverity defects. 119 - Fixed minor Coverity defects. 273 120 274 20-May-2019 G.Cosmo (geom-speci 121 20-May-2019 G.Cosmo (geom-specific-V10-05-08) 275 - Defined move constructor and move assignment 122 - Defined move constructor and move assignment operator for G4TriangularFacet. 276 123 277 14-May-2019 B.Morgan (geom-speci 124 14-May-2019 B.Morgan (geom-specific-V10-05-07) 278 - Add inclusion of new G4GeomTypes.hh header t 125 - Add inclusion of new G4GeomTypes.hh header to those headers allowing 279 VecGeom replacement. 126 VecGeom replacement. 280 - See also geommng-10-05-05 127 - See also geommng-10-05-05 281 128 282 23-April-2019 G.Cosmo (geom-speci 129 23-April-2019 G.Cosmo (geom-specific-V10-05-06) 283 - Modified G4PolyconeSide and G4PolyhedraSide 130 - Modified G4PolyconeSide and G4PolyhedraSide to use only trivial types for 284 MT splitted data in G4PlSideData and G4PhSid 131 MT splitted data in G4PlSideData and G4PhSideData respectively. 285 132 286 16-April-2019 G.Cosmo (geom-speci 133 16-April-2019 G.Cosmo (geom-specific-V10-05-05) 287 - Protected check in G4TwistTubsSide::Distance 134 - Protected check in G4TwistTubsSide::DistanceToPlane() withing debug flag. 288 135 289 4-April-2019 G.Cosmo (geom-speci 136 4-April-2019 G.Cosmo (geom-specific-V10-05-04) 290 - Enabled wrapper for VecGeom implementation o 137 - Enabled wrapper for VecGeom implementation of G4GenericPolycone. 291 138 292 15-February-2019 E.Tcherniaev (geom-speci 139 15-February-2019 E.Tcherniaev (geom-specific-V10-05-03) 293 - Accurate calculation of radical in G4Interse 140 - Accurate calculation of radical in G4IntersectingCone. 294 It addresses the problem report #2111. 141 It addresses the problem report #2111. 295 142 296 4-February-2019 G.Cosmo (geom-speci 143 4-February-2019 G.Cosmo (geom-specific-V10-05-02) 297 - Fix in G4EllipticalTube::CheckParameters() f 144 - Fix in G4EllipticalTube::CheckParameters() for typo in condition. 298 145 299 30-January-2019 G.Cosmo (geom-speci 146 30-January-2019 G.Cosmo (geom-specific-V10-05-01) 300 - Disabled precise computation of extent and u 147 - Disabled precise computation of extent and use simple bounding-box 301 in CalculateExtent() for G4Tet and G4Tessell 148 in CalculateExtent() for G4Tet and G4TessellatedSolid, to speed up 302 intialisation in setups with relatively comp 149 intialisation in setups with relatively complex meshes. 303 - Apply bounding-box calculation for extent al 150 - Apply bounding-box calculation for extent also for corresponding 304 VecGeom wrappers. 151 VecGeom wrappers. 305 152 306 24-January-2019 E.Tcherniaev (geom-speci 153 24-January-2019 E.Tcherniaev (geom-specific-V10-05-00) 307 - Completely revised, more robust and performa 154 - Completely revised, more robust and performant G4EllipticalTube; 308 new exhaustive test/testEllipticalTube.cc ba 155 new exhaustive test/testEllipticalTube.cc based on Shape Conventions. 309 156 310 20-September-2018 G.Cosmo (geom-speci 157 20-September-2018 G.Cosmo (geom-specific-V10-04-15) 311 - Make G4UPolycone wrapper inheriting from vec 158 - Make G4UPolycone wrapper inheriting from vecgeom::GenericUnplacedPolycone, 312 following the latest changes in VecGeom. 159 following the latest changes in VecGeom. 313 160 314 13-September-2018 G.Cosmo (geom-speci 161 13-September-2018 G.Cosmo (geom-specific-V10-04-14) 315 - G4UTessellatedSolid, G4UExtrudedSolid: remov 162 - G4UTessellatedSolid, G4UExtrudedSolid: removed leftover use of 316 UVector3 and replaced with U3Vector. 163 UVector3 and replaced with U3Vector. 317 164 318 23-August-2018 G.Cosmo (geom-speci 165 23-August-2018 G.Cosmo (geom-specific-V10-04-13) 319 - Enabled VecGeom wrapper for G4Tet. 166 - Enabled VecGeom wrapper for G4Tet. 320 167 321 10-August-2018 A.Gheata (geom-speci 168 10-August-2018 A.Gheata (geom-specific-V10-04-12) 322 - Make G4UHype wrapper inheriting from vecgeom 169 - Make G4UHype wrapper inheriting from vecgeom::GenericUnplacedHype, 323 following the latest changes in VecGeom. 170 following the latest changes in VecGeom. 324 171 325 12-July-2018 G.Cosmo (geom-speci 172 12-July-2018 G.Cosmo (geom-specific-V10-04-11) 326 - Removed G4SolidsWorkspacePool class. Adapted 173 - Removed G4SolidsWorkspacePool class. Adapted G4SolidsWorkspace to 327 use templated class G4TWorkspacePool. 174 use templated class G4TWorkspacePool. 328 - Coworks with tags in geometry/volumes, run a 175 - Coworks with tags in geometry/volumes, run and visualization/management. 329 176 330 25-Jun-2018 G.Cosmo (geom-speci 177 25-Jun-2018 G.Cosmo (geom-specific-V10-04-10) 331 - Use dynamic_cast to attempt fix for spurious 178 - Use dynamic_cast to attempt fix for spurious compilation warnings on 332 CentOS7/gcc-5.3 on G4UTessellatedSolid wrapp 179 CentOS7/gcc-5.3 on G4UTessellatedSolid wrapper. 333 180 334 17-May-2018 J.Madsen (geom-speci 181 17-May-2018 J.Madsen (geom-specific-V10-04-09) 335 - Updated "thread-local-static-var" model to 182 - Updated "thread-local-static-var" model to 336 "function-returning-thread-local-static-refe 183 "function-returning-thread-local-static-reference" model 337 which fixes Windows DLL + MT 184 which fixes Windows DLL + MT 338 185 339 11-April-2018 G.Cosmo (geom-speci 186 11-April-2018 G.Cosmo (geom-specific-V10-04-08) 340 - Replaced USOLIDS_LIBRARIES with VECGEOM_LIBR 187 - Replaced USOLIDS_LIBRARIES with VECGEOM_LIBRARIES in sources.cmake. 341 188 342 13-February-2018 E.Tcherniaev (geom-speci 189 13-February-2018 E.Tcherniaev (geom-specific-V10-04-07) 343 - Corrected conversion of input parameters to 190 - Corrected conversion of input parameters to internal structure (used for 344 caching for adoption in GDML persistency) in 191 caching for adoption in GDML persistency) in G4UPolycone and G4UPolyhedra 345 wrappers. 192 wrappers. 346 193 347 9-February-2018 G.Cosmo (geom-speci 194 9-February-2018 G.Cosmo (geom-specific-V10-04-06) 348 - Caching facets and vertices in G4UTessellate 195 - Caching facets and vertices in G4UTessellatedSolid wrapper for properly 349 treating indexing in facets. 196 treating indexing in facets. 350 197 351 31-January-2018 G.Cosmo (geom-speci 198 31-January-2018 G.Cosmo (geom-specific-V10-04-05) 352 - Corrected use of facets indeces in G4UTessel 199 - Corrected use of facets indeces in G4UTessellatedSolid for visualization. 353 - Minor cleanup in G4TessellatedSolid::CreateP 200 - Minor cleanup in G4TessellatedSolid::CreatePolyhedron(), no functional 354 changes. 201 changes. 355 202 356 15-January-2018 G.Cosmo (geom-speci 203 15-January-2018 G.Cosmo (geom-specific-V10-04-04) 357 - Added validity checks in G4UTessellatedSolid 204 - Added validity checks in G4UTessellatedSolid::AddFacet(). 358 205 359 11-January-2018 G.Cosmo (geom-speci 206 11-January-2018 G.Cosmo (geom-specific-V10-04-03) 360 - Added and enabled VecGeom wrapper for G4Tess 207 - Added and enabled VecGeom wrapper for G4TessellatedSolid. 361 Requires tags cmake-V10-04-01 and config-V10 208 Requires tags cmake-V10-04-01 and config-V10-04-00. 362 209 363 20-December-2017 G.Cosmo (geom-speci 210 20-December-2017 G.Cosmo (geom-specific-V10-04-02) 364 - Enabled VecGeom wrappers for G4ExtrudedSolid 211 - Enabled VecGeom wrappers for G4ExtrudedSolid and G4Hype. 365 212 366 13-December-2017 E.Tcherniaev (geom-speci 213 13-December-2017 E.Tcherniaev (geom-specific-V10-04-01) 367 - Removed redundant data initialistion in G4Ex << 214 - Removed redundant data initialistion in G4ExtrudedSolid constructors. 368 215 369 11-December-2017 E.Tcherniaev (geom-speci 216 11-December-2017 E.Tcherniaev (geom-specific-V10-04-00) 370 - Added missing initialisation of two data-mem 217 - Added missing initialisation of two data-members in copy-ctor and 371 assignment operator of G4ExtrudedSolid. Addr 218 assignment operator of G4ExtrudedSolid. Addressing problem report #2016. 372 219 373 22-November-2017 G.Cosmo (geom-specif 220 22-November-2017 G.Cosmo (geom-specific-V10-03-25) 374 - Fix in SurfaceNormal() for G4ExtrudedSolid t 221 - Fix in SurfaceNormal() for G4ExtrudedSolid to assure explicit 375 counting of the surfaces where the point is 222 counting of the surfaces where the point is placed on edg 376 223 377 2-November-2017 G.Cosmo (geom-specif 224 2-November-2017 G.Cosmo (geom-specific-V10-03-24) 378 - Fixed compilation warning introduced with la 225 - Fixed compilation warning introduced with last tag. 379 226 380 31-October-2017 E.Tcherniaev (geom-specif 227 31-October-2017 E.Tcherniaev (geom-specific-V10-03-23) 381 - Added specialised implementation for constru 228 - Added specialised implementation for constructs defining a non-convex right 382 prism in G4ExtrudedSolid. 229 prism in G4ExtrudedSolid. 383 230 384 20-October-2017 G.Cosmo (geom-specif 231 20-October-2017 G.Cosmo (geom-specific-V10-03-22) 385 - G4TessellatedSolid: print also solid's name 232 - G4TessellatedSolid: print also solid's name in StreamInfo(). 386 233 387 17-October-2017 G.Cosmo (geom-specif 234 17-October-2017 G.Cosmo (geom-specific-V10-03-21) 388 - Added VecGeom wrapper G4UHype for G4Hype, no 235 - Added VecGeom wrapper G4UHype for G4Hype, not yet activated, pending 389 fixes in VecGeom. 236 fixes in VecGeom. 390 237 391 16-October-2017 G.Cosmo (geom-specif 238 16-October-2017 G.Cosmo (geom-specific-V10-03-20) 392 - Temporarly disabled wrappers for G4Tet and G 239 - Temporarly disabled wrappers for G4Tet and G4GenericPolycone, pending 393 their corresponding implementation in VecGeo 240 their corresponding implementation in VecGeom. 394 241 395 28-September-2017 G.Cosmo (geom-specif 242 28-September-2017 G.Cosmo (geom-specific-V10-03-19) 396 - Corrected initialisation of polyhedra by ver 243 - Corrected initialisation of polyhedra by vertices in G4UPolyhdra wrapper 397 following the changes in VecGeom. 244 following the changes in VecGeom. 398 245 399 15-September-2017 G.Cosmo (geom-specif 246 15-September-2017 G.Cosmo (geom-specific-V10-03-18) 400 - G4SolidsWorkspacePool: use DLL export flag f 247 - G4SolidsWorkspacePool: use DLL export flag for static thread-local 401 symbol of the workspace. 248 symbol of the workspace. 402 249 403 12-September-2017 G.Cosmo (geom-specif 250 12-September-2017 G.Cosmo (geom-specific-V10-03-17) 404 - G4Voxelizer: directly set components for bou 251 - G4Voxelizer: directly set components for bounding-box instead of 405 recreating it in BuildBoundingBox(..). 252 recreating it in BuildBoundingBox(..). 406 253 407 8-September-2017 E.Tcherniaev (geom-specif 254 8-September-2017 E.Tcherniaev (geom-specific-V10-03-16) 408 - Added specialised implementation for constru 255 - Added specialised implementation for constructs defining a convex right 409 prism in G4ExtrudedSolid. 256 prism in G4ExtrudedSolid. 410 257 411 4-September-2017 G.Cosmo (geom-specif 258 4-September-2017 G.Cosmo (geom-specific-V10-03-15, 14) 412 - Temporarly disabled wrapper for extruded-sol 259 - Temporarly disabled wrapper for extruded-solid, pending implementation 413 of extruded-solid in VecGeom. 260 of extruded-solid in VecGeom. 414 261 415 16-August-2017 J.Allison (geom-specif 262 16-August-2017 J.Allison (geom-specific-V10-03-13) 416 - Twisted solids: Fixed bug in drawing polyhed 263 - Twisted solids: Fixed bug in drawing polyhedra with negative twist angle. 417 Addressing problem report #1995. 264 Addressing problem report #1995. 418 265 419 27-July-2017 E.Tcherniaev (geom-specif 266 27-July-2017 E.Tcherniaev (geom-specific-V10-03-12) 420 - G4EllipticalCone: corrected samping of rando 267 - G4EllipticalCone: corrected samping of random points on lateral surface in 421 function GetPointOnSurface(). 268 function GetPointOnSurface(). 422 269 423 24-July-2017 E.Tcherniaev (geom-specif 270 24-July-2017 E.Tcherniaev (geom-specific-V10-03-11) 424 - G4EllipticalCone: improved GetPointOnSurface 271 - G4EllipticalCone: improved GetPointOnSurface() to have uniform sampling of 425 points, using function G4RandomPointOnEllips 272 points, using function G4RandomPointOnEllipse(). 426 273 427 20-July-2017 E.Tcherniaev (geom-specif 274 20-July-2017 E.Tcherniaev (geom-specific-V10-03-10, 09) 428 - G4EllipticalCone: reviewed implementation of 275 - G4EllipticalCone: reviewed implementation of Inside(), DistanceToIn/Out(p), 429 SurfaceNormal() and GetPointOnSurface(); mad 276 SurfaceNormal() and GetPointOnSurface(); made more compact and performant. 430 Addressing problem report #1974. 277 Addressing problem report #1974. 431 278 432 15-June-2017 G.Cosmo (geom-specif 279 15-June-2017 G.Cosmo (geom-specific-V10-03-08) 433 - Enabled adapter also in G4UPolycone wrapper. 280 - Enabled adapter also in G4UPolycone wrapper. 434 - Added check on open solid for G4UPolyhedra w 281 - Added check on open solid for G4UPolyhedra wrapper. 435 282 436 6-June-2017 G.Cosmo (geom-specif 283 6-June-2017 G.Cosmo (geom-specific-V10-03-07) 437 - Enable adapter for VecGeom shapes in G4U* wr 284 - Enable adapter for VecGeom shapes in G4U* wrappers for: paraboloid, 438 polyhedra and GenericTrap. From now on, wrap 285 polyhedra and GenericTrap. From now on, wrappers depends directly on 439 VecGeom shapes implementation. USolids API i 286 VecGeom shapes implementation. USolids API is deprecated and no longer 440 supported. 287 supported. 441 288 442 24-May-2017 G.Cosmo (geom-specif 289 24-May-2017 G.Cosmo (geom-specific-V10-03-06) 443 - Renamed ambiguous name Extent() in all solid 290 - Renamed ambiguous name Extent() in all solids and G4U* wrappers to 444 BoundingLimits(). Change required in order t 291 BoundingLimits(). Change required in order to avoid signature conflict 445 with VecGeom in G4U* wrappers. 292 with VecGeom in G4U* wrappers. 446 Requires tag geommng-V10-03-16. 293 Requires tag geommng-V10-03-16. 447 294 448 11-May-2017 G.Cosmo (geom-specif 295 11-May-2017 G.Cosmo (geom-specific-V10-03-05) 449 - Removed potential race condition in G4VTwist 296 - Removed potential race condition in G4VTwistSurface::AmIOnLeftSide(). 450 Addressing problem report #1972. 297 Addressing problem report #1972. 451 298 452 7-April-2017 G.Cosmo (geom-specif 299 7-April-2017 G.Cosmo (geom-specific-V10-03-04) 453 - Renamed G4SurfaceVoxelizer to G4Voxelizer an 300 - Renamed G4SurfaceVoxelizer to G4Voxelizer and extended to support 454 voxelisation of shapes in 3D space. Adapted 301 voxelisation of shapes in 3D space. Adapted G4TessellatedSolid accordingly. 455 302 456 13-March-2017 G.Cosmo (geom-specif 303 13-March-2017 G.Cosmo (geom-specific-V10-03-03) 457 - G4SolidsWorkspacePool: implemented CleanUpAn 304 - G4SolidsWorkspacePool: implemented CleanUpAndDestroyAllWorkspaces(), 458 to be called by worker threads. Removed decl 305 to be called by worker threads. Removed declaration (i.e. not implemented) 459 of protected method ReleaseAndDestroyWorkspa 306 of protected method ReleaseAndDestroyWorkspace(). 460 307 461 2-March-2017 E.Tcherniaev (geom-specif 308 2-March-2017 E.Tcherniaev (geom-specific-V10-03-02) 462 - Fixed possible rounding off error in calcula 309 - Fixed possible rounding off error in calculation of 'astep' (max angle 463 for one step) in CalculateExtent() for G4Pol 310 for one step) in CalculateExtent() for G4Polycone, G4GenericPolycone 464 and related USolids wrappers. 311 and related USolids wrappers. 465 312 466 27-February-2017 E.Tcherniaev (geom-specif 313 27-February-2017 E.Tcherniaev (geom-specific-V10-03-01) 467 - Revised implementation of GetCubicVolume() a 314 - Revised implementation of GetCubicVolume() and GetSurfaceArea() for 468 G4EllipticalTube, to return exact values. 315 G4EllipticalTube, to return exact values. 469 - Revised implementation of GetSurfaceArea() f 316 - Revised implementation of GetSurfaceArea() for G4EllipticalCone, to 470 return exact value; moved both GetCubicVolum 317 return exact value; moved both GetCubicVolume() and GetSurfaceArea() to 471 be not inline. 318 be not inline. 472 319 473 13-December-2016 G.Cosmo (geom-specif 320 13-December-2016 G.Cosmo (geom-specific-V10-03-00) 474 - Correction in G4UExtrudedSolid to signature 321 - Correction in G4UExtrudedSolid to signature for CalculateExtent(). 475 Fixes issue of undefined symbol if extruded- 322 Fixes issue of undefined symbol if extruded-solid not included in the 476 list of VecGeom wrappers to activate. 323 list of VecGeom wrappers to activate. 477 324 478 30-November-2016 E.Tcherniaev (geom-specif 325 30-November-2016 E.Tcherniaev (geom-specific-V10-02-25) 479 - Call RemoveRedundantVertices() from G4GeomTo 326 - Call RemoveRedundantVertices() from G4GeomTools in CalculateExtent() 480 for G4Polycone, G4Polyhedra and related USol 327 for G4Polycone, G4Polyhedra and related USolids wrappers. 481 - Fix in G4Parabolid and G4UParaboloid for cor 328 - Fix in G4Parabolid and G4UParaboloid for correct computation of extent. 482 329 483 18-November-2016 E.Tcherniaev (geom-specif 330 18-November-2016 E.Tcherniaev (geom-specific-V10-02-24) 484 - Added consistency checks for extent computat 331 - Added consistency checks for extent computation in USolids wrappers. 485 - Fix in cached parameters in G4UPolyhedra. 332 - Fix in cached parameters in G4UPolyhedra. 486 333 487 10-November-2016 G.Cosmo (geom-specif 334 10-November-2016 G.Cosmo (geom-specific-V10-02-23) 488 - G4UPolyhedra re-introduced new implementatio 335 - G4UPolyhedra re-introduced new implementation of CalculateExtent() using 489 G4BoundingEnvelope and extended wrapper to c 336 G4BoundingEnvelope and extended wrapper to cache corners and start/end 490 Phi parameters, to overcome issues in VecGeo 337 Phi parameters, to overcome issues in VecGeom on treatment of angles. 491 338 492 10-November-2016 E.Tcherniaev (geom-specif 339 10-November-2016 E.Tcherniaev (geom-specific-V10-02-22) 493 - Added caching of corners and implementation 340 - Added caching of corners and implementation of GetCorner() in G4UPolycone 494 in order to assure correct translation. 341 in order to assure correct translation. 495 - Withdrawn changes in G4UPolyhedra introduced 342 - Withdrawn changes in G4UPolyhedra introduced in tag geom-specific-V10-02-16 496 until understood proper conversion from VecG 343 until understood proper conversion from VecGeom. 497 344 498 7-November-2016 E.Tcherniaev (geom-specifi 345 7-November-2016 E.Tcherniaev (geom-specific-V10-02-21) 499 - Correction in G4EllipticalCone::DistanceToOu 346 - Correction in G4EllipticalCone::DistanceToOut(p) to make it more accurate. 500 - Added optional debug flag G4BBOX_EXTENT in G 347 - Added optional debug flag G4BBOX_EXTENT in GNUMake build to compare 501 extent calculation by simply using bounding- 348 extent calculation by simply using bounding-box. 502 349 503 3-November-2016 G.Cosmo (geom-specifi 350 3-November-2016 G.Cosmo (geom-specific-V10-02-20, 19) 504 - Fix in G4PolyPhiFace for potential unitialis 351 - Fix in G4PolyPhiFace for potential unitialised data in Inside(). 505 352 506 31-October-2016 E.Tcherniaev (geom-specifi 353 31-October-2016 E.Tcherniaev (geom-specific-V10-02-18) 507 - Re-implemented CalculateExtent() to make use 354 - Re-implemented CalculateExtent() to make use of G4BoundingEnvelope and 508 removed no-longer used method CreateRotatedV 355 removed no-longer used method CreateRotatedVertices() in G4Polyhedra, 509 G4EllipticalCone, G4Polycone, G4Paraboloid, 356 G4EllipticalCone, G4Polycone, G4Paraboloid, G4ExtrudedSolid, G4Hype, 510 G4GenericPolycone, G4TessellatedSolid, G4Twi 357 G4GenericPolycone, G4TessellatedSolid, G4TwistedTubs and related USolids 511 wrappers. 358 wrappers. 512 - Use G4RandFlat instead of RandFlat. 359 - Use G4RandFlat instead of RandFlat. 513 360 514 21-October-2016 G.Cosmo (geom-specifi 361 21-October-2016 G.Cosmo (geom-specific-V10-02-17) 515 - Moved initialisation of G4GeomSplitter threa 362 - Moved initialisation of G4GeomSplitter thread-local data to be inline 516 along with generic template type. 363 along with generic template type. 517 Fixing compilation/linking errors on clang-3 364 Fixing compilation/linking errors on clang-3.9 and XCode-8 on MacOS. 518 365 519 19-October-2016 E.Tcherniaev (geom-speci 366 19-October-2016 E.Tcherniaev (geom-specific-V10-02-16) 520 - Reimplemented CalculateExtent() in G4Polycon 367 - Reimplemented CalculateExtent() in G4Polycone, G4Polyhedra, G4GenericPolycone 521 and associated USolids wrappers, to make use 368 and associated USolids wrappers, to make use of G4BoundingEnvelope. 522 369 523 5-October-2016 E.Tcherniaev (geom-speci 370 5-October-2016 E.Tcherniaev (geom-specific-V10-02-15, 14) 524 - Reimplemented CalculateExtent() in G4Tet, G4 371 - Reimplemented CalculateExtent() in G4Tet, G4UTet, G4GenericTrap, 525 G4UGenericTrap, G4EllipticalTube and G4VTwis 372 G4UGenericTrap, G4EllipticalTube and G4VTwistedFaceted, to make use 526 of G4BoundingEnvelope; removed no-longer use 373 of G4BoundingEnvelope; removed no-longer used method CreateRotatedVertices(). 527 374 528 20-September-2016 G.Cosmo (geom-speci 375 20-September-2016 G.Cosmo (geom-specific-V10-02-13) 529 - Moved accessors/modifiers for splitter data 376 - Moved accessors/modifiers for splitter data to non-inline in 530 G4PolyhedraSide and G4PolyconeSide. 377 G4PolyhedraSide and G4PolyconeSide. 531 Explicitly initialise G4GeomSplitter data in 378 Explicitly initialise G4GeomSplitter data in G4SolidsWorkspace 532 translation unit. 379 translation unit. 533 Fixing compilation/linking errors on clang-3 380 Fixing compilation/linking errors on clang-3.9 and XCode-8 on MacOS. 534 381 535 06-July-2016 E.Tcherniaev (geom-speci 382 06-July-2016 E.Tcherniaev (geom-specific-V10-02-12) 536 - Fixed monir typo in function Create() for G4 383 - Fixed monir typo in function Create() for G4Polycone, G4Polyhedra and 537 G4GenericPolycone. 384 G4GenericPolycone. 538 Fixed minor typos in G4GenericTrap::SurfaceN 385 Fixed minor typos in G4GenericTrap::SurfaceNormal() and 539 G4VTwistSurface::CurrentStatus::ResetfDone() 386 G4VTwistSurface::CurrentStatus::ResetfDone(). 540 Issues detected by PVS-Studio static code an 387 Issues detected by PVS-Studio static code analyzer. 541 Addressing problem report #1876. 388 Addressing problem report #1876. 542 389 543 24-May-2016 G.Cosmo (geom-speci 390 24-May-2016 G.Cosmo (geom-specific-V10-02-11) 544 - Correction in G4UExtrudedSolid for definitio 391 - Correction in G4UExtrudedSolid for definition of CreatePolyhedron(). 545 392 546 20-May-2016 G.Cosmo (geom-speci 393 20-May-2016 G.Cosmo (geom-specific-V10-02-10) 547 - Moved accessors and modifiers in USolids wra 394 - Moved accessors and modifiers in USolids wrappers to be not inlined. 548 Required modification in order to allow corr 395 Required modification in order to allow correct dispatching to VecGeom 549 types. 396 types. 550 397 551 15-Apr-2016 G.Cosmo (geom-speci 398 15-Apr-2016 G.Cosmo (geom-specific-V10-02-09) 552 - Added flag in USolids wrappers for partial u 399 - Added flag in USolids wrappers for partial use of USolids/VecGeom types. 553 400 554 31-Mar-2016 G.Cosmo (geom-speci 401 31-Mar-2016 G.Cosmo (geom-specific-V10-02-08, 07) 555 - Added overloaded CreatePolyhedron() method t 402 - Added overloaded CreatePolyhedron() method to USolids wrappers. 556 It is now possible to visualize supported Ve 403 It is now possible to visualize supported VecGeom shapes. 557 - Added implementation of CreatePolyhedron() i 404 - Added implementation of CreatePolyhedron() in UExtrudedSolid wrapper. 558 405 559 10-Mar-2016 G.Cosmo (geom-speci 406 10-Mar-2016 G.Cosmo (geom-specific-V10-02-06) 560 - Added overloaded GetEntityType() method to U 407 - Added overloaded GetEntityType() method to USolids wrappers. 561 408 562 07-Mar-2016 E.Tcherniaev (geom-speci 409 07-Mar-2016 E.Tcherniaev (geom-specific-V10-02-05) 563 - Fix in G4IntersectingCone for smaller precis 410 - Fix in G4IntersectingCone for smaller precision constant in LineHitsCone1() 564 and LineHitsCone2(). Fixes issue observed in 411 and LineHitsCone2(). Fixes issue observed in G4GenericPolycone. 565 Addressing problem report #1794. 412 Addressing problem report #1794. 566 413 567 03-Mar-2016 G.Cosmo (geom-speci 414 03-Mar-2016 G.Cosmo (geom-specific-V10-02-04) 568 - Fixed compilation warnings for potential uni 415 - Fixed compilation warnings for potential uninitialised values in 569 G4ExtrudedSolid::CheckPolygon() function int 416 G4ExtrudedSolid::CheckPolygon() function introduced in previous tag. 570 417 571 03-Mar-2016 E.Tcherniaev (geom-speci 418 03-Mar-2016 E.Tcherniaev (geom-specific-V10-02-03) 572 - Added 'const' qualifier for methods in G4Ext 419 - Added 'const' qualifier for methods in G4ExtrudedSolid. 573 Added CheckPolygon() to remove collinear and 420 Added CheckPolygon() to remove collinear and coincident points from polygons. 574 - G4QuadrangularFacet: added exhaustive tests 421 - G4QuadrangularFacet: added exhaustive tests in constructor to catch potential 575 problems with a quadrangular facet: collinea 422 problems with a quadrangular facet: collinear vertices, non planar surface, 576 degenerate, concave or self intersecting qua 423 degenerate, concave or self intersecting quadrilateral. 577 - G4TriangularFacet: Improved test in construc 424 - G4TriangularFacet: Improved test in constructor to detect degenerate (too 578 small or too narrow) triangles. 425 small or too narrow) triangles. 579 426 580 25-Feb-2016 E.Tcherniaev (geom-speci 427 25-Feb-2016 E.Tcherniaev (geom-specific-V10-02-02) 581 - Correction in G4ExtrudedSolid::AddGeneralPol 428 - Correction in G4ExtrudedSolid::AddGeneralPolygonFacets() for precision 582 treatment in construction of tessels to avoi 429 treatment in construction of tessels to avoid cases of collinear points 583 and consequent degenerating triangles. 430 and consequent degenerating triangles. 584 Address problem report #1777. 431 Address problem report #1777. 585 - Use pre-computed kCarToleranceHalf constant 432 - Use pre-computed kCarToleranceHalf constant in G4ExtrudedSolid, now 586 protected in G4TessellatedSolid. 433 protected in G4TessellatedSolid. 587 - Improved algorithms for computation of area 434 - Improved algorithms for computation of area in G4TriangularFacet and 588 G4QuadrangularFacet. Added post-const qualif 435 G4QuadrangularFacet. Added post-const qualifier to GetArea(). 589 436 590 16-Feb-2016 G.Cosmo (geom-speci 437 16-Feb-2016 G.Cosmo (geom-specific-V10-02-01) 591 - Revised implementation for GetSurfaceArea() 438 - Revised implementation for GetSurfaceArea() and GetCubicVolume() in 592 G4GenericTrap (E.Tcherniaev). 439 G4GenericTrap (E.Tcherniaev). 593 - Protected debug warning in G4GenericTrap::Su 440 - Protected debug warning in G4GenericTrap::SurfaceNormal() within G4SPECSDEBUG. 594 441 595 02-Feb-2016 E.Tcherniaev (geom-speci 442 02-Feb-2016 E.Tcherniaev (geom-specific-V10-02-00) 596 - Fix in G4GenericTrap for compuation of exten 443 - Fix in G4GenericTrap for compuation of extent. 597 Addressing problem report #1809. 444 Addressing problem report #1809. 598 - Use dot() in formula for computation of GetC 445 - Use dot() in formula for computation of GetCubicVolume() in 599 G4TessellatedSolid. 446 G4TessellatedSolid. 600 447 601 18-Nov-2015 G.Cosmo (geom-speci 448 18-Nov-2015 G.Cosmo (geom-specific-V10-01-15) 602 - Added specialised implementation for GetCubi 449 - Added specialised implementation for GetCubicVolume() in 603 G4TessellatedSolid (J.Allison). 450 G4TessellatedSolid (J.Allison). 604 451 605 29-Oct-2015 G.Cosmo (geom-speci 452 29-Oct-2015 G.Cosmo (geom-specific-V10-01-14) 606 - Added debug printouts within G4SPECSDEBUG in 453 - Added debug printouts within G4SPECSDEBUG in G4TessellatedSolid for 607 DistanceToIn/Out(p,v) to identify potential 454 DistanceToIn/Out(p,v) to identify potential wrong responses. 608 455 609 26-Oct-2015 G.Cosmo (geom-speci 456 26-Oct-2015 G.Cosmo (geom-specific-V10-01-13) 610 - Removed redundant condition in G4Polyhedra a 457 - Removed redundant condition in G4Polyhedra and G4polycone 611 SetOriginalParameters() method. 458 SetOriginalParameters() method. 612 459 613 23-Oct-2015 G.Cosmo (geom-speci 460 23-Oct-2015 G.Cosmo (geom-specific-V10-01-12) 614 - G4PolyhedraSide: moved internal struct defin 461 - G4PolyhedraSide: moved internal struct definitions to public section 615 to overcome deficiencies in object-persisten 462 to overcome deficiencies in object-persistency class parsing. 616 463 617 07-Oct-2015 G.Cosmo (geom-speci 464 07-Oct-2015 G.Cosmo (geom-specific-V10-01-11) 618 - Protected compilation of USolid wrappers wit 465 - Protected compilation of USolid wrappers with G4GEOM_USE_USOLIDS flag. 619 466 620 01-Sep-2015 G.Cosmo (geom-speci 467 01-Sep-2015 G.Cosmo (geom-specific-V10-01-10) 621 - Corrected conditional compilation flag in G4 468 - Corrected conditional compilation flag in G4UParaboloid.cc. 622 469 623 31-Aug-2015 G.Cosmo (geom-speci 470 31-Aug-2015 G.Cosmo (geom-specific-V10-01-09) 624 - Added USolids/VecGeom wrapper for G4Parabolo 471 - Added USolids/VecGeom wrapper for G4Paraboloid (G.Lima/FNAL). 625 Activated only for external USolids/VecGeom 472 Activated only for external USolids/VecGeom installation. 626 473 627 13-Aug-2015 G.Cosmo (geom-speci 474 13-Aug-2015 G.Cosmo (geom-specific-V10-01-08) 628 - Checked for potential never-ending loops. 475 - Checked for potential never-ending loops. 629 No issues found, only added annotations. 476 No issues found, only added annotations. 630 477 631 05-Aug-2015 G.Cosmo (geom-speci 478 05-Aug-2015 G.Cosmo (geom-specific-V10-01-07) 632 - Minor code cleanup in G4SurfaceVoxelizer. 479 - Minor code cleanup in G4SurfaceVoxelizer. 633 480 634 03-Mar-2015 G.Cosmo (geom-speci 481 03-Mar-2015 G.Cosmo (geom-specific-V10-01-06) 635 - Use accessors x(), y() and z() from UVector3 482 - Use accessors x(), y() and z() from UVector3, instead of directly accessing 636 its data-members. Co-work with tag "geom-uso 483 its data-members. Co-work with tag "geom-usolids-V10-01-09". 637 484 638 23-Feb-2015 T.Nikitina (geom-speci 485 23-Feb-2015 T.Nikitina (geom-specific-V10-01-05) 639 - Fix in SetOriginalParameters() for G4Polycon 486 - Fix in SetOriginalParameters() for G4Polycone and G4Polyhedra, in case 640 of presence of 'rings' structures. Addressin 487 of presence of 'rings' structures. Addressing problem report #1705. 641 488 642 26-Jan-2015 G.Cosmo (geom-speci 489 26-Jan-2015 G.Cosmo (geom-specific-V10-01-04) 643 - Renamed DistanceAwayForInside() to DistanceA 490 - Renamed DistanceAwayForInside() to DistanceAway() and use polymorphism. 644 491 645 26-Jan-2015 T.Nikitina (geom-speci 492 26-Jan-2015 T.Nikitina (geom-specific-V10-01-03, 02) 646 - Added special method for Inside 'DistanceAwa << 493 - Added special method for Inside 'DistanceAwayForInside()' in order to fix 647 precision problem of calculation of Distance << 494 precision problem of calculation of DistanceToSide() in G4PolyconeSide. 648 495 649 21-Jan-2015 T.Nikitina (geom-speci 496 21-Jan-2015 T.Nikitina (geom-specific-V10-01-01) 650 - Fixed triangularisation method AddGeneralPOl 497 - Fixed triangularisation method AddGeneralPOlygoneFacets() in 651 G4ExtrudedSolid by avoiding flat triangles. 498 G4ExtrudedSolid by avoiding flat triangles. 652 - Added warning message to G4TriangularFacet c 499 - Added warning message to G4TriangularFacet constructor if Area is 0; 653 i.e., case of flat triangle. 500 i.e., case of flat triangle. 654 - Addressing problem report #1703. 501 - Addressing problem report #1703. 655 502 656 12-Dec-2014 G.Cosmo (geom-speci 503 12-Dec-2014 G.Cosmo (geom-specific-V10-01-00) 657 - Use canonical form for operator=() in G4Poly 504 - Use canonical form for operator=() in G4PolyconeHistorical and 658 G4PolyhedraHistorical. 505 G4PolyhedraHistorical. 659 506 660 17-Sep-2014 G.Cosmo (geom-speci 507 17-Sep-2014 G.Cosmo (geom-specific-V10-00-11) 661 - Added wrappers for UExtrudedSolid and UGener 508 - Added wrappers for UExtrudedSolid and UGenericTrap; adapted switches to 662 original G4 types accordingly. Requires tag 509 original G4 types accordingly. Requires tag "geom-usolids-V10-00-16". 663 510 664 01-Sep-2014 G.Cosmo (geom-speci 511 01-Sep-2014 G.Cosmo (geom-specific-V10-00-10) 665 - Fixed use of polyhedron pointer, to avoid ra 512 - Fixed use of polyhedron pointer, to avoid race condition in MT 666 when parameterised volumes are visualised. 513 when parameterised volumes are visualised. 667 514 668 22-May-2014 G.Cosmo (geom-speci 515 22-May-2014 G.Cosmo (geom-specific-V10-00-09) 669 - Added protection in generic constructor of G 516 - Added protection in generic constructor of G4Polyhedra for the case when 670 improper number of sides is given as input. 517 improper number of sides is given as input. 671 518 672 10-Apr-2014 G.Cosmo (geom-speci 519 10-Apr-2014 G.Cosmo (geom-specific-V10-00-08) 673 - Get rid of deprecated 'register' storage cla 520 - Get rid of deprecated 'register' storage class specifier in source files. 674 521 675 31-Mar-2014 G.Cosmo (geom-speci 522 31-Mar-2014 G.Cosmo (geom-specific-V10-00-07) 676 - Fixed signature of assignment operator to G4 523 - Fixed signature of assignment operator to G4VCSGfaceted. 677 524 678 31-Mar-2014 G.Cosmo (geom-speci 525 31-Mar-2014 G.Cosmo (geom-specific-V10-00-06) 679 - Fixed signature of assignment operator to G4 526 - Fixed signature of assignment operator to G4Polycone, G4Polyhedra and 680 and G4GenericPolycone. 527 and G4GenericPolycone. 681 528 682 05-Mar-2014 G.Cosmo (geom-speci 529 05-Mar-2014 G.Cosmo (geom-specific-V10-00-05) 683 - Fixed proper handling of polyhedron pointer 530 - Fixed proper handling of polyhedron pointer in solids, to avoid memory 684 leak for visualization of parameterised volu 531 leak for visualization of parameterised volumes. 685 532 686 12-Feb-2014 G.Cosmo (geom-speci 533 12-Feb-2014 G.Cosmo (geom-specific-V10-00-04) 687 - Simply reset polyhedron pointer to zero for 534 - Simply reset polyhedron pointer to zero for modifiers of G4U* wrappers 688 in parameterisation. Resolves crash in MT vi << 535 in parameterisation. Resolves crash in MT visualization when using USolids. 689 536 690 12-Feb-2014 G.Cosmo (geom-speci 537 12-Feb-2014 G.Cosmo (geom-specific-V10-00-03 [and -02]) 691 - Added correct cloning mechanism in G4U* wrap 538 - Added correct cloning mechanism in G4U* wrappers. 692 Addressing problem report #1553. 539 Addressing problem report #1553. 693 540 694 18-Dec-2013 T.Nikitina (geom-speci 541 18-Dec-2013 T.Nikitina (geom-specific-V10-00-01) 695 - Fix in G4GenericTrap::InsidePolygone() to ch 542 - Fix in G4GenericTrap::InsidePolygone() to check if p lies between the two 696 extremes of the segment. Addressing problem 543 extremes of the segment. Addressing problem report #1541. 697 544 698 17-Dec-2013 G.Cosmo (geom-speci 545 17-Dec-2013 G.Cosmo (geom-specific-V10-00-00) 699 - Corrected left-over debug printout in G4Poly 546 - Corrected left-over debug printout in G4Polycone::SetOriginalParameters(). 700 547 701 04-Dec-2013 G.Cosmo (geom-speci 548 04-Dec-2013 G.Cosmo (geom-specific-V09-06-36) 702 - Corrected left-over debug printout in G4Poly 549 - Corrected left-over debug printout in G4Polyhedra::SetOriginalParameters(). 703 550 704 22-Nov-2013 G.Cosmo (geom-speci 551 22-Nov-2013 G.Cosmo (geom-specific-V09-06-35) 705 - Correction to USolids wrappers for proper se 552 - Correction to USolids wrappers for proper setting of name to base class. 706 553 707 19-Nov-2013 J.Apostolakis (geom-speci 554 19-Nov-2013 J.Apostolakis (geom-specific-V09-06-34) 708 - Fix for issue identified by Coverity: fixed 555 - Fix for issue identified by Coverity: fixed implementation of 709 G4SolidsWorkspacePool singleton. 556 G4SolidsWorkspacePool singleton. 710 557 711 20-Nov-2013 T.Mikitina (geom-speci 558 20-Nov-2013 T.Mikitina (geom-specific-V09-06-33) 712 - Fixed Coverity defects to USolids wrappers. 559 - Fixed Coverity defects to USolids wrappers. 713 560 714 14-Nov-2013 G.Cosmo (geom-speci 561 14-Nov-2013 G.Cosmo (geom-specific-V09-06-32, 31) 715 - Enabled use of Reset() in G4UPolycone. 562 - Enabled use of Reset() in G4UPolycone. 716 - Corrections to G4UPolycone and G4UPolyhedra 563 - Corrections to G4UPolycone and G4UPolyhedra to allow for visualization 717 of parameterisations on these solids. 564 of parameterisations on these solids. 718 565 719 13-Nov-2013 G.Cosmo (geom-speci 566 13-Nov-2013 G.Cosmo (geom-specific-V09-06-30) 720 - Correction to G4UTet and G4UGenericPolycone 567 - Correction to G4UTet and G4UGenericPolycone to explicitly include 721 symbols re-definitions from G4Tet and G4Gene 568 symbols re-definitions from G4Tet and G4GenericPolycone respectively. 722 569 723 12-Nov-2013 G.Cosmo (geom-speci 570 12-Nov-2013 G.Cosmo (geom-specific-V09-06-29) 724 - Added dummy method G4UPolycone::Reset(). 571 - Added dummy method G4UPolycone::Reset(). 725 NOTE: Required related implementation (curre 572 NOTE: Required related implementation (currently missing!) in UPolycone. 726 573 727 12-Nov-2013 G.Cosmo (geom-speci 574 12-Nov-2013 G.Cosmo (geom-specific-V09-06-28) 728 - Correction to USolids switch mechanism for G 575 - Correction to USolids switch mechanism for G4Polycone. 729 << 576 730 08-Nov-2013 J.Apostolakis (geom-speci 577 08-Nov-2013 J.Apostolakis (geom-specific-V09-06-27) 731 - G4SolidsWorkspace: cleanup of verbosity. 578 - G4SolidsWorkspace: cleanup of verbosity. 732 Reduced verbosity by making it optional. << 579 Reduced verbosity by making it optional. 733 Added Set/Get Verbose methods to toggle and 580 Added Set/Get Verbose methods to toggle and view it. 734 Added parameter to constructor for verbosity 581 Added parameter to constructor for verbosity (default=off). 735 582 736 07-Nov-2013 G.Cosmo (geom-specific-V09-06-26) 583 07-Nov-2013 G.Cosmo (geom-specific-V09-06-26) 737 - Moved wrappers from usolids module. 584 - Moved wrappers from usolids module. 738 Fixed internal dispatcher method for paramet 585 Fixed internal dispatcher method for parameterisation in all wrappers. 739 - Added switching mechanism for G4GenericPolyc 586 - Added switching mechanism for G4GenericPolycone, G4Polycone, G4Polyhedra 740 and G4Tet. 587 and G4Tet. 741 588 742 06-Nov-2013 G.Cosmo (geom-specific-V09-06-25) 589 06-Nov-2013 G.Cosmo (geom-specific-V09-06-25) 743 - Added switch mechanism for USolids (G4Generi 590 - Added switch mechanism for USolids (G4GenericPolycone, G4Polycone, 744 G4Polyhedra, G4Tet). Renamed related G4 type 591 G4Polyhedra, G4Tet). Renamed related G4 types to 'G4O'. 745 - Moved wrappers from USolids module. 592 - Moved wrappers from USolids module. 746 593 747 01-Nov-2013 G.Cosmo (geom-specific-V09-06-24) 594 01-Nov-2013 G.Cosmo (geom-specific-V09-06-24) 748 - Corrected CMake script. 595 - Corrected CMake script. 749 596 750 31-Oct-2013 G.Cosmo (geom-specific-V09-06-23) 597 31-Oct-2013 G.Cosmo (geom-specific-V09-06-23) 751 - Fix for in G4Polyhedra::SetOriginalParameter 598 - Fix for in G4Polyhedra::SetOriginalParameters(). (T.Nikitina) 752 - Moved G4PolyconeHistorical and G4PolyhedraHi 599 - Moved G4PolyconeHistorical and G4PolyhedraHistorical in separate 753 translation units. 600 translation units. 754 601 755 29-Oct-2013 T.Nikitina (geom-specific-V09-06- 602 29-Oct-2013 T.Nikitina (geom-specific-V09-06-22) 756 - Split G4Polycone for polycones with decreasi 603 - Split G4Polycone for polycones with decreasing Z-sections. 757 Introduced new class G4GenericPolycone. 604 Introduced new class G4GenericPolycone. 758 - Fixed conversion of generic construct for G4 605 - Fixed conversion of generic construct for G4Polyhedra. 759 606 760 17-Oct-2013 J.Apostolakis/A.Dotti (geom-speci 607 17-Oct-2013 J.Apostolakis/A.Dotti (geom-specific-V09-06-21) 761 - Cleanup of code for workspace. 608 - Cleanup of code for workspace. 762 609 763 16-Oct-2013 J.Apostolakis/A.Dotti (geom-speci 610 16-Oct-2013 J.Apostolakis/A.Dotti (geom-specific-V09-06-20) 764 - Created G4SolidsWorkspacePool class, to mana 611 - Created G4SolidsWorkspacePool class, to manage Workspaces 765 Fixed Singleton G4SolidsWorkspacePool for th << 612 Fixed Singleton G4SolidsWorkspacePool for thread safe creation of object. 766 613 767 04-Oct-2013 J.Apostolakis (geom-specific-V09- 614 04-Oct-2013 J.Apostolakis (geom-specific-V09-06-19) 768 - Retagged. 615 - Retagged. 769 NOTE: requires tag "geommng-V09-06-12" and c 616 NOTE: requires tag "geommng-V09-06-12" and co-works with "geomvol-V09-06-13". 770 617 771 04-Oct-2013 J.Apostolakis (geom-specific-V09- 618 04-Oct-2013 J.Apostolakis (geom-specific-V09-06-18) 772 - Created G4SolidsWorkspace class, to create, 619 - Created G4SolidsWorkspace class, to create, initialize and destroy 773 per-thread state of PolyCone Sides and PolyH 620 per-thread state of PolyCone Sides and PolyHedra Sides. 774 621 775 27-Aug-2013 G.Cosmo (geom-specific-V09-06-17) 622 27-Aug-2013 G.Cosmo (geom-specific-V09-06-17) 776 - Enabled G4Ellipsoid for parameterisation. 623 - Enabled G4Ellipsoid for parameterisation. 777 624 778 14-Aug-2013 G.Cosmo (geom-specific-V09-06-16) 625 14-Aug-2013 G.Cosmo (geom-specific-V09-06-16) 779 - Move function-scoped 'static const' values f 626 - Move function-scoped 'static const' values for half-tolerances to private 780 data members of classes, to overcome false-p 627 data members of classes, to overcome false-positive race-conditions defects 781 reported by Valgrind in MT mode. 628 reported by Valgrind in MT mode. 782 - Fix in G4TessellatedSolid::DistanceToIn(p,v) 629 - Fix in G4TessellatedSolid::DistanceToIn(p,v) for specific cases where points 783 are located near surface (T.Nikitina). 630 are located near surface (T.Nikitina). 784 631 785 16-Jul-2013 M.Gayer (geom-specific-V09-06-15) 632 16-Jul-2013 M.Gayer (geom-specific-V09-06-15) 786 - Fix in G4SurfaceVoxelizer affecting tessella 633 - Fix in G4SurfaceVoxelizer affecting tessellated-solid (and extruded-solid) 787 for wrong computation of DistanceToIn(p,v) f 634 for wrong computation of DistanceToIn(p,v) for points outside, when 788 optimisation is active. 635 optimisation is active. 789 636 790 11-Jul-2013 G.Cosmo (geom-specific-V09-06-14) 637 11-Jul-2013 G.Cosmo (geom-specific-V09-06-14) 791 - Fixed compilation warning in G4Polycone on M 638 - Fixed compilation warning in G4Polycone on MacOS/clang. 792 639 793 09-Jul-2013 T.Nikitina (geom-specific-V09-06- 640 09-Jul-2013 T.Nikitina (geom-specific-V09-06-13) 794 - Extended method SetOriginalParameters() in G 641 - Extended method SetOriginalParameters() in G4Polycone in order to handle 795 all possible cases of conversion of generic 642 all possible cases of conversion of generic polycone to polycone with 796 (Rmin,Rmaz,Z) parameters. 643 (Rmin,Rmaz,Z) parameters. 797 Addressing problem report #1462. 644 Addressing problem report #1462. 798 645 799 03-Jun-2013 G.Cosmo (geom-specific-V09-06-12) 646 03-Jun-2013 G.Cosmo (geom-specific-V09-06-12) 800 - Fixed minor Coverity defect in G4PolyhedraSi 647 - Fixed minor Coverity defect in G4PolyhedraSide and G4PolyconeSide. 801 648 802 22-Apr-2013 J.Apostolakis (geom-specific-V09- 649 22-Apr-2013 J.Apostolakis (geom-specific-V09-06-11) 803 - Revised G4ExtrudedSolid::IsSameLine to use t 650 - Revised G4ExtrudedSolid::IsSameLine to use the perpendicular 804 distance to a line when deciding - not the y 651 distance to a line when deciding - not the y-intercept difference. 805 ( Issue responsible for a problem in Subtrac << 652 ( Issue responsible for a problem in Subtraction Solid in Atlas. 806 Tatiana & Ivana contributed to debugging. 653 Tatiana & Ivana contributed to debugging. ) 807 - Changed GNUmakefile in test directory to wor << 654 - Changed GNUmakefile in test directory to work with Cmake and granular 808 builds. 655 builds. 809 656 810 16-Apr-2013 T.Nikitina (geom-specific-V09-06- 657 16-Apr-2013 T.Nikitina (geom-specific-V09-06-10) 811 - Fix in calculation of normal in G4Tet::Dista 658 - Fix in calculation of normal in G4Tet::DistanceToOut(p,v,..) and 812 SurfaceNormal(p). 659 SurfaceNormal(p). 813 - Fix in G4Polycone::GetPointOnCone() for case 660 - Fix in G4Polycone::GetPointOnCone() for cases of shape with decreasing Z. 814 Fixes cases of false report for overlaps det 661 Fixes cases of false report for overlaps detection. Problem report #1462. 815 Added check with exception in constructor fo 662 Added check with exception in constructor for polycone with rInner > rOuter 816 for the same Z. 663 for the same Z. 817 664 818 18-Mar-2013 G.Cosmo (geom-specific-V09-06-09) 665 18-Mar-2013 G.Cosmo (geom-specific-V09-06-09) 819 - G4TessellatedSolid: fixed problem with navig 666 - G4TessellatedSolid: fixed problem with navigation in tessellated solids 820 with concave surfaces. Addresses problem rep 667 with concave surfaces. Addresses problem report #1456. 821 - More cleanup from MT changes in G4VTwistSurf 668 - More cleanup from MT changes in G4VTwistSurface and G4Tet. 822 669 823 12-Mar-2013 G.Cosmo (geom-specific-V09-06-08) 670 12-Mar-2013 G.Cosmo (geom-specific-V09-06-08) 824 - Added public accessors for MT data to G4Poly 671 - Added public accessors for MT data to G4PolyconeSide and G4PolyhedraSide. 825 672 826 11-Mar-2013 G.Cosmo (geom-specific-V09-06-07) 673 11-Mar-2013 G.Cosmo (geom-specific-V09-06-07) 827 - Redefined G4DLL_API to G4GEOM_DLL to avoid c 674 - Redefined G4DLL_API to G4GEOM_DLL to avoid cases of macro redefinition. 828 675 829 08-Mar-2013 G.Cosmo (geom-specific-V09-06-06) 676 08-Mar-2013 G.Cosmo (geom-specific-V09-06-06) 830 - Renamed G4MT macros to safer ID in G4Polycon 677 - Renamed G4MT macros to safer ID in G4PolyconeSide and G4PolyhedraSide. 831 678 832 07-Mar-2013 G.Cosmo (geom-specific-V09-06-05) 679 07-Mar-2013 G.Cosmo (geom-specific-V09-06-05) 833 - Adopt G4GeomSplitter instead of G4MTTransito 680 - Adopt G4GeomSplitter instead of G4MTTransitory in G4PolyconeSide and 834 G4PolyhedraSide. Fixed import/export of stat 681 G4PolyhedraSide. Fixed import/export of static symbols for WIN32 DLLs build. 835 682 836 22-Feb-2013 G.Cosmo (geom-specific-V09-06-04) 683 22-Feb-2013 G.Cosmo (geom-specific-V09-06-04) 837 - Cleanup changes for multi-threading in G4Tet 684 - Cleanup changes for multi-threading in G4Tet, G4VTwistSurface, 838 G4PolyconeSide and G4PolyhedraSide. 685 G4PolyconeSide and G4PolyhedraSide. 839 - Removed unused private data member in G4Twis 686 - Removed unused private data member in G4TwistTrapParallelSide. 840 687 841 07-Mar-2013 G.Cosmo (geom-specific-V09-06-05) 688 07-Mar-2013 G.Cosmo (geom-specific-V09-06-05) 842 - Adopt G4GeomSplitter instead of G4MTTransito 689 - Adopt G4GeomSplitter instead of G4MTTransitory in G4PolyconeSide and 843 G4PolyhedraSide. Fixed import/export of stat 690 G4PolyhedraSide. Fixed import/export of static symbols for WIN32 DLLs build. 844 691 845 22-Feb-2013 G.Cosmo (geom-specific-V09-06-04) 692 22-Feb-2013 G.Cosmo (geom-specific-V09-06-04) 846 - Cleanup changes for multi-threading in G4Tet 693 - Cleanup changes for multi-threading in G4Tet, G4VTwistSurface, 847 G4PolyconeSide and G4PolyhedraSide. 694 G4PolyconeSide and G4PolyhedraSide. 848 - Removed unused private data member in G4Twis 695 - Removed unused private data member in G4TwistTrapParallelSide. 849 696 850 11-Jan-2013 G.Cosmo (geom-specific-V09-06-03) 697 11-Jan-2013 G.Cosmo (geom-specific-V09-06-03) 851 - Fixed condition in G4VTwistSurface::GetBound 698 - Fixed condition in G4VTwistSurface::GetBoundaryLimit() for logical error. 852 Addressing problem report #1420. 699 Addressing problem report #1420. 853 700 854 20-Dec-2012 M.Gayer (geom-specific-V09-06-02) 701 20-Dec-2012 M.Gayer (geom-specific-V09-06-02) 855 - Fixed cases of hang-ups in G4ExtrudedSolid o 702 - Fixed cases of hang-ups in G4ExtrudedSolid on 32-bits platforms, due to 856 G4TessellatedSolid and G4SurfVoxelizer, caus 703 G4TessellatedSolid and G4SurfVoxelizer, caused by accessing bitmask arrays 857 with negative indexes. The problem was relat 704 with negative indexes. The problem was related to floating-point rounding, 858 which can be different even on same platform 705 which can be different even on same platform with debug/release version. 859 Assure same number of computed voxels on 32- 706 Assure same number of computed voxels on 32-bit/64-bit platforms. 860 Fixed error in SetVertexIndex() method, whic 707 Fixed error in SetVertexIndex() method, which might cause problems on 861 certain configurations even for 64-bit syste 708 certain configurations even for 64-bit systems. Fixed minor memory leaks. 862 - Code cleanup for use of G4endl and tabs... 709 - Code cleanup for use of G4endl and tabs... 863 710 864 14-Dec-2012 G.Cosmo (geom-specific-V09-06-01) 711 14-Dec-2012 G.Cosmo (geom-specific-V09-06-01) 865 - Restored SVN id headers. 712 - Restored SVN id headers. 866 713 867 02-Dec-2012 J.Allison (geom-specific-V09-06-0 714 02-Dec-2012 J.Allison (geom-specific-V09-06-00) 868 - Removed NURBS. 715 - Removed NURBS. 869 716 870 29-Nov-2012 G.Cosmo (geom-specific-V09-05-24) 717 29-Nov-2012 G.Cosmo (geom-specific-V09-05-24) 871 - Remove inclusion of G4PhysicalConstants.hh f 718 - Remove inclusion of G4PhysicalConstants.hh from G4SurfaceVoxelizer.hh. 872 - Fixed unit test for compilation errors. 719 - Fixed unit test for compilation errors. 873 720 874 28-Nov-2012 G.Cosmo (geom-specific-V09-05-23) 721 28-Nov-2012 G.Cosmo (geom-specific-V09-05-23) 875 - Fixed more cases of inclusion of constants h 722 - Fixed more cases of inclusion of constants header. 876 723 877 23-Nov-2012 G.Cosmo (geom-specific-V09-05-22) 724 23-Nov-2012 G.Cosmo (geom-specific-V09-05-22) 878 - Added 'const' qualifiers to signature in G4V 725 - Added 'const' qualifiers to signature in G4VoxelComparator::operator() 879 for porting on AIX-xlC compiler. 726 for porting on AIX-xlC compiler. 880 727 881 14-Nov-2012 P.Mato (geom-specific-V09-05-21) 728 14-Nov-2012 P.Mato (geom-specific-V09-05-21) 882 - Added #undef NDEBUG in unit tests to ensure 729 - Added #undef NDEBUG in unit tests to ensure assert works also in 883 full optimised mode. 730 full optimised mode. 884 731 885 14-Nov-2012 P. Mato (geom-specific-V09-05-20) 732 14-Nov-2012 P. Mato (geom-specific-V09-05-20) 886 - Added #undef NDEBUG in unit tests to ensure 733 - Added #undef NDEBUG in unit tests to ensure that assert always works 887 734 888 13-Nov-2012 M.Gayer (geom-specific-V09-05-19) 735 13-Nov-2012 M.Gayer (geom-specific-V09-05-19) 889 - More fixes for out-of-bound array accesses i 736 - More fixes for out-of-bound array accesses in G4SurfaceVoxelizer. 890 737 891 12-Nov-2012 M.Gayer (geom-specific-V09-05-18) 738 12-Nov-2012 M.Gayer (geom-specific-V09-05-18) 892 - Fixed out-of-bound array access in BuildRedu 739 - Fixed out-of-bound array access in BuildReduceVoxels2(). 893 740 894 06-Nov-2012 G.Cosmo (geom-specific-V09-05-17) 741 06-Nov-2012 G.Cosmo (geom-specific-V09-05-17) 895 - Correction in sources.cmake script for missi 742 - Correction in sources.cmake script for missing .icc file. 896 743 897 06-Nov-2012 G.Cosmo (geom-specific-V09-05-16) 744 06-Nov-2012 G.Cosmo (geom-specific-V09-05-16) 898 - Fixed Coverity defects in new code (M.Gayer) 745 - Fixed Coverity defects in new code (M.Gayer). 899 - Minor fixes for porting on AIX. 746 - Minor fixes for porting on AIX. 900 747 901 01-Nov-2012 G.Cosmo (geom-specific-V09-05-15) 748 01-Nov-2012 G.Cosmo (geom-specific-V09-05-15) 902 - Fixed compilation of debug code under G4SPEC 749 - Fixed compilation of debug code under G4SPECSDEBUG. 903 750 904 01-Nov-2012 M.Gayer (geom-specific-V09-05-14) 751 01-Nov-2012 M.Gayer (geom-specific-V09-05-14) 905 - Corrected signature for voxels count methods 752 - Corrected signature for voxels count methods in G4SurfaceVoxelizer. 906 753 907 31-Oct-2012 M.Gayer (geom-specific-V09-05-13) 754 31-Oct-2012 M.Gayer (geom-specific-V09-05-13) 908 - Added set/get methods for voxels count in G4 755 - Added set/get methods for voxels count in G4SurfaceVoxelizer. 909 756 910 30-Oct-2012 M.Gayer (geom-specific-V09-05-12) 757 30-Oct-2012 M.Gayer (geom-specific-V09-05-12) 911 - Fixed indexing of vertices in facets for tes 758 - Fixed indexing of vertices in facets for tessellated-solid and some cleanup. 912 759 913 27-Oct-2012 G.Cosmo (geom-specific-V09-05-11) 760 27-Oct-2012 G.Cosmo (geom-specific-V09-05-11) 914 - Fixed initialization of data in G4SurfaceVox 761 - Fixed initialization of data in G4SurfaceVoxelizer (M.Gayer). 915 - Added post-const qualifier to G4VertextCompa 762 - Added post-const qualifier to G4VertextComparator::operator() in 916 G4TessellatedSolid. 763 G4TessellatedSolid. 917 - Fixed more compilation warnings on unused va 764 - Fixed more compilation warnings on unused variable. 918 765 919 26-Oct-2012 G.Cosmo (geom-specific-V09-05-10) 766 26-Oct-2012 G.Cosmo (geom-specific-V09-05-10) 920 - Corrected compilation problem on G4SurfBits 767 - Corrected compilation problem on G4SurfBits for use of fprint(). 921 - Polished comments in disclaimer in new updat 768 - Polished comments in disclaimer in new updated classes. 922 769 923 25-Oct-2012 G.Cosmo (geom-specific-V09-05-09) 770 25-Oct-2012 G.Cosmo (geom-specific-V09-05-09) 924 - Corrected compilation warnings on Linux and 771 - Corrected compilation warnings on Linux and fixed use of memset/memcpy. 925 772 926 25-Oct-2012 G.Cosmo (geom-specific-V09-05-08) 773 25-Oct-2012 G.Cosmo (geom-specific-V09-05-08) 927 - Correction to sources.cmake. 774 - Correction to sources.cmake. 928 775 929 19-Oct-2012 M.Gayer (geom-specific-V09-05-07) 776 19-Oct-2012 M.Gayer (geom-specific-V09-05-07) 930 - Complete rewrite of G4TessellatedSolid resul 777 - Complete rewrite of G4TessellatedSolid resulting in reduced memory 931 requirements by 50%, and factor of tens or m 778 requirements by 50%, and factor of tens or more speedup for number of facets 932 of the order of thousands, thanks to ad-hoc 779 of the order of thousands, thanks to ad-hoc voxelization of the surface. 933 Factor of thousands speedup when number of f 780 Factor of thousands speedup when number of facets of the order of hundreds 934 thousand. New classes introduced, G4SurfBits 781 thousand. New classes introduced, G4SurfBits and G4SurfaceVoxelizer. 935 782 936 12-Jun-2012 G.Cosmo (geom-specific-V09-05-06) 783 12-Jun-2012 G.Cosmo (geom-specific-V09-05-06) 937 - Explicitly use inclusion of headers for syst 784 - Explicitly use inclusion of headers for system of units and physical 938 constants, in plan to remove implicit inclus 785 constants, in plan to remove implicit inclusion from globals.hh. 939 786 940 14-May-2012 G.Cosmo (geom-specific-V09-05-05) 787 14-May-2012 G.Cosmo (geom-specific-V09-05-05) 941 - Fixed spurious cases of hidden variable visi 788 - Fixed spurious cases of hidden variable visibility, detected with 942 '-Wshadow' compilation option on gcc compile 789 '-Wshadow' compilation option on gcc compiler. 943 790 944 06-Apr-2012 M.Kelsey (geom-specific-V09-05-04 791 06-Apr-2012 M.Kelsey (geom-specific-V09-05-04) 945 - Modified GetPointOnSurface() to throw sqrt(r 792 - Modified GetPointOnSurface() to throw sqrt(r) uniformly for disk surfaces, 946 in G4Paraboloid, G4Polycone and G4TwistedTub 793 in G4Paraboloid, G4Polycone and G4TwistedTubs. 947 794 948 13-Dec-2011 G.Cosmo (geom-specific-V09-05-03, 795 13-Dec-2011 G.Cosmo (geom-specific-V09-05-03, 02, 01) 949 - Fixed trivial Coverity defects in G4TwistedT 796 - Fixed trivial Coverity defects in G4TwistedTubs and G4VTwisteFaceted for 950 missing protection against self-assignment. 797 missing protection against self-assignment. 951 798 952 09-Dec-2011 T.Nikitina (geom-specific-V09-05- 799 09-Dec-2011 T.Nikitina (geom-specific-V09-05-00) 953 - Fix in G4EllipticalCone in DistanceToIn(p,v) 800 - Fix in G4EllipticalCone in DistanceToIn(p,v) to exclude imaginary solution 954 (virtual cone) when distance is calculated. 801 (virtual cone) when distance is calculated. 955 802 956 10-Nov-2011 G.Cosmo (geom-specific-V09-04-09) 803 10-Nov-2011 G.Cosmo (geom-specific-V09-04-09) 957 - Fixed trivial Coverity defects on assignment 804 - Fixed trivial Coverity defects on assignment operators... 958 805 959 25-Oct-2011 G.Cosmo (geom-specific-V09-04-08) 806 25-Oct-2011 G.Cosmo (geom-specific-V09-04-08) 960 - Fixed logic in G4VTwistSurface::GetEdgeVisib 807 - Fixed logic in G4VTwistSurface::GetEdgeVisibility() in treatment of corners. 961 808 962 16-Sep-2011 G.Cosmo (geom-specific-V09-04-07) 809 16-Sep-2011 G.Cosmo (geom-specific-V09-04-07) 963 - Fix compilation error in code within G4SPECS 810 - Fix compilation error in code within G4SPECSDEBUG. No functional changes. 964 811 965 13-Sep-2011 I.Hrivnacova (geom-specific-V09-0 812 13-Sep-2011 I.Hrivnacova (geom-specific-V09-04-06) 966 - G4TriangularFacet: fixed tests where square 813 - G4TriangularFacet: fixed tests where square root was compared to 967 half Cartesian tolerance; now compared to kC 814 half Cartesian tolerance; now compared to kCarTolerance. 968 Addressing problem report #1242. 815 Addressing problem report #1242. 969 816 970 25-Aug-2011 G.Cosmo 817 25-Aug-2011 G.Cosmo 971 - Migrated to new G4Exception scheme for warni 818 - Migrated to new G4Exception scheme for warnings and errors. 972 - Defined scheme for warnings/errors coding: 819 - Defined scheme for warnings/errors coding: 973 + 1xxx for warnings, 0xxx for errors. 820 + 1xxx for warnings, 0xxx for errors. 974 Code numbering: 821 Code numbering: 975 + 0001: not supported or implemented feature 822 + 0001: not supported or implemented features; 976 + 0002: invalid setup/construct; 823 + 0002: invalid setup/construct; 977 + 0003: invalid run condition; 824 + 0003: invalid run condition; 978 + 1001: incorrect setup; automatically adapt 825 + 1001: incorrect setup; automatically adapted. 979 + 1002: notification. 826 + 1002: notification. 980 - Added unit test for G4ExtrudedSolid (J.Apost 827 - Added unit test for G4ExtrudedSolid (J.Apostolakis). 981 828 982 22-Aug-2011 I.Hrivnacova (geom-specific-V09-0 829 22-Aug-2011 I.Hrivnacova (geom-specific-V09-04-05) 983 - Fix in G4TriangularFacet::Intersect() to tak 830 - Fix in G4TriangularFacet::Intersect() to take into account geometrical 984 tolerance and cases of zero distance from su 831 tolerance and cases of zero distance from surface's facet. 985 - Fix in G4TessellatedSolid::DistanceToOut(p) 832 - Fix in G4TessellatedSolid::DistanceToOut(p) and DistanceToIn(p) to exactly 986 compute distance from facet avoiding use of 833 compute distance from facet avoiding use of 'outgoing' flag shortcut variant. 987 - Addressing problem report #1242. 834 - Addressing problem report #1242. 988 835 989 17-Aug-2011 T.Nikitina (geom-specific-V09-04- 836 17-Aug-2011 T.Nikitina (geom-specific-V09-04-04) 990 - Fix in G4Paraboloid::DistanceToIn(p,v) and D 837 - Fix in G4Paraboloid::DistanceToIn(p,v) and DistanceToIn(p) to properly 991 take into account tolerance and provide bett 838 take into account tolerance and provide better estimation of distance 992 respectively. Addresses problem report #1234 839 respectively. Addresses problem report #1234. 993 840 994 04-Aug-2011 T.Nikitina (geom-specific-V09-04- 841 04-Aug-2011 T.Nikitina (geom-specific-V09-04-03) 995 - Added SetReferences() and InvertFacets() to 842 - Added SetReferences() and InvertFacets() to G4GenericTrap::CreatePolyhedron() 996 for proper visualisation of Boolean composit 843 for proper visualisation of Boolean compositions with G4GenericTrap. 997 - Added SetReferences() to G4TessellatedSolid: 844 - Added SetReferences() to G4TessellatedSolid::CreatePolyhedron() 998 for proper visualisation of Boolean composit 845 for proper visualisation of Boolean compositions with G4TessellatedSolid. 999 - Requires tag "greps-V09-04-04", for addressi 846 - Requires tag "greps-V09-04-04", for addressing problem report #1235. 1000 847 1001 17-May-2011 I.Hrivnacova (geom-specific-V09- 848 17-May-2011 I.Hrivnacova (geom-specific-V09-04-02) 1002 - G4ExtrudedSolid: fix in Inside(p) for false 849 - G4ExtrudedSolid: fix in Inside(p) for false overlap reporting. 1003 Addressing problem report #1211. 850 Addressing problem report #1211. 1004 851 1005 12-May-2011 G.Cosmo (geom-specific-V09-04-01 852 12-May-2011 G.Cosmo (geom-specific-V09-04-01) 1006 - Fixed compilation warnings from gcc-4.6.0 f 853 - Fixed compilation warnings from gcc-4.6.0 for variables set but not used. 1007 854 1008 06-May-2011 G.Cosmo (geom-specific-V09-04-00 855 06-May-2011 G.Cosmo (geom-specific-V09-04-00) 1009 - Use G4 typedef for CLHEP types. 856 - Use G4 typedef for CLHEP types. 1010 857 1011 26-Nov-2010 T.Nikitina (geom-specific-V09-03 858 26-Nov-2010 T.Nikitina (geom-specific-V09-03-20) 1012 - Fixes in G4GenericTrap reported by SBT unit 859 - Fixes in G4GenericTrap reported by SBT unit test in SurfaceNormal(), 1013 DistanceToPlane() and VisExtent(). 860 DistanceToPlane() and VisExtent(). 1014 861 1015 16-Nov-2010 T.Nikitina (geom-specific-V09-03 862 16-Nov-2010 T.Nikitina (geom-specific-V09-03-19) 1016 - G4EllipticalCone: fixes in DistanceToIn(p,v 863 - G4EllipticalCone: fixes in DistanceToIn(p,v) and DistanceToOut(p,v) for 1017 correct handling of point on the surface. 864 correct handling of point on the surface. 1018 Corrected formula for SurfaceNormal(p). 865 Corrected formula for SurfaceNormal(p). 1019 866 1020 10-Nov-2010 T.Nikitina (geom-specific-V09-03 867 10-Nov-2010 T.Nikitina (geom-specific-V09-03-18) 1021 - Added checks on crossing of vertices and to 868 - Added checks on crossing of vertices and too big twisted angle in 1022 G4GenericTrap. 869 G4GenericTrap. 1023 - Fixed case of division by zero in G4Twisted 870 - Fixed case of division by zero in G4TwistedTubs. 1024 - Added unit test for G4Polyhedra. 871 - Added unit test for G4Polyhedra. 1025 872 1026 02-Nov-2010 G.Cosmo (geom-specific-V09-03-17 873 02-Nov-2010 G.Cosmo (geom-specific-V09-03-17) 1027 - More fixes on Coverity reports for G4Tessel 874 - More fixes on Coverity reports for G4TessellatedSolid and G4ReduciblePolygon. 1028 875 1029 20-Oct-2010 G.Cosmo (geom-specific-V09-03-16 876 20-Oct-2010 G.Cosmo (geom-specific-V09-03-16) 1030 - Implemented Clone() virtual method for all 877 - Implemented Clone() virtual method for all solids, returning a pointer 1031 to a dynamically allocated copy of the soli 878 to a dynamically allocated copy of the solid. To be used by Geant4-MT. 1032 879 1033 23-Sep-2010 G.Cosmo (geom-specific-V09-03-15 880 23-Sep-2010 G.Cosmo (geom-specific-V09-03-15) 1034 - Initialize fpPolyhedron to zero in copy-cto 881 - Initialize fpPolyhedron to zero in copy-ctor and operator=(). 1035 - Completed implementation of copy-ctor and o 882 - Completed implementation of copy-ctor and operator=() for facets. 1036 883 1037 20-Sep-2010 G.Cosmo (geom-specific-V09-03-14 884 20-Sep-2010 G.Cosmo (geom-specific-V09-03-14) 1038 - Implemented copy-constructor and assignment 885 - Implemented copy-constructor and assignment operator for all solids 1039 to facilitate conversion to Geant4-MT. 886 to facilitate conversion to Geant4-MT. 1040 887 1041 08-Sep-2010 G.Cosmo (geom-specific-V09-03-13 888 08-Sep-2010 G.Cosmo (geom-specific-V09-03-13) 1042 - Correction to previous fix in G4ReduciblePo 889 - Correction to previous fix in G4ReduciblePolygon to avoid deleting current 1043 'vertexHead' pointer. 890 'vertexHead' pointer. 1044 891 1045 07-Sep-2010 G.Cosmo (geom-specific-V09-03-12 892 07-Sep-2010 G.Cosmo (geom-specific-V09-03-12) 1046 - Fix within G4CSGDEBUG code for restoring co 893 - Fix within G4CSGDEBUG code for restoring cout precision. 1047 - Fix in G4ReduciblePolygon::RemoveRedundantV 894 - Fix in G4ReduciblePolygon::RemoveRedundantVertices() to avoid potential 1048 case of dereferencing freed pointer. 895 case of dereferencing freed pointer. 1049 896 1050 19-Aug-2010 T.Nikitina (geom-specific-V09-03 897 19-Aug-2010 T.Nikitina (geom-specific-V09-03-11) 1051 - G4EllipticalTube: extended implementation o 898 - G4EllipticalTube: extended implementation of SurfaceNormal(p) in agreement 1052 with canonical form. Added unit test testG4 899 with canonical form. Added unit test testG4EllipticalTube.cc. 1053 900 1054 16-Jul-2010 G.Cosmo (geom-specific-V09-03-10 901 16-Jul-2010 G.Cosmo (geom-specific-V09-03-10) 1055 - Fixed cases of division by zero in G4VTwist 902 - Fixed cases of division by zero in G4VTwistSurface and G4TwistBoxSide. 1056 - Use INT_MAX as initialisation for max limit 903 - Use INT_MAX as initialisation for max limits in G4SolidExtentList. 1057 904 1058 12-Jul-2010 G.Cosmo (geom-specific-V09-03-09 905 12-Jul-2010 G.Cosmo (geom-specific-V09-03-09) 1059 - Added dummy initialization to members in st << 906 - Added dummy initialization to members in struct 1060 G4PolyPhiFace::G4PolyPhiFaceEdge, struct G4 907 G4PolyPhiFace::G4PolyPhiFaceEdge, struct G4ReduciblePolygon::ABVertex. 1061 G4Ellipsoid, G4EllipticalTube, G4EnclosingC 908 G4Ellipsoid, G4EllipticalTube, G4EnclosingCylinder, G4ExtrudedSolid, G4Hype, 1062 G4IntersectingCone, G4Paraboloid, G4PolyPhi 909 G4IntersectingCone, G4Paraboloid, G4PolyPhiFace, G4Polycone, G4PolyconeSide, 1063 G4Polyhedra, G4PolyhedraSide, G4Quadrangula 910 G4Polyhedra, G4PolyhedraSide, G4QuadrangularFacet, G4ReduciblePolygon, 1064 G4TessellatedSolid, G4TriangularFacet, G4Tw 911 G4TessellatedSolid, G4TriangularFacet, G4TwistBoxSide, G4TwistTrapAlphaSide, 1065 G4TwistTrapFlatSide, G4TwistTrapParallelSid 912 G4TwistTrapFlatSide, G4TwistTrapParallelSide, G4TwistTubsFlatSide, 1066 G4TwistTubsHypeSide, G4TwistTubsSide, G4Twi 913 G4TwistTubsHypeSide, G4TwistTubsSide, G4TwistedTubs, G4VCSGfaceted, G4VFacet, 1067 G4VTwistSurface, G4VTwistedFaceted. 914 G4VTwistSurface, G4VTwistedFaceted. 1068 - Fixed case of dereferencing null pointer in 915 - Fixed case of dereferencing null pointer in methods 1069 G4EllipticalTube::DistanceToOut(p,v), G4VCS 916 G4EllipticalTube::DistanceToOut(p,v), G4VCSGfaceted::DistanceToIn(p,v) 1070 and G4VCSGfaceted::DistanceToOut(p,v). 917 and G4VCSGfaceted::DistanceToOut(p,v). 1071 - Fixed unecessary object copy as argument in 918 - Fixed unecessary object copy as argument in method 1072 G4PolyhedraSide::IntersectSidePlane(). 919 G4PolyhedraSide::IntersectSidePlane(). 1073 - Avoid possible case of derefencing null poi 920 - Avoid possible case of derefencing null pointer in G4ReduciblePolygon 1074 RemoveDuplicateVertices() and RemoveRedunda 921 RemoveDuplicateVertices() and RemoveRedundantVertices() methods. 1075 - Replaced calls to std::abs() with std::fabs 922 - Replaced calls to std::abs() with std::fabs() where suitable. 1076 923 1077 16-Jun-2010 G.Cosmo (geom-specific-V09-03-08 924 16-Jun-2010 G.Cosmo (geom-specific-V09-03-08) 1078 - Fixed deletion of internal arrays in Create 925 - Fixed deletion of internal arrays in CreatePolyhedron() for G4Polycone 1079 and G4Polyhedra. 926 and G4Polyhedra. 1080 927 1081 11-Jun-2010 T.Nikitina (geom-specific-V09-03 928 11-Jun-2010 T.Nikitina (geom-specific-V09-03-07) 1082 - G4GenericTrap: fixed cases of zero dToIn/sT 929 - G4GenericTrap: fixed cases of zero dToIn/sToOut when vertices are collapsed 1083 to triangle, line or point. Added new metho 930 to triangle, line or point. Added new methods handling those specific cases. 1084 - Added unit test for G4GenericTrap. 931 - Added unit test for G4GenericTrap. 1085 932 1086 10-Jun-2010 I.Hrivnacova 933 10-Jun-2010 I.Hrivnacova 1087 - G4GenericTrap: fixed parameter names in Cal 934 - G4GenericTrap: fixed parameter names in CalculateExtent() for the test 1088 case construction through tessellated facet 935 case construction through tessellated facets. 1089 936 1090 09-Jun-2010 G.Cosmo 937 09-Jun-2010 G.Cosmo 1091 - G4GenericTrap: moved internal methods to pr 938 - G4GenericTrap: moved internal methods to private section and reordered 1092 in source file. Added missing implementatio 939 in source file. Added missing implementation for IsTwisted() method. 1093 940 1094 03-Jun-2010 T.Nikitina, G.Cosmo (geom-specif 941 03-Jun-2010 T.Nikitina, G.Cosmo (geom-specific-V09-03-06) 1095 - G4GenericTrap: 942 - G4GenericTrap: 1096 o Fixed initialization of fSurfaceArea and 943 o Fixed initialization of fSurfaceArea and fCubicVolume and 1097 calculation of surface area. 944 calculation of surface area. 1098 o Fixed error in Inside(p) function, and co 945 o Fixed error in Inside(p) function, and corrected use std::fabs() instead 1099 of std::abs() for floating point values. 946 of std::abs() for floating point values. 1100 o Added missing initialisation of fpPolyhed 947 o Added missing initialisation of fpPolyhedron pointer. 1101 o More corrected signatures for use of non- 948 o More corrected signatures for use of non-const references for vectors 1102 passed as arguments to functions. 949 passed as arguments to functions. 1103 950 1104 02-Jun-2010 G.Cosmo (geom-specific-V09-03-05 951 02-Jun-2010 G.Cosmo (geom-specific-V09-03-05) 1105 - G4GenericTrap: use const reference for vect 952 - G4GenericTrap: use const reference for vector of vertices passed as argument 1106 in constructor and accessor. 953 in constructor and accessor. 1107 954 1108 27-May-2010 T.Nikitina (geom-specific-V09-03 955 27-May-2010 T.Nikitina (geom-specific-V09-03-04) 1109 - First implementation of G4GenericTrap shape 956 - First implementation of G4GenericTrap shape, a new solid representing an 1110 arbitrary trapezoid with up to 8 vertices s 957 arbitrary trapezoid with up to 8 vertices standing on two parallel planes 1111 perpendicular to the Z axis. 958 perpendicular to the Z axis. 1112 959 1113 28-Apr-2010 P.R.Truscott (geom-specific-V09- 960 28-Apr-2010 P.R.Truscott (geom-specific-V09-03-03) 1114 - Fix in G4TriangularFacet and G4TessellatedS 961 - Fix in G4TriangularFacet and G4TessellatedSolid to correct treatment of 1115 optical photon transport related to interna 962 optical photon transport related to internal reflection at surface. 1116 Addresses problem report #1103. 963 Addresses problem report #1103. 1117 964 1118 15-Apr-2010 I.Hrivnacova (geom-specific-V09- 965 15-Apr-2010 I.Hrivnacova (geom-specific-V09-03-02) 1119 - G4ExtrudedSolid: eliminated requirement for 966 - G4ExtrudedSolid: eliminated requirement for clockwise ordering of polygon 1120 vertices. Added a check for vertices orderi 967 vertices. Added a check for vertices ordering; if vertices are defined 1121 anti-clockwise their ordering is reverted. 968 anti-clockwise their ordering is reverted. 1122 Fix in polygon facet triangularization for 969 Fix in polygon facet triangularization for consequent concave vertices. 1123 970 1124 24-Feb-2010 G.Cosmo (geom-specific-V09-03-01 971 24-Feb-2010 G.Cosmo (geom-specific-V09-03-01) 1125 - Adopt caching of Phi in G4PolyconeSide and 972 - Adopt caching of Phi in G4PolyconeSide and G4PolyhedraSide to avoid 1126 unnecessary consecutive computations on the 973 unnecessary consecutive computations on the same point. 1127 974 1128 10-Feb-2010 G.Cosmo (geom-specific-V09-03-00 975 10-Feb-2010 G.Cosmo (geom-specific-V09-03-00) 1129 - Use kInfinity for initialising minimum and 976 - Use kInfinity for initialising minimum and maximum allowed extent for 1130 G4SolidExtentList of faceted solids. 977 G4SolidExtentList of faceted solids. 1131 978 1132 11-Nov-2009 G.Cosmo (geom-specific-V09-02-08 979 11-Nov-2009 G.Cosmo (geom-specific-V09-02-08) 1133 - Avoid fake (and redundant) assignment of va 980 - Avoid fake (and redundant) assignment of value to 3-vector in 1134 G4PolyconeSide and G4TwistTubsSide. 981 G4PolyconeSide and G4TwistTubsSide. 1135 982 1136 24-Sep-2009 T.Nikitina (geom-specific-V09-02 983 24-Sep-2009 T.Nikitina (geom-specific-V09-02-07) 1137 - G4Ellipsoid: refined fix in DistanceToIn(p, 984 - G4Ellipsoid: refined fix in DistanceToIn(p,v) for points located on the 1138 curved surface, and correct treatment of ge 985 curved surface, and correct treatment of geometrical tolerance. 1139 986 1140 09-Sep-2009 G.Cosmo (geom-specific-V09-02-06 987 09-Sep-2009 G.Cosmo (geom-specific-V09-02-06) 1141 - G4Ellipsoid: fixed usage of half-tolerances 988 - G4Ellipsoid: fixed usage of half-tolerances (radial and Cartesian) in 1142 DistanceToIn(p,v), based on incorrect assum 989 DistanceToIn(p,v), based on incorrect assumptions introduced in tag 1143 "geom-specific-V09-02-04", responsible for 990 "geom-specific-V09-02-04", responsible for zero steps on configurations 1144 with cut in Z. Addresses problem report #10 991 with cut in Z. Addresses problem report #1076. 1145 992 1146 04-Aug-2009 T.Nikitina (geom-specific-V09-02 993 04-Aug-2009 T.Nikitina (geom-specific-V09-02-05) 1147 - G4Ellipsoid: 994 - G4Ellipsoid: 1148 o Fixes in Inside(p) and in DistanceToIn(p, 995 o Fixes in Inside(p) and in DistanceToIn(p,v) for points 1149 located on the curved surface within tole 996 located on the curved surface within tolerance. Final fix for issue 1150 reported in problem report #1050 and conc 997 reported in problem report #1050 and concerning warnings reported by 1151 grid_test. 998 grid_test. 1152 o Adopt pre-computed half-tolerance values 999 o Adopt pre-computed half-tolerance values for optimisation. 1153 1000 1154 23-Jul-2009 T.Nikitina (geom-specific-V09-02 1001 23-Jul-2009 T.Nikitina (geom-specific-V09-02-04) 1155 - G4Ellipsoid: fix to DistanceToIn(p,v) in th 1002 - G4Ellipsoid: fix to DistanceToIn(p,v) in the calculation of the roots of 1156 the quadratic equation and in DistanceToOut 1003 the quadratic equation and in DistanceToOut(p,v) in the calculation of the 1157 normal on cut surfaces. Final fix for probl 1004 normal on cut surfaces. Final fix for problem report #1022 and #1050. 1158 - G4PolyconeSide: added protection in method 1005 - G4PolyconeSide: added protection in method Normal(), addressing problem 1159 report #1073. 1006 report #1073. 1160 1007 1161 30-Jun-2009 T.Nikitina (geom-specific-V09-02 1008 30-Jun-2009 T.Nikitina (geom-specific-V09-02-03) 1162 - G4Ellipsoid: introduced to DistanceToIn(p,v 1009 - G4Ellipsoid: introduced to DistanceToIn(p,v) splitting of the distance for 1163 point very far from intersection area and b 1010 point very far from intersection area and big difference between solid 1164 dimensions and distance to it; resolves iss 1011 dimensions and distance to it; resolves issue observed on 64 bits problem. 1165 Also addressing problem report #1022. 1012 Also addressing problem report #1022. 1166 1013 1167 08-May-2009, G.Cosmo (geom-specific-V09-02-02 1014 08-May-2009, G.Cosmo (geom-specific-V09-02-02) 1168 - Corrected typo in base implementation of G4 1015 - Corrected typo in base implementation of G4VCSGfaceted::GetSurfaceArea(), 1169 which was erroneously returning cubic volum 1016 which was erroneously returning cubic volume estimation. 1170 Addresses problem report #1062. 1017 Addresses problem report #1062. 1171 1018 1172 27-Apr-2009, G.Cosmo (geom-specific-V09-02-01 1019 27-Apr-2009, G.Cosmo (geom-specific-V09-02-01) 1173 - Relaxed error condition in G4TessellatedSol 1020 - Relaxed error condition in G4TessellatedSolid::Inside(p) to warning, for 1174 excess of max trials and anomalous conditio 1021 excess of max trials and anomalous conditions in distance calculation. 1175 Added more printout information when error 1022 Added more printout information when error condition is detected. 1176 1023 1177 27-Feb-2009, T.Nikitina (geom-specific-V09-02 1024 27-Feb-2009, T.Nikitina (geom-specific-V09-02-00) 1178 - Fix in G4Paraboloid::DistanceToOut(p,v,..) 1025 - Fix in G4Paraboloid::DistanceToOut(p,v,..) for the computation of normal 1179 to surface; added missing normalisation to 1026 to surface; added missing normalisation to unit, following remark in the 1180 Geometry Forum Hypernews posting #953. 1027 Geometry Forum Hypernews posting #953. 1181 1028 1182 21-Nov-2008, G.Cosmo (geom-specific-V09-01-19 1029 21-Nov-2008, G.Cosmo (geom-specific-V09-01-19) 1183 - Added missing accessors to G4EllipticalCone 1030 - Added missing accessors to G4EllipticalCone, required for detector 1184 persistency. 1031 persistency. 1185 1032 1186 13-Nov-2008, G.Cosmo (geom-specific-V09-01-18 1033 13-Nov-2008, G.Cosmo (geom-specific-V09-01-18) 1187 - Corrected initialisation of algorithm in G4 1034 - Corrected initialisation of algorithm in G4TriangularFacet constructor. 1188 1035 1189 30-Oct-2008, I.Hrivnacova (geom-specific-V09- 1036 30-Oct-2008, I.Hrivnacova (geom-specific-V09-01-17) 1190 - G4ExtrudedSolid: fixed bug in the decomposi 1037 - G4ExtrudedSolid: fixed bug in the decomposition of polygonal sides for 1191 quadrangular facets in MakeFacets(). Addres 1038 quadrangular facets in MakeFacets(). Addresses problem report #1029. 1192 1039 1193 23-Sep-2008, T.Nikitina (geom-specific-V09-01 1040 23-Sep-2008, T.Nikitina (geom-specific-V09-01-16) 1194 - Corrected algorithm in G4TriangularFacet::G 1041 - Corrected algorithm in G4TriangularFacet::GetPointOnFace() according to 1195 suggestion advanced in problem report #1025 1042 suggestion advanced in problem report #1025. Fixes a problem of false 1196 overlaps detection related to G4ExtrudedSol 1043 overlaps detection related to G4ExtrudedSolid and G4TessellatedSolid. 1197 1044 1198 12-Sep-2008, G.Cosmo (geom-specific-V09-01-15 1045 12-Sep-2008, G.Cosmo (geom-specific-V09-01-15) 1199 - G4VFacet: corrected increment of indeces in 1046 - G4VFacet: corrected increment of indeces in operator==(), following 1200 problem report #1024. 1047 problem report #1024. 1201 1048 1202 25-Jul-2008, I.Hrivnacova (geom-specific-V09- 1049 25-Jul-2008, I.Hrivnacova (geom-specific-V09-01-14) 1203 - G4ExtrudedSolid: fix in polygon decompositi 1050 - G4ExtrudedSolid: fix in polygon decomposition; systematically use 1204 half kCarTolerance instead of kCarTolerance 1051 half kCarTolerance instead of kCarTolerance; added solid name in the 1205 error messages coming from fatal exceptions 1052 error messages coming from fatal exceptions. 1206 1053 1207 16-Jul-2008, T.Nikitina (geom-specific-V09-01 1054 16-Jul-2008, T.Nikitina (geom-specific-V09-01-13) 1208 - G4Paraboloid: revised DistanceToOut(p,v,... 1055 - G4Paraboloid: revised DistanceToOut(p,v,...) in answer to problem report 1209 #1015. Fixed precision problem when solving 1056 #1015. Fixed precision problem when solving quadratic equation; apply 1210 comparison with kCarTolerance and not with 1057 comparison with kCarTolerance and not with zero; fixed logic problem in 1211 algoritm for points on surface and directio 1058 algoritm for points on surface and direction inside, relative to directions 1212 along Z, (0,0,Vz). 1059 along Z, (0,0,Vz). 1213 1060 1214 22-May-2008, G.Cosmo (geom-specific-V09-01-12 1061 22-May-2008, G.Cosmo (geom-specific-V09-01-12) 1215 - Removed left-over debug printout in G4VCSGF 1062 - Removed left-over debug printout in G4VCSGFaceted::DistanceToIn(). 1216 1063 1217 15-May-2008, T.Nikitina (geom-specific-V09-01 1064 15-May-2008, T.Nikitina (geom-specific-V09-01-11) 1218 - Enhanced GetPointOnSurface() for generic G4 1065 - Enhanced GetPointOnSurface() for generic G4Polycone and G4Polyhedra 1219 constructs; the method uses new triangulati 1066 constructs; the method uses new triangulation algorithm for G4PolyPhiFace. 1220 - G4ExtrudedSolid: added missing 'std' namesp 1067 - G4ExtrudedSolid: added missing 'std' namespace to standard mathematical 1221 function calls. 1068 function calls. 1222 1069 1223 28-Apr-2008, T.Nikitina (geom-specific-V09-01 1070 28-Apr-2008, T.Nikitina (geom-specific-V09-01-10) 1224 - Added kCarTolerance in definition of "low" 1071 - Added kCarTolerance in definition of "low" and "high" cone limits in R 1225 and in Z in order to protect against numeri 1072 and in Z in order to protect against numerical errors. This fixes cases of 1226 DistanceToIn(p,v) returning 'kInfinity' whe 1073 DistanceToIn(p,v) returning 'kInfinity' when p+t*v cross intersection 1227 between two cones. 1074 between two cones. 1228 1075 1229 25-Apr-2008, T.Nikitina (geom-specific-V09-01 1076 25-Apr-2008, T.Nikitina (geom-specific-V09-01-09) 1230 - Added protection against NaN in G4Intersect 1077 - Added protection against NaN in G4IntersectingCone::LineHitsCone1() in 1231 case of configuration where a conic section 1078 case of configuration where a conic section becomes a tube. 1232 - G4EllipticalCone: removed some debug printo 1079 - G4EllipticalCone: removed some debug printouts. 1233 1080 1234 14-Apr-2008, T.Nikitina (geom-specific-V09-01 1081 14-Apr-2008, T.Nikitina (geom-specific-V09-01-08) 1235 - G4Hype: refined polyhedron representation f 1082 - G4Hype: refined polyhedron representation for correct visualization of 1236 the shape. Coworks with tag "greps-V09-01-0 1083 the shape. Coworks with tag "greps-V09-01-04". 1237 1084 1238 13-Mar-2008, G.Cosmo (geom-specific-V09-01-07 1085 13-Mar-2008, G.Cosmo (geom-specific-V09-01-07) 1239 - Cleared compilation warnings in G4Paraboloi 1086 - Cleared compilation warnings in G4Paraboloid and G4TessellatedSolid 1240 on gcc-4.3.0 for ambiguous use of parenthes 1087 on gcc-4.3.0 for ambiguous use of parentheses in condition statements. 1241 1088 1242 28-Feb-2008, I.Hrivnacova (geom-specific-V09- 1089 28-Feb-2008, I.Hrivnacova (geom-specific-V09-01-06) 1243 - Correction to previous fix in G4ExtrudedSol 1090 - Correction to previous fix in G4ExtrudedSolid: testing on the edges has 1244 to be limited to the line segment, for this 1091 to be limited to the line segment, for this purpose a new internal method 1245 IsSameLineSegment() has been introduced for 1092 IsSameLineSegment() has been introduced for use instead of IsSameLine(). 1246 - Updated and extended unit test testG4Extrud 1093 - Updated and extended unit test testG4ExtrudedSolid.cc. 1247 1094 1248 27-Feb-2008, I.Hrivnacova (geom-specific-V09- 1095 27-Feb-2008, I.Hrivnacova (geom-specific-V09-01-05) 1249 - Fix in G4TessellatedSolid::DistanceToOut(p, 1096 - Fix in G4TessellatedSolid::DistanceToOut(p,v,..) to compute normal only 1250 if specified by flag in input. 1097 if specified by flag in input. 1251 - Fix in G4ExtrudedSolid::Inside(p) for corre 1098 - Fix in G4ExtrudedSolid::Inside(p) for correctly handling the case of 1252 points located on the edges of triangles wh 1099 points located on the edges of triangles which are not the outline edges 1253 of the polygon. 1100 of the polygon. 1254 1101 1255 21-Feb-2008, T.Nikitina (geom-specific-V09-01 1102 21-Feb-2008, T.Nikitina (geom-specific-V09-01-04) 1256 - G4Polyhedra: fixed problem of out-of-bound 1103 - G4Polyhedra: fixed problem of out-of-bound access to vectors in 1257 GetPointOnSurface(). 1104 GetPointOnSurface(). 1258 1105 1259 20-Feb-2008, I.Hrivnacova (geom-specific-V09- 1106 20-Feb-2008, I.Hrivnacova (geom-specific-V09-01-03) 1260 - G4TessellatedSolid: fixed bug in copy-const 1107 - G4TessellatedSolid: fixed bug in copy-constructor and internal method 1261 CopyObjects() for cloning of facets. 1108 CopyObjects() for cloning of facets. 1262 1109 1263 05-Feb-2008, I.Hrivnacova (geom-specific-V09- 1110 05-Feb-2008, I.Hrivnacova (geom-specific-V09-01-02) 1264 - G4ExtrudedSolid: bug fix in MakeFacets() to 1111 - G4ExtrudedSolid: bug fix in MakeFacets() to fill 'fTriangles' also in case 1265 of polygon with 3 or 4 vertices, as they ar 1112 of polygon with 3 or 4 vertices, as they are needed for Inside(p). 1266 1113 1267 02-Feb-2008, I.Hrivnacova (geom-specific-V09- 1114 02-Feb-2008, I.Hrivnacova (geom-specific-V09-01-01) 1268 - Corrected triangularization of polygon, now 1115 - Corrected triangularization of polygon, now correctly handling case 1269 of concave shapes. 1116 of concave shapes. 1270 - Corrected order of arguments in G4Paraboloi << 1117 - Corrected order of arguments in G4Paraboloid constructor. 1271 1118 1272 16-Jan-2008, I.Hrivnacova (geom-specific-V09- 1119 16-Jan-2008, I.Hrivnacova (geom-specific-V09-01-00) 1273 - In G4ExtrudedSolid::MakeFacets(), now addin 1120 - In G4ExtrudedSolid::MakeFacets(), now adding triangular facets before quadrangular 1274 ones, following logic behind G4TessellatedS 1121 ones, following logic behind G4TessellatedSolid. 1275 1122 1276 12-Dec-2007, G.Cosmo (geom-specific-V09-00-08 1123 12-Dec-2007, G.Cosmo (geom-specific-V09-00-08a) 1277 - Remove use of global static constant from s 1124 - Remove use of global static constant from singleton initialisation in 1278 G4TessellatedGeometryAlgorithms class. Use 1125 G4TessellatedGeometryAlgorithms class. Use 'sqrEpsilon' as local value. 1279 1126 1280 15-Nov-2007, P.Truscott (geom-specific-V09-00 1127 15-Nov-2007, P.Truscott (geom-specific-V09-00-08) 1281 - Reviewed implementation of G4TessellatedSol 1128 - Reviewed implementation of G4TessellatedSolid::CalculateExtent() to 1282 make it more robust and precise, following 1129 make it more robust and precise, following suggestion by S.Seibert 1283 addressed in problem report #983, now fixed 1130 addressed in problem report #983, now fixed. 1284 1131 1285 12-Oct-2007, G.Cosmo (geom-specific-V09-00-07 1132 12-Oct-2007, G.Cosmo (geom-specific-V09-00-07) 1286 - Corrected wrong boolean condition in method 1133 - Corrected wrong boolean condition in method IntersectLineAndTriangle2D() 1287 of G4TessellatedGeometryAlgorithms causing 1134 of G4TessellatedGeometryAlgorithms causing compilation error on VC++8. 1288 1135 1289 09-Oct-2007, G.Cosmo (geom-specific-V09-00-06 1136 09-Oct-2007, G.Cosmo (geom-specific-V09-00-06) 1290 - Reviewed G4TessellatedSolid classes in orde 1137 - Reviewed G4TessellatedSolid classes in order not to make use of random 1291 numbers for selection of direction (by P.Tr 1138 numbers for selection of direction (by P.Truscott). 1292 1139 1293 02-Oct-2007, G.Cosmo 1140 02-Oct-2007, G.Cosmo 1294 - Removed debug printout in G4Polycone::GetPo 1141 - Removed debug printout in G4Polycone::GetPointOnCone(). 1295 1142 1296 23-Aug-2007, G.Cosmo (geom-specific-V09-00-05 1143 23-Aug-2007, G.Cosmo (geom-specific-V09-00-05) 1297 - Revision of G4TessellatedSolid classes: 1144 - Revision of G4TessellatedSolid classes: 1298 o Fixed problem report #931 by P.Truscott, 1145 o Fixed problem report #931 by P.Truscott, based on suggestion of 1299 R.Holmberg. Modified classes G4Tessellate 1146 R.Holmberg. Modified classes G4TessellatedSolid and G4TriangularFacet. 1300 o Modified data and accessor 'centroid' and 1147 o Modified data and accessor 'centroid' and 'GetCentroid()' for G4VFacet; 1301 replaced by 'circumcentre' and 'GetCircum 1148 replaced by 'circumcentre' and 'GetCircumcentre()' respectively. 1302 o Added utility class G4TessellatedGeometry 1149 o Added utility class G4TessellatedGeometryAlgorithms. 1303 - Added formulas for calculating SemiAxis and 1150 - Added formulas for calculating SemiAxis and Zheight in G4EllipticalCone 1304 (by T.Nikitina). 1151 (by T.Nikitina). 1305 1152 1306 20-Aug-2007, T.Nikitina & L.Lindroos (geom-sp 1153 20-Aug-2007, T.Nikitina & L.Lindroos (geom-specific-V09-00-04) 1307 - Revision of G4EllipticalCone: 1154 - Revision of G4EllipticalCone: 1308 o DistanceToIn(p): corrected answer for p.z 1155 o DistanceToIn(p): corrected answer for p.z()<-zTopCut and for the point 1309 p on the surface. 1156 p on the surface. 1310 o DistanceToOut(p,v): now returning positiv 1157 o DistanceToOut(p,v): now returning positive solution or zero when crossing 1311 the elliptical surface. 1158 the elliptical surface. 1312 o Fix in DistanceToOut(p) which was giving << 1159 o Fix in DistanceToOut(p) which was giving always zero. 1313 o Corrected visualisation error of solid in 1160 o Corrected visualisation error of solid in graphics_reps. 1314 o Added some formulas on how to pre-calcula 1161 o Added some formulas on how to pre-calculate 'SemiAxis' and 'zheight'. 1315 o Added checkDistanceToOut() method to unit 1162 o Added checkDistanceToOut() method to unit test. 1316 - Corrections to G4Paraboloid: 1163 - Corrections to G4Paraboloid: 1317 o Fixed bug in CalculateSurfaceArea() metho 1164 o Fixed bug in CalculateSurfaceArea() method 1318 o Added correct initialisation of 'fPolyhed 1165 o Added correct initialisation of 'fPolyhedron' in constructor. 1319 o Added unit test testG4Paraboloid. 1166 o Added unit test testG4Paraboloid. 1320 1167 1321 13-Aug-2007, W.Pokorski (geom-specific-V09-00 1168 13-Aug-2007, W.Pokorski (geom-specific-V09-00-03) 1322 - G4PolyconeSide: added workaround to initial 1169 - G4PolyconeSide: added workaround to initialisation of 'corners' vector, 1323 to allow for object persistency with Root-I 1170 to allow for object persistency with Root-I/O (W.Pokorski). 1324 1171 1325 18-Jul-2007, G.Cosmo (geom-specific-V09-00-02 1172 18-Jul-2007, G.Cosmo (geom-specific-V09-00-02) 1326 - New specific G4Paraboloid with cuts along t 1173 - New specific G4Paraboloid with cuts along the Z axis (by L.Lindroos). 1327 - Fixed dummy constructors of G4Polycone and 1174 - Fixed dummy constructors of G4Polycone and G4PolyPhiFace for initialisation 1328 of 'edges' and 'corners'. 1175 of 'edges' and 'corners'. 1329 - Coworks with tag "greps-V09-00-01". 1176 - Coworks with tag "greps-V09-00-01". 1330 1177 1331 12-Jul-2007, T.Nikitina (geom-specific-V09-00 1178 12-Jul-2007, T.Nikitina (geom-specific-V09-00-01) 1332 - Fix in G4Polyhedra::GetPointOnSurface() to 1179 - Fix in G4Polyhedra::GetPointOnSurface() to correctly treat 'totalPhi' instead of 1333 'endPhi' for the case of open shapes and 't 1180 'endPhi' for the case of open shapes and 'twopi' for not open shapes. 1334 1181 1335 05-Jul-2007, T.Nikitina (geom-specific-V09-00 1182 05-Jul-2007, T.Nikitina (geom-specific-V09-00-00) 1336 - Fix in G4Polyhedra::GetPointOnSurface() for 1183 - Fix in G4Polyhedra::GetPointOnSurface() for the case when number of sectors 1337 (numSide) is equal to 1. At the origin of p 1184 (numSide) is equal to 1. At the origin of problems observed when checking 1338 overlaps for polyhedra solids defined as su 1185 overlaps for polyhedra solids defined as such. 1339 1186 1340 31-May-2007, G.Cosmo (geom-specific-V08-03-03 1187 31-May-2007, G.Cosmo (geom-specific-V08-03-03) 1341 - Fixed initialisation of constants in constr 1188 - Fixed initialisation of constants in constructor for - G4VTwistSurface, 1342 G4PolyPhiFace, G4PolyconeSide, G4PolyhedraS 1189 G4PolyPhiFace, G4PolyconeSide, G4PolyhedraSide - following latest changes 1343 for tunable tolerance. 1190 for tunable tolerance. 1344 1191 1345 25-May-2007, G.Cosmo (geom-specific-V08-03-02 1192 25-May-2007, G.Cosmo (geom-specific-V08-03-02) 1346 - Fixed default response of DistToIn/DistToOu 1193 - Fixed default response of DistToIn/DistToOut for twisted solids. 1347 - Use G4TWISTDEBUG instead of G4SPECSDEBUG as 1194 - Use G4TWISTDEBUG instead of G4SPECSDEBUG as debug conditional flag 1348 for twisted solids. 1195 for twisted solids. 1349 - Some cleanup in G4TwistTrapAlphaSide code. 1196 - Some cleanup in G4TwistTrapAlphaSide code. 1350 1197 1351 18-May-2007, G.Cosmo (geom-specific-V08-03-01 1198 18-May-2007, G.Cosmo (geom-specific-V08-03-01) 1352 - Use kAngTolerance and kRadTolerance from G4 1199 - Use kAngTolerance and kRadTolerance from G4GeometryTolerance class. 1353 - Coworks with tag "global-V08-03-03". 1200 - Coworks with tag "global-V08-03-03". 1354 1201 1355 11-May-2007, T.Nikitina (geom-specific-V08-03 1202 11-May-2007, T.Nikitina (geom-specific-V08-03-00) 1356 - Use call to G4GeometryTolerance instead of 1203 - Use call to G4GeometryTolerance instead of kCarTolerance where needed. 1357 - Requires tag "global-V08-03-00" and related 1204 - Requires tag "global-V08-03-00" and related tag set. 1358 1205 1359 26-Apr-2007, T.Nikitina (geom-specific-V08-02 1206 26-Apr-2007, T.Nikitina (geom-specific-V08-02-05) 1360 - Fix in GetPointOnSurface() for G4Polycone t 1207 - Fix in GetPointOnSurface() for G4Polycone to consider also points laying 1361 on rings when consecutive Z-sections are co 1208 on rings when consecutive Z-sections are coincident. 1362 Added method GetPointOnRing(). 1209 Added method GetPointOnRing(). 1363 - Added unit test testPointOnSurfacePoly.cc. 1210 - Added unit test testPointOnSurfacePoly.cc. 1364 1211 1365 27-Feb-2007, I.Hrivnacova (geom-specific-V08- 1212 27-Feb-2007, I.Hrivnacova (geom-specific-V08-02-04) 1366 - Added specialised constructor for handling 1213 - Added specialised constructor for handling Z-sections in G4ExtrudedSolid. 1367 - Cleared unecessary declaration of IsInside( 1214 - Cleared unecessary declaration of IsInside() methods in G4TriangularFacet 1368 and G4QuadrangularFacet. 1215 and G4QuadrangularFacet. 1369 - Updated unit test for G4ExtrudedSolid. 1216 - Updated unit test for G4ExtrudedSolid. 1370 1217 1371 26-Feb-2007, I.Hrivnacova (geom-specific-V08- 1218 26-Feb-2007, I.Hrivnacova (geom-specific-V08-02-04) 1372 - Added specialised constructor for handling 1219 - Added specialised constructor for handling Z-sections in G4ExtrudedSolid. 1373 - Cleared unecessary declaration of IsInside( 1220 - Cleared unecessary declaration of IsInside() methods in G4TriangularFacet 1374 and G4QuadrangularFacet. 1221 and G4QuadrangularFacet. 1375 - Updated unit test for G4ExtrudedSolid. 1222 - Updated unit test for G4ExtrudedSolid. 1376 1223 1377 15-Feb-2007, I.Hrivnacova (geom-specific-V08- 1224 15-Feb-2007, I.Hrivnacova (geom-specific-V08-02-03) 1378 - Corrected caching of values in G4ExtrudedSo 1225 - Corrected caching of values in G4ExtrudedSolid. 1379 - Bug fix in G4TriangularFacet::Intersect() t 1226 - Bug fix in G4TriangularFacet::Intersect() to allow for correct update of 1380 'Distance' in condition. 1227 'Distance' in condition. 1381 - Updated unit test for G4ExtrudedSolid. 1228 - Updated unit test for G4ExtrudedSolid. 1382 1229 1383 09-Feb-2007, G.Cosmo (geom-specific-V08-02-02 1230 09-Feb-2007, G.Cosmo (geom-specific-V08-02-02) 1384 - Introduced new shape G4ExtrudedSolid, a sol 1231 - Introduced new shape G4ExtrudedSolid, a solid representing the extrusion 1385 of an arbitrary polygon with fixed outline 1232 of an arbitrary polygon with fixed outline in the two Z sections. 1386 New files: G4ExtrudedSolid[.hh.icc.cc] and 1233 New files: G4ExtrudedSolid[.hh.icc.cc] and testG4ExtrudedSolid.cc 1387 by I.Hrivnacova. 1234 by I.Hrivnacova. 1388 - G4TessellatedSolid: 1235 - G4TessellatedSolid: 1389 o Made relevant solid's methods virtual, to 1236 o Made relevant solid's methods virtual, to be used as base class. 1390 o Added implementation for GetSurfaceArea() 1237 o Added implementation for GetSurfaceArea() and GetPointOnSurface() methods. 1391 o Added protection in SurfaceNormal() metho 1238 o Added protection in SurfaceNormal() method in case of facet not found. 1392 o Check and return kOutside in Inside() if 1239 o Check and return kOutside in Inside() if point out of solid's extent. 1393 1240 1394 01-Feb-2007, G.Cosmo (geom-specific-V08-02-01 1241 01-Feb-2007, G.Cosmo (geom-specific-V08-02-01) 1395 - Fix in G4PolyconeSide::DistanceAway() for c 1242 - Fix in G4PolyconeSide::DistanceAway() for correct estimation of distance 1396 for the case of Phi sections (T.Nikitina). 1243 for the case of Phi sections (T.Nikitina). 1397 Addresses problem report #598. 1244 Addresses problem report #598. 1398 - Updated unit test for G4Polycone to conside 1245 - Updated unit test for G4Polycone to consider new test case. 1399 1246 1400 22-Jan-2007, G.Cosmo (geom-specific-V08-02-00 1247 22-Jan-2007, G.Cosmo (geom-specific-V08-02-00) 1401 - Do not scale reducible-polygon in G4Polyhed 1248 - Do not scale reducible-polygon in G4Polyhedra::Reset() method. 1402 The 'original_parameters' structure offered 1249 The 'original_parameters' structure offered as input through the accessors 1403 are always assumed to be already scaled by 1250 are always assumed to be already scaled by the 'cos(0.5*phiTotal/theNumSide)' 1404 factor. Addresses problem report #873. 1251 factor. Addresses problem report #873. 1405 - Fixed warning printout in G4Polycone::Reset 1252 - Fixed warning printout in G4Polycone::Reset(). 1406 1253 1407 15-Nov-2006, J.Allison (geom-specific-V08-01- 1254 15-Nov-2006, J.Allison (geom-specific-V08-01-04) 1408 - Fixed typo in G4Polycone::CreatePolyhedron( 1255 - Fixed typo in G4Polycone::CreatePolyhedron() introduced by mistake in 1409 the last cleanup of the source code. 1256 the last cleanup of the source code. 1410 1257 1411 13-Nov-2006, G.Cosmo (geom-specific-V08-01-03 1258 13-Nov-2006, G.Cosmo (geom-specific-V08-01-03) 1412 - Added concrete implementation of GetSurface 1259 - Added concrete implementation of GetSurfaceArea() in G4Tet (M.H.Mendenhall). 1413 1260 1414 08-Nov-2006, G.Cosmo (geom-specific-V08-01-02 1261 08-Nov-2006, G.Cosmo (geom-specific-V08-01-02) 1415 - Cleared compilation warnings on SUN-CC for 1262 - Cleared compilation warnings on SUN-CC for changes in the last tag. 1416 Fixed overloaded class variables in G4Polyh 1263 Fixed overloaded class variables in G4Polyhedra and G4Polycone 1417 implementation of CreatePolyhedron(). 1264 implementation of CreatePolyhedron(). 1418 1265 1419 31-Oct-2006, J.Allison (geom-specific-V08-01- 1266 31-Oct-2006, J.Allison (geom-specific-V08-01-01) 1420 - Implemented CreatePolyhedron() for G4Polyhe 1267 - Implemented CreatePolyhedron() for G4Polyhedra and G4Polycone. 1421 1268 1422 20-Oct-2006, G.Cosmo (geom-specific-V08-01-00 1269 20-Oct-2006, G.Cosmo (geom-specific-V08-01-00) 1423 - Implemented caching mechanism for computati 1270 - Implemented caching mechanism for computation of surface area in 1424 all solids and base classes, as done for th 1271 all solids and base classes, as done for the geometrical volume 1425 computation. 1272 computation. 1426 - Added missing fake constructor for object p 1273 - Added missing fake constructor for object persistency to G4TessellatedSolid. 1427 1274 1428 20-Jun-2006, G.Cosmo (geom-specific-V08-00-10 1275 20-Jun-2006, G.Cosmo (geom-specific-V08-00-10) 1429 - Added accessor method GetVertices() in G4Te 1276 - Added accessor method GetVertices() in G4Tet to return the list of 1430 vertices composing the solid. Required for 1277 vertices composing the solid. Required for GDML persistency. 1431 1278 1432 06-Jun-2006, G.Cosmo (geom-specific-V08-00-09 1279 06-Jun-2006, G.Cosmo (geom-specific-V08-00-09) 1433 - Added protection against NaNs in G4Polycone 1280 - Added protection against NaNs in G4PolyconeSide::Normal() for points at 1434 the origin. 1281 the origin. 1435 1282 1436 19-May-2006, G.Cosmo (geom-specific-V08-00-08 1283 19-May-2006, G.Cosmo (geom-specific-V08-00-08) 1437 - Fix in G4Ellipsoid::SetZCuts() and G4Ellipt 1284 - Fix in G4Ellipsoid::SetZCuts() and G4EllipticalTube::SetZCut() for usage 1438 of uninitialised variables. 1285 of uninitialised variables. 1439 1286 1440 08-May-2006, G.Cosmo (geom-specific-V08-00-07 1287 08-May-2006, G.Cosmo (geom-specific-V08-00-07) 1441 - Cleared compilation warning on SUN-CC in G4 1288 - Cleared compilation warning on SUN-CC in G4TriangularFacet.cc. 1442 1289 1443 04-May-2006, G.Cosmo (geom-specific-V08-00-06 1290 04-May-2006, G.Cosmo (geom-specific-V08-00-06) 1444 - Use different names for unit tests to avoid 1291 - Use different names for unit tests to avoid confusing liblist ... 1445 1292 1446 03-May-2006, G.Cosmo (geom-specific-V08-00-05 1293 03-May-2006, G.Cosmo (geom-specific-V08-00-05) 1447 - Added four unit tests for G4TessellatedSoli 1294 - Added four unit tests for G4TessellatedSolid. 1448 1295 1449 24-Mar-2006, G.Cosmo (geom-specific-V08-00-04 1296 24-Mar-2006, G.Cosmo (geom-specific-V08-00-04) 1450 - G4TwistedTubs: defined exact estimation for 1297 - G4TwistedTubs: defined exact estimation for GetCubicVolume(), 1451 similar to the one adopted for G4Tubs. 1298 similar to the one adopted for G4Tubs. 1452 1299 1453 03-Mar-2006, G.Cosmo (geom-specific-V08-00-03 1300 03-Mar-2006, G.Cosmo (geom-specific-V08-00-03) 1454 - Corrected boolean condition in G4Triangular 1301 - Corrected boolean condition in G4TriangularFacet::Intersect(). 1455 Use '&&' operator in condition. Allows for 1302 Use '&&' operator in condition. Allows for porting on WIN32-VC. 1456 1303 1457 01-Mar-2006, G.Cosmo (geom-specific-V08-00-02 1304 01-Mar-2006, G.Cosmo (geom-specific-V08-00-02) 1458 - Introducing first implementation of a tesse 1305 - Introducing first implementation of a tessellated solid, contribution 1459 of P.R.Truscott (QinetiQ Ltd, UK). 1306 of P.R.Truscott (QinetiQ Ltd, UK). 1460 New classes: G4QuadrangularFacet, G4Tessell 1307 New classes: G4QuadrangularFacet, G4TessellatedSolid, G4TriangularFacet 1461 and G4VFacet. 1308 and G4VFacet. 1462 - Requires tag "greps-V08-00-00". 1309 - Requires tag "greps-V08-00-00". 1463 1310 1464 12-Jan-2006, J.Allison (geom-specific-V08-00- 1311 12-Jan-2006, J.Allison (geom-specific-V08-00-01) 1465 - G4TwistedTubs and G4VTwistedFaceted::Create 1312 - G4TwistedTubs and G4VTwistedFaceted::CreatePolyhedron(): 1466 parameterised polyhedron mesh approximation 1313 parameterised polyhedron mesh approximation in terms of 1467 G4Polyhedron::GetNumberOfRotationSteps(). 1314 G4Polyhedron::GetNumberOfRotationSteps(). 1468 This is (a) more economical and (b) amenabl 1315 This is (a) more economical and (b) amenable to user control. 1469 1316 1470 19-Dec-2005, O.Link (geom-specific-V08-00-00) 1317 19-Dec-2005, O.Link (geom-specific-V08-00-00) 1471 - Fixes in G4EllipticalCone: 1318 - Fixes in G4EllipticalCone: 1472 o Changed GetPointOnSurface(), which was no 1319 o Changed GetPointOnSurface(), which was not uniform in endcaps. 1473 o Bug fix in Inside(), which was not correc 1320 o Bug fix in Inside(), which was not correct for the elliptic mantel. 1474 Made test similar as in G4EllipticTube. 1321 Made test similar as in G4EllipticTube. 1475 o Several fixes in DistanceToIn/Out(): for 1322 o Several fixes in DistanceToIn/Out(): for looping events (shortest 1476 distance was taken, even if 0); now compa 1323 distance was taken, even if 0); now comparing the distance to the endcap 1477 and to the mantel and decide afterwards w 1324 and to the mantel and decide afterwards which distance is shortest; 1478 added check n*v. 1325 added check n*v. 1479 o The code is now "good" at 90%. Still 10% 1326 o The code is now "good" at 90%. Still 10% wrong reconstructed events. 1480 e.g there is a problem is DistanceToOut() 1327 e.g there is a problem is DistanceToOut(): missed the intersection 1481 (reconstruction took the encap instead of 1328 (reconstruction took the encap instead of the mantel). 1482 1329 1483 09-Dec-2005, O.Link 1330 09-Dec-2005, O.Link 1484 - Fixed visibility of soft edges on the twist 1331 - Fixed visibility of soft edges on the twisted solids. 1485 1332 1486 08-Dec-2005, O.Link (geom-specific-V07-01-14) 1333 08-Dec-2005, O.Link (geom-specific-V07-01-14) 1487 - Fixed bug in G4VTwistSurface::ComputeLocalP 1334 - Fixed bug in G4VTwistSurface::ComputeLocalPoint(p) for point coordinate 1488 transformation. The bug affected only G4Twi 1335 transformation. The bug affected only G4TwistTrapFlatSide. 1489 1336 1490 06-Dec-2005, G.Cosmo (geom-specific-V07-01-13 1337 06-Dec-2005, G.Cosmo (geom-specific-V07-01-13) 1491 - Fixed compilation errors on WIN32-VC for la 1338 - Fixed compilation errors on WIN32-VC for last tag changes. 1492 1339 1493 05-Dec-2005, O.Link (geom-specific-V07-01-12) 1340 05-Dec-2005, O.Link (geom-specific-V07-01-12) 1494 - Added polyhedron definition for twisted sol 1341 - Added polyhedron definition for twisted solids (G4TwistedTrap, 1495 G4TwistedTrd, G4TwistedBox, G4TwistedTubs) 1342 G4TwistedTrd, G4TwistedBox, G4TwistedTubs) for visualization. 1496 1343 1497 30-Nov-2005, G.Cosmo (geom-specific-V07-01-11 1344 30-Nov-2005, G.Cosmo (geom-specific-V07-01-11) 1498 - Trivial fixes for porting on CLHEP-2.0.X se 1345 - Trivial fixes for porting on CLHEP-2.0.X series. 1499 1346 1500 18-Nov-2005, O.Link (geom-specific-V07-01-10) 1347 18-Nov-2005, O.Link (geom-specific-V07-01-10) 1501 - Renamed classes for twisted solids set, to 1348 - Renamed classes for twisted solids set, to identify them in the 1502 twisted framework. 1349 twisted framework. 1503 1350 1504 17-Nov-2005, O.Link 1351 17-Nov-2005, O.Link 1505 - G4VTwistedFacted: 1352 - G4VTwistedFacted: 1506 o corrected bug in DistanceToSurface() impl 1353 o corrected bug in DistanceToSurface() implementation 1507 o added GetPointOnSurface() method 1354 o added GetPointOnSurface() method 1508 - G4TwistedTubs: 1355 - G4TwistedTubs: 1509 o added GetPointOnSurface() method 1356 o added GetPointOnSurface() method 1510 - G4Hype: 1357 - G4Hype: 1511 o corrected surface area calculation used i 1358 o corrected surface area calculation used in GetPointOnSurface() 1512 << 1359 1513 17-Nov-2005, G.Cosmo (geom-specific-V07-01-09 1360 17-Nov-2005, G.Cosmo (geom-specific-V07-01-09) 1514 - More fixes required for direct object persi 1361 - More fixes required for direct object persistency to G4Polycone, 1515 G4polyhedra and related utility classes. 1362 G4polyhedra and related utility classes. 1516 1363 1517 10-Nov-2005, J.Allison (geom-specific-V07-01- 1364 10-Nov-2005, J.Allison (geom-specific-V07-01-08) 1518 - G4Tet: 1365 - G4Tet: 1519 o Added implementation for GetPolyhedron() 1366 o Added implementation for GetPolyhedron() and GetCubicVolume(). 1520 o Corrected order of specifying vertices in 1367 o Corrected order of specifying vertices in CreatePolyhedron(). 1521 1368 1522 09-Nov-2005, G.Cosmo (geom-specific-V07-01-07 1369 09-Nov-2005, G.Cosmo (geom-specific-V07-01-07) 1523 - Added fake default constructor for all conc 1370 - Added fake default constructor for all concrete solids and relevant 1524 utility classes, for usage of direct object 1371 utility classes, for usage of direct object persistency. 1525 - Implemented changes to support CLHEP-2.0.X 1372 - Implemented changes to support CLHEP-2.0.X for explicit usage of the 1526 CLHEP/HepGeom namespaces for CLHEP types. 1373 CLHEP/HepGeom namespaces for CLHEP types. 1527 1374 1528 07-Nov-2005, G.Cosmo (geom-specific-V07-01-06 1375 07-Nov-2005, G.Cosmo (geom-specific-V07-01-06) 1529 - G4Ellipsoid: replaced call to hypot(x,y) wi 1376 - G4Ellipsoid: replaced call to hypot(x,y) with std::sqrt(x*x+y*y) 1530 for porting to ISO standard. 1377 for porting to ISO standard. 1531 1378 1532 02-Nov-2005, G.Cosmo (geom-specific-V07-01-05 1379 02-Nov-2005, G.Cosmo (geom-specific-V07-01-05) 1533 - G4Polyhedra, G4Polycone: 1380 - G4Polyhedra, G4Polycone: 1534 o Protected case of generic construct for v 1381 o Protected case of generic construct for visualization. 1535 o Introduced explicit flag and method IsGen 1382 o Introduced explicit flag and method IsGeneric() to identify the kind 1536 of constructor used. 1383 of constructor used. 1537 1384 1538 29-Sep-2005, G.Cosmo (geom-specific-V07-01-04 1385 29-Sep-2005, G.Cosmo (geom-specific-V07-01-04) 1539 - Fix in G4EllipticalCone methods DistanceToI 1386 - Fix in G4EllipticalCone methods DistanceToIn() and DistanceToOut(). 1540 Added unit test for it (by D.Anninos). 1387 Added unit test for it (by D.Anninos). 1541 - Coworks with tag "greps-V07-01-02". 1388 - Coworks with tag "greps-V07-01-02". 1542 1389 1543 10-Aug-2005, G.Cosmo (geom-specific-V07-01-03 1390 10-Aug-2005, G.Cosmo (geom-specific-V07-01-03) 1544 - Introduced new solid G4EllipticalCone, a fu 1391 - Introduced new solid G4EllipticalCone, a full cone with elliptical base 1545 that can be cut in Z (by D.Anninos). 1392 that can be cut in Z (by D.Anninos). 1546 Coworks with tag "greps-V07-01-02". 1393 Coworks with tag "greps-V07-01-02". 1547 1394 1548 08-Aug-2005, D.Anninos (geom-specific-V07-01- 1395 08-Aug-2005, D.Anninos (geom-specific-V07-01-02) 1549 - Added GetPointOnSurface() for all solids ex 1396 - Added GetPointOnSurface() for all solids except twisted ones. 1550 The method returns a random point according 1397 The method returns a random point according to a quasi-uniform 1551 distribution along the surface. 1398 distribution along the surface. 1552 1399 1553 18-Jul-2005, G.Cosmo (geom-specific-V07-01-01 1400 18-Jul-2005, G.Cosmo (geom-specific-V07-01-01) 1554 - Fixed compilation warning on WIN32-VC for G 1401 - Fixed compilation warning on WIN32-VC for G4VSurface.cc. 1555 - Not including G4Tet. 1402 - Not including G4Tet. 1556 1403 1557 06-Jul-2005, G.Cosmo (geom-specific-V07-01-00 1404 06-Jul-2005, G.Cosmo (geom-specific-V07-01-00) 1558 - Added new shape G4Ellipsoid. Coworks with t 1405 - Added new shape G4Ellipsoid. Coworks with tag "greps-V07-01-00". 1559 Contribution of G.Horton-Smith and G.Guerri 1406 Contribution of G.Horton-Smith and G.Guerrieri. 1560 Code cleanup, and added default arguments f 1407 Code cleanup, and added default arguments for cuts, added first 1561 implementation of unit test. 1408 implementation of unit test. 1562 - Corrected unit tests for twisted-box/trap. 1409 - Corrected unit tests for twisted-box/trap. 1563 - Not including G4Tet. 1410 - Not including G4Tet. 1564 1411 1565 15-Jun-2005, J.Apostolakis 1412 15-Jun-2005, J.Apostolakis 1566 - Introduced new solid G4Tet, contribution of 1413 - Introduced new solid G4Tet, contribution of M.H.Mendenhall 1567 and R.A.Weller, Vanderbilt University, USA. 1414 and R.A.Weller, Vanderbilt University, USA. 1568 1415 1569 29-Apr-2005, O.Link (geom-specific-V07-00-04) 1416 29-Apr-2005, O.Link (geom-specific-V07-00-04) 1570 - G4TwistedSurface: fixed bug in GetAreaCode( 1417 - G4TwistedSurface: fixed bug in GetAreaCode() affecting G4TwistedTubs. 1571 1418 1572 04-Apr-2005, G.Cosmo (geom-specific-V07-00-03 1419 04-Apr-2005, G.Cosmo (geom-specific-V07-00-03) 1573 - Added test for Number-Of-Rotation-Steps in 1420 - Added test for Number-Of-Rotation-Steps in GetPolyhedron() for 1574 G4VCSGfaceted, G4Hype and G4EllipticalTube 1421 G4VCSGfaceted, G4Hype and G4EllipticalTube (by J.Allison). 1575 Requires tag "greps-V07-00-02". 1422 Requires tag "greps-V07-00-02". 1576 - Added elementary implementation of CreatePo 1423 - Added elementary implementation of CreatePolyhedron() for G4Hype, 1577 G4TwistedBox, G4TwistedTubs, G4TwistedTrd, 1424 G4TwistedBox, G4TwistedTubs, G4TwistedTrd, G4TwistedTrap. 1578 - Some code cleanup. 1425 - Some code cleanup. 1579 1426 1580 18-Mar-2005, O.Link (geom-specific-V07-00-02) 1427 18-Mar-2005, O.Link (geom-specific-V07-00-02) 1581 - New generic framework for twisted solids G4 1428 - New generic framework for twisted solids G4TwistedBox, G4TwistedTrd and 1582 G4TwistedTrap: inheriting now from the base 1429 G4TwistedTrap: inheriting now from the base class G4VTwistedFaceted. 1583 - Extended G4TwistedTrap to support setups wi 1430 - Extended G4TwistedTrap to support setups with different trapezoidal 1584 endcaps with centres not necessarily on a l 1431 endcaps with centres not necessarily on a line parallel to the z axis. 1585 - Added G4TwistedTrd and general G4TwistedTra 1432 - Added G4TwistedTrd and general G4TwistedTrap as test cases in test. 1586 1433 1587 03-Mar-2005, J.Allison 1434 03-Mar-2005, J.Allison 1588 - Changed AddThis() to AddSolid() for all sol 1435 - Changed AddThis() to AddSolid() for all solids in the implementation 1589 of DescribeYourselfTo(G4VGraphicsScene&). 1436 of DescribeYourselfTo(G4VGraphicsScene&). 1590 1437 1591 01-Mar-2005, O.Link (geom-specific-V07-00-01) 1438 01-Mar-2005, O.Link (geom-specific-V07-00-01) 1592 - Fixed compilation warnings on WIN32-VC for 1439 - Fixed compilation warnings on WIN32-VC for G4VSurface.cc. 1593 1440 1594 14-Feb-2005, O.Link (geom-specific-V07-00-00) 1441 14-Feb-2005, O.Link (geom-specific-V07-00-00) 1595 - Use new polynom approximations based on new 1442 - Use new polynom approximations based on new solver based on Jenkins-Traub 1596 algorithm, for twisted-box and twisted-trap 1443 algorithm, for twisted-box and twisted-trap. 1597 - Fixed bug in the usage of 'fmod' and adopt 1444 - Fixed bug in the usage of 'fmod' and adopt special treatment for 'parallel' 1598 events in G4TwistedBoxSide and G4TwistedTra 1445 events in G4TwistedBoxSide and G4TwistedTrapSide. 1599 - Coworks with tag "global-V07-00-00". 1446 - Coworks with tag "global-V07-00-00". 1600 1447 1601 08-Dec-2004, O.Link (geom-specific-V06-02-07) 1448 08-Dec-2004, O.Link (geom-specific-V06-02-07) 1602 - Extensions to twisted box/trap shapes to co 1449 - Extensions to twisted box/trap shapes to consider all 4 solutions 1603 for determining correct intersections. 1450 for determining correct intersections. 1604 1451 1605 29-Nov-2004, O.Link (geom-specific-V06-02-06) 1452 29-Nov-2004, O.Link (geom-specific-V06-02-06) 1606 - G4TwistedTrapSide, G4TwistedBoxSide: improv 1453 - G4TwistedTrapSide, G4TwistedBoxSide: improved (analytical) version 1607 of GetPhiUAtX() method. 1454 of GetPhiUAtX() method. 1608 1455 1609 24-Nov-2004, O.Link (geom-specific-V06-02-05) 1456 24-Nov-2004, O.Link (geom-specific-V06-02-05) 1610 - Fixed bug in description of twisted trapezo 1457 - Fixed bug in description of twisted trapezoid side. 1611 1458 1612 12-Nov-2004, O.Link (geom-specific-V06-02-04) 1459 12-Nov-2004, O.Link (geom-specific-V06-02-04) 1613 - Added G4TwistedBox - a twisted box with tw 1460 - Added G4TwistedBox - a twisted box with twist angle alpha, 1614 length a/2,b/2,L/2. 1461 length a/2,b/2,L/2. 1615 - Added G4TwistedTrap - a twisted trapezoid ( 1462 - Added G4TwistedTrap - a twisted trapezoid (still in debug state) 1616 - Changed in G4VSurface.icc: << 1463 - Changed in G4VSurface.icc: 1617 - GetNeighbours(): corrected axiscode (wa 1464 - GetNeighbours(): corrected axiscode (was returning the wrong neighbours) 1618 - SetNeighbours(): fixed problem #685 (in 1465 - SetNeighbours(): fixed problem #685 (index out of range) 1619 - Added tests for G4TwistedBox and G4TwistedT 1466 - Added tests for G4TwistedBox and G4TwistedTrap in specific/test. 1620 - Added G4TwistedBox and G4TwistedTrap in sys 1467 - Added G4TwistedBox and G4TwistedTrap in system testing, test10. 1621 1468 1622 22-Oct-2004, D.C.Williams (geom-specific-V06- 1469 22-Oct-2004, D.C.Williams (geom-specific-V06-02-03) 1623 - Fix in G4PolyconeSide::Inside for points at 1470 - Fix in G4PolyconeSide::Inside for points at radius = 0 for phi slides 1624 solids with an inner radius. Addresses prob 1471 solids with an inner radius. Addresses problem report #598. 1625 1472 1626 10-Oct-2004, J.Allison (geom-specific-V06-02- 1473 10-Oct-2004, J.Allison (geom-specific-V06-02-02) 1627 - Added GetPolyhedron, a smart access functio 1474 - Added GetPolyhedron, a smart access function that creates a G4Polyhedron 1628 on request and stores for future access. A 1475 on request and stores for future access. A null pointer means "not 1629 available". 1476 available". 1630 1477 1631 22-Sep-2004, G.Cosmo (geom-specific-V06-02-01 1478 22-Sep-2004, G.Cosmo (geom-specific-V06-02-01) 1632 - Added implementation of GetCubicVolume() wi 1479 - Added implementation of GetCubicVolume() with cashing mechanism for 1633 solids: G4EllipticalTube, G4Hype, G4Polyhed 1480 solids: G4EllipticalTube, G4Hype, G4Polyhedra, G4Polycone, G4TwistedTubs. 1634 1481 1635 01-Sep-2004, D.C.Williams (geom-specific-V06- 1482 01-Sep-2004, D.C.Williams (geom-specific-V06-02-00) 1636 - G4VCSGfaceted: fix for rare anomalous situa 1483 - G4VCSGfaceted: fix for rare anomalous situation in which 1637 DistanceToOut(p,v,..) will report kInfinity 1484 DistanceToOut(p,v,..) will report kInfinity, make an additional check 1638 for the point p on the surface, in which ca 1485 for the point p on the surface, in which case will report zero. 1639 Addresses problem observed in G4Polyhedra a 1486 Addresses problem observed in G4Polyhedra and reported in #650. 1640 1487 1641 07-Jun-2004, G.Cosmo (geom-specific-V06-01-04 1488 07-Jun-2004, G.Cosmo (geom-specific-V06-01-04) 1642 - Fixed compilation problem in G4TwistedSurfa 1489 - Fixed compilation problem in G4TwistedSurface.cc on WIN32-VC. 1643 1490 1644 28-May-2004, G.Cosmo (geom-specific-V06-01-03 1491 28-May-2004, G.Cosmo (geom-specific-V06-01-03) 1645 - Fixed archiving problem on WIN32-VC7: repla 1492 - Fixed archiving problem on WIN32-VC7: replaced structs with classes 1646 in G4VSurface. 1493 in G4VSurface. 1647 - Replaced misleading names for masks in G4VS 1494 - Replaced misleading names for masks in G4VSurface and moved inlined 1648 methods of nested classes to .cc. 1495 methods of nested classes to .cc. 1649 1496 1650 25-May-2004, G.Cosmo (geom-specific-V06-01-02 1497 25-May-2004, G.Cosmo (geom-specific-V06-01-02) 1651 - Fixed compilation problem on SUN-CC. Made E 1498 - Fixed compilation problem on SUN-CC. Made EValidate enum public in 1652 G4VSurface.hh. 1499 G4VSurface.hh. 1653 1500 1654 24-May-2004, G.Cosmo (geom-specific-V06-01-01 1501 24-May-2004, G.Cosmo (geom-specific-V06-01-01) 1655 - Removed compilation warnings and minor clea 1502 - Removed compilation warnings and minor cleanup... 1656 1503 1657 19-May-2004, O.Link (geom-specific-V06-01-00) 1504 19-May-2004, O.Link (geom-specific-V06-01-00) 1658 - First implementation of a framework for twi 1505 - First implementation of a framework for twisted surfaces, integrated from 1659 the original version of Kotoyo Hoshina (hos 1506 the original version of Kotoyo Hoshina (hoshina@hepburn.s.chiba-u.ac.jp) 1660 implemented in the 'Jupiter' application. 1507 implemented in the 'Jupiter' application. 1661 o Includes new specific twisted shape: G4Tw 1508 o Includes new specific twisted shape: G4TwistedTubs. 1662 o New classes: G4VSurface, G4TwistedSurface 1509 o New classes: G4VSurface, G4TwistedSurface, G4HyperbolicSurface, 1663 G4FlatSurface, G4TwistedTubs 1510 G4FlatSurface, G4TwistedTubs. 1664 o Cleanup of original code (debugging messa 1511 o Cleanup of original code (debugging messages, compiler errors, migration 1665 of g4std to new convention...) 1512 of g4std to new convention...) 1666 o New organisation of class G4TwistedTubs: 1513 o New organisation of class G4TwistedTubs: now independent of XXXSurface; 1667 removed backpointer 'fSolid' from XXXSurf 1514 removed backpointer 'fSolid' from XXXSurface to G4TwistedTubs. 1668 o New form of constructors in G4TwistedSurf 1515 o New form of constructors in G4TwistedSurface, G4HyperbolicSurface and 1669 G4FlatSurface. 1516 G4FlatSurface. 1670 o Change in G4TwistedSurface::DistanceToIn( 1517 o Change in G4TwistedSurface::DistanceToIn(p,v,...): roundoff correction. 1671 1518 1672 12-Jan-2004, G.Cosmo (geom-specific-V06-00-00 1519 12-Jan-2004, G.Cosmo (geom-specific-V06-00-00) 1673 - G4PolyhedraSide.cc: fixed bug in which part 1520 - G4PolyhedraSide.cc: fixed bug in which particles could "leak" out the 1674 center of a face if inner radius = 0. 1521 center of a face if inner radius = 0. 1675 Fixes problem report #547. (D.Williams) 1522 Fixes problem report #547. (D.Williams) 1676 1523 1677 22-Nov-2003, G.Cosmo (geom-specific-V05-02-07 1524 22-Nov-2003, G.Cosmo (geom-specific-V05-02-07) 1678 - Fixed upper bound for protection check intr 1525 - Fixed upper bound for protection check introduced in G4Polycone and 1679 G4Polyhedra constructors. 1526 G4Polyhedra constructors. 1680 1527 1681 17-Nov-2003, G.Cosmo (geom-specific-V05-02-06 1528 17-Nov-2003, G.Cosmo (geom-specific-V05-02-06) 1682 - Added protections in G4Polycone and G4Polyh 1529 - Added protections in G4Polycone and G4Polyhedra constructors for 1683 invalid constructs with no contiguous segme 1530 invalid constructs with no contiguous segments in Z planes as input. 1684 1531 1685 04-Nov-2003, G.Cosmo (geom-specific-V05-02-05 1532 04-Nov-2003, G.Cosmo (geom-specific-V05-02-05) 1686 - Added SetOriginalParameters() method to G4P 1533 - Added SetOriginalParameters() method to G4Polycone and G4Polyhedra. 1687 1534 1688 03-Nov-2003, G.Cosmo (geom-specific-V05-02-04 1535 03-Nov-2003, G.Cosmo (geom-specific-V05-02-04) 1689 - Code cleanup and headers inclusion review 1536 - Code cleanup and headers inclusion review 1690 (replaced by forward declarations where nec 1537 (replaced by forward declarations where necessary). 1691 1538 1692 28-Oct-2003, G.Cosmo (geom-specific-V05-02-03 1539 28-Oct-2003, G.Cosmo (geom-specific-V05-02-03) 1693 - Migrated to new G4Exception scheme. 1540 - Migrated to new G4Exception scheme. 1694 1541 1695 20-Oct-2003, G.Cosmo (geom-specific-V05-02-02 1542 20-Oct-2003, G.Cosmo (geom-specific-V05-02-02) 1696 - Added Reset() method in G4Polycone and G4Po 1543 - Added Reset() method in G4Polycone and G4Polyhedra to allow 1697 recalculation and reshape of the solid if n 1544 recalculation and reshape of the solid if new original_parameters 1698 are provided. 1545 are provided. 1699 1546 1700 30-Sep-2003, G.Cosmo (geom-specific-V05-02-01 1547 30-Sep-2003, G.Cosmo (geom-specific-V05-02-01) 1701 - Updated GNUmakefile for unit tests, accordi 1548 - Updated GNUmakefile for unit tests, according to new structure 1702 introduced in "geometry-V05-02-00". 1549 introduced in "geometry-V05-02-00". 1703 1550 1704 16-Jun-2003, G.Cosmo (geom-specific-V05-02-00 1551 16-Jun-2003, G.Cosmo (geom-specific-V05-02-00) 1705 - Added accessors to original_parameters for 1552 - Added accessors to original_parameters for G4Polycone and G4Polyhedra. 1706 Made G4PolyconeHistorical and G4PolyhedraHi 1553 Made G4PolyconeHistorical and G4PolyhedraHistorical classes in global 1707 scope (temporary solution). 1554 scope (temporary solution). 1708 1555 1709 28-Mar-2003, G.Cosmo (geom-specific-V05-00-00 1556 28-Mar-2003, G.Cosmo (geom-specific-V05-00-00) 1710 - Fixed initialisation of base class in copy 1557 - Fixed initialisation of base class in copy contructor for: 1711 G4PolyPhiFace, G4PolyconeSide, G4PolyhedraS 1558 G4PolyPhiFace, G4PolyconeSide, G4PolyhedraSide. 1712 - Fixed trivial pedantic warnings on G4Polyco 1559 - Fixed trivial pedantic warnings on G4Polycone and G4Polyhedra. 1713 1560 1714 30-Oct-2002, G.Cosmo (geom-specific-V04-01-01 1561 30-Oct-2002, G.Cosmo (geom-specific-V04-01-01) 1715 - Fixed un-initialised data members in constr 1562 - Fixed un-initialised data members in constructors of classes: 1716 G4ClippablePolygon, G4EnclosingCylinder, G4 1563 G4ClippablePolygon, G4EnclosingCylinder, G4PolyconeSide, 1717 G4ReduciblePolygon, G4VCSGfaceted. 1564 G4ReduciblePolygon, G4VCSGfaceted. 1718 1565 1719 28-Oct-2002, G.Cosmo (geom-specific-V04-01-00 1566 28-Oct-2002, G.Cosmo (geom-specific-V04-01-00) 1720 - Added implementation of StreamInfo() to com 1567 - Added implementation of StreamInfo() to comply with new interface for 1721 G4VSolid in "geommng-V04-01-03". 1568 G4VSolid in "geommng-V04-01-03". 1722 - Created .icc files for G4EllipticalTube, G4 1569 - Created .icc files for G4EllipticalTube, G4Polyhedra and G4Polycone. 1723 - Some cosmetic changes to code formatting: r 1570 - Some cosmetic changes to code formatting: removed <TAB> characters and adopt 1724 uniform code indentation. 1571 uniform code indentation. 1725 1572 1726 08-May-2002, J.Allison (geom-solids-specific- 1573 08-May-2002, J.Allison (geom-solids-specific-V04-00-01) 1727 - Implemented G4EllipticalTube::CreatePolyhed 1574 - Implemented G4EllipticalTube::CreatePolyhedron. 1728 1575 1729 10-Jan-2002, G.Cosmo (geom-solids-specific-V0 1576 10-Jan-2002, G.Cosmo (geom-solids-specific-V04-00-00) 1730 - Updated unit tests. 1577 - Updated unit tests. 1731 1578 1732 20-Apr-2001, G.Cosmo (geom-solids-specific-V0 1579 20-Apr-2001, G.Cosmo (geom-solids-specific-V03-01-00) 1733 - Migration to STL vector: 1580 - Migration to STL vector: 1734 o In G4ClippablePolygon, migrated G4ThreeVe 1581 o In G4ClippablePolygon, migrated G4ThreeVectorList typedef and 1735 made private to class. 1582 made private to class. 1736 << 1583 1737 03-Apr-2001, D.Williams (geom-solids-specifi 1584 03-Apr-2001, D.Williams (geom-solids-specific-V03-00-01) 1738 ----------------------- 1585 ----------------------- 1739 - G4IntersectingCone.cc: make small adjustmen 1586 - G4IntersectingCone.cc: make small adjustment to help with roundoff error 1740 in LineHitsCone1() and LineHitsCone2(). 1587 in LineHitsCone1() and LineHitsCone2(). 1741 1588 1742 08-Jan-2001, D.Williams (geom-solids-specifi 1589 08-Jan-2001, D.Williams (geom-solids-specific-V03-00-00) 1743 ----------------------- 1590 ----------------------- 1744 - G4Hype.cc: Added protecton against zero v.z 1591 - G4Hype.cc: Added protecton against zero v.z in DistanceToOut. 1745 1592 1746 20-Nov-2000, G.Cosmo (geom-solids-specifi 1593 20-Nov-2000, G.Cosmo (geom-solids-specific-V02-00-04) 1747 --------------------- 1594 --------------------- 1748 - Fixes to remove warnings from "-Wall -ansi 1595 - Fixes to remove warnings from "-Wall -ansi -pedantic" g++ compiler options: 1749 o commented out variables declared and not 1596 o commented out variables declared and not used. 1750 o fixed declaration of variables used befor 1597 o fixed declaration of variables used before being initialised. 1751 o fixed order of initialisation of member d 1598 o fixed order of initialisation of member data in constructors. 1752 o fixed usage of unsigned-int (size_t) for 1599 o fixed usage of unsigned-int (size_t) for array indeces. 1753 1600 1754 13-Nov-2000, G.Cosmo (geom-solids-specifi 1601 13-Nov-2000, G.Cosmo (geom-solids-specific-V02-00-03) 1755 -------------------- 1602 -------------------- 1756 - Added definition of empty constructor for G 1603 - Added definition of empty constructor for G4ClippablePolygon which 1757 went lost by mistake... 1604 went lost by mistake... 1758 1605 1759 02-Nov-2000, G.Cosmo (geom-solids-specifi 1606 02-Nov-2000, G.Cosmo (geom-solids-specific-V02-00-02) 1760 -------------------- 1607 -------------------- 1761 - QA code revision and cleanup (+fixes from C 1608 - QA code revision and cleanup (+fixes from CodeWizard filtering): 1762 o Avoid inline virtual methods. 1609 o Avoid inline virtual methods. 1763 o General cosmetics for Software Reference 1610 o General cosmetics for Software Reference Manual. 1764 1611 1765 23-Oct-2000, D.Williams (geom-solids-specifi 1612 23-Oct-2000, D.Williams (geom-solids-specific-V02-00-01) 1766 ----------------------- 1613 ----------------------- 1767 - G4IntersectingCone.cc: the check for a zero 1614 - G4IntersectingCone.cc: the check for a zero radical has been adjusted to be 1768 less sensitive to round off error in LineHi 1615 less sensitive to round off error in LineHitsCone1(), LineHitsCone2(). 1769 This fixes a problem discovered in BaBar. 1616 This fixes a problem discovered in BaBar. 1770 1617 1771 12-Sep-2000, G.Cosmo (geom-solids-specific-V 1618 12-Sep-2000, G.Cosmo (geom-solids-specific-V02-00-00) 1772 -------------------- 1619 -------------------- 1773 - Organised comments to headers for Software 1620 - Organised comments to headers for Software Reference Manual. 1774 1621 1775 27-Jun-2000, G.Cosmo (geom-solids-specific-V 1622 27-Jun-2000, G.Cosmo (geom-solids-specific-V01-01-02) 1776 -------------------- 1623 -------------------- 1777 - G4Polycone[.hh.cc]: better fix for bug-repo 1624 - G4Polycone[.hh.cc]: better fix for bug-report #110. 1778 Removed struct and replaced with class. 1625 Removed struct and replaced with class. 1779 1626 1780 26-Jun-2000, G.Cosmo (geom-solids-specific-V 1627 26-Jun-2000, G.Cosmo (geom-solids-specific-V01-01-01) 1781 -------------------- 1628 -------------------- 1782 - G4Polycone.cc: fixed memory leak by invokin 1629 - G4Polycone.cc: fixed memory leak by invoking destruction of member 1783 enclosingCylinder, which was not cleaned up 1630 enclosingCylinder, which was not cleaned up in the destructor. 1784 This fixes problem report #107. 1631 This fixes problem report #107. 1785 - G4Polycone.hh: added forward declaration of 1632 - G4Polycone.hh: added forward declaration of struct G4PolyconeHistorical 1786 and made it friend, for porting on KCC --st 1633 and made it friend, for porting on KCC --strict. This fixes report #110. 1787 - G4Polyhedra.hh: fixed typo in method name. 1634 - G4Polyhedra.hh: fixed typo in method name. Changed GetNumSIde() to 1788 GetNumSide(). This fixes problem report #10 1635 GetNumSide(). This fixes problem report #105. 1789 1636 1790 08-Jun-2000, G.Gracia 1637 08-Jun-2000, G.Gracia 1791 --------------------- 1638 --------------------- 1792 - G4VCSGfaceted.cc: fix for Win/NT in functio 1639 - G4VCSGfaceted.cc: fix for Win/NT in function GetExtent(). 1793 1640 1794 27-Apr-2000, G.Cosmo 1641 27-Apr-2000, G.Cosmo 1795 -------------------- 1642 -------------------- 1796 - Removed dependency over the CSG domain in G 1643 - Removed dependency over the CSG domain in GNUmakefile. 1797 1644 1798 18-Apr-2000, D.Williams 1645 18-Apr-2000, D.Williams 1799 ----------------------- 1646 ----------------------- 1800 - Removed meaningless "const" specifiers from 1647 - Removed meaningless "const" specifiers from methods in G4ClippablePolygon, 1801 and G4EllipticalTube. 1648 and G4EllipticalTube. 1802 - G4EllipticalTube, G4Hype and G4VCSGfaceted 1649 - G4EllipticalTube, G4Hype and G4VCSGfaceted now inherit directly 1803 from G4VSolid (before was G4CSGSolid). 1650 from G4VSolid (before was G4CSGSolid). 1804 - Reintroduced GetExtent() in G4EllipticalTub 1651 - Reintroduced GetExtent() in G4EllipticalTube, G4Hype and G4VCSGfaceted 1805 (in principle, not needed). 1652 (in principle, not needed). 1806 - Modified assertations in unit test testG4Hy 1653 - Modified assertations in unit test testG4Hype.cc. 1807 1654 1808 11-Apr-2000, J.Allison 1655 11-Apr-2000, J.Allison 1809 ---------------------- 1656 ---------------------- 1810 - Removed implementations of GetExtent in mos 1657 - Removed implementations of GetExtent in most sub-classes of G4VSolid (a 1811 default implementation exists in G4VSolid). 1658 default implementation exists in G4VSolid). 1812 - All implementations of DescribeYourselfTo ( 1659 - All implementations of DescribeYourselfTo (G4VGraphicsScene& scene) const 1813 now correctly written: scene.AddThis(*this) 1660 now correctly written: scene.AddThis(*this). 1814 1661 1815 05-Apr-2000, G.Cosmo (geom-solids-specific- 1662 05-Apr-2000, G.Cosmo (geom-solids-specific-V01-01-00) 1816 -------------------- 1663 -------------------- 1817 - Restructured solids/CSG domain, by moving t 1664 - Restructured solids/CSG domain, by moving to "specific" the following 1818 classes: G4ClippablePolygon, G4EnclosingCyl 1665 classes: G4ClippablePolygon, G4EnclosingCylinder, G4Hype, G4PolyPhiFace, 1819 G4Polycone, G4PolyconeSide, G4Polyhedra, G4 1666 G4Polycone, G4PolyconeSide, G4Polyhedra, G4PolyhedraSide, G4ReduciblePolygon, 1820 G4IntersectingCone, G4SolidExtentList, G4VC 1667 G4IntersectingCone, G4SolidExtentList, G4VCSGface, G4VCSGfaceted. 1821 The new module's library for "specific" is 1668 The new module's library for "specific" is now called 'G4specsolids'. 1822 - Created specific/test directory and moved t 1669 - Created specific/test directory and moved testG4Hype.cc and testG4Polycone,cc 1823 from CSG/test. 1670 from CSG/test. 1824 - Organised class description comments for th 1671 - Organised class description comments for the Software Reference Manual 1825 and added CVS headers to files. 1672 and added CVS headers to files. 1826 1673 1827 29-Mar-2000, D.Williams 1674 29-Mar-2000, D.Williams 1828 ----------------------- 1675 ----------------------- 1829 - Added first implementation of G4EllipticalT 1676 - Added first implementation of G4EllipticalTube. 1830 It defines a simple elliptical tube, as in 1677 It defines a simple elliptical tube, as in geant3 "ELTU". 1831 Files introduced: G4EllipticalTube[.hh.cc]. 1678 Files introduced: G4EllipticalTube[.hh.cc]. 1832 1679 1833 25-Mar-2000, G.Cosmo 1680 25-Mar-2000, G.Cosmo 1834 -------------------- 1681 -------------------- 1835 - History file created. 1682 - History file created.