------------------------------------------------------------------- ========================================================= Geant4 - an Object-Oriented Toolkit for Simulation in HEP ========================================================= 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 category-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 * ---------------------------------------------------------- 29th Oct 2010 Peter Gumplinger (op-V09-03-06) Fix minor Coverty Errors 22th Oct 2010 Peter Gumplinger (op-V09-03-05) Add Mie Scattering of Optical Photons Thanks to Xin Qian (Kellogg Radiation Lab of Caltech) Based on work from Vlasios Vasileiou (University of Maryland) Henyey-Greenstein phase functions 21th Oct 2010 Peter Gumplinger (op-V09-03-04) Fix Bug 207; Thanks to Xin Qian (Kellogg Radiation Lab of Caltech) 14th Jun 2010 Peter Gumplinger (op-V09-03-03) ProposeLocalEnergyDeposit(thePhotonMomentum) every time the photon is fStopAndKill because of NoRINDEX. This will trigger scoring when a photon encounters a volume not defined as an optical medium (indirect user request): http://hypernews.slac.stanford.edu/HyperNews/geant4/get/opticalphotons/335/1.html 18th May 2010 Peter Gumplinger (op-V09-03-02) fix a bug reported at: http://hypernews.slac.stanford.edu/HyperNews/geant4/get/opticalphotons/334/1/1.html theFacetNormal was not sampled for polishedbackpainted in DielectricDielectric method of G4OpBoundaryProcess 19th Apr 2010 Peter Gumplinger (op-V09-03-01) fix Problem report #1114 in that for backpainted surfaces theReflectivity is not applied twice. While doing the fix I also completely refashioning the code in the case of type == dielectric_dielect. 19th Jan 2010 Peter Gumplinger (op-V09-03-00) assign PropertyPointers to NULL at the start of the PostStepDoIt, addresses bug report #1094 19th Nov 2009 Peter Gumplinger (op-V09-02-06) change the code such that the LUT are now read in and kept by G4OpticalSurface and not G4OpBoundaryProcess, reordering of enumeration and set theStatus in DielectricLUT. 11th Nov 2009 Peter Gumplinger (op-V09-02-05) add capability of simulating surface reflections with Look-Up-Tables (LUT) containing measured optical reflectance for a variety of surface treatments - Thanks to Martin Janecek and William Moses (Lawrence Berkeley National Lab.) 9th Nov 2009 Peter Gumplinger (op-V09-02-04) G4OpBoundary: initialze theReflectivity and theEfficiency at the beginning of the PostStepDoIt; add method BoundaryProcessVerbose which will now print the process status for every call to PostStepDoIt. 5th Nov 2009 Peter Gumplinger (op-V09-02-03) G4OpBoundary::PostStepDoIt - all dielectric_dielectric surfaces may now have a reflectivity <1; not only 'frontpainted' as was the case in the past. 6th May 2009 Peter Gumplinger (op-V09-02-02) G4OpBoundary::PostStepDoIt now throws an G4Exception EventMustBeAborted when an invalid surface normal is returnd; addresses bug report #1060 23th Mar 2009 Peter Gumplinger (op-V09-02-01) for complex index of refraction: (1)resample the reflectivity every time in the do-while of DielectricMetal, but don't re-calculate theFacetNormal (which has already been chosen in CalculateReflectivity), also (2) avoid an infinite loop by resetting iTE and iTM inside the do-while of GetReflectivity; both are bug-fixes. 14th Jan 2009 Peter Gumplinger (op-V09-02-00) respond to bug report 1040 by fixing G4OpBoundaryProcess.cc 07th Nov 2008 Peter Gumplinger (op-V09-01-09) use new global/HEPRandom's G4RandomTools.hh 24th Oct 2008 Peter Gumplinger (op-V09-01-08) use local G4OpProcessSubType.hh 21st Oct 2008 Peter Gumplinger (op-V09-01-07) add SetProcessSubType for G4OpAbsorption, G4OpBoundaryProcess, G4OpRayleigh and G4OpWLS 18th Aug 2008 Peter Gumplinger (op-V09-01-06) use signatures G4SwapPtr(T*& and G4SwapObj(T* in G4OpBoundaryProcess - to work with global-V09-01-12 15th Aug 2008 Peter Gumplinger (op-V09-01-05) replaced G4SwapPtr with G4SwapObj for Rindex in G4OpBoundaryProcess - serious error since op-V09-01-00 (see also Problem Report 1020) 4th July 2008 Peter Gumplinger (op-V09-01-04) In G4OpWLS now SetTouchableHandle(aTrack.GetTouchableHandle()) for the secondaries in the DoIt. In G4OpBoundaryProcess.cc initialize the pointer: G4LogicalSurface* Surface = NULL; 27th June 2008 Peter Gumplinger (op-V09-01-03) In G4OpBoundaryProcess changed unsafe cast (G4OpticalSurface*) to dynamic_cast following suggestion in bug-report #1014 6th June 2008 Peter Gumplinger (op-V09-01-02) G4OpRayleigh, G4OpWLS = trivial name changes: momentum->energy, momenta->energies 5th June 2008 Peter Gumplinger (op-V09-01-00) G4OpBoundaryProcess: Removed G4Swap methods - replaced by G4SwapPtr. Removed G4IsotropicRand method - replaced by G4RandomDirection. Add commented code to change absorption at a dielectric/metal boundary into transmission. 29th Oct 2007 Peter Gumplinger (op-V09-00-01) In G4OpWLS.cc allow for the MeanNumberOfPhotons to be different from one, in case the constant property: WLSMEANNUMBERPHOTONS is provided and, if it is, sample NumPhotons with G4Poisson. 15th Oct 2007 Peter Gumplinger (op-V09-00-00) Add capability of calculating the reflectivity off a metal surface by way of a complex index of refraction. Thanks to Sehwook Lee and John Hauptman (Dept. of Physics - Iowa State Univ.) 11th May 2007 Gabriele Cosmo (op-V08-03-00) Use call to G4GeometryTolerance instead of kCarTolerance in G4OpBoundaryProcess. Requires tag "global-V08-03-00" and related tag set. 11th May 2006 Peter Gumplinger (op-V08-00-01) thanks to Andreia Trindade and Pedro Rodrigues, the WLS time delay can now be a delta function or exponential. New classes: G4VWLSTimeGeneratorProfile, G4WLSTimeGeneratorProfileDelta and G4WLSTimeGeneratorProfileExponential 17th Feb 2006 Peter Gumplinger (op-V08-00-00) fix default behaviour for unified model of dielectric_metal 28th July 2005 Peter Gumplinger (op-V07-01-00) add G4ProcessType to all constructors 10th December 2004 Gabriele Cosmo (op-V06-02-06) replaced M_PI with CLHEP's pi 02nd December 2004 Peter Gumplinger (op-V06-02-05) migration to cmath 28th October 2004 Gabriele Cosmo (op-V06-02-04) Added G4OPTICAL_DEBUG flag for debug printout. 18th October 2004 Peter Gumplinger (op-V06-02-03) Fix bug in DielectricMetal only GetFacetNormal for LobeReflection. Migrate files to 7.0 ParticleChange method names: G4OpBoundaryProcess.hh, G4OpBoundaryProcess.cc, G4OpWLS.cc, G4OpRayleigh.cc, G4OpAbsorption.cc 27th September 2004 Peter Gumplinger (op-V06-02-02) Fix bug in G4PlaneVectorRand and resample theFacetNormal for LobeReflection in DielectricMetal 12th August 2004 Peter Gumplinger (op-V06-02-01) In G4OpBoundaryProcess.cc: use GetMaterial from G4StepPoint directly; apply/sample reflectivity and Unified model reflection parameters only once even for rough dielectric/metal surfaces - i.e. not again even when reflected ray still points toward the surface - fixes problem report 654. 05th August 2004 Peter Gumplinger (op-V06-02-00) Allow for unified model reflectivity parameters to also work in case of dielectric_metal surfaces; addresses in part problem report 654. 26th April 2004 Peter Gumplinger (op-V06-01-01) Protect against NULL pointers in G4OpRayleigh. Do not overwrite Rayleigh scattering length for the material named 'Water' if it has been specified by the user through a call to AddProperty("RAYLEIGH" 21st April 2004 Peter Gumplinger (op-V06-01-00) Assign class members to defaults in DoIt. 17th March 2004 Peter Gumplinger (op-V06-00-03) Assign all class members in constructor. 24th February 2004 Gabriele Cosmo (op-V06-00-02) Added EOL at end of file in G4OpBoundaryProcess.cc to clear compilation warning in Linux-g++. 19th February 2004 Peter Gumplinger (op-V06-00-01) Add process status: NotAtBoundary, SameMaterial, StepTooSmall, NoRINDEX Allow for a skin-surface between mother and daughter volumes, with the daughter skin taking precedence. 2nd February 2004 Peter Gumplinger (op-V06-00-00) Set theStatus = Undefined at start of DoIt Replace usage of 0 with NULL. 1st December 2003 Peter Gumplinger (op-V05-02-02) G4OpBoundaryProcess.cc: modified to adopt G4SurfaceProperty. Requires tag "materials-V05-02-00". Replaced usage of NULL with 0. 4th October 2003 Gabriele Cosmo (op-V05-02-01) Modified GNUmakefile: added dependency to new module "geometry/navigation". Coworks with "geometry-V05-02-00" and "digits_hits-V05-02-00". 23rd September 2003 Peter Gumplinger (op-V05-02-00) Add WLS (wavelength shifting) process 15th March 2003 Peter Gumplinger (op-V05-00-01) Change logic for assigning of Rindex2; bug report #444 4th February 2003 Peter Gumplinger (op-V05-00-00) Fix calculation of polarization for perpendicular incidence when Rindex1 > Rindex2; bug report #442 12th November 2002 Peter Gumplinger (op-V04-01-01) Fix calculation of polarization on dielectric dielectric interfaces; bug report #427 28th March 2002 Peter Gumplinger (op-V04-00-01) Add public inline method GetStatus and make enum G4OpBoundaryProcessStatus public in G4OpBoundaryProcess.hh 18th October 2001 Peter Gumplinger (op-V03-02-01) Avoid warnings on Linux (gcc-2.95.2) compiler - G4OpRayleigh.cc: remove unused variable 'aMaterial' in PostStepDoIt and 'no_unit' in RayleighAttenuationLengthGenerator - G4OpBoundaryProcess.cc: moved definition of E2_perp, E2_parl, E2_total outside IF-statement 31st August 2001 Peter Gumplinger (op-V03-02-00) - G4OpRayleigh.hh, G4OpBoundary.hh and G4OpAbsorption.hh: changed processName to 'OpRayleigh', 'OpBoundary' and 'OpAbsorption' respectively 30th January 2001 Peter Gumplinger (op-V03-00-05) - G4OpRayleigh.cc: allow for positiv and negative CosTheta and force the new momentum direction to be in the same plane as the new and old polarization vectors still bug report: 207 29th January 2001 Peter Gumplinger (op-V03-00-04) - G4OpRayleigh.cc: fix calculation of SinTheta from CosTheta bug report: 207 23rd January 2001 Peter Gumplinger (op-V03-00-02) - G4OpRayleigh.cc: Allow for Rayleigh scattering length to be defined for arbitrary material through the use of G4MaterialPropertyTable. 5th October 2000 Peter Gumplinger (op-V02-00-02) - G4OpAbsorption.cc: Comment out warning - No Absorption length specified. 3rd August 2000 Gabriele Cosmo (op-V02-00-00r) - G4OpBoundaryProcess.cc: changed RandGauss to G4RandGauss to fix problem of events' reproducibility. - Syncronized with HEAD (only CVS headers changes). 21th October 1999 Peter Gumplinger (op-V00-01-01) - G4OpBoundaryProcess.hh and G4OpBoundaryProcess.cc have been modified (Fill NewMomentum/NewPolarization in DoAbsorption. These members need to be filled since DoIt calls aParticleChange.SetMomentumChange etc. upon return (thanks to: Clark McGrew)