Files
geant4/source/geometry/solids/specific/History
T
2016-06-09 14:44:26 +02:00

428 lines
18 KiB
Plaintext

$Id: History,v 1.94 2006/06/20 10:09:23 gcosmo Exp $
-------------------------------------------------------------------
=========================================================
Geant4 - an Object-Oriented Toolkit for Simulation in HEP
=========================================================
Sub-Category History file
-------------------------
This file should be used by G4 developers and category coordinators
to briefly summarize all major modifications introduced in the code
and keep track of all directory-tags.
It DOES NOT substitute the CVS log-message one should put at every
committal in the CVS repository !
----------------------------------------------------------
* Reverse chronological order (last date on top), please *
----------------------------------------------------------
20-Jun-2006, G.Cosmo (geom-specific-V08-00-10)
- Added accessor method GetVertices() in G4Tet to return the list of
vertices composing the solid. Required for GDML persistency.
06-Jun-2006, G.Cosmo (geom-specific-V08-00-09)
- Added protection against NaNs in G4PolyconeSide::Normal() for points at
the origin.
19-May-2006, G.Cosmo (geom-specific-V08-00-08)
- Fix in G4Ellipsoid::SetZCuts() and G4EllipticalTube::SetZCut() for usage
of uninitialised variables.
08-May-2006, G.Cosmo (geom-specific-V08-00-07)
- Cleared compilation warning on SUN-CC in G4TriangularFacet.cc.
04-May-2006, G.Cosmo (geom-specific-V08-00-06)
- Use different names for unit tests to avoid confusing liblist ...
03-May-2006, G.Cosmo (geom-specific-V08-00-05)
- Added four unit tests for G4TessellatedSolid.
24-Mar-2006, G.Cosmo (geom-specific-V08-00-04)
- G4TwistedTubs: defined exact estimation for GetCubicVolume(),
similar to the one adopted for G4Tubs.
03-Mar-2006, G.Cosmo (geom-specific-V08-00-03)
- Corrected boolean condition in G4TriangularFacet::Intersect().
Use '&&' operator in condition. Allows for porting on WIN32-VC.
01-Mar-2006, G.Cosmo (geom-specific-V08-00-02)
- Introducing first implementation of a tessellated solid, contribution
of P.R.Truscott (QinetiQ Ltd, UK).
New classes: G4QuadrangularFacet, G4TessellatedSolid, G4TriangularFacet
and G4VFacet.
- Requires tag "greps-V08-00-00".
12-Jan-2006, J.Allison (geom-specific-V08-00-01)
- G4TwistedTubs and G4VTwistedFaceted::CreatePolyhedron():
parameterised polyhedron mesh approximation in terms of
G4Polyhedron::GetNumberOfRotationSteps().
This is (a) more economical and (b) amenable to user control.
19-Dec-2005, O.Link (geom-specific-V08-00-00)
- Fixes in G4EllipticalCone:
o Changed GetPointOnSurface(), which was not uniform in endcaps.
o Bug fix in Inside(), which was not correct for the elliptic mantel.
Made test similar as in G4EllipticTube.
o Several fixes in DistanceToIn/Out(): for looping events (shortest
distance was taken, even if 0); now comparing the distance to the endcap
and to the mantel and decide afterwards which distance is shortest;
added check n*v.
o The code is now "good" at 90%. Still 10% wrong reconstructed events.
e.g there is a problem is DistanceToOut(): missed the intersection
(reconstruction took the encap instead of the mantel).
09-Dec-2005, O.Link
- Fixed visibility of soft edges on the twisted solids.
08-Dec-2005, O.Link (geom-specific-V07-01-14)
- Fixed bug in G4VTwistSurface::ComputeLocalPoint(p) for point coordinate
transformation. The bug affected only G4TwistTrapFlatSide.
06-Dec-2005, G.Cosmo (geom-specific-V07-01-13)
- Fixed compilation errors on WIN32-VC for last tag changes.
05-Dec-2005, O.Link (geom-specific-V07-01-12)
- Added polyhedron definition for twisted solids (G4TwistedTrap,
G4TwistedTrd, G4TwistedBox, G4TwistedTubs) for visualization.
30-Nov-2005, G.Cosmo (geom-specific-V07-01-11)
- Trivial fixes for porting on CLHEP-2.0.X series.
18-Nov-2005, O.Link (geom-specific-V07-01-10)
- Renamed classes for twisted solids set, to identify them in the
twisted framework.
17-Nov-2005, O.Link
- G4VTwistedFacted:
o corrected bug in DistanceToSurface() implementation
o added GetPointOnSurface() method
- G4TwistedTubs:
o added GetPointOnSurface() method
- G4Hype:
o corrected surface area calculation used in GetPointOnSurface()
17-Nov-2005, G.Cosmo (geom-specific-V07-01-09)
- More fixes required for direct object persistency to G4Polycone,
G4polyhedra and related utility classes.
10-Nov-2005, J.Allison (geom-specific-V07-01-08)
- G4Tet:
o Added implementation for GetPolyhedron() and GetCubicVolume().
o Corrected order of specifying vertices in CreatePolyhedron().
09-Nov-2005, G.Cosmo (geom-specific-V07-01-07)
- Added fake default constructor for all concrete solids and relevant
utility classes, for usage of direct object persistency.
- Implemented changes to support CLHEP-2.0.X for explicit usage of the
CLHEP/HepGeom namespaces for CLHEP types.
07-Nov-2005, G.Cosmo (geom-specific-V07-01-06)
- G4Ellipsoid: replaced call to hypot(x,y) with std::sqrt(x*x+y*y)
for porting to ISO standard.
02-Nov-2005, G.Cosmo (geom-specific-V07-01-05)
- G4Polyhedra, G4Polycone:
o Protected case of generic construct for visualization.
o Introduced explicit flag and method IsGeneric() to identify the kind
of constructor used.
29-Sep-2005, G.Cosmo (geom-specific-V07-01-04)
- Fix in G4EllipticalCone methods DistanceToIn() and DistanceToOut().
Added unit test for it (by D.Anninos).
- Coworks with tag "greps-V07-01-02".
10-Aug-2005, G.Cosmo (geom-specific-V07-01-03)
- Introduced new solid G4EllipticalCone, a full cone with elliptical base
that can be cut in Z (by D.Anninos).
Coworks with tag "greps-V07-01-02".
08-Aug-2005, D.Anninos (geom-specific-V07-01-02)
- Added GetPointOnSurface() for all solids except twisted ones.
The method returns a random point according to a quasi-uniform
distribution along the surface.
18-Jul-2005, G.Cosmo (geom-specific-V07-01-01)
- Fixed compilation warning on WIN32-VC for G4VSurface.cc.
- Not including G4Tet.
06-Jul-2005, G.Cosmo (geom-specific-V07-01-00)
- Added new shape G4Ellipsoid. Coworks with tag "greps-V07-01-00".
Contribution of G.Horton-Smith and G.Guerrieri.
Code cleanup, and added default arguments for cuts, added first
implementation of unit test.
- Corrected unit tests for twisted-box/trap.
- Not including G4Tet.
15-Jun-2005, J.Apostolakis
- Introduced new solid G4Tet, contribution of M.H.Mendenhall
and R.A.Weller, Vanderbilt University, USA.
29-Apr-2005, O.Link (geom-specific-V07-00-04)
- G4TwistedSurface: fixed bug in GetAreaCode() affecting G4TwistedTubs.
04-Apr-2005, G.Cosmo (geom-specific-V07-00-03)
- Added test for Number-Of-Rotation-Steps in GetPolyhedron() for
G4VCSGfaceted, G4Hype and G4EllipticalTube (by J.Allison).
Requires tag "greps-V07-00-02".
- Added elementary implementation of CreatePolyhedron() for G4Hype,
G4TwistedBox, G4TwistedTubs, G4TwistedTrd, G4TwistedTrap.
- Some code cleanup.
18-Mar-2005, O.Link (geom-specific-V07-00-02)
- New generic framework for twisted solids G4TwistedBox, G4TwistedTrd and
G4TwistedTrap: inheriting now from the base class G4VTwistedFaceted.
- Extended G4TwistedTrap to support setups with different trapezoidal
endcaps with centres not necessarily on a line parallel to the z axis.
- Added G4TwistedTrd and general G4TwistedTrap as test cases in test.
03-Mar-2005, J.Allison
- Changed AddThis() to AddSolid() for all solids in the implementation
of DescribeYourselfTo(G4VGraphicsScene&).
01-Mar-2005, O.Link (geom-specific-V07-00-01)
- Fixed compilation warnings on WIN32-VC for G4VSurface.cc.
14-Feb-2005, O.Link (geom-specific-V07-00-00)
- Use new polynom approximations based on new solver based on Jenkins-Traub
algorithm, for twisted-box and twisted-trap.
- Fixed bug in the usage of 'fmod' and adopt special treatment for 'parallel'
events in G4TwistedBoxSide and G4TwistedTrapSide.
- Coworks with tag "global-V07-00-00".
08-Dec-2004, O.Link (geom-specific-V06-02-07)
- Extensions to twisted box/trap shapes to consider all 4 solutions
for determining correct intersections.
29-Nov-2004, O.Link (geom-specific-V06-02-06)
- G4TwistedTrapSide, G4TwistedBoxSide: improved (analytical) version
of GetPhiUAtX() method.
24-Nov-2004, O.Link (geom-specific-V06-02-05)
- Fixed bug in description of twisted trapezoid side.
12-Nov-2004, O.Link (geom-specific-V06-02-04)
- Added G4TwistedBox - a twisted box with twist angle alpha,
length a/2,b/2,L/2.
- Added G4TwistedTrap - a twisted trapezoid (still in debug state)
- Changed in G4VSurface.icc:
- GetNeighbours(): corrected axiscode (was returning the wrong neighbours)
- SetNeighbours(): fixed problem #685 (index out of range)
- Added tests for G4TwistedBox and G4TwistedTrap in specific/test.
- Added G4TwistedBox and G4TwistedTrap in system testing, test10.
22-Oct-2004, D.C.Williams (geom-specific-V06-02-03)
- Fix in G4PolyconeSide::Inside for points at radius = 0 for phi slides
solids with an inner radius. Addresses problem report #598.
10-Oct-2004, J.Allison (geom-specific-V06-02-02)
- Added GetPolyhedron, a smart access function that creates a G4Polyhedron
on request and stores for future access. A null pointer means "not
available".
22-Sep-2004, G.Cosmo (geom-specific-V06-02-01)
- Added implementation of GetCubicVolume() with cashing mechanism for
solids: G4EllipticalTube, G4Hype, G4Polyhedra, G4Polycone, G4TwistedTubs.
01-Sep-2004, D.C.Williams (geom-specific-V06-02-00)
- G4VCSGfaceted: fix for rare anomalous situation in which
DistanceToOut(p,v,..) will report kInfinity, make an additional check
for the point p on the surface, in which case will report zero.
Addresses problem observed in G4Polyhedra and reported in #650.
07-Jun-2004, G.Cosmo (geom-specific-V06-01-04)
- Fixed compilation problem in G4TwistedSurface.cc on WIN32-VC.
28-May-2004, G.Cosmo (geom-specific-V06-01-03)
- Fixed archiving problem on WIN32-VC7: replaced structs with classes
in G4VSurface.
- Replaced misleading names for masks in G4VSurface and moved inlined
methods of nested classes to .cc.
25-May-2004, G.Cosmo (geom-specific-V06-01-02)
- Fixed compilation problem on SUN-CC. Made EValidate enum public in
G4VSurface.hh.
24-May-2004, G.Cosmo (geom-specific-V06-01-01)
- Removed compilation warnings and minor cleanup...
19-May-2004, O.Link (geom-specific-V06-01-00)
- First implementation of a framework for twisted surfaces, integrated from
the original version of Kotoyo Hoshina (hoshina@hepburn.s.chiba-u.ac.jp)
implemented in the 'Jupiter' application.
o Includes new specific twisted shape: G4TwistedTubs.
o New classes: G4VSurface, G4TwistedSurface, G4HyperbolicSurface,
G4FlatSurface, G4TwistedTubs.
o Cleanup of original code (debugging messages, compiler errors, migration
of g4std to new convention...)
o New organisation of class G4TwistedTubs: now independent of XXXSurface;
removed backpointer 'fSolid' from XXXSurface to G4TwistedTubs.
o New form of constructors in G4TwistedSurface, G4HyperbolicSurface and
G4FlatSurface.
o Change in G4TwistedSurface::DistanceToIn(p,v,...): roundoff correction.
12-Jan-2004, G.Cosmo (geom-specific-V06-00-00)
- G4PolyhedraSide.cc: fixed bug in which particles could "leak" out the
center of a face if inner radius = 0.
Fixes problem report #547. (D.Williams)
22-Nov-2003, G.Cosmo (geom-specific-V05-02-07)
- Fixed upper bound for protection check introduced in G4Polycone and
G4Polyhedra constructors.
17-Nov-2003, G.Cosmo (geom-specific-V05-02-06)
- Added protections in G4Polycone and G4Polyhedra constructors for
invalid constructs with no contiguous segments in Z planes as input.
04-Nov-2003, G.Cosmo (geom-specific-V05-02-05)
- Added SetOriginalParameters() method to G4Polycone and G4Polyhedra.
03-Nov-2003, G.Cosmo (geom-specific-V05-02-04)
- Code cleanup and headers inclusion review
(replaced by forward declarations where necessary).
28-Oct-2003, G.Cosmo (geom-specific-V05-02-03)
- Migrated to new G4Exception scheme.
20-Oct-2003, G.Cosmo (geom-specific-V05-02-02)
- Added Reset() method in G4Polycone and G4Polyhedra to allow
recalculation and reshape of the solid if new original_parameters
are provided.
30-Sep-2003, G.Cosmo (geom-specific-V05-02-01)
- Updated GNUmakefile for unit tests, according to new structure
introduced in "geometry-V05-02-00".
16-Jun-2003, G.Cosmo (geom-specific-V05-02-00)
- Added accessors to original_parameters for G4Polycone and G4Polyhedra.
Made G4PolyconeHistorical and G4PolyhedraHistorical classes in global
scope (temporary solution).
28-Mar-2003, G.Cosmo (geom-specific-V05-00-00)
- Fixed initialisation of base class in copy contructor for:
G4PolyPhiFace, G4PolyconeSide, G4PolyhedraSide.
- Fixed trivial pedantic warnings on G4Polycone and G4Polyhedra.
30-Oct-2002, G.Cosmo (geom-specific-V04-01-01)
- Fixed un-initialised data members in constructors of classes:
G4ClippablePolygon, G4EnclosingCylinder, G4PolyconeSide,
G4ReduciblePolygon, G4VCSGfaceted.
28-Oct-2002, G.Cosmo (geom-specific-V04-01-00)
- Added implementation of StreamInfo() to comply with new interface for
G4VSolid in "geommng-V04-01-03".
- Created .icc files for G4EllipticalTube, G4Polyhedra and G4Polycone.
- Some cosmetic changes to code formatting: removed <TAB> characters and adopt
uniform code indentation.
08-May-2002, J.Allison (geom-solids-specific-V04-00-01)
- Implemented G4EllipticalTube::CreatePolyhedron.
10-Jan-2002, G.Cosmo (geom-solids-specific-V04-00-00)
- Updated unit tests.
20-Apr-2001, G.Cosmo (geom-solids-specific-V03-01-00)
- Migration to STL vector:
o In G4ClippablePolygon, migrated G4ThreeVectorList typedef and
made private to class.
03-Apr-2001, D.Williams (geom-solids-specific-V03-00-01)
-----------------------
- G4IntersectingCone.cc: make small adjustment to help with roundoff error
in LineHitsCone1() and LineHitsCone2().
08-Jan-2001, D.Williams (geom-solids-specific-V03-00-00)
-----------------------
- G4Hype.cc: Added protecton against zero v.z in DistanceToOut.
20-Nov-2000, G.Cosmo (geom-solids-specific-V02-00-04)
---------------------
- Fixes to remove warnings from "-Wall -ansi -pedantic" g++ compiler options:
o commented out variables declared and not used.
o fixed declaration of variables used before being initialised.
o fixed order of initialisation of member data in constructors.
o fixed usage of unsigned-int (size_t) for array indeces.
13-Nov-2000, G.Cosmo (geom-solids-specific-V02-00-03)
--------------------
- Added definition of empty constructor for G4ClippablePolygon which
went lost by mistake...
02-Nov-2000, G.Cosmo (geom-solids-specific-V02-00-02)
--------------------
- QA code revision and cleanup (+fixes from CodeWizard filtering):
o Avoid inline virtual methods.
o General cosmetics for Software Reference Manual.
23-Oct-2000, D.Williams (geom-solids-specific-V02-00-01)
-----------------------
- G4IntersectingCone.cc: the check for a zero radical has been adjusted to be
less sensitive to round off error in LineHitsCone1(), LineHitsCone2().
This fixes a problem discovered in BaBar.
12-Sep-2000, G.Cosmo (geom-solids-specific-V02-00-00)
--------------------
- Organised comments to headers for Software Reference Manual.
27-Jun-2000, G.Cosmo (geom-solids-specific-V01-01-02)
--------------------
- G4Polycone[.hh.cc]: better fix for bug-report #110.
Removed struct and replaced with class.
26-Jun-2000, G.Cosmo (geom-solids-specific-V01-01-01)
--------------------
- G4Polycone.cc: fixed memory leak by invoking destruction of member
enclosingCylinder, which was not cleaned up in the destructor.
This fixes problem report #107.
- G4Polycone.hh: added forward declaration of struct G4PolyconeHistorical
and made it friend, for porting on KCC --strict. This fixes report #110.
- G4Polyhedra.hh: fixed typo in method name. Changed GetNumSIde() to
GetNumSide(). This fixes problem report #105.
08-Jun-2000, G.Gracia
---------------------
- G4VCSGfaceted.cc: fix for Win/NT in function GetExtent().
27-Apr-2000, G.Cosmo
--------------------
- Removed dependency over the CSG domain in GNUmakefile.
18-Apr-2000, D.Williams
-----------------------
- Removed meaningless "const" specifiers from methods in G4ClippablePolygon,
and G4EllipticalTube.
- G4EllipticalTube, G4Hype and G4VCSGfaceted now inherit directly
from G4VSolid (before was G4CSGSolid).
- Reintroduced GetExtent() in G4EllipticalTube, G4Hype and G4VCSGfaceted
(in principle, not needed).
- Modified assertations in unit test testG4Hype.cc.
11-Apr-2000, J.Allison
----------------------
- Removed implementations of GetExtent in most sub-classes of G4VSolid (a
default implementation exists in G4VSolid).
- All implementations of DescribeYourselfTo (G4VGraphicsScene& scene) const
now correctly written: scene.AddThis(*this).
05-Apr-2000, G.Cosmo (geom-solids-specific-V01-01-00)
--------------------
- Restructured solids/CSG domain, by moving to "specific" the following
classes: G4ClippablePolygon, G4EnclosingCylinder, G4Hype, G4PolyPhiFace,
G4Polycone, G4PolyconeSide, G4Polyhedra, G4PolyhedraSide, G4ReduciblePolygon,
G4IntersectingCone, G4SolidExtentList, G4VCSGface, G4VCSGfaceted.
The new module's library for "specific" is now called 'G4specsolids'.
- Created specific/test directory and moved testG4Hype.cc and testG4Polycone,cc
from CSG/test.
- Organised class description comments for the Software Reference Manual
and added CVS headers to files.
29-Mar-2000, D.Williams
-----------------------
- Added first implementation of G4EllipticalTube.
It defines a simple elliptical tube, as in geant3 "ELTU".
Files introduced: G4EllipticalTube[.hh.cc].
25-Mar-2000, G.Cosmo
--------------------
- History file created.