Geant4 Cross Reference

Cross-Referencing   Geant4
Geant4/processes/optical/History

Version: [ ReleaseNotes ] [ 1.0 ] [ 1.1 ] [ 2.0 ] [ 3.0 ] [ 3.1 ] [ 3.2 ] [ 4.0 ] [ 4.0.p1 ] [ 4.0.p2 ] [ 4.1 ] [ 4.1.p1 ] [ 5.0 ] [ 5.0.p1 ] [ 5.1 ] [ 5.1.p1 ] [ 5.2 ] [ 5.2.p1 ] [ 5.2.p2 ] [ 6.0 ] [ 6.0.p1 ] [ 6.1 ] [ 6.2 ] [ 6.2.p1 ] [ 6.2.p2 ] [ 7.0 ] [ 7.0.p1 ] [ 7.1 ] [ 7.1.p1 ] [ 8.0 ] [ 8.0.p1 ] [ 8.1 ] [ 8.1.p1 ] [ 8.1.p2 ] [ 8.2 ] [ 8.2.p1 ] [ 8.3 ] [ 8.3.p1 ] [ 8.3.p2 ] [ 9.0 ] [ 9.0.p1 ] [ 9.0.p2 ] [ 9.1 ] [ 9.1.p1 ] [ 9.1.p2 ] [ 9.1.p3 ] [ 9.2 ] [ 9.2.p1 ] [ 9.2.p2 ] [ 9.2.p3 ] [ 9.2.p4 ] [ 9.3 ] [ 9.3.p1 ] [ 9.3.p2 ] [ 9.4 ] [ 9.4.p1 ] [ 9.4.p2 ] [ 9.4.p3 ] [ 9.4.p4 ] [ 9.5 ] [ 9.5.p1 ] [ 9.5.p2 ] [ 9.6 ] [ 9.6.p1 ] [ 9.6.p2 ] [ 9.6.p3 ] [ 9.6.p4 ] [ 10.0 ] [ 10.0.p1 ] [ 10.0.p2 ] [ 10.0.p3 ] [ 10.0.p4 ] [ 10.1 ] [ 10.1.p1 ] [ 10.1.p2 ] [ 10.1.p3 ] [ 10.2 ] [ 10.2.p1 ] [ 10.2.p2 ] [ 10.2.p3 ] [ 10.3 ] [ 10.3.p1 ] [ 10.3.p2 ] [ 10.3.p3 ] [ 10.4 ] [ 10.4.p1 ] [ 10.4.p2 ] [ 10.4.p3 ] [ 10.5 ] [ 10.5.p1 ] [ 10.6 ] [ 10.6.p1 ] [ 10.6.p2 ] [ 10.6.p3 ] [ 10.7 ] [ 10.7.p1 ] [ 10.7.p2 ] [ 10.7.p3 ] [ 10.7.p4 ] [ 11.0 ] [ 11.0.p1 ] [ 11.0.p2 ] [ 11.0.p3, ] [ 11.0.p4 ] [ 11.1 ] [ 11.1.1 ] [ 11.1.2 ] [ 11.1.3 ] [ 11.2 ] [ 11.2.1 ] [ 11.2.2 ] [ 11.3.0 ]

Diff markup

