|
| 1 | + |
| 2 | + Geant4 10.1 - patch-03 Release Notes |
| 3 | + ------------------------------------ |
| 4 | + |
| 5 | + 5 February 2016 |
| 6 | + |
| 7 | +List of fixes included in this public patch since the public release 10.1.p02: |
| 8 | + |
| 9 | + o Configuration: |
| 10 | + ------------- |
| 11 | + + CMake: |
| 12 | + o Updated Apple Clang detection to work on Xcode-7. |
| 13 | + o Always use libc++ with Apple Clang so that std-supporting library is |
| 14 | + used for C++11 mode on older Mac systems where libstdc++ is the default. |
| 15 | + o Updated std-flag setting rules. |
| 16 | + + GNUMake: |
| 17 | + o Updated X11 settings in MacOS platform. |
| 18 | + o Added settings for C++ standards in platform specific scripts. |
| 19 | + |
| 20 | + o Analysis: |
| 21 | + -------- |
| 22 | + + Fixed G4Analysis::Tokenize() which was failing when processsing a string |
| 23 | + containing opening double quota without a closing one. |
| 24 | + + Fixed handling ntuples created in MT mode on master thread |
| 25 | + This fixes the problem reported in hypernews (#459) and the problem |
| 26 | + of deleting non-empty Root file containing only ntuples. |
| 27 | + |
| 28 | + o Geometry: |
| 29 | + -------- |
| 30 | + + divisions: |
| 31 | + o Fix for use of rotation matrix in G4VDivisionParameterisation in |
| 32 | + MT-mode; use thread-local pointer for rotation matrix as member of the |
| 33 | + class G4VDivisionParameterisation and set it to suto-delete. |
| 34 | + Removed unnecessary thread-local verbose flag. |
| 35 | + Addressing problem reports #1743 and #1758. |
| 36 | + o Set as unsupported divisions of polycone and polyhedra in MT-mode. |
| 37 | + + magneticfield: |
| 38 | + o Added check in G4ChordFinder against number of iterations in |
| 39 | + FindNextChord(), to identify potential cases of lack of convergence. |
| 40 | + o Better diagnostics text in case of errors in G4FieldTrack and |
| 41 | + G4UniformMagField. |
| 42 | + o Added explanation comment in G4MagHelicalSteper. |
| 43 | + + navigation: |
| 44 | + o G4MultiLevelLocator::EstimateIntersectionPoint(): fix for logic error |
| 45 | + in keeping consistent candidate intersection. Copes with case that a |
| 46 | + candidate intersection is not found in the next segment (typically in |
| 47 | + the 'second half' part). |
| 48 | + Ensure that splitting of step (new level/depth) advances the required |
| 49 | + length, used when adding a new level/depth. |
| 50 | + Revised condition of 'while' loop which ensures that a new candidate |
| 51 | + intersection exists. Corrected the resetting of 'first_section' flag. |
| 52 | + Replaced fatal error for exceeding max steps with warning and signal |
| 53 | + 'looping' for too many steps; G4PropagatorInField detects this |
| 54 | + condition, and identifies it as a 'Looping Particle' which is then |
| 55 | + flagged; the calling class (Transportation, PathFinder) is expected |
| 56 | + to stop the tracking of this particle after a few of these steps. |
| 57 | + Addressing issue seen by ALICE (non-finishing of step due to poor |
| 58 | + advances). |
| 59 | + o G4VIntersectionLocator: added new logging methods & revised interfaces. |
| 60 | + o G4NavigationLogger: added method to report issue with normal that |
| 61 | + is the result of applying a rotation. |
| 62 | + o G4NormalNavigation, G4VoxelNavigation: added check of rotated exit |
| 63 | + normal. |
| 64 | + o Relaxed condition for zero or almost-zero steps in G4ReplicaNavigation |
| 65 | + and G4Navigator, to allow for faster progression in case of stuck tracks |
| 66 | + in 3D scoring meshes. Addressing old problem report #1432. |
| 67 | + o Fix in G4ReplicaNavigation::ComputeStep() for correct setting of copyNo |
| 68 | + for particle entering. Fixes issue of negative copyNo observed in nested |
| 69 | + replica setups. Addressing problem report #1634. |
| 70 | + o Moved check for overlaps in G4Navigator::ComputeStep() within G4VERBOSE. |
| 71 | + Addressing problem report #1811. |
| 72 | + + solids/Boolean: |
| 73 | + o Checked for potential never-ending loops. Replaced while-do loop with |
| 74 | + bounded for-loop in G4IntersectionSolid::DistanceToIn(p,v). |
| 75 | + Also addressing problem report #1821. |
| 76 | + + solids/CSG: |
| 77 | + o Introduced check in G4Sphere::DistanceToIn(p,v) for concave Theta and |
| 78 | + point located on the origin. Also make proper use of radial tolerance in |
| 79 | + DistanceToOut(p,v). |
| 80 | + o Fixed Coverity defect in G4CutTubs::GetMaxMinZ(). |
| 81 | + + solids/specific: |
| 82 | + o Added specialised implementation for GetCubicVolume() in |
| 83 | + G4TessellatedSolid. Added debug printouts withing G4SPECSDEBUG for |
| 84 | + DistanceToIn/Out(p,v) to identify potential wrong responses. |
| 85 | + o Removed redundant condition in G4Polyhedra and G4polycone |
| 86 | + SetOriginalParameters() method. |
| 87 | + o Minor code cleanup in G4SurfaceVoxelizer. |
| 88 | + o Checked for potential never-ending loops. |
| 89 | + + volumes: |
| 90 | + o Enabled paramerisation by solid type in G4GeometryWorkspace in MT-mode. |
| 91 | + Assumes solids being parameterised are declared thread-local in the |
| 92 | + user's parameterisation class and allocated just once. |
| 93 | + |
| 94 | + o Global: |
| 95 | + ------ |
| 96 | + + Tune radial tolerance to same value as for Cartesian tolerance in |
| 97 | + G4GeometryTolerance. |
| 98 | + + Corrected conditions for proper treatment of gcc-5 in tls.hh and |
| 99 | + G4Threading.hh. |
| 100 | + + Removed unused and buggy operator=(const G4String&) in G4SubString. |
| 101 | + Added string length check in G4String::operator==(). |
| 102 | + Added missing 'inline' specification to functions in G4String. |
| 103 | + + Force use of G4MT wrappers for Intel-icc compiler for random numbers. |
| 104 | + + Updated date and version for 10.1.p03. |
| 105 | + |
| 106 | + o Materials: |
| 107 | + --------- |
| 108 | + + G4NistElementBuilder: fixed typo in printout. |
| 109 | + Addressing problem report #1786. |
| 110 | + |
| 111 | + o Parameterisations: |
| 112 | + ----------------- |
| 113 | + + gflash: fix for Zeff wrongly computed as ( W1*Z2 ) + ( W2*Z1 ), with Z1 |
| 114 | + and Z2 swapped. Addressing problem report #1719. |
| 115 | + |
| 116 | + o Particles: |
| 117 | + --------- |
| 118 | + + Fixed wrong argument order CreateIon(A,Z,LL,0.0) in G4IonTable to |
| 119 | + CreateIon(Z,A,LL,0.0). |
| 120 | + + Fixed setting of mass in decay parent particle. |
| 121 | + Addressing problem report #1820. |
| 122 | + |
| 123 | + o Persistency: |
| 124 | + ----------- |
| 125 | + + GDML: |
| 126 | + o Use relaxed precision constant for matrix to angle formula evaluation |
| 127 | + in G4GDMLWriteDefine, to allow for proper treatment of singularities. |
| 128 | + Fixes issues of misplaced volumes in exported geometries of complex |
| 129 | + detectors. |
| 130 | + o Rectify rotation matrices in reading and writing GDML files to reduce |
| 131 | + spurious roundoff errors in stored values. |
| 132 | + |
| 133 | + o Physics Lists |
| 134 | + ------------- |
| 135 | + + constructors/limiters: |
| 136 | + o G4ParallelWorldPhysics: fixed process order index for |
| 137 | + G4ParallelWorldProcess to 9900 to make sure it is registered |
| 138 | + prior to G4OpBoundaryProcess. |
| 139 | + |
| 140 | + o Processes - Electromagnetic: |
| 141 | + --------------------------- |
| 142 | + + xrays: |
| 143 | + o G4VTransitionRadiation, G4VXTRenergyLoss: fixed process sub-type. |
| 144 | + |
| 145 | + o Processes - Generic: |
| 146 | + ------------------- |
| 147 | + + scoring: |
| 148 | + o G4ParallelWorldProcess: fixed processType from 'fParameterized' |
| 149 | + to 'fParallel' and set processSubType to 491. |
| 150 | + o Fixed Coverity defects. |
| 151 | + |
| 152 | + o Processes - Hadronic: |
| 153 | + -------------------- |
| 154 | + + cross_sections: |
| 155 | + o G4NeutronInelasticXS, G4NeutronCaptureXS: fixed isotope cross-sections |
| 156 | + including retrieve, data management, isotope x-section and isotope |
| 157 | + selection. Fixed Coverity defects. |
| 158 | + + models/cascade: |
| 159 | + o G4CascadeCoalescence: added explicit inclusion of |
| 160 | + G4InuclElementaryParticle header to address compiler error from Cray |
| 161 | + (as reported in Configuration Hypernews Forum #1764). |
| 162 | + + models/coherent_elastic: |
| 163 | + o G4DiffuseElastic: bug-fix in BuildAngleTable() to improve the angle |
| 164 | + bin accuracy at high energies. |
| 165 | + + models/im_r_matrix: |
| 166 | + o Fixed compiler warning in clang-3.6. |
| 167 | + |
| 168 | + o Run: |
| 169 | + --- |
| 170 | + + G4PhysicsListHelper: add entry for G4ParallelWorldProcess. |
| 171 | + + G4RunManager, G4WorkerRunManager: fixed process order index of |
| 172 | + G4ParallelWorldProcess to 9900 to make sure it is registered |
| 173 | + prior to G4OpBoundaryProcess. |
| 174 | + |
| 175 | + o Tracking: |
| 176 | + -------- |
| 177 | + + G4SteppingManager: fix to properly set 'OriginTouchableHandle' for the |
| 178 | + primary track. Addressing problem report #1773. |
| 179 | + |
| 180 | + o Examples: |
| 181 | + -------- |
| 182 | + + Updated reference outputs. |
| 183 | + + basic/B4: |
| 184 | + o Restored the third parameter in G4UIsession construction, which was |
| 185 | + lost when moving G4UIExecutive at the beginning of main(). |
| 186 | + Addressing problem report #1802. |
| 187 | + |
| 188 | + ---------------------------------------------------------------------------- |
| 189 | + |
| 190 | + Technical Notes |
| 191 | + --------------- |
| 192 | + |
| 193 | + o This patch should be applied on top of release 10.1, 10.1.p01 or 10.1.p02. |
| 194 | + o Technical notes distributed for release 10.1 are also applicable and |
| 195 | + valid for this patch. |
| 196 | + |
| 197 | +The code and rebuilt binary libraries for release 10.1.p03 are available |
| 198 | +through our "Download" Web page. |
| 199 | + |
| 200 | +Please refer to the Geant4 User Documentation for further information about |
| 201 | +using Geant4. |
0 commit comments