Files
geant4/source/processes/optical/History
T
2016-06-09 17:01:34 +02:00

352 lines
16 KiB
Plaintext

-------------------------------------------------------------------
=========================================================
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 *
----------------------------------------------------------
19th Oct.2012 G.Cosmo (op-V09-05-12)
Corrected debug flag in G4OpBoundaryProcess.cc to be
G4OPTICAL_DEBUG, as the one defined in GNUmakefile...
17th Oct.2012 J.Apostolakis (op-V09-05-11)
Avoid the 'new' Event-abort exception, by 'protecting'
it with G4DEBUG_OPTICAL_PROC flag.
By default, the normal is now flipped instead
(as Geant4 9.5 and 9.5 patch 1 worked.)
5th Oct.2012 J.Apostolakis (op-V09-05-10)
G4OpBoundaryProcess now uses GlobalExitNormal()
( same code as op-V09-05-06 )
********* G4OpBoundaryProcess uses the *Global* Normal ****
5th Oct.2012 J.Apostolakis (op-V09-05-09)
Retagged to enable testing - same code as -07 below.
4th Oct.2012 J.Apostolakis (op-V09-05-07)
Added information in printout of Exception on direction of
momentum and exiting normal.
03rd Oct.2012 P.Gumplinger (op-V09-05-05a)
add G4Exception when theGlobalNormal points the
wrong direction in G4OpBoundaryProcess
10th Jul.2012 G.Cosmo (op-V09-05-05)
Explicitly use inclusion of headers for system of units and
physical constants, in plan to remove implicit inclusion from
globals.hh.
20th Jun 2012 P.Gumplinger (op-V09-05-04)
remove methods: SetModel/GetModel from G4OpBoundaryProcess class
7th Jun 2012 G.Cosmo (op-V09-05-03)
Fixed trivial cases of variable shadowing in G4OpMieHG.cc
and G4OpWLS.cc.
17th May 2012 P.Gumplinger (op-V09-05-02)
G4OpWLS.hh, G4OpRayleigh.hh, G4OpAbsorption.hh,
G4OpMieHG.hh and G4OpBoundaryProcess.hh -
more fixing Coverity warnings
16th May 2012 P.Gumplinger (op-V09-05-01)
G4OpBoundaryProcess.cc - trying to fix Coverity warnings
24th Jan 2012 P.Gumplinger (op-V09-05-00)
G4OpBoundaryProcess.cc - solves Problem #1275
call aParticleChange.ProposeVelocity(aTrack.GetVelocity())
at every invocation of DoIt; for FresnelRefraction calculate
finalVelocity locally from Material2->
GetMaterialPropertiesTable()->GetProperty("GROUPVEL")
28th Oct 2011 P.Gumplinger (op-V09-04-03)
add logic for ProposeVelocity to G4OpBoundaryProcess::PostStepDoIt
13th Oct 2011 P.Gumplinger (op-V09-04-02)
modify to work with materials-V09-04-14
6th Oct 2011 P.Gumplinger (op-V09-04-01)
update G4Exception syntax in G4OpWLS.cc and
G4OpBoundaryProcess.cc
14th Jun 2011 Peter Gumplinger (op-V09-04-00)
A dielectric_dielectric surface may now have a wavelength
dependent property "TRANSMITTANCE". If this is specified
for a surface it overwrites the Snell's law's probability.
This allows the simulation of anti-reflective coatings.
Thanks to Evgueni Goudzovski (CERN) for the idea.
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<G4OpticalSurface*>
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)