Differences between /processes/optical/History (Version 11.3.0) and /processes/optical/History (Version 9.3)


  1 # Category op 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                                                <<   6 
  7 ---------------------------------------------- <<   7                       Category History file
  8 ## 2024-07-18 Hans Wenzel (op-V11-02-01)       <<   8                       ---------------------
  9 - G4OpWLS2.cc: change SetProcessSubType from f <<   9 This file should be used by G4 developers and category coordinators
 10                                                <<  10 to briefly summarize all major modifications introduced in the code
 11 ## 2024-05-24 Daren Sawkey (op-V11-02-00)      <<  11 and keep track of all category-tags.
 12 - G4OpBoundaryProcess: Calculate Fresnel refle <<  12 It DOES NOT substitute the  CVS log-message one should put at every
 13   material property TRANSMITTANCE is specified <<  13 committal in the CVS repository !
 14   reflection/refraction now does not change wh <<  14 
 15   specified. Previously, if transmission of X% <<  15      ----------------------------------------------------------
 16   transmission of X% as expected, but the rati <<  16      * Reverse chronological order (last date on top), please *
 17   Fresnel reflection would be set to X%. Addre <<  17      ----------------------------------------------------------
 18                                                << 
 19 ## 2023-10-27 Daren Sawkey (op-V11-01-00)      << 
 20 - G4OpBoundaryProcess: verbosity of 0 silences << 
 21                                                << 
 22 ## 2022-11-23 Gabriele Cosmo (op-V11-00-08)    << 
 23 - Fixed compilation warnings for implicit type << 
 24                                                << 
 25 ## 2022-10-26 Daren Sawkey (op-V11-00-07)      << 
 26 - G4OpBoundaryProcess. Contribution of Laurie  << 
 27   Calculate reflection/refraction from thin fi << 
 28                                                << 
 29 ## 2022-10-18 Daren Sawkey (op-V11-00-06)      << 
 30 - G4OpBoundaryProcess: issue warning when step << 
 31   geometry tolerance, in which case boundary s << 
 32   Addresses bug 2510.                          << 
 33                                                << 
 34 ## 2022-04-27 Daren Sawkey (op-V11-00-05)      << 
 35 - many files: apply clang-tidy recommendations << 
 36   remove (void) function argument, don't check << 
 37   string comparisons.                          << 
 38                                                << 
 39 ## 2022-04-11 Daren Sawkey (op-V11-00-04)      << 
 40 - G4OpBoundaryProcess: Check for nullptr befor << 
 41                                                << 
 42 ## 2022-04-07 Daren Sawkey (op-V11-00-03)      << 
 43 - G4OpWLS2: fix incorrect call to set time pro << 
 44                                                << 
 45 ## 2022-01-18 Jonas Hahnfeld (op-V11-00-02)    << 
 46 - Prefer pointer to `const G4Material` if poss << 
 47                                                << 
 48 ## 2022-01-10 Daren Sawkey (op-V11-00-01)      << 
 49 - Remove G4lrint/G4lint to calculate angle bin << 
 50   when angle = 0. Addresses issue 116.         << 
 51                                                << 
 52 ## 2021-12-10 Ben Morgan (op-V11-00-00)        << 
 53 - Change to new Markdown History format        << 
 54                                                << 
 55 ---                                            << 
 56                                                << 
 57 # History entries prior to 11.0                << 
 58                                                << 
 59 21 Oct 21: D. Sawkey (op-V10-07-05)            << 
 60 - G4OpBoundaryProcess - rename variables: clas << 
 61   - make comparison to nullptr explicit        << 
 62   - remove unneeded intermediate variable      << 
 63   - refactor Davis LUT calculation             << 
 64                                                << 
 65 21 Oct 21: D. Sawkey (op-V10-07-04)            << 
 66 - G4OpBoundaryProcess - on StepTooSmall, propo << 
 67   material of post step point. Addresses bug 2 << 
 68                                                << 
 69 19 Oct 21: D. Sawkey (op-V10-07-03)            << 
 70 - all process classes - update G4OpticalParame << 
 71   parameters updated directly. Addresses bug 2 << 
 72                                                << 
 73 21 May 21: D. Sawkey (op-V10-07-02)            << 
 74 - G4OpBoundaryProcess: make some variables loc << 
 75   properly. Addresses bug 2364.                << 
 76                                                << 
 77 18 May 21: V. Ivanchenko (op-V10-07-01)        << 
 78 - G4OpRayleigh, G4OpWLS, G4OpWLS2 - use G4Phys << 
 79   of G4PhysicsOrderedFreeVector                << 
 80                                                << 
 81 16 Apr 21: Ben Morgan (op-V10-07-00)           << 
 82 - Migrate build to modular CMake API           << 
 83                                                << 
 84 04 Nov 20: D. Sawkey (op-V10-06-07)            << 
 85 - Fix reading Davis LUT out of bounds (address << 
 86                                                << 
 87 05 Oct 20: D. Sawkey (op-V10-06-06)            << 
 88 - All files: apply clang-format style guidelin << 
 89                                                << 
 90 30 Sept 20: D. Sawkey (op-V10-06-05)           << 
 91 - G4OpBoundaryProcess: increase geometry toler << 
 92                                                << 
 93 20 July 20: D. Sawkey (op-V10-06-04)           << 
 94 - G4OpRayleigh, G4OpAbsorption, G4OpMieHG, G4O << 
 95   G4OpticalParameters class to control simulat << 
 96                                                << 
 97 29 May 20: D. Sawkey (op-V10-06-03)            << 
 98 - all files - thorough cleaning; shorten tempo << 
 99   improve readability                          << 
100                                                << 
101 26 May 20: A. Howard (op-V10-06-02)            << 
102 - Add second wavelength shifting process - G4O << 
103                                                << 
104 15 Feb 20: V. Ivanchenko (op-V10-06-01)        << 
105 - G4OpRayleigh - avoid double deletion of prop << 
106                                                << 
107 21 Jan 20: D. Sawkey (op-V10-06-00)            << 
108 - use new ConstPropertyExists(G4int) rather th << 
109                                                << 
110 28 Oct 19: D. Sawkey (op-V10-05-02)            << 
111 -  G4OpWLS.cc - call G4VParticleChange->SetNum << 
112  - address bug 2200                            << 
113                                                << 
114 23 Aug 19: D. Sawkey (op-V10-05-01)            << 
115 - G4OpBoundaryProcess: fix Coverity reports    << 
116                                                << 
117 23 May 19: D. Sawkey (op-V10-05-00)            << 
118 - most files: format indentation, parentheses; << 
119     - some changes to if/else loops and variab << 
120                                                << 
121 25 May 18: D. Sawkey (op-V10-04-00)            << 
122 - G4OpMieHG: change GetProperty from string to << 
123                                                << 
124 11 September 17: S.Y. Jun (op-V10-03-03)       << 
125 - change material property keys by the enum ty << 
126   G4MaterialPropertiesIndex                    << 
127                                                << 
128 29 May 17: P. Gumplinger (op-V10-03-02)        << 
129 - This version of Mariele Stockhoff's DAVIS mo << 
130   reflection but also the capability of transm << 
131                                                << 
132 22 Mar 17: P. Gumplinger (op-V10-03-00/op-V10- << 
133 - add Mariele Stockhoff's DAVIS model          << 
134                                                << 
135 03 Oct 16: P. Gumplinger (op-V10-02-02)        << 
136 - act on bug report 1888                       << 
137                                                << 
138 07 Mar 16: P. Gumplinger (op-V10-02-01)        << 
139 - add flag for InvokeSD method call in G4OpBou << 
140                                                << 
141 16 Feb 16: P. Gumplinger (op-V10-02-00)        << 
142 - addresses bug report #1826, thanks to Tetsum << 
143   in DielectricLUT of G4OpBoundaryProcess      << 
144                                                << 
145  9 Oct 15: P. Gumplinger (op-V10-01-05)        << 
146 -  fix Coverity error in G4OpBoundaryProcess.c << 
147                                                << 
148 13 Aug 15: P. Gumplinger (op-V10-01-04)        << 
149 - G4OpBoundaryProcess.cc, G4OpRayleigh.cc - ch << 
150                                                << 
151 3 July 2015 P. Gumplinger (op-V10-01-03)       << 
152 - Allow for a real and imaginary part of the i << 
153   for Material1 in G4OpBoundaryProcess::GetRef << 
154   Bug report: #1762                            << 
155                                                << 
156 26 June 2015 P. Gumplinger (op-V10-01-02)      << 
157 - Correct the reflectivity calculation with co << 
158   include the index of refraction of the PreSt << 
159   Bug report: #1762                            << 
160                                                << 
161 23 March 2015 P. Gumplinger (op-V10-01-01)     << 
162 - change the calculation of NewPolarization in << 
163   divided by zero when the NewMomentumDirectio << 
164   OldPolarization. If the polarization is perp << 
165   plane, it will not change after the scatteri << 
166                                                << 
167 11 March 2015 P. Gumplinger (op-V10-01-00)     << 
168 - add aParticleChange.ProposeLocalEnergyDeposi << 
169   to G4OpAbsorption                            << 
170                                                << 
171 06 November 2014 P. Gumplinger (op-V10-00-10)  << 
172 - fix Coverity error in G4OpWLS.cc             << 
173                                                << 
174 27 October 2014 A. Dotti (op-V10-00-09)        << 
175 - Address problem #1675, this requires re engi << 
176   all UI commands related to optical processes << 
177   in G4OpticalPhysics.                         << 
178 - Co-working tags: xrays-V10-00-06, op-V10-00- << 
179                                                << 
180 17th October 2014 P. Gumplinger (op-V10-00-08) << 
181 - fix G4OpRayleigh.cc to actually set the temp << 
182   than Water                                   << 
183 - G4OpBoundaryProcess: Add a ConstProperty "SU << 
184   the reflectivity at dielectric_dielectric su << 
185   and calculated from:                         << 
186   exp(-pow((4*pi*theSurfaceroughness*Rindex1*c << 
187   for Rindex1 > Rindex2. Thanks to M. van Dijk << 
188                                                << 
189 16th October 2014 P. Gumplinger (op-V10-00-07) << 
190 - previous tag was committed only to /include  << 
191                                                << 
192 10th October 2014 P. Gumplinger (op-V10-00-06) << 
193 - G4OpRayleigh Process: This version calculate << 
194   length for more materials than just Water (a << 
195   is kept). To do this the user would need to  << 
196   ISOTHERMAL_COMPRESSIBILITY as a material pro << 
197   RS_SCALE_LENGTH (useful for testing). Code c << 
198   (Queen Mary University of London).           << 
199                                                << 
200 9th October 2014 P. Gumplinger (op-V10-00-05)  << 
201 - G4OpBoundaryProcess allow for a Transmittanc << 
202   Absorption on dielectric_dielectric and diel << 
203                                                << 
204 10th June 2014 P. Gumplinger (op-V10-00-04)    << 
205 - G4OpWLS always rebuild theIntegralTable in B << 
206 - G4OpRayleigh always rebuild thePhysicsTable  << 
207 - remove the private method BuildThePhysicsTab << 
208                                                << 
209 6th June 2014 P. Gumplinger (op-V10-00-03)     << 
210 - implement the full UNIFIED reflectivity prob << 
211   dichroic surface reflects                    << 
212                                                << 
213 23rd December 2013 M. Asai (op-V10-00-02)      << 
214 - Additional protection.                       << 
215                                                << 
216 22nd December 2013 M. Asai (op-V10-00-01)      << 
217 - move construction of WLSTimeGeneratorProfile << 
218                                                << 
219 18th December 2013 P. Gumplinger (op-V10-00-00 << 
220 - make WLSTimeGeneratorProfile and UseTimeProf << 
221                                                << 
222 26th August 2013 P. Gumplinger (op-V09-06-06)  << 
223 - move theStatus assignment for Dichroic where << 
224 - made the necessary and required modification << 
225   work in situations with parallel worlds      << 
226 - G4OpBoundaryProcess will now invoke the Proc << 
227   detector associated with the PostStepPoint v << 
228   detected at the entrance boundary            << 
229                                                << 
230 14th June 2013 P. Gumplinger (op-V09-06-05)    << 
231 - fix coverity errors in G4OpBoundaryProcess   << 
232                                                << 
233 13th June 2013 P.Gumplinger (op-V09-06-04)     << 
234 - G4OpWLS and G4OpRayleigh -  added BuildPhysi << 
235   as before but at the moment when material li << 
236                                                << 
237 6th June 2013 P.Gumplinger (op-V09-06-03)      << 
238 - comment out G4cout in G4OpBoundaryProcess::D << 
239                                                << 
240 5th June 2013 P.Gumplinger (op-V09-06-02)      << 
241 - fix compilation error in G4OpWLS             << 
242                                                << 
243 5th June 2013 P.Gumplinger (op-V09-06-01)      << 
244 - Require that WLS photons have a longer wavel << 
245   is being absorbed/shifted. Please, see bug r << 
246   http://hypernews.slac.stanford.edu/HyperNews << 
247   Thanks to Ben Loer (FNAL)                    << 
248 - Add the capability of simulating the transmi << 
249                                                << 
250   In this first implementation, the photon is  << 
251   without changing direction. Surface->SetType << 
252   You must also supply a 2D data file with the << 
253   4     #ofWavelength-bins     #ofIncidentAngl << 
254   List of Wavelength-bin values in nm (i)      << 
255   List of IncidentAngle-bin values in deg (j)  << 
256   Transmittance[1,1],..,Transmittance[i,1],.., << 
257   .....................,Transmittance[i,j],... << 
258   Transmittance[1,m],..,Transmittance[i,m],.., << 
259                                                << 
260   and: setenv G4DICHROICDATA dichroic.data     << 
261                                                << 
262 30th Apr.2013 P.Gumplinger (op-V09-06-00)      << 
263               replace CLHEP::Rand*::shoot.. wi << 
264               in G4OpBoundaryProcess           << 
265                                                << 
266 19th Oct.2012 G.Cosmo (op-V09-05-12)           << 
267               Corrected debug flag in G4OpBoun << 
268               G4OPTICAL_DEBUG, as the one defi << 
269                                                << 
270 17th Oct.2012 J.Apostolakis (op-V09-05-11)     << 
271         Avoid the 'new' Event-abort exception, << 
272                  it with G4DEBUG_OPTICAL_PROC  << 
273               By default, the normal is now fl << 
274                  (as Geant4 9.5 and 9.5 patch  << 
275                                                << 
276  5th Oct.2012 J.Apostolakis (op-V09-05-10)     << 
277               G4OpBoundaryProcess now uses Glo << 
278                ( same code as op-V09-05-06 )   << 
279                                                << 
280 ********* G4OpBoundaryProcess uses the *Global << 
281                                                << 
282  5th Oct.2012 J.Apostolakis (op-V09-05-09)     << 
283               Retagged to enable testing - sam << 
284  4th Oct.2012 J.Apostolakis (op-V09-05-07)     << 
285               Added information in printout of << 
286               momentum and exiting normal.     << 
287                                                << 
288 03rd Oct.2012 P.Gumplinger (op-V09-05-05a)     << 
289               add G4Exception when theGlobalNo << 
290               wrong direction in G4OpBoundaryP << 
291                                                << 
292 10th Jul.2012 G.Cosmo (op-V09-05-05)           << 
293               Explicitly use inclusion of head << 
294               physical constants, in plan to r << 
295               globals.hh.                      << 
296                                                << 
297 20th Jun 2012 P.Gumplinger (op-V09-05-04)      << 
298               remove methods: SetModel/GetMode << 
299                                                << 
300 7th  Jun 2012 G.Cosmo (op-V09-05-03)           << 
301               Fixed trivial cases of variable  << 
302               and G4OpWLS.cc.                  << 
303                                                << 
304 17th May 2012 P.Gumplinger (op-V09-05-02)      << 
305               G4OpWLS.hh, G4OpRayleigh.hh, G4O << 
306               G4OpMieHG.hh and G4OpBoundaryPro << 
307               more fixing Coverity warnings    << 
308                                                << 
309 16th May 2012 P.Gumplinger (op-V09-05-01)      << 
310               G4OpBoundaryProcess.cc - trying  << 
311                                                << 
312 24th Jan 2012 P.Gumplinger (op-V09-05-00)      << 
313               G4OpBoundaryProcess.cc - solves  << 
314               call aParticleChange.ProposeVelo << 
315               at every invocation of DoIt; for << 
316               finalVelocity locally from Mater << 
317               GetMaterialPropertiesTable()->Ge << 
318                                                << 
319 28th Oct 2011 P.Gumplinger (op-V09-04-03)      << 
320               add logic for ProposeVelocity to << 
321                                                << 
322 13th Oct 2011 P.Gumplinger (op-V09-04-02)      << 
323               modify to work with materials-V0 << 
324                                                << 
325 6th  Oct 2011 P.Gumplinger (op-V09-04-01)      << 
326               update G4Exception syntax in G4O << 
327               G4OpBoundaryProcess.cc           << 
328                                                << 
329 14th Jun 2011 Peter Gumplinger (op-V09-04-00)  << 
330               A dielectric_dielectric surface  << 
331               dependent property "TRANSMITTANC << 
332               for a surface it overwrites the  << 
333               This allows the simulation of an << 
334               Thanks to Evgueni Goudzovski (CE << 
335                                                << 
336 29th Oct 2010 Peter Gumplinger (op-V09-03-06)  << 
337               Fix minor Coverty Errors         << 
338                                                << 
339 22th Oct 2010 Peter Gumplinger (op-V09-03-05)  << 
340               Add Mie Scattering of Optical Ph << 
341               Thanks to Xin Qian (Kellogg Radi << 
342               Based on work from Vlasios Vasil << 
343               Henyey-Greenstein phase function << 
344                                                << 
345 21th Oct 2010 Peter Gumplinger (op-V09-03-04)  << 
346               Fix Bug 207; Thanks to Xin Qian  << 
347                                                << 
348 14th Jun 2010 Peter Gumplinger (op-V09-03-03)  << 
349               ProposeLocalEnergyDeposit(thePho << 
350               photon is fStopAndKill because o << 
351               scoring when a photon encounters << 
352               optical medium (indirect user re << 
353               http://hypernews.slac.stanford.e << 
354                                                << 
355 18th May 2010 Peter Gumplinger (op-V09-03-02)  << 
356               fix a bug reported at:           << 
357               http://hypernews.slac.stanford.e << 
358               theFacetNormal was not sampled f << 
359               in DielectricDielectric method o << 
360                                                << 
361 19th Apr 2010 Peter Gumplinger (op-V09-03-01)  << 
362               fix Problem report #1114 in that << 
363               surfaces theReflectivity is not  << 
364               While doing the fix I also compl << 
365               code in the case of type == diel << 
366                                                << 
367 19th Jan 2010 Peter Gumplinger (op-V09-03-00)  << 
368               assign PropertyPointers to NULL  << 
369               PostStepDoIt, addresses bug repo << 
370                                                    18 
371 19th Nov 2009 Peter Gumplinger (op-V09-02-06)      19 19th Nov 2009 Peter Gumplinger (op-V09-02-06)
372               change the code such that the LU     20               change the code such that the LUT are now read in and kept
373               by G4OpticalSurface and not G4Op     21               by G4OpticalSurface and not G4OpBoundaryProcess, reordering
374               of enumeration and set theStatus     22               of enumeration and set theStatus in DielectricLUT.
375                                                    23 
376 11th Nov 2009 Peter Gumplinger (op-V09-02-05)      24 11th Nov 2009 Peter Gumplinger (op-V09-02-05)
377               add capability of simulating sur     25               add capability of simulating surface reflections
378               with Look-Up-Tables (LUT) contai     26               with Look-Up-Tables (LUT) containing measured
379               optical reflectance for a variet     27               optical reflectance for a variety of surface
380               treatments - Thanks to Martin Ja     28               treatments - Thanks to Martin Janecek and
381               William Moses (Lawrence Berkeley     29               William Moses (Lawrence Berkeley National Lab.)
382                                                    30 
383 9th  Nov 2009 Peter Gumplinger (op-V09-02-04)      31 9th  Nov 2009 Peter Gumplinger (op-V09-02-04)
384               G4OpBoundary: initialze theRefle     32               G4OpBoundary: initialze theReflectivity and theEfficiency
385               at the beginning of the PostStep     33               at the beginning of the PostStepDoIt; add method
386               BoundaryProcessVerbose which wil     34               BoundaryProcessVerbose which will now print the process
387               status for every call to PostSte     35               status for every call to PostStepDoIt.
388                                                    36 
389 5th  Nov 2009 Peter Gumplinger (op-V09-02-03)      37 5th  Nov 2009 Peter Gumplinger (op-V09-02-03)
390               G4OpBoundary::PostStepDoIt - all     38               G4OpBoundary::PostStepDoIt - all dielectric_dielectric
391               surfaces may now have a reflecti     39               surfaces may now have a reflectivity <1; not only
392               'frontpainted' as was the case i     40               'frontpainted' as was the case in the past.
393                                                    41 
394 6th  May 2009 Peter Gumplinger (op-V09-02-02)      42 6th  May 2009 Peter Gumplinger (op-V09-02-02)
395               G4OpBoundary::PostStepDoIt now t     43               G4OpBoundary::PostStepDoIt now throws an G4Exception
396               EventMustBeAborted when an inval     44               EventMustBeAborted when an invalid surface normal is returnd;
397               addresses bug report #1060           45               addresses bug report #1060
398                                                    46 
399 23th Mar 2009 Peter Gumplinger (op-V09-02-01)      47 23th Mar 2009 Peter Gumplinger (op-V09-02-01)
400               for complex index of refraction:     48               for complex index of refraction: (1)resample the reflectivity
401               every time in the do-while of Di     49               every time in the do-while of DielectricMetal, but don't
402               re-calculate theFacetNormal (whi     50               re-calculate theFacetNormal (which has already been chosen
403               in CalculateReflectivity), also      51               in CalculateReflectivity), also (2) avoid an infinite loop by
404               resetting iTE and iTM inside the     52               resetting iTE and iTM inside the do-while of GetReflectivity;
405               both are bug-fixes.                  53               both are bug-fixes.
406                                                    54 
407 14th Jan 2009 Peter Gumplinger (op-V09-02-00)      55 14th Jan 2009 Peter Gumplinger (op-V09-02-00)
408               respond to bug report 1040 by fi <<  56               respond to bug report 1040 by fixing G4OpBoundaryProcess.cc 
409                                                    57 
410 07th Nov 2008 Peter Gumplinger (op-V09-01-09)      58 07th Nov 2008 Peter Gumplinger (op-V09-01-09)
411               use new global/HEPRandom's G4Ran     59               use new global/HEPRandom's G4RandomTools.hh
412                                                    60 
413 24th Oct 2008 Peter Gumplinger (op-V09-01-08)      61 24th Oct 2008 Peter Gumplinger (op-V09-01-08)
414               use local G4OpProcessSubType.hh      62               use local G4OpProcessSubType.hh
415                                                    63 
416 21st Oct 2008 Peter Gumplinger (op-V09-01-07)      64 21st Oct 2008 Peter Gumplinger (op-V09-01-07)
417               add SetProcessSubType for G4OpAb     65               add SetProcessSubType for G4OpAbsorption, G4OpBoundaryProcess,
418               G4OpRayleigh and G4OpWLS             66               G4OpRayleigh and G4OpWLS
419                                                    67 
420 18th Aug 2008 Peter Gumplinger (op-V09-01-06)      68 18th Aug 2008 Peter Gumplinger (op-V09-01-06)
421               use signatures G4SwapPtr(T*& and     69               use signatures G4SwapPtr(T*& and G4SwapObj(T*
422               in G4OpBoundaryProcess - to work     70               in G4OpBoundaryProcess - to work with global-V09-01-12
423                                                    71 
424 15th Aug 2008 Peter Gumplinger (op-V09-01-05)      72 15th Aug 2008 Peter Gumplinger (op-V09-01-05)
425               replaced G4SwapPtr with G4SwapOb     73               replaced G4SwapPtr with G4SwapObj for Rindex
426               in G4OpBoundaryProcess - serious     74               in G4OpBoundaryProcess - serious error since op-V09-01-00
427               (see also Problem Report 1020)       75               (see also Problem Report 1020)
428                                                    76 
429 4th July 2008 Peter Gumplinger (op-V09-01-04)      77 4th July 2008 Peter Gumplinger (op-V09-01-04)
430               In G4OpWLS now SetTouchableHandl     78               In G4OpWLS now SetTouchableHandle(aTrack.GetTouchableHandle())
431               for the secondaries in the DoIt.     79               for the secondaries in the DoIt.
432               In G4OpBoundaryProcess.cc initia     80               In G4OpBoundaryProcess.cc initialize the pointer:
433               G4LogicalSurface* Surface = NULL     81               G4LogicalSurface* Surface = NULL;
434                                                    82 
435 27th June 2008 Peter Gumplinger (op-V09-01-03)     83 27th June 2008 Peter Gumplinger (op-V09-01-03)
436                In G4OpBoundaryProcess changed      84                In G4OpBoundaryProcess changed unsafe cast
437                (G4OpticalSurface*) to dynamic_     85                (G4OpticalSurface*) to dynamic_cast<G4OpticalSurface*>
438                following suggestion in bug-rep     86                following suggestion in bug-report #1014
439                                                    87 
440 6th June 2008 Peter Gumplinger (op-V09-01-02)      88 6th June 2008 Peter Gumplinger (op-V09-01-02)
441               G4OpRayleigh, G4OpWLS = trivial  <<  89               G4OpRayleigh, G4OpWLS = trivial name changes: 
442               momentum->energy, momenta->energ     90               momentum->energy, momenta->energies
443                                                    91 
444 5th June 2008 Peter Gumplinger (op-V09-01-00)      92 5th June 2008 Peter Gumplinger (op-V09-01-00)
445               G4OpBoundaryProcess: Removed G4S     93               G4OpBoundaryProcess: Removed G4Swap methods - replaced by
446               G4SwapPtr. Removed G4IsotropicRa     94               G4SwapPtr. Removed G4IsotropicRand method - replaced by
447               G4RandomDirection. Add commented     95               G4RandomDirection. Add commented code to change absorption
448               at a dielectric/metal boundary i     96               at a dielectric/metal boundary into transmission.
449                                                    97 
450 29th Oct 2007 Peter Gumplinger (op-V09-00-01)      98 29th Oct 2007 Peter Gumplinger (op-V09-00-01)
451               In G4OpWLS.cc allow for the Mean     99               In G4OpWLS.cc allow for the MeanNumberOfPhotons to be
452               different from one, in case the  << 100               different from one, in case the constant property: 
453               WLSMEANNUMBERPHOTONS is provided << 101               WLSMEANNUMBERPHOTONS is provided and, if it is, sample 
454               NumPhotons with G4Poisson.          102               NumPhotons with G4Poisson.
455                                                   103 
456 15th Oct 2007 Peter Gumplinger (op-V09-00-00)     104 15th Oct 2007 Peter Gumplinger (op-V09-00-00)
457               Add capability of calculating th    105               Add capability of calculating the reflectivity off a metal
458               surface by way of a complex inde    106               surface by way of a complex index of refraction.
459               Thanks to Sehwook Lee and John H    107               Thanks to Sehwook Lee and John Hauptman
460               (Dept. of Physics - Iowa State U    108               (Dept. of Physics - Iowa State Univ.)
461                                                   109 
462 11th May 2007 Gabriele Cosmo (op-V08-03-00)       110 11th May 2007 Gabriele Cosmo (op-V08-03-00)
463               Use call to G4GeometryTolerance     111               Use call to G4GeometryTolerance instead of kCarTolerance in
464               G4OpBoundaryProcess.                112               G4OpBoundaryProcess.
465               Requires tag "global-V08-03-00"     113               Requires tag "global-V08-03-00" and related tag set.
466                                                   114 
467 11th May 2006 Peter Gumplinger (op-V08-00-01)     115 11th May 2006 Peter Gumplinger (op-V08-00-01)
468               thanks to Andreia Trindade and P    116               thanks to Andreia Trindade and Pedro Rodrigues, the WLS time
469               delay can now be a delta functio    117               delay can now be a delta function or exponential. New classes:
470               G4VWLSTimeGeneratorProfile, G4WL    118               G4VWLSTimeGeneratorProfile, G4WLSTimeGeneratorProfileDelta and
471               G4WLSTimeGeneratorProfileExponen    119               G4WLSTimeGeneratorProfileExponential
472                                                   120 
473 17th Feb 2006 Peter Gumplinger (op-V08-00-00)     121 17th Feb 2006 Peter Gumplinger (op-V08-00-00)
474               fix default behaviour for unifie    122               fix default behaviour for unified model of dielectric_metal
475                                                   123 
476 28th July 2005 Peter Gumplinger (op-V07-01-00)    124 28th July 2005 Peter Gumplinger (op-V07-01-00)
477                add G4ProcessType to all constr    125                add G4ProcessType to all constructors
478                                                   126 
479 10th December 2004 Gabriele Cosmo (op-V06-02-0    127 10th December 2004 Gabriele Cosmo (op-V06-02-06)
480                 replaced M_PI with CLHEP's pi     128                 replaced M_PI with CLHEP's pi
481                                                   129 
482 02nd December 2004 Peter Gumplinger (op-V06-02    130 02nd December 2004 Peter Gumplinger (op-V06-02-05)
483                 migration to cmath                131                 migration to cmath
484                                                   132 
485 28th October 2004 Gabriele Cosmo (op-V06-02-04    133 28th October 2004 Gabriele Cosmo (op-V06-02-04)
486                 Added G4OPTICAL_DEBUG flag for    134                 Added G4OPTICAL_DEBUG flag for debug printout.
487                                                   135 
488 18th October 2004 Peter Gumplinger (op-V06-02-    136 18th October 2004 Peter Gumplinger (op-V06-02-03)
489                 Fix bug in DielectricMetal onl    137                 Fix bug in DielectricMetal only GetFacetNormal for
490                 LobeReflection.                   138                 LobeReflection.
491                 Migrate files to 7.0 ParticleC    139                 Migrate files to 7.0 ParticleChange method names:
492                 G4OpBoundaryProcess.hh, G4OpBo    140                 G4OpBoundaryProcess.hh, G4OpBoundaryProcess.cc,
493                 G4OpWLS.cc, G4OpRayleigh.cc, G    141                 G4OpWLS.cc, G4OpRayleigh.cc, G4OpAbsorption.cc
494                                                   142 
495 27th September 2004 Peter Gumplinger (op-V06-0    143 27th September 2004 Peter Gumplinger (op-V06-02-02)
496                 Fix bug in G4PlaneVectorRand a    144                 Fix bug in G4PlaneVectorRand and resample
497                 theFacetNormal for LobeReflect    145                 theFacetNormal for LobeReflection in DielectricMetal
498                                                   146 
499 12th August 2004 Peter Gumplinger (op-V06-02-0    147 12th August 2004 Peter Gumplinger (op-V06-02-01)
500                 In G4OpBoundaryProcess.cc: use << 148                 In G4OpBoundaryProcess.cc: use GetMaterial from 
501                 G4StepPoint directly; apply/sa << 149                 G4StepPoint directly; apply/sample reflectivity and 
502                 Unified model reflection param    150                 Unified model reflection parameters only once even
503                 for rough dielectric/metal sur    151                 for rough dielectric/metal surfaces - i.e. not again
504                 even when reflected ray still     152                 even when reflected ray still points toward the
505                 surface - fixes problem report    153                 surface - fixes problem report 654.
506                                                   154 
507 05th August 2004 Peter Gumplinger (op-V06-02-0    155 05th August 2004 Peter Gumplinger (op-V06-02-00)
508                 Allow for unified model reflec << 156                 Allow for unified model reflectivity parameters 
509                 to also work in case of dielec    157                 to also work in case of dielectric_metal surfaces;
510                 addresses in part problem repo    158                 addresses in part problem report 654.
511                                                   159 
512 26th April 2004 Peter Gumplinger (op-V06-01-01    160 26th April 2004 Peter Gumplinger (op-V06-01-01)
513                 Protect against NULL pointers     161                 Protect against NULL pointers in G4OpRayleigh.
514                 Do not overwrite Rayleigh scat    162                 Do not overwrite Rayleigh scattering length
515                 for the material named 'Water'    163                 for the material named 'Water' if it has been
516                 specified by the user through     164                 specified by the user through a call to
517                 AddProperty("RAYLEIGH"            165                 AddProperty("RAYLEIGH"
518                                                   166 
519 21st April 2004 Peter Gumplinger (op-V06-01-00    167 21st April 2004 Peter Gumplinger (op-V06-01-00)
520                 Assign class members to defaul    168                 Assign class members to defaults in DoIt.
521                                                   169 
522 17th March 2004 Peter Gumplinger (op-V06-00-03    170 17th March 2004 Peter Gumplinger (op-V06-00-03)
523                 Assign all class members in co    171                 Assign all class members in constructor.
524                                                   172 
525 24th February 2004 Gabriele Cosmo (op-V06-00-0    173 24th February 2004 Gabriele Cosmo (op-V06-00-02)
526                 Added EOL at end of file in G4    174                 Added EOL at end of file in G4OpBoundaryProcess.cc to clear
527                 compilation warning in Linux-g    175                 compilation warning in Linux-g++.
528                                                   176 
529 19th February 2004 Peter Gumplinger (op-V06-00    177 19th February 2004 Peter Gumplinger (op-V06-00-01)
530                 Add process status: NotAtBound << 178                 Add process status: NotAtBoundary, SameMaterial, 
531                                     StepTooSma    179                                     StepTooSmall, NoRINDEX
532                 Allow for a skin-surface betwe    180                 Allow for a skin-surface between mother and daughter
533                 volumes, with the daughter ski    181                 volumes, with the daughter skin taking precedence.
534                                                   182 
535 2nd February 2004 Peter Gumplinger (op-V06-00-    183 2nd February 2004 Peter Gumplinger (op-V06-00-00)
536                 Set theStatus = Undefined at s    184                 Set theStatus = Undefined at start of DoIt
537                 Replace usage of 0 with NULL.     185                 Replace usage of 0 with NULL.
538                                                << 186  
539 1st December 2003 Peter Gumplinger (op-V05-02-    187 1st December 2003 Peter Gumplinger (op-V05-02-02)
540                 G4OpBoundaryProcess.cc: modifi    188                 G4OpBoundaryProcess.cc: modified to adopt G4SurfaceProperty.
541                 Requires tag "materials-V05-02    189                 Requires tag "materials-V05-02-00".
542     Replaced usage of NULL with 0.                190     Replaced usage of NULL with 0.
543                                                   191 
544 4th October 2003 Gabriele Cosmo (op-V05-02-01)    192 4th October 2003 Gabriele Cosmo (op-V05-02-01)
545                 Modified GNUmakefile: added de    193                 Modified GNUmakefile: added dependency to new module
546                 "geometry/navigation".            194                 "geometry/navigation".
547                 Coworks with "geometry-V05-02-    195                 Coworks with "geometry-V05-02-00" and "digits_hits-V05-02-00".
548                                                   196 
549 23rd September 2003 Peter Gumplinger (op-V05-0    197 23rd September 2003 Peter Gumplinger (op-V05-02-00)
550                 Add WLS (wavelength shifting)     198                 Add WLS (wavelength shifting) process
551 15th March 2003 Peter Gumplinger (op-V05-00-01    199 15th March 2003 Peter Gumplinger (op-V05-00-01)
552                 Change logic for assigning of     200                 Change logic for assigning of Rindex2; bug report #444
553 4th February 2003 Peter Gumplinger (op-V05-00-    201 4th February 2003 Peter Gumplinger (op-V05-00-00)
554                 Fix calculation of polarizatio    202                 Fix calculation of polarization for perpendicular
555                 incidence when Rindex1 > Rinde << 203                 incidence when Rindex1 > Rindex2; bug report #442 
556 12th November 2002 Peter Gumplinger (op-V04-01    204 12th November 2002 Peter Gumplinger (op-V04-01-01)
557                 Fix calculation of polarizatio    205                 Fix calculation of polarization on dielectric dielectric
558                 interfaces; bug report #427       206                 interfaces; bug report #427
559 28th March 2002 Peter Gumplinger (op-V04-00-01    207 28th March 2002 Peter Gumplinger (op-V04-00-01)
560                 Add public inline method GetSt << 208                 Add public inline method GetStatus and make enum 
561                 G4OpBoundaryProcessStatus publ    209                 G4OpBoundaryProcessStatus public in G4OpBoundaryProcess.hh
562 18th October 2001 Peter Gumplinger (op-V03-02-    210 18th October 2001 Peter Gumplinger (op-V03-02-01)
563               Avoid warnings on Linux (gcc-2.9    211               Avoid warnings on Linux (gcc-2.95.2) compiler
564 - G4OpRayleigh.cc: remove unused variable 'aMa    212 - G4OpRayleigh.cc: remove unused variable 'aMaterial' in PostStepDoIt and
565                    'no_unit' in RayleighAttenu    213                    'no_unit' in RayleighAttenuationLengthGenerator
566 - G4OpBoundaryProcess.cc: moved definition of     214 - G4OpBoundaryProcess.cc: moved definition of E2_perp, E2_parl, E2_total
567                           outside IF-statement    215                           outside IF-statement
568 31st August 2001 Peter Gumplinger (op-V03-02-0    216 31st August 2001 Peter Gumplinger (op-V03-02-00)
569 - G4OpRayleigh.hh, G4OpBoundary.hh and G4OpAbs    217 - G4OpRayleigh.hh, G4OpBoundary.hh and G4OpAbsorption.hh: changed processName
570                    to 'OpRayleigh', 'OpBoundar    218                    to 'OpRayleigh', 'OpBoundary' and 'OpAbsorption' respectively
571                                                   219 
572 30th January 2001 Peter Gumplinger (op-V03-00-    220 30th January 2001 Peter Gumplinger (op-V03-00-05)
573 - G4OpRayleigh.cc: allow for positiv and negat    221 - G4OpRayleigh.cc: allow for positiv and negative CosTheta and force the
574                    new momentum direction to b    222                    new momentum direction to be in the same plane as the
575                    new and old polarization ve    223                    new and old polarization vectors
576                    still bug report: 207          224                    still bug report: 207
577                                                   225 
578 29th January 2001 Peter Gumplinger (op-V03-00-    226 29th January 2001 Peter Gumplinger (op-V03-00-04)
579 - G4OpRayleigh.cc: fix calculation of SinTheta    227 - G4OpRayleigh.cc: fix calculation of SinTheta from CosTheta
580                    bug report: 207                228                    bug report: 207
581                                                   229 
582 23rd January 2001 Peter Gumplinger (op-V03-00-    230 23rd January 2001 Peter Gumplinger (op-V03-00-02)
583 - G4OpRayleigh.cc: Allow for Rayleigh scatteri << 231 - G4OpRayleigh.cc: Allow for Rayleigh scattering length to be defined for 
584            arbitrary material through the use     232            arbitrary material through the use of G4MaterialPropertyTable.
585                                                   233 
586 5th October 2000  Peter Gumplinger (op-V02-00-    234 5th October 2000  Peter Gumplinger (op-V02-00-02)
587 - G4OpAbsorption.cc: Comment out warning - No     235 - G4OpAbsorption.cc: Comment out warning - No Absorption length specified.
588                                                   236 
589 3rd August 2000  Gabriele Cosmo (op-V02-00-00r    237 3rd August 2000  Gabriele Cosmo (op-V02-00-00r)
590 - G4OpBoundaryProcess.cc: changed RandGauss to    238 - G4OpBoundaryProcess.cc: changed RandGauss to G4RandGauss to fix problem
591   of events' reproducibility.                     239   of events' reproducibility.
592 - Syncronized with HEAD (only CVS headers chan    240 - Syncronized with HEAD (only CVS headers changes).
593                                                   241 
594 21th October 1999  Peter Gumplinger (op-V00-01    242 21th October 1999  Peter Gumplinger (op-V00-01-01)
595 - G4OpBoundaryProcess.hh and G4OpBoundaryProce    243 - G4OpBoundaryProcess.hh and G4OpBoundaryProcess.cc have been modified
596   (Fill NewMomentum/NewPolarization in DoAbsor    244   (Fill NewMomentum/NewPolarization in DoAbsorption. These members need
597   to be filled since DoIt calls aParticleChang    245   to be filled since DoIt calls aParticleChange.SetMomentumChange etc.
598   upon return (thanks to: Clark McGrew)           246   upon return (thanks to: Clark McGrew)