source: trunk/source/geometry/solids/specific/History@ 1350

Last change on this file since 1350 was 1347, checked in by garnier, 15 years ago

geant4 tag 9.4

File size: 36.4 KB
Line 
1$Id: History,v 1.186 2010/11/26 13:36:35 gcosmo Exp $
2-------------------------------------------------------------------
3
4 =========================================================
5 Geant4 - an Object-Oriented Toolkit for Simulation in HEP
6 =========================================================
7
8 Sub-Category History file
9 -------------------------
10This file should be used by G4 developers and category coordinators
11to briefly summarize all major modifications introduced in the code
12and keep track of all directory-tags.
13It DOES NOT substitute the CVS log-message one should put at every
14committal in the CVS repository !
15
16 ----------------------------------------------------------
17 * Reverse chronological order (last date on top), please *
18 ----------------------------------------------------------
19
2026-Nov-2010 T.Nikitina (geom-specific-V09-03-20)
21- Fixes in G4GenericTrap reported by SBT unit test in SurfaceNormal(),
22 DistanceToPlane() and VisExtent().
23
2416-Nov-2010 T.Nikitina (geom-specific-V09-03-19)
25- G4EllipticalCone: fixes in DistanceToIn(p,v) and DistanceToOut(p,v) for
26 correct handling of point on the surface.
27 Corrected formula for SurfaceNormal(p).
28
2910-Nov-2010 T.Nikitina (geom-specific-V09-03-18)
30- Added checks on crossing of vertices and too big twisted angle in
31 G4GenericTrap.
32- Fixed case of division by zero in G4TwistedTubs.
33- Added unit test for G4Polyhedra.
34
3502-Nov-2010 G.Cosmo (geom-specific-V09-03-17)
36- More fixes on Coverity reports for G4TessellatedSolid and G4ReduciblePolygon.
37
3820-Oct-2010 G.Cosmo (geom-specific-V09-03-16)
39- Implemented Clone() virtual method for all solids, returning a pointer
40 to a dynamically allocated copy of the solid. To be used by Geant4-MT.
41
4223-Sep-2010 G.Cosmo (geom-specific-V09-03-15)
43- Initialize fpPolyhedron to zero in copy-ctor and operator=().
44- Completed implementation of copy-ctor and operator=() for facets.
45
4620-Sep-2010 G.Cosmo (geom-specific-V09-03-14)
47- Implemented copy-constructor and assignment operator for all solids
48 to facilitate conversion to Geant4-MT.
49
5008-Sep-2010 G.Cosmo (geom-specific-V09-03-13)
51- Correction to previous fix in G4ReduciblePolygon to avoid deleting current
52 'vertexHead' pointer.
53
5407-Sep-2010 G.Cosmo (geom-specific-V09-03-12)
55- Fix within G4CSGDEBUG code for restoring cout precision.
56- Fix in G4ReduciblePolygon::RemoveRedundantVertices() to avoid potential
57 case of dereferencing freed pointer.
58
5919-Aug-2010 T.Nikitina (geom-specific-V09-03-11)
60- G4EllipticalTube: extended implementation of SurfaceNormal(p) in agreement
61 with canonical form. Added unit test testG4EllipticalTube.cc.
62
6316-Jul-2010 G.Cosmo (geom-specific-V09-03-10)
64- Fixed cases of division by zero in G4VTwistSurface and G4TwistBoxSide.
65- Use INT_MAX as initialisation for max limits in G4SolidExtentList.
66
6712-Jul-2010 G.Cosmo (geom-specific-V09-03-09)
68- Added dummy initialization to members in struct
69 G4PolyPhiFace::G4PolyPhiFaceEdge, struct G4ReduciblePolygon::ABVertex.
70 G4Ellipsoid, G4EllipticalTube, G4EnclosingCylinder, G4ExtrudedSolid, G4Hype,
71 G4IntersectingCone, G4Paraboloid, G4PolyPhiFace, G4Polycone, G4PolyconeSide,
72 G4Polyhedra, G4PolyhedraSide, G4QuadrangularFacet, G4ReduciblePolygon,
73 G4TessellatedSolid, G4TriangularFacet, G4TwistBoxSide, G4TwistTrapAlphaSide,
74 G4TwistTrapFlatSide, G4TwistTrapParallelSide, G4TwistTubsFlatSide,
75 G4TwistTubsHypeSide, G4TwistTubsSide, G4TwistedTubs, G4VCSGfaceted, G4VFacet,
76 G4VTwistSurface, G4VTwistedFaceted.
77- Fixed case of dereferencing null pointer in methods
78 G4EllipticalTube::DistanceToOut(p,v), G4VCSGfaceted::DistanceToIn(p,v)
79 and G4VCSGfaceted::DistanceToOut(p,v).
80- Fixed unecessary object copy as argument in method
81 G4PolyhedraSide::IntersectSidePlane().
82- Avoid possible case of derefencing null pointer in G4ReduciblePolygon
83 RemoveDuplicateVertices() and RemoveRedundantVertices() methods.
84- Replaced calls to std::abs() with std::fabs() where suitable.
85
8616-Jun-2010 G.Cosmo (geom-specific-V09-03-08)
87- Fixed deletion of internal arrays in CreatePolyhedron() for G4Polycone
88 and G4Polyhedra.
89
9011-Jun-2010 T.Nikitina (geom-specific-V09-03-07)
91- G4GenericTrap: fixed cases of zero dToIn/sToOut when vertices are collapsed
92 to triangle, line or point. Added new methods handling those specific cases.
93- Added unit test for G4GenericTrap.
94
9510-Jun-2010 I.Hrivnacova
96- G4GenericTrap: fixed parameter names in CalculateExtent() for the test
97 case construction through tessellated facets.
98
9909-Jun-2010 G.Cosmo
100- G4GenericTrap: moved internal methods to private section and reordered
101 in source file. Added missing implementation for IsTwisted() method.
102
10303-Jun-2010 T.Nikitina, G.Cosmo (geom-specific-V09-03-06)
104- G4GenericTrap:
105 o Fixed initialization of fSurfaceArea and fCubicVolume and
106 calculation of surface area.
107 o Fixed error in Inside(p) function, and corrected use std::fabs() instead
108 of std::abs() for floating point values.
109 o Added missing initialisation of fpPolyhedron pointer.
110 o More corrected signatures for use of non-const references for vectors
111 passed as arguments to functions.
112
11302-Jun-2010 G.Cosmo (geom-specific-V09-03-05)
114- G4GenericTrap: use const reference for vector of vertices passed as argument
115 in constructor and accessor.
116
11727-May-2010 T.Nikitina (geom-specific-V09-03-04)
118- First implementation of G4GenericTrap shape, a new solid representing an
119 arbitrary trapezoid with up to 8 vertices standing on two parallel planes
120 perpendicular to the Z axis.
121
12228-Apr-2010 P.R.Truscott (geom-specific-V09-03-03)
123- Fix in G4TriangularFacet and G4TessellatedSolid to correct treatment of
124 optical photon transport related to internal reflection at surface.
125 Addresses problem report #1103.
126
12715-Apr-2010 I.Hrivnacova (geom-specific-V09-03-02)
128- G4ExtrudedSolid: eliminated requirement for clockwise ordering of polygon
129 vertices. Added a check for vertices ordering; if vertices are defined
130 anti-clockwise their ordering is reverted.
131 Fix in polygon facet triangularization for consequent concave vertices.
132
13324-Feb-2010 G.Cosmo (geom-specific-V09-03-01)
134- Adopt caching of Phi in G4PolyconeSide and G4PolyhedraSide to avoid
135 unnecessary consecutive computations on the same point.
136
13710-Feb-2010 G.Cosmo (geom-specific-V09-03-00)
138- Use kInfinity for initialising minimum and maximum allowed extent for
139 G4SolidExtentList of faceted solids.
140
14111-Nov-2009 G.Cosmo (geom-specific-V09-02-08)
142- Avoid fake (and redundant) assignment of value to 3-vector in
143 G4PolyconeSide and G4TwistTubsSide.
144
14524-Sep-2009 T.Nikitina (geom-specific-V09-02-07)
146- G4Ellipsoid: refined fix in DistanceToIn(p,v) for points located on the
147 curved surface, and correct treatment of geometrical tolerance.
148
14909-Sep-2009 G.Cosmo (geom-specific-V09-02-06)
150- G4Ellipsoid: fixed usage of half-tolerances (radial and Cartesian) in
151 DistanceToIn(p,v), based on incorrect assumptions introduced in tag
152 "geom-specific-V09-02-04", responsible for zero steps on configurations
153 with cut in Z. Addresses problem report #1076.
154
15504-Aug-2009 T.Nikitina (geom-specific-V09-02-05)
156- G4Ellipsoid:
157 o Fixes in Inside(p) and in DistanceToIn(p,v) for points
158 located on the curved surface within tolerance. Final fix for issue
159 reported in problem report #1050 and concerning warnings reported by
160 grid_test.
161 o Adopt pre-computed half-tolerance values for optimisation.
162
16323-Jul-2009 T.Nikitina (geom-specific-V09-02-04)
164- G4Ellipsoid: fix to DistanceToIn(p,v) in the calculation of the roots of
165 the quadratic equation and in DistanceToOut(p,v) in the calculation of the
166 normal on cut surfaces. Final fix for problem report #1022 and #1050.
167- G4PolyconeSide: added protection in method Normal(), addressing problem
168 report #1073.
169
17030-Jun-2009 T.Nikitina (geom-specific-V09-02-03)
171- G4Ellipsoid: introduced to DistanceToIn(p,v) splitting of the distance for
172 point very far from intersection area and big difference between solid
173 dimensions and distance to it; resolves issue observed on 64 bits problem.
174 Also addressing problem report #1022.
175
17608-May-2009, G.Cosmo (geom-specific-V09-02-02)
177- Corrected typo in base implementation of G4VCSGfaceted::GetSurfaceArea(),
178 which was erroneously returning cubic volume estimation.
179 Addresses problem report #1062.
180
18127-Apr-2009, G.Cosmo (geom-specific-V09-02-01)
182- Relaxed error condition in G4TessellatedSolid::Inside(p) to warning, for
183 excess of max trials and anomalous conditions in distance calculation.
184 Added more printout information when error condition is detected.
185
18627-Feb-2009, T.Nikitina (geom-specific-V09-02-00)
187- Fix in G4Paraboloid::DistanceToOut(p,v,..) for the computation of normal
188 to surface; added missing normalisation to unit, following remark in the
189 Geometry Forum Hypernews posting #953.
190
19121-Nov-2008, G.Cosmo (geom-specific-V09-01-19)
192- Added missing accessors to G4EllipticalCone, required for detector
193 persistency.
194
19513-Nov-2008, G.Cosmo (geom-specific-V09-01-18)
196- Corrected initialisation of algorithm in G4TriangularFacet constructor.
197
19830-Oct-2008, I.Hrivnacova (geom-specific-V09-01-17)
199- G4ExtrudedSolid: fixed bug in the decomposition of polygonal sides for
200 quadrangular facets in MakeFacets(). Addresses problem report #1029.
201
20223-Sep-2008, T.Nikitina (geom-specific-V09-01-16)
203- Corrected algorithm in G4TriangularFacet::GetPointOnFace() according to
204 suggestion advanced in problem report #1025. Fixes a problem of false
205 overlaps detection related to G4ExtrudedSolid and G4TessellatedSolid.
206
20712-Sep-2008, G.Cosmo (geom-specific-V09-01-15)
208- G4VFacet: corrected increment of indeces in operator==(), following
209 problem report #1024.
210
21125-Jul-2008, I.Hrivnacova (geom-specific-V09-01-14)
212- G4ExtrudedSolid: fix in polygon decomposition; systematically use
213 half kCarTolerance instead of kCarTolerance; added solid name in the
214 error messages coming from fatal exceptions.
215
21616-Jul-2008, T.Nikitina (geom-specific-V09-01-13)
217- G4Paraboloid: revised DistanceToOut(p,v,...) in answer to problem report
218 #1015. Fixed precision problem when solving quadratic equation; apply
219 comparison with kCarTolerance and not with zero; fixed logic problem in
220 algoritm for points on surface and direction inside, relative to directions
221 along Z, (0,0,Vz).
222
22322-May-2008, G.Cosmo (geom-specific-V09-01-12)
224- Removed left-over debug printout in G4VCSGFaceted::DistanceToIn().
225
22615-May-2008, T.Nikitina (geom-specific-V09-01-11)
227- Enhanced GetPointOnSurface() for generic G4Polycone and G4Polyhedra
228 constructs; the method uses new triangulation algorithm for G4PolyPhiFace.
229- G4ExtrudedSolid: added missing 'std' namespace to standard mathematical
230 function calls.
231
23228-Apr-2008, T.Nikitina (geom-specific-V09-01-10)
233- Added kCarTolerance in definition of "low" and "high" cone limits in R
234 and in Z in order to protect against numerical errors. This fixes cases of
235 DistanceToIn(p,v) returning 'kInfinity' when p+t*v cross intersection
236 between two cones.
237
23825-Apr-2008, T.Nikitina (geom-specific-V09-01-09)
239- Added protection against NaN in G4IntersectingCone::LineHitsCone1() in
240 case of configuration where a conic section becomes a tube.
241- G4EllipticalCone: removed some debug printouts.
242
24314-Apr-2008, T.Nikitina (geom-specific-V09-01-08)
244- G4Hype: refined polyhedron representation for correct visualization of
245 the shape. Coworks with tag "greps-V09-01-04".
246
24713-Mar-2008, G.Cosmo (geom-specific-V09-01-07)
248- Cleared compilation warnings in G4Paraboloid and G4TessellatedSolid
249 on gcc-4.3.0 for ambiguous use of parentheses in condition statements.
250
25128-Feb-2008, I.Hrivnacova (geom-specific-V09-01-06)
252- Correction to previous fix in G4ExtrudedSolid: testing on the edges has
253 to be limited to the line segment, for this purpose a new internal method
254 IsSameLineSegment() has been introduced for use instead of IsSameLine().
255- Updated and extended unit test testG4ExtrudedSolid.cc.
256
25727-Feb-2008, I.Hrivnacova (geom-specific-V09-01-05)
258- Fix in G4TessellatedSolid::DistanceToOut(p,v,..) to compute normal only
259 if specified by flag in input.
260- Fix in G4ExtrudedSolid::Inside(p) for correctly handling the case of
261 points located on the edges of triangles which are not the outline edges
262 of the polygon.
263
26421-Feb-2008, T.Nikitina (geom-specific-V09-01-04)
265- G4Polyhedra: fixed problem of out-of-bound access to vectors in
266 GetPointOnSurface().
267
26820-Feb-2008, I.Hrivnacova (geom-specific-V09-01-03)
269- G4TessellatedSolid: fixed bug in copy-constructor and internal method
270 CopyObjects() for cloning of facets.
271
27205-Feb-2008, I.Hrivnacova (geom-specific-V09-01-02)
273- G4ExtrudedSolid: bug fix in MakeFacets() to fill 'fTriangles' also in case
274 of polygon with 3 or 4 vertices, as they are needed for Inside(p).
275
27602-Feb-2008, I.Hrivnacova (geom-specific-V09-01-01)
277- Corrected triangularization of polygon, now correctly handling case
278 of concave shapes.
279- Corrected order of arguments in G4Paraboloid constructor.
280
28116-Jan-2008, I.Hrivnacova (geom-specific-V09-01-00)
282- In G4ExtrudedSolid::MakeFacets(), now adding triangular facets before quadrangular
283 ones, following logic behind G4TessellatedSolid.
284
28512-Dec-2007, G.Cosmo (geom-specific-V09-00-08a)
286- Remove use of global static constant from singleton initialisation in
287 G4TessellatedGeometryAlgorithms class. Use 'sqrEpsilon' as local value.
288
28915-Nov-2007, P.Truscott (geom-specific-V09-00-08)
290- Reviewed implementation of G4TessellatedSolid::CalculateExtent() to
291 make it more robust and precise, following suggestion by S.Seibert
292 addressed in problem report #983, now fixed.
293
29412-Oct-2007, G.Cosmo (geom-specific-V09-00-07)
295- Corrected wrong boolean condition in method IntersectLineAndTriangle2D()
296 of G4TessellatedGeometryAlgorithms causing compilation error on VC++8.
297
29809-Oct-2007, G.Cosmo (geom-specific-V09-00-06)
299- Reviewed G4TessellatedSolid classes in order not to make use of random
300 numbers for selection of direction (by P.Truscott).
301
30202-Oct-2007, G.Cosmo
303- Removed debug printout in G4Polycone::GetPointOnCone().
304
30523-Aug-2007, G.Cosmo (geom-specific-V09-00-05)
306- Revision of G4TessellatedSolid classes:
307 o Fixed problem report #931 by P.Truscott, based on suggestion of
308 R.Holmberg. Modified classes G4TessellatedSolid and G4TriangularFacet.
309 o Modified data and accessor 'centroid' and 'GetCentroid()' for G4VFacet;
310 replaced by 'circumcentre' and 'GetCircumcentre()' respectively.
311 o Added utility class G4TessellatedGeometryAlgorithms.
312- Added formulas for calculating SemiAxis and Zheight in G4EllipticalCone
313 (by T.Nikitina).
314
31520-Aug-2007, T.Nikitina & L.Lindroos (geom-specific-V09-00-04)
316- Revision of G4EllipticalCone:
317 o DistanceToIn(p): corrected answer for p.z()<-zTopCut and for the point
318 p on the surface.
319 o DistanceToOut(p,v): now returning positive solution or zero when crossing
320 the elliptical surface.
321 o Fix in DistanceToOut(p) which was giving always zero.
322 o Corrected visualisation error of solid in graphics_reps.
323 o Added some formulas on how to pre-calculate 'SemiAxis' and 'zheight'.
324 o Added checkDistanceToOut() method to unit test.
325- Corrections to G4Paraboloid:
326 o Fixed bug in CalculateSurfaceArea() method
327 o Added correct initialisation of 'fPolyhedron' in constructor.
328 o Added unit test testG4Paraboloid.
329
33013-Aug-2007, W.Pokorski (geom-specific-V09-00-03)
331- G4PolyconeSide: added workaround to initialisation of 'corners' vector,
332 to allow for object persistency with Root-I/O (W.Pokorski).
333
33418-Jul-2007, G.Cosmo (geom-specific-V09-00-02)
335- New specific G4Paraboloid with cuts along the Z axis (by L.Lindroos).
336- Fixed dummy constructors of G4Polycone and G4PolyPhiFace for initialisation
337 of 'edges' and 'corners'.
338- Coworks with tag "greps-V09-00-01".
339
34012-Jul-2007, T.Nikitina (geom-specific-V09-00-01)
341- Fix in G4Polyhedra::GetPointOnSurface() to correctly treat 'totalPhi' instead of
342 'endPhi' for the case of open shapes and 'twopi' for not open shapes.
343
34405-Jul-2007, T.Nikitina (geom-specific-V09-00-00)
345- Fix in G4Polyhedra::GetPointOnSurface() for the case when number of sectors
346 (numSide) is equal to 1. At the origin of problems observed when checking
347 overlaps for polyhedra solids defined as such.
348
34931-May-2007, G.Cosmo (geom-specific-V08-03-03)
350- Fixed initialisation of constants in constructor for - G4VTwistSurface,
351 G4PolyPhiFace, G4PolyconeSide, G4PolyhedraSide - following latest changes
352 for tunable tolerance.
353
35425-May-2007, G.Cosmo (geom-specific-V08-03-02)
355- Fixed default response of DistToIn/DistToOut for twisted solids.
356- Use G4TWISTDEBUG instead of G4SPECSDEBUG as debug conditional flag
357 for twisted solids.
358- Some cleanup in G4TwistTrapAlphaSide code.
359
36018-May-2007, G.Cosmo (geom-specific-V08-03-01)
361- Use kAngTolerance and kRadTolerance from G4GeometryTolerance class.
362- Coworks with tag "global-V08-03-03".
363
36411-May-2007, T.Nikitina (geom-specific-V08-03-00)
365- Use call to G4GeometryTolerance instead of kCarTolerance where needed.
366- Requires tag "global-V08-03-00" and related tag set.
367
36826-Apr-2007, T.Nikitina (geom-specific-V08-02-05)
369- Fix in GetPointOnSurface() for G4Polycone to consider also points laying
370 on rings when consecutive Z-sections are coincident.
371 Added method GetPointOnRing().
372- Added unit test testPointOnSurfacePoly.cc.
373
37427-Feb-2007, I.Hrivnacova (geom-specific-V08-02-04)
375- Added specialised constructor for handling Z-sections in G4ExtrudedSolid.
376- Cleared unecessary declaration of IsInside() methods in G4TriangularFacet
377 and G4QuadrangularFacet.
378- Updated unit test for G4ExtrudedSolid.
379
38026-Feb-2007, I.Hrivnacova (geom-specific-V08-02-04)
381- Added specialised constructor for handling Z-sections in G4ExtrudedSolid.
382- Cleared unecessary declaration of IsInside() methods in G4TriangularFacet
383 and G4QuadrangularFacet.
384- Updated unit test for G4ExtrudedSolid.
385
38615-Feb-2007, I.Hrivnacova (geom-specific-V08-02-03)
387- Corrected caching of values in G4ExtrudedSolid.
388- Bug fix in G4TriangularFacet::Intersect() to allow for correct update of
389 'Distance' in condition.
390- Updated unit test for G4ExtrudedSolid.
391
39209-Feb-2007, G.Cosmo (geom-specific-V08-02-02)
393- Introduced new shape G4ExtrudedSolid, a solid representing the extrusion
394 of an arbitrary polygon with fixed outline in the two Z sections.
395 New files: G4ExtrudedSolid[.hh.icc.cc] and testG4ExtrudedSolid.cc
396 by I.Hrivnacova.
397- G4TessellatedSolid:
398 o Made relevant solid's methods virtual, to be used as base class.
399 o Added implementation for GetSurfaceArea() and GetPointOnSurface() methods.
400 o Added protection in SurfaceNormal() method in case of facet not found.
401 o Check and return kOutside in Inside() if point out of solid's extent.
402
40301-Feb-2007, G.Cosmo (geom-specific-V08-02-01)
404- Fix in G4PolyconeSide::DistanceAway() for correct estimation of distance
405 for the case of Phi sections (T.Nikitina).
406 Addresses problem report #598.
407- Updated unit test for G4Polycone to consider new test case.
408
40922-Jan-2007, G.Cosmo (geom-specific-V08-02-00)
410- Do not scale reducible-polygon in G4Polyhedra::Reset() method.
411 The 'original_parameters' structure offered as input through the accessors
412 are always assumed to be already scaled by the 'cos(0.5*phiTotal/theNumSide)'
413 factor. Addresses problem report #873.
414- Fixed warning printout in G4Polycone::Reset().
415
41615-Nov-2006, J.Allison (geom-specific-V08-01-04)
417- Fixed typo in G4Polycone::CreatePolyhedron() introduced by mistake in
418 the last cleanup of the source code.
419
42013-Nov-2006, G.Cosmo (geom-specific-V08-01-03)
421- Added concrete implementation of GetSurfaceArea() in G4Tet (M.H.Mendenhall).
422
42308-Nov-2006, G.Cosmo (geom-specific-V08-01-02)
424- Cleared compilation warnings on SUN-CC for changes in the last tag.
425 Fixed overloaded class variables in G4Polyhedra and G4Polycone
426 implementation of CreatePolyhedron().
427
42831-Oct-2006, J.Allison (geom-specific-V08-01-01)
429- Implemented CreatePolyhedron() for G4Polyhedra and G4Polycone.
430
43120-Oct-2006, G.Cosmo (geom-specific-V08-01-00)
432- Implemented caching mechanism for computation of surface area in
433 all solids and base classes, as done for the geometrical volume
434 computation.
435- Added missing fake constructor for object persistency to G4TessellatedSolid.
436
43720-Jun-2006, G.Cosmo (geom-specific-V08-00-10)
438- Added accessor method GetVertices() in G4Tet to return the list of
439 vertices composing the solid. Required for GDML persistency.
440
44106-Jun-2006, G.Cosmo (geom-specific-V08-00-09)
442- Added protection against NaNs in G4PolyconeSide::Normal() for points at
443 the origin.
444
44519-May-2006, G.Cosmo (geom-specific-V08-00-08)
446- Fix in G4Ellipsoid::SetZCuts() and G4EllipticalTube::SetZCut() for usage
447 of uninitialised variables.
448
44908-May-2006, G.Cosmo (geom-specific-V08-00-07)
450- Cleared compilation warning on SUN-CC in G4TriangularFacet.cc.
451
45204-May-2006, G.Cosmo (geom-specific-V08-00-06)
453- Use different names for unit tests to avoid confusing liblist ...
454
45503-May-2006, G.Cosmo (geom-specific-V08-00-05)
456- Added four unit tests for G4TessellatedSolid.
457
45824-Mar-2006, G.Cosmo (geom-specific-V08-00-04)
459- G4TwistedTubs: defined exact estimation for GetCubicVolume(),
460 similar to the one adopted for G4Tubs.
461
46203-Mar-2006, G.Cosmo (geom-specific-V08-00-03)
463- Corrected boolean condition in G4TriangularFacet::Intersect().
464 Use '&&' operator in condition. Allows for porting on WIN32-VC.
465
46601-Mar-2006, G.Cosmo (geom-specific-V08-00-02)
467- Introducing first implementation of a tessellated solid, contribution
468 of P.R.Truscott (QinetiQ Ltd, UK).
469 New classes: G4QuadrangularFacet, G4TessellatedSolid, G4TriangularFacet
470 and G4VFacet.
471- Requires tag "greps-V08-00-00".
472
47312-Jan-2006, J.Allison (geom-specific-V08-00-01)
474- G4TwistedTubs and G4VTwistedFaceted::CreatePolyhedron():
475 parameterised polyhedron mesh approximation in terms of
476 G4Polyhedron::GetNumberOfRotationSteps().
477 This is (a) more economical and (b) amenable to user control.
478
47919-Dec-2005, O.Link (geom-specific-V08-00-00)
480- Fixes in G4EllipticalCone:
481 o Changed GetPointOnSurface(), which was not uniform in endcaps.
482 o Bug fix in Inside(), which was not correct for the elliptic mantel.
483 Made test similar as in G4EllipticTube.
484 o Several fixes in DistanceToIn/Out(): for looping events (shortest
485 distance was taken, even if 0); now comparing the distance to the endcap
486 and to the mantel and decide afterwards which distance is shortest;
487 added check n*v.
488 o The code is now "good" at 90%. Still 10% wrong reconstructed events.
489 e.g there is a problem is DistanceToOut(): missed the intersection
490 (reconstruction took the encap instead of the mantel).
491
49209-Dec-2005, O.Link
493- Fixed visibility of soft edges on the twisted solids.
494
49508-Dec-2005, O.Link (geom-specific-V07-01-14)
496- Fixed bug in G4VTwistSurface::ComputeLocalPoint(p) for point coordinate
497 transformation. The bug affected only G4TwistTrapFlatSide.
498
49906-Dec-2005, G.Cosmo (geom-specific-V07-01-13)
500- Fixed compilation errors on WIN32-VC for last tag changes.
501
50205-Dec-2005, O.Link (geom-specific-V07-01-12)
503- Added polyhedron definition for twisted solids (G4TwistedTrap,
504 G4TwistedTrd, G4TwistedBox, G4TwistedTubs) for visualization.
505
50630-Nov-2005, G.Cosmo (geom-specific-V07-01-11)
507- Trivial fixes for porting on CLHEP-2.0.X series.
508
50918-Nov-2005, O.Link (geom-specific-V07-01-10)
510- Renamed classes for twisted solids set, to identify them in the
511 twisted framework.
512
51317-Nov-2005, O.Link
514- G4VTwistedFacted:
515 o corrected bug in DistanceToSurface() implementation
516 o added GetPointOnSurface() method
517- G4TwistedTubs:
518 o added GetPointOnSurface() method
519- G4Hype:
520 o corrected surface area calculation used in GetPointOnSurface()
521
52217-Nov-2005, G.Cosmo (geom-specific-V07-01-09)
523- More fixes required for direct object persistency to G4Polycone,
524 G4polyhedra and related utility classes.
525
52610-Nov-2005, J.Allison (geom-specific-V07-01-08)
527- G4Tet:
528 o Added implementation for GetPolyhedron() and GetCubicVolume().
529 o Corrected order of specifying vertices in CreatePolyhedron().
530
53109-Nov-2005, G.Cosmo (geom-specific-V07-01-07)
532- Added fake default constructor for all concrete solids and relevant
533 utility classes, for usage of direct object persistency.
534- Implemented changes to support CLHEP-2.0.X for explicit usage of the
535 CLHEP/HepGeom namespaces for CLHEP types.
536
53707-Nov-2005, G.Cosmo (geom-specific-V07-01-06)
538- G4Ellipsoid: replaced call to hypot(x,y) with std::sqrt(x*x+y*y)
539 for porting to ISO standard.
540
54102-Nov-2005, G.Cosmo (geom-specific-V07-01-05)
542- G4Polyhedra, G4Polycone:
543 o Protected case of generic construct for visualization.
544 o Introduced explicit flag and method IsGeneric() to identify the kind
545 of constructor used.
546
54729-Sep-2005, G.Cosmo (geom-specific-V07-01-04)
548- Fix in G4EllipticalCone methods DistanceToIn() and DistanceToOut().
549 Added unit test for it (by D.Anninos).
550- Coworks with tag "greps-V07-01-02".
551
55210-Aug-2005, G.Cosmo (geom-specific-V07-01-03)
553- Introduced new solid G4EllipticalCone, a full cone with elliptical base
554 that can be cut in Z (by D.Anninos).
555 Coworks with tag "greps-V07-01-02".
556
55708-Aug-2005, D.Anninos (geom-specific-V07-01-02)
558- Added GetPointOnSurface() for all solids except twisted ones.
559 The method returns a random point according to a quasi-uniform
560 distribution along the surface.
561
56218-Jul-2005, G.Cosmo (geom-specific-V07-01-01)
563- Fixed compilation warning on WIN32-VC for G4VSurface.cc.
564- Not including G4Tet.
565
56606-Jul-2005, G.Cosmo (geom-specific-V07-01-00)
567- Added new shape G4Ellipsoid. Coworks with tag "greps-V07-01-00".
568 Contribution of G.Horton-Smith and G.Guerrieri.
569 Code cleanup, and added default arguments for cuts, added first
570 implementation of unit test.
571- Corrected unit tests for twisted-box/trap.
572- Not including G4Tet.
573
57415-Jun-2005, J.Apostolakis
575- Introduced new solid G4Tet, contribution of M.H.Mendenhall
576 and R.A.Weller, Vanderbilt University, USA.
577
57829-Apr-2005, O.Link (geom-specific-V07-00-04)
579- G4TwistedSurface: fixed bug in GetAreaCode() affecting G4TwistedTubs.
580
58104-Apr-2005, G.Cosmo (geom-specific-V07-00-03)
582- Added test for Number-Of-Rotation-Steps in GetPolyhedron() for
583 G4VCSGfaceted, G4Hype and G4EllipticalTube (by J.Allison).
584 Requires tag "greps-V07-00-02".
585- Added elementary implementation of CreatePolyhedron() for G4Hype,
586 G4TwistedBox, G4TwistedTubs, G4TwistedTrd, G4TwistedTrap.
587- Some code cleanup.
588
58918-Mar-2005, O.Link (geom-specific-V07-00-02)
590- New generic framework for twisted solids G4TwistedBox, G4TwistedTrd and
591 G4TwistedTrap: inheriting now from the base class G4VTwistedFaceted.
592- Extended G4TwistedTrap to support setups with different trapezoidal
593 endcaps with centres not necessarily on a line parallel to the z axis.
594- Added G4TwistedTrd and general G4TwistedTrap as test cases in test.
595
59603-Mar-2005, J.Allison
597- Changed AddThis() to AddSolid() for all solids in the implementation
598 of DescribeYourselfTo(G4VGraphicsScene&).
599
60001-Mar-2005, O.Link (geom-specific-V07-00-01)
601- Fixed compilation warnings on WIN32-VC for G4VSurface.cc.
602
60314-Feb-2005, O.Link (geom-specific-V07-00-00)
604- Use new polynom approximations based on new solver based on Jenkins-Traub
605 algorithm, for twisted-box and twisted-trap.
606- Fixed bug in the usage of 'fmod' and adopt special treatment for 'parallel'
607 events in G4TwistedBoxSide and G4TwistedTrapSide.
608- Coworks with tag "global-V07-00-00".
609
61008-Dec-2004, O.Link (geom-specific-V06-02-07)
611- Extensions to twisted box/trap shapes to consider all 4 solutions
612 for determining correct intersections.
613
61429-Nov-2004, O.Link (geom-specific-V06-02-06)
615- G4TwistedTrapSide, G4TwistedBoxSide: improved (analytical) version
616 of GetPhiUAtX() method.
617
61824-Nov-2004, O.Link (geom-specific-V06-02-05)
619- Fixed bug in description of twisted trapezoid side.
620
62112-Nov-2004, O.Link (geom-specific-V06-02-04)
622- Added G4TwistedBox - a twisted box with twist angle alpha,
623 length a/2,b/2,L/2.
624- Added G4TwistedTrap - a twisted trapezoid (still in debug state)
625- Changed in G4VSurface.icc:
626 - GetNeighbours(): corrected axiscode (was returning the wrong neighbours)
627 - SetNeighbours(): fixed problem #685 (index out of range)
628- Added tests for G4TwistedBox and G4TwistedTrap in specific/test.
629- Added G4TwistedBox and G4TwistedTrap in system testing, test10.
630
63122-Oct-2004, D.C.Williams (geom-specific-V06-02-03)
632- Fix in G4PolyconeSide::Inside for points at radius = 0 for phi slides
633 solids with an inner radius. Addresses problem report #598.
634
63510-Oct-2004, J.Allison (geom-specific-V06-02-02)
636- Added GetPolyhedron, a smart access function that creates a G4Polyhedron
637 on request and stores for future access. A null pointer means "not
638 available".
639
64022-Sep-2004, G.Cosmo (geom-specific-V06-02-01)
641- Added implementation of GetCubicVolume() with cashing mechanism for
642 solids: G4EllipticalTube, G4Hype, G4Polyhedra, G4Polycone, G4TwistedTubs.
643
64401-Sep-2004, D.C.Williams (geom-specific-V06-02-00)
645- G4VCSGfaceted: fix for rare anomalous situation in which
646 DistanceToOut(p,v,..) will report kInfinity, make an additional check
647 for the point p on the surface, in which case will report zero.
648 Addresses problem observed in G4Polyhedra and reported in #650.
649
65007-Jun-2004, G.Cosmo (geom-specific-V06-01-04)
651- Fixed compilation problem in G4TwistedSurface.cc on WIN32-VC.
652
65328-May-2004, G.Cosmo (geom-specific-V06-01-03)
654- Fixed archiving problem on WIN32-VC7: replaced structs with classes
655 in G4VSurface.
656- Replaced misleading names for masks in G4VSurface and moved inlined
657 methods of nested classes to .cc.
658
65925-May-2004, G.Cosmo (geom-specific-V06-01-02)
660- Fixed compilation problem on SUN-CC. Made EValidate enum public in
661 G4VSurface.hh.
662
66324-May-2004, G.Cosmo (geom-specific-V06-01-01)
664- Removed compilation warnings and minor cleanup...
665
66619-May-2004, O.Link (geom-specific-V06-01-00)
667- First implementation of a framework for twisted surfaces, integrated from
668 the original version of Kotoyo Hoshina (hoshina@hepburn.s.chiba-u.ac.jp)
669 implemented in the 'Jupiter' application.
670 o Includes new specific twisted shape: G4TwistedTubs.
671 o New classes: G4VSurface, G4TwistedSurface, G4HyperbolicSurface,
672 G4FlatSurface, G4TwistedTubs.
673 o Cleanup of original code (debugging messages, compiler errors, migration
674 of g4std to new convention...)
675 o New organisation of class G4TwistedTubs: now independent of XXXSurface;
676 removed backpointer 'fSolid' from XXXSurface to G4TwistedTubs.
677 o New form of constructors in G4TwistedSurface, G4HyperbolicSurface and
678 G4FlatSurface.
679 o Change in G4TwistedSurface::DistanceToIn(p,v,...): roundoff correction.
680
68112-Jan-2004, G.Cosmo (geom-specific-V06-00-00)
682- G4PolyhedraSide.cc: fixed bug in which particles could "leak" out the
683 center of a face if inner radius = 0.
684 Fixes problem report #547. (D.Williams)
685
68622-Nov-2003, G.Cosmo (geom-specific-V05-02-07)
687- Fixed upper bound for protection check introduced in G4Polycone and
688 G4Polyhedra constructors.
689
69017-Nov-2003, G.Cosmo (geom-specific-V05-02-06)
691- Added protections in G4Polycone and G4Polyhedra constructors for
692 invalid constructs with no contiguous segments in Z planes as input.
693
69404-Nov-2003, G.Cosmo (geom-specific-V05-02-05)
695- Added SetOriginalParameters() method to G4Polycone and G4Polyhedra.
696
69703-Nov-2003, G.Cosmo (geom-specific-V05-02-04)
698- Code cleanup and headers inclusion review
699 (replaced by forward declarations where necessary).
700
70128-Oct-2003, G.Cosmo (geom-specific-V05-02-03)
702- Migrated to new G4Exception scheme.
703
70420-Oct-2003, G.Cosmo (geom-specific-V05-02-02)
705- Added Reset() method in G4Polycone and G4Polyhedra to allow
706 recalculation and reshape of the solid if new original_parameters
707 are provided.
708
70930-Sep-2003, G.Cosmo (geom-specific-V05-02-01)
710- Updated GNUmakefile for unit tests, according to new structure
711 introduced in "geometry-V05-02-00".
712
71316-Jun-2003, G.Cosmo (geom-specific-V05-02-00)
714- Added accessors to original_parameters for G4Polycone and G4Polyhedra.
715 Made G4PolyconeHistorical and G4PolyhedraHistorical classes in global
716 scope (temporary solution).
717
71828-Mar-2003, G.Cosmo (geom-specific-V05-00-00)
719- Fixed initialisation of base class in copy contructor for:
720 G4PolyPhiFace, G4PolyconeSide, G4PolyhedraSide.
721- Fixed trivial pedantic warnings on G4Polycone and G4Polyhedra.
722
72330-Oct-2002, G.Cosmo (geom-specific-V04-01-01)
724- Fixed un-initialised data members in constructors of classes:
725 G4ClippablePolygon, G4EnclosingCylinder, G4PolyconeSide,
726 G4ReduciblePolygon, G4VCSGfaceted.
727
72828-Oct-2002, G.Cosmo (geom-specific-V04-01-00)
729- Added implementation of StreamInfo() to comply with new interface for
730 G4VSolid in "geommng-V04-01-03".
731- Created .icc files for G4EllipticalTube, G4Polyhedra and G4Polycone.
732- Some cosmetic changes to code formatting: removed <TAB> characters and adopt
733 uniform code indentation.
734
73508-May-2002, J.Allison (geom-solids-specific-V04-00-01)
736- Implemented G4EllipticalTube::CreatePolyhedron.
737
73810-Jan-2002, G.Cosmo (geom-solids-specific-V04-00-00)
739- Updated unit tests.
740
74120-Apr-2001, G.Cosmo (geom-solids-specific-V03-01-00)
742- Migration to STL vector:
743 o In G4ClippablePolygon, migrated G4ThreeVectorList typedef and
744 made private to class.
745
74603-Apr-2001, D.Williams (geom-solids-specific-V03-00-01)
747-----------------------
748- G4IntersectingCone.cc: make small adjustment to help with roundoff error
749 in LineHitsCone1() and LineHitsCone2().
750
75108-Jan-2001, D.Williams (geom-solids-specific-V03-00-00)
752-----------------------
753- G4Hype.cc: Added protecton against zero v.z in DistanceToOut.
754
75520-Nov-2000, G.Cosmo (geom-solids-specific-V02-00-04)
756---------------------
757- Fixes to remove warnings from "-Wall -ansi -pedantic" g++ compiler options:
758 o commented out variables declared and not used.
759 o fixed declaration of variables used before being initialised.
760 o fixed order of initialisation of member data in constructors.
761 o fixed usage of unsigned-int (size_t) for array indeces.
762
76313-Nov-2000, G.Cosmo (geom-solids-specific-V02-00-03)
764--------------------
765- Added definition of empty constructor for G4ClippablePolygon which
766 went lost by mistake...
767
76802-Nov-2000, G.Cosmo (geom-solids-specific-V02-00-02)
769--------------------
770- QA code revision and cleanup (+fixes from CodeWizard filtering):
771 o Avoid inline virtual methods.
772 o General cosmetics for Software Reference Manual.
773
77423-Oct-2000, D.Williams (geom-solids-specific-V02-00-01)
775-----------------------
776- G4IntersectingCone.cc: the check for a zero radical has been adjusted to be
777 less sensitive to round off error in LineHitsCone1(), LineHitsCone2().
778 This fixes a problem discovered in BaBar.
779
78012-Sep-2000, G.Cosmo (geom-solids-specific-V02-00-00)
781--------------------
782- Organised comments to headers for Software Reference Manual.
783
78427-Jun-2000, G.Cosmo (geom-solids-specific-V01-01-02)
785--------------------
786- G4Polycone[.hh.cc]: better fix for bug-report #110.
787 Removed struct and replaced with class.
788
78926-Jun-2000, G.Cosmo (geom-solids-specific-V01-01-01)
790--------------------
791- G4Polycone.cc: fixed memory leak by invoking destruction of member
792 enclosingCylinder, which was not cleaned up in the destructor.
793 This fixes problem report #107.
794- G4Polycone.hh: added forward declaration of struct G4PolyconeHistorical
795 and made it friend, for porting on KCC --strict. This fixes report #110.
796- G4Polyhedra.hh: fixed typo in method name. Changed GetNumSIde() to
797 GetNumSide(). This fixes problem report #105.
798
79908-Jun-2000, G.Gracia
800---------------------
801- G4VCSGfaceted.cc: fix for Win/NT in function GetExtent().
802
80327-Apr-2000, G.Cosmo
804--------------------
805- Removed dependency over the CSG domain in GNUmakefile.
806
80718-Apr-2000, D.Williams
808-----------------------
809- Removed meaningless "const" specifiers from methods in G4ClippablePolygon,
810 and G4EllipticalTube.
811- G4EllipticalTube, G4Hype and G4VCSGfaceted now inherit directly
812 from G4VSolid (before was G4CSGSolid).
813- Reintroduced GetExtent() in G4EllipticalTube, G4Hype and G4VCSGfaceted
814 (in principle, not needed).
815- Modified assertations in unit test testG4Hype.cc.
816
81711-Apr-2000, J.Allison
818----------------------
819- Removed implementations of GetExtent in most sub-classes of G4VSolid (a
820 default implementation exists in G4VSolid).
821- All implementations of DescribeYourselfTo (G4VGraphicsScene& scene) const
822 now correctly written: scene.AddThis(*this).
823
82405-Apr-2000, G.Cosmo (geom-solids-specific-V01-01-00)
825--------------------
826- Restructured solids/CSG domain, by moving to "specific" the following
827 classes: G4ClippablePolygon, G4EnclosingCylinder, G4Hype, G4PolyPhiFace,
828 G4Polycone, G4PolyconeSide, G4Polyhedra, G4PolyhedraSide, G4ReduciblePolygon,
829 G4IntersectingCone, G4SolidExtentList, G4VCSGface, G4VCSGfaceted.
830 The new module's library for "specific" is now called 'G4specsolids'.
831- Created specific/test directory and moved testG4Hype.cc and testG4Polycone,cc
832 from CSG/test.
833- Organised class description comments for the Software Reference Manual
834 and added CVS headers to files.
835
83629-Mar-2000, D.Williams
837-----------------------
838- Added first implementation of G4EllipticalTube.
839 It defines a simple elliptical tube, as in geant3 "ELTU".
840 Files introduced: G4EllipticalTube[.hh.cc].
841
84225-Mar-2000, G.Cosmo
843--------------------
844- History file created.
Note: See TracBrowser for help on using the repository browser.