Rev 43 | Rev 48 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
| Rev | Author | Line No. | Line |
|---|---|---|---|
| 47 | garren | 1 | |
| 2 | 2006-08-18 Lynn Garren |
||
| 3 | |||
| 4 | * doc/HepMC2_user_manual.tex documentation for HepMC 2 |
||
| 5 | |||
| 43 | garren | 6 | 2006-08-01 Lynn Garren |
| 19 | garren | 7 | |
| 43 | garren | 8 | * HepMC/is_arithmetic.h, HepMC/enable_if.h supplied by Walter Brown |
| 9 | for a clean template constructor implementation. |
||
| 10 | |||
| 11 | 2006-07-23 Lynn Garren |
||
| 12 | |||
| 13 | * HepMC/SimpleVector.h: add a templated constructor for both FourVector |
||
| 14 | and ThreeVector that will take any lorentz vector which has the |
||
| 15 | x(), y(), z(), and t() methods. This should enable existing code |
||
| 16 | that uses CLHEP Vector classes to keep working. |
||
| 17 | |||
| 18 | 2006-07-19 Lynn Garren |
||
| 19 | |||
| 20 | * replace CLHEP/Vector/LorentzVector.h and CLHEP/Vector/ThreeVector.h |
||
| 21 | with HepMC/SimpleVector.h |
||
| 22 | implement some of the basic vector properties so user code won't break |
||
| 23 | |||
| 24 | |||
| 39 | garren | 25 | -------------------- HepMC-01-28-00 --------------------------------- |
| 26 | |||
| 40 | garren | 27 | 2006-08-08 Lynn Garren |
| 28 | |||
| 29 | * HepMC/IO_ExtendedAscii.h: Extended format writes PdfInfo and HeavyIon |
||
| 30 | if they are present in the event. This is otherwise identical |
||
| 31 | to IO_Ascii.h. |
||
| 32 | |||
| 37 | garren | 33 | 2006-07-30 Lynn Garren |
| 34 | |||
| 40 | garren | 35 | * HepMC/HEPEVT_Wrapper.h: fix for 64bit machines |
| 37 | garren | 36 | |
| 36 | garren | 37 | 2006-07-26 Lynn Garren |
| 38 | |||
| 39 | * HepMC/PdfInfo.h implements information requested by CMS |
||
| 40 | * GenEvent.h, GenEvent.cc make sure m_pdf_info is initialized to 0 |
||
| 41 | |||
| 30 | garren | 42 | -------------------- HepMC-01-27-02 --------------------------------- |
| 43 | |||
| 34 | garren | 44 | 2006-06-19 Lynn Garren |
| 45 | |||
| 46 | * fix test for Windows |
||
| 47 | * add ReadMe.cygwin-VC71 and setup.cygwin-VC71 |
||
| 48 | |||
| 49 | |||
| 26 | garren | 50 | 2006-06-14 Lynn Garren |
| 51 | |||
| 52 | * GenEvent.cc, GenParticle.cc, GenVertex.cc use standard C++ output |
||
| 53 | * testPrintBug new test for output problems with gcc 4.x |
||
| 29 | garren | 54 | * HepMC/HepMC_CLHEP20.h defines several typedefs needed when compiling |
| 55 | with CLHEP 2.0.x |
||
| 56 | * HEPEVT_Wrapper.h, HerwigWrapper6_4.h, PythiaWrapper6_2.h |
||
| 57 | need extern "C" statements for gcc 4.x |
||
| 58 | * HepMC_CLHEP20.h, Polarization.h, GenVertex.h, GenParticle.h |
||
| 59 | HepMC will work with both CLHEP 1.9.x and 2.0.x |
||
| 26 | garren | 60 | |
| 29 | garren | 61 | |
| 23 | garren | 62 | -------------------- HepMC-01-27-01 --------------------------------- |
| 63 | |||
| 22 | garren | 64 | 2006-03-31 Lynn Garren |
| 65 | |||
| 66 | * GenEvent.h, GenEvent.cc make sure m_heavy_ion is initialized to 0 |
||
| 67 | |||
| 68 | |||
| 21 | garren | 69 | 2006-03-29 Lynn Garren |
| 70 | |||
| 71 | * HepMC/ParticleData.h remove dependency on CLHEP/Units by HepMC_hbarc |
||
| 72 | * HepMC/Polarization.h remove dependency on CLHEP/Units by HepMC_pi |
||
| 73 | |||
| 19 | garren | 74 | -------------------- HepMC-01-27-00 --------------------------------- |
| 75 | |||
| 76 | 2006-03-07 Lynn Garren |
||
| 77 | |||
| 78 | * add simple check in the test subdirectory |
||
| 79 | |||
| 15 | garren | 80 | 2006-02-17 Lynn Garren |
| 81 | |||
| 82 | * HepMC/HeavyIon.h names have been changed to match both HepMC and |
||
| 83 | wishes of heavy ion users |
||
| 84 | |||
| 11 | garren | 85 | 2006-01-12 Lynn Garren |
| 86 | |||
| 87 | HepPDT 1.26 is available at https://savannah.cern.ch/projects/hepmc/ |
||
| 88 | |||
| 89 | * HepMC/HeavyIon.h implements information requested by CMS |
||
| 90 | * HepMC/GenParticle.h has pointer (null by default) to HeavyIon |
||
| 91 | * code providing interfaces to Fortran common blocks has been moved |
||
| 92 | out of libHepMC and into libHepMCfio |
||
| 93 | |||
| 94 | -------------------- HepMC-01-02-26 --------------------------------- |
||
| 95 | |||
| 2 | garren | 96 | -------------------- HepMC-01-02-21 --------------------------------- |
| 97 | |||
| 98 | 2005-04-27 Matt Dobbs and Giorgos |
||
| 99 | * src/IO_HERWIG.cxx implemented a bug fix suggested by borut, |
||
| 100 | which keeps the remapping of daughters/motherrs from going "over |
||
| 101 | the end" on herwig events (was noticed in the tauola events for |
||
| 102 | rome DC). |
||
| 103 | |||
| 104 | 2004-08-04 David Quarrie <David.Quarrie@cern.ch> |
||
| 105 | |||
| 106 | * cmt/requirements: Change dependencies on CERNLIB and CLHEP |
||
| 107 | to AtlasCERNLIB and AtlasCLHEP to avoid name clashes |
||
| 108 | |||
| 109 | |||
| 110 | -------------------- HepMC-01-02-19 ----(gcc 3.2 compatible)--------- |
||
| 111 | |||
| 112 | |||
| 113 | 2004-04-22 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 114 | |||
| 115 | * src/IO_HERWIG.cxx (HepMC): fixed bug reported by Hinchliffe in |
||
| 116 | IO_HERWIG wherein (for the special case of min bias events only) |
||
| 117 | number of entries in HEPEVT was being zero-ed by the IO_HERWIG |
||
| 118 | class. Added extra protection in HEPEVT_Wrapper for this as well. |
||
| 119 | |||
| 120 | |||
| 121 | -------------------- HepMC-01-02-18 ----(gcc 3.2 compatible)--------- |
||
| 122 | |||
| 123 | 2004-03-27 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 124 | |||
| 125 | Removed the #define statements that allow backwards compatibility |
||
| 126 | with gcc 2.95, and specialized the 3.2 compliant iterators to be |
||
| 127 | forward iterators such that they work properly with std |
||
| 128 | algorithms. |
||
| 129 | |||
| 130 | Thanks to Ulrik Egede for pointing this out. |
||
| 131 | |||
| 132 | * HepMC/GenVertex.h, .cxx HepMC/GenEvent.h, .cxx: changed |
||
| 133 | std::forward_iterator<GenParticle*,ptrdiff_t> |
||
| 134 | to |
||
| 135 | std::iterator<std::forward_iterator_tag,GenParticle*,ptrdiff_t> |
||
| 136 | for standard |
||
| 137 | compliance, and removed #define statements. |
||
| 138 | |||
| 139 | * HepMC/IO_Ascii.h,.cxx: changed open_mode to openmode for standard |
||
| 140 | compliance, and removed #define statements. |
||
| 141 | |||
| 142 | |||
| 143 | 2003-12-17 David Rousseau <droussea@lxplus072.cern.ch> |
||
| 144 | |||
| 145 | * cmt/requirements: remove HepMC_libraries |
||
| 146 | |||
| 147 | 2003-10-22 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 148 | |||
| 149 | * src/GenEvent.cxx and lots of other files + latex documentation. |
||
| 150 | REmoved any mention of units--- GeV, MeV etc, since HepMC merely |
||
| 151 | accepts whatever is put in. I do this because, though HEPEVT has |
||
| 152 | used GeV/mm, ATLAS plans to use CLHEP units of MeV/mm. |
||
| 153 | |||
| 154 | 2003-10-15 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 155 | |||
| 156 | * src/GenParticle.cxx (HepMC): added a default constructor for |
||
| 157 | GenParticle as requested by Giorgos S. |
||
| 158 | |||
| 159 | -------------------- HepMC-01-02-14 ----(gcc 3.2 compatible)--------- |
||
| 160 | |||
| 161 | 2003-04-21 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 162 | |||
| 163 | * src/IO_HERWIG.cxx: |
||
| 164 | minor changes to handling of herwig event record |
||
| 165 | |||
| 166 | -------------------- HepMC-01-02-11 ----(gcc 3.2 compatible)--------- |
||
| 167 | |||
| 168 | 2003-03-10 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 169 | |||
| 170 | * HepMC/IO_BaseClass.h: |
||
| 171 | Fixed bug reported by Peter Loch, wherein the virtual destructor |
||
| 172 | for IO_BaseClass was missing. |
||
| 173 | |||
| 174 | -------------------- HepMC-01-02-10 ----(gcc 3.2 compatible)--------- |
||
| 175 | |||
| 176 | 2003-03-03 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 177 | |||
| 178 | * HepMC/GenVertex.h: added extra ifdef statement to allow |
||
| 179 | compilation on gcc 3.2. (forward_iterator and open_mode problems). |
||
| 180 | * HepMC/IO_Ascii.h: as above. |
||
| 181 | * src/IO_Ascii.cxx (HepMC): as above. |
||
| 182 | |||
| 183 | 2003-01-17 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 184 | |||
| 185 | * src/IO_PDG_ParticleDataTable.cxx (HepMC): if the PDG table does |
||
| 186 | not exist, we abort, rather than just returning false. |
||
| 187 | |||
| 188 | -------------------- HepMC-01-02-04 ----(5.0.0)------------ |
||
| 189 | 2002-11-04 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 190 | |||
| 191 | * src/GenEvent.cxx (HepMC): set_barcode(particle, barcode), |
||
| 192 | set_barcode(vertex, barcode) Fixed a bug reported by Giorgos S. |
||
| 193 | For this bug, a user suggests a barcode for a vertex that is |
||
| 194 | already part of an event... the vertex is inserted in the vertex |
||
| 195 | map with the new barcode, but HepMC forgets to erase the old |
||
| 196 | entry... such that the vertex now appears twice in the map. This |
||
| 197 | is fixed, and the corresponding error for particles is also fixed. |
||
| 198 | |||
| 199 | 2002-10-31 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 200 | |||
| 201 | * HepMC/IO_HERWIG.h: modified IO_HERWIG to include a switch |
||
| 202 | (default m_no_gaps_in_barcodes=on) which removes null entries from |
||
| 203 | Herwig HEPEVT and reshuffles the common block |
||
| 204 | |||
| 205 | 2002-10-22 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 206 | |||
| 207 | * HepMC/HerwigWrapper6_4.h, HepMC/HerwigWrapper.h: new interface |
||
| 208 | to HERWIG Version 6.4 is added. There is an example for using it |
||
| 209 | at examples/example_MyHerwig.cxx. To use this example you will |
||
| 210 | have to download HERWIG version 6.4 and modify the Makefile to |
||
| 211 | link it. |
||
| 212 | |||
| 213 | * HepMC/IO_HERWIG.h: New class for reading the Herwig version of |
||
| 214 | the HEPEVT common block is added. READ THE COMMENTS IN THE .h file |
||
| 215 | carefully before using it! |
||
| 216 | |||
| 217 | |||
| 218 | 2002-07-29 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 219 | -------------------- HepMC-01-02-03 ----(4.0.2)------------ |
||
| 220 | |||
| 221 | * src/GenVertex.cxx (HepMC): remove_particle() |
||
| 222 | * HepMC/GenVertex.h: |
||
| 223 | removed confusing comment about the use of GenVertex::remove_particle() |
||
| 224 | in .h file, and clarified the comment in .cxx file. |
||
| 225 | |||
| 226 | * src/GenEvent.cxx (HepMC): operator= |
||
| 227 | bug discovered by <Malte.Muller@cern.ch>. |
||
| 228 | Formerly, the GenEvent::operator= method relied on the particles |
||
| 229 | attached to each vertex to always be in the same order. However, |
||
| 230 | since the particles are stored in set<>, this is not always true |
||
| 231 | -- making the results of the operator= method unreliable. |
||
| 232 | This is fixed by mapping the vertices explicitly. |
||
| 233 | |||
| 234 | * src/IO_PDG_ParticleDataTable.cxx (HepMC): |
||
| 235 | added a line in read_entry that ignores empty lines (previously |
||
| 236 | empty lines in the pdg data table generated a cerr message). |
||
| 237 | This change was requested by Davida Costanzo. |
||
| 238 | |||
| 239 | |||
| 240 | 2002-03-02 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 241 | -------------------- HepMC-01-02-02 ----(3.0.1)------------ |
||
| 242 | |||
| 243 | * src/GenVertex.cxx (HepMC): |
||
| 244 | GenVertex::edge_iterator::edge_iterator( .. ) |
||
| 245 | Extra error protection added in the constructor. |
||
| 246 | Sometimes the edge_iterator fails when we have a vertex with no |
||
| 247 | in_particles. This never happens in standalone mode, but when ran |
||
| 248 | with the ATLAS framework, it does happen. New code identifies the |
||
| 249 | scenario explicitly, and catches the error, which has to do with |
||
| 250 | the past-the-end value of the edge_iterator. |
||
| 251 | |||
| 252 | * test/test_iterators.cxx: new test program added for iterators, |
||
| 253 | to test for the above problems. |
||
| 254 | |||
| 255 | |||
| 256 | 2002-02-19 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 257 | |||
| 258 | CHANGES TO ALLOW HEPMC TO COMPILE WITH SOLARIS CC 5.2 |
||
| 259 | |||
| 260 | * cmt/requirements: added the line |
||
| 261 | macro_append cppflags "" Solaris " -D__SUNPRO_CC " |
||
| 262 | to handle Solaris CC 5.2 features. |
||
| 263 | |||
| 264 | * HepMC/ParticleDataTable.h: |
||
| 265 | turns on MISSING_FORWARD_ITERATOR when __SUNPRO_CC is defined. |
||
| 266 | This defines forward_iterator as iterator |
||
| 267 | |||
| 268 | * HepMC/GenVertex.h: |
||
| 269 | same as ParticleDataTable.h, but also turns on |
||
| 270 | NEED_SOLARIS_FRIEND_FEATURE when __SUNPRO_CC is defined. |
||
| 271 | |||
| 272 | * src/Polarization.cxx (HepMC): |
||
| 273 | replaced abs() with theta = ( theta>0 ? theta : -theta ); |
||
| 274 | for compatibility with Solaris. |
||
| 275 | |||
| 276 | 2002-02-15 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 277 | -------------------- HepMC-01-02-01 ----(3.0.0)------------ |
||
| 278 | |||
| 279 | * HepMC/GenEvent.h: bug discovered by <srinir@bnl.gov> with help |
||
| 280 | from Paolo and Hong. |
||
| 281 | The GenEvent::particle_iterator, const_particle_iterator, |
||
| 282 | vertex_iterator, const_vertex_iterator |
||
| 283 | had methods like: |
||
| 284 | bool operator !=(const particle_iterator& a) const |
||
| 285 | { return !(**this == *a); } |
||
| 286 | which doesn't work because you are not allowed to de-reference |
||
| 287 | the end() iterator [the above coding is a relic of the old |
||
| 288 | walking iterators which did not inherit from |
||
| 289 | forward_iterstor, and for which *end() was well |
||
| 290 | defined.] |
||
| 291 | The correct usage is: |
||
| 292 | { return m_map_iterator == a.m_map_iterator; } |
||
| 293 | |||
| 294 | Note: this does NOT affect the GenVertex::***_iterator's, since |
||
| 295 | for those iterators *end() is well defined. |
||
| 296 | |||
| 297 | |||
| 298 | 2002-01-23 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 299 | -------------------- HepMC-01-02-00 -------------------- |
||
| 300 | ( Public Version 1.2 ) |
||
| 301 | |||
| 302 | User manual, webpage, and public version updated. |
||
| 303 | |||
| 304 | The CLHEP names branch, called HepMC-00-00-96-CLHEP, has |
||
| 305 | been moved to the head of the main trunk in cvs, and commited. |
||
| 306 | Thus the main trunk is the only development branch. |
||
| 307 | |||
| 308 | |||
| 309 | 2002-01-22 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 310 | -------------------- HepMC-01-01-12 -------------------- |
||
| 311 | |||
| 312 | * src/GenEvent.cxx (HepMC): delete_all_vertices() |
||
| 313 | modified the increment of the vertex iterator when looping over |
||
| 314 | vertices for deletion. |
||
| 315 | * src/GenVertex.cxx (HepMC): delete_adopted_particles() |
||
| 316 | modified the increment of the particle iterator when looping over |
||
| 317 | particles for deletion. |
||
| 318 | |||
| 319 | 2002-01-21 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 320 | -------------------- HepMC-01-01-07 -------------------- |
||
| 321 | |||
| 322 | * HepMC/GenEvent.cxx (delete_all_vertices): |
||
| 323 | Possible bug reported here by ATLfast group. Added extra error |
||
| 324 | checking, and changed the deleting of the vertices such that each |
||
| 325 | one is explicitly erased from the map. |
||
| 326 | |||
| 327 | |||
| 328 | 2002-01-18 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 329 | |||
| 330 | More changes for Windoes MS Visual C++ compatibility: |
||
| 331 | |||
| 332 | * HepMC/PythiaWrapper6_2.h, HepMC/PythiaWrapper6_152.h: |
||
| 333 | included new wrapper methods like call_pyinit, which hide the |
||
| 334 | funny syntax necessary to call fortran routines from C++. |
||
| 335 | * examples/example_MyPythiaWithEventSelection.cxx: |
||
| 336 | * examples/example_MyPythiaOnlyToHepMC.cxx: |
||
| 337 | * examples/example_MyPythia.cxx: |
||
| 338 | * examples/Benchmarks_f77/example_PythiaToLCWrite.cxx: |
||
| 339 | modified to use the call_*** pythia methods. |
||
| 340 | |||
| 341 | |||
| 342 | 2002-01-15 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 343 | -------------------- HepMC-01-01-06 -------------------- |
||
| 344 | |||
| 345 | * Makefile.standalone: updated to use cernlib 2001 and pythia6152 |
||
| 346 | |||
| 347 | * examples/example_UsingIterators.cxx: |
||
| 348 | The input file was from the old non-barcodes version, and so |
||
| 349 | didn't work. Replaced it with a proper input file. |
||
| 350 | |||
| 351 | |||
| 352 | These changes suggested by Witold Pokorski <Witold.Pokorski@Cern.Ch> from |
||
| 353 | LHCb to allow for Windows Visual C++ compliance. All of these changes are |
||
| 354 | fully backwards compatible(!). |
||
| 355 | |||
| 356 | * HepMC/GenEvent.h, HepMC/GenVertex.h: change forward_iterator to |
||
| 357 | simply iterator (which in the STL standard apparently implies |
||
| 358 | forward_iterator) |
||
| 359 | |||
| 360 | In Visual c++, a for (int i ... ) {} statement does not scope out |
||
| 361 | the i variable ... so had to modify the code to ensure no |
||
| 362 | variables were used twice in the same method: |
||
| 363 | * src/IO_Ascii.cxx (HepMC): |
||
| 364 | in lines 155, 161, 175 "int i" is repeated |
||
| 365 | in lines 293, 314, 321 "int i" is repeated |
||
| 366 | in lines 293, 314, 321 "p" is repeated |
||
| 367 | * src/IO_HEPEVT.cxx (HepMC): |
||
| 368 | in lines 59,65,88 "i" is repeated |
||
| 369 | in lines 118, 129 "p" is repeated |
||
| 370 | * src/IO_PDG_ParticleDataTable.cxx (HepMC): |
||
| 371 | in lines 80, 103, 124 "id_i" is repeated |
||
| 372 | * src/GenVertex.cxx (HepMC): |
||
| 373 | in lines: 64 and 72; 168 and 178; 195 and 201; 260 and 273; |
||
| 374 | 322 and 331 variable "part" is repeated |
||
| 375 | |||
| 376 | * have verified all STL calls for set, map, less, greater, cout, |
||
| 377 | endl, list, cerr, ios, iostream, flush are properly prefixed with |
||
| 378 | std:: |
||
| 379 | |||
| 380 | * HepMC/GenEvent.h: bug fix: |
||
| 381 | added a std::greater<int> qualifier to the m_map_iterator of the |
||
| 382 | vertex iterators. |
||
| 383 | |||
| 384 | * HepMC/GenVertex.h: bug fix: |
||
| 385 | made the GenVertex::particle_iterator a friend of GenVertex. |
||
| 386 | |||
| 387 | * HepMC/GenEvent.h, HepMC/GenVertex.h: |
||
| 388 | move all of the friend class declarations |
||
| 389 | into statements separate from the class declaration, i.e. |
||
| 390 | class edge_iterator { ... }; |
||
| 391 | friend class edge_iterator; |
||
| 392 | instead of |
||
| 393 | friend class edge_iterator{ ... }; |
||
| 394 | Change all std::ptrdiff_t to ptrdiff_t |
||
| 395 | |||
| 396 | * HepMC/IO_Ascii.h: ios::openmode changed to ios::open_mode in the |
||
| 397 | constructor, for compatibility with windows Visual C++. |
||
| 398 | |||
| 399 | * Change #include <iostream.h> to #include <iostream> |
||
| 400 | Note: this will spoil compatibility with HPUX 10.2 CC. |
||
| 401 | |||
| 402 | |||
| 403 | 2001-11-29 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 404 | -------------------- HepMC-01-01-05 -------------------- |
||
| 405 | * Fix typo in user manual "particle barcodes are positive" |
||
| 406 | |||
| 407 | |||
| 408 | 2001-11 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 409 | -------------------- HepMC-01-01-04 -------------------- |
||
| 410 | * update user manual to explain barcodes. NO changes to code. |
||
| 411 | |||
| 412 | |||
| 413 | 2001-11-10 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 414 | -------------------- HepMC-01-01-03 -------------------- |
||
| 415 | * cmt/requirements: jetset74 requirement removed, as requested by |
||
| 416 | I.Hinchliffe. |
||
| 417 | |||
| 418 | 2001-11-04 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 419 | -------------------- HepMC-01-01-02 -------------------- |
||
| 420 | * HepMC/GenVertex.h: removed merge_vertex() method. |
||
| 421 | |||
| 422 | * HepMC/IO_HEPEVT.h: |
||
| 423 | removed the merge_vertices possibility, but added a |
||
| 424 | build_production_vertex possibility to build_end_vertex. |
||
| 425 | |||
| 426 | -------------------- HepMC-01-01-01 -------------------- |
||
| 427 | * src/HEPEVT_Wrapper.cxx (HepMC): |
||
| 428 | new method check_hepevt_consistency() added. |
||
| 429 | new method zero_everything() added. |
||
| 430 | |||
| 431 | 2001-11-02 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 432 | |||
| 433 | -------------------- HepMC-01-01-00 -------------------- |
||
| 434 | * src/IO_HEPEVT.cxx (HepMC): |
||
| 435 | Modified such that the HEPEVT indices are used for the particle |
||
| 436 | barcodes. |
||
| 437 | * HepMC/IO_Ascii.h: |
||
| 438 | Modifed to properly read/write the barcodes and the |
||
| 439 | GenEvent new data members. |
||
| 440 | |||
| 441 | Unique reference numbers called "barcodes" are added as data |
||
| 442 | members to GenParticles and GenVertices. |
||
| 443 | They are cross-referenced in GenEvent via a map<int,GenXXX>. |
||
| 444 | The GenEvent::m_vertices container of vertices is then no longer |
||
| 445 | necessary, so it is removed. |
||
| 446 | The GenEvent::particle_iterator and GenEvent::vertex_iterator |
||
| 447 | are updated to walk over the maps. The iterator change should be |
||
| 448 | transparent to the user. |
||
| 449 | Constant versions of both iterators are included. |
||
| 450 | The old GenEvent::vertex_iterator was a typedef of the set: |
||
| 451 | typedef std::set<GenVertex*>::iterator vertex_iterator; |
||
| 452 | |||
| 453 | The maps get filled via the: |
||
| 454 | set_barcode( GenXXX* x, int suggested_barcode ) |
||
| 455 | methods, which in turn are called only by the vertex and particle: |
||
| 456 | GenVertex::set_parent_event_() |
||
| 457 | GenPartcle::set_production_vertex_() |
||
| 458 | GenPartcle::set_end_vertex_(} |
||
| 459 | |||
| 460 | * HepMC/GenEvent.h: |
||
| 461 | New data members and access methods are added for consistency with |
||
| 462 | the HepUP standard, see hep-ph/0109068 |
||
| 463 | double GenEvent::m_event_scale |
||
| 464 | double GenEvent::m_alphaQCD |
||
| 465 | double GenEvent::m_alphaQED |
||
| 466 | |||
| 467 | * src/IO_HEPEVT.cxx (HepMC): Fixed some const warnings with the |
||
| 468 | GenEvent::vertex_iterator usage. |
||
| 469 | |||
| 470 | 2001-10-11 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 471 | |||
| 472 | -------------------- HepMC-01-00-01 -------------------- |
||
| 473 | * cmt/requirements: changed use CERNLIB v2001 External to use |
||
| 474 | CERNLIB CERNLIB-01-* External as per r.d.'s request |
||
| 475 | |||
| 476 | 2001-10-10 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 477 | |||
| 478 | -------------------- HepMC-01-00-00 -------------------- |
||
| 479 | Identical to HepMC-00-03-08. This tag name follows atlas |
||
| 480 | naming conventions ... increment the major tag when code is NOT |
||
| 481 | backwards compatible. Since Atlas is moving from tag |
||
| 482 | HepMC-00-01-12 (old atlas names) to HepMC-00-03-08 (clhep names) |
||
| 483 | this change is not backwards compatible. |
||
| 484 | |||
| 485 | 2001-09-05 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 486 | ------- below this line is tag HepMC-00-03-08 ---------- |
||
| 487 | (clhep names version to be used in atlas. The changes have not |
||
| 488 | been made in the HepMC-00-01-** branch) |
||
| 489 | |||
| 490 | * src/IO_HEPEVT.h (HepMC): |
||
| 491 | * src/IO_HEPEVT.cxx (HepMC): When inconsistent info between |
||
| 492 | mother and daughters is found in the |
||
| 493 | IO_HEPEVT::build_production_vertex method, IO_HEPEVT will no |
||
| 494 | longer merge_vertex (the 2001-03-29 "fix") by default. In order to |
||
| 495 | get this behaviour you have to explicitly ask for it with the |
||
| 496 | IO_HEPEVT::set_merge_vertex_switch() method. |
||
| 497 | |||
| 498 | 2001-09-05 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 499 | * cmt/requirements: added to the CLHEP names branch (its just a |
||
| 500 | direct copy of what is in the trunk ATLAS names). |
||
| 501 | |||
| 502 | |||
| 503 | 2001-07-17 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 504 | (note: HepMC-00-01-24 is an accidental tag which should be ignored) |
||
| 505 | ----- below this line is HepMC-00-01-23, HepMC-00-03-07 ----- |
||
| 506 | |||
| 507 | * src/GenVertex.cxx (HepMC): |
||
| 508 | GenVertex::vertex_iterator::follow_edge_() added extra error |
||
| 509 | checking for the very special-rare case where a particle might |
||
| 510 | point to the same vertex for both production and end. |
||
| 511 | Meant to handle Ian H.'s bug of 02 Jul 2001 |
||
| 512 | |||
| 513 | 2001-06-28 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 514 | -------------------- HepMC-00-03-06 -------------------- |
||
| 515 | |||
| 516 | * examples/GNUmakefile.in: |
||
| 517 | updated the makefile to link to cernlib 2001 version of pythia. |
||
| 518 | This involves a change -lpythia6136 to -lpythia6152 -lpythiad |
||
| 519 | Note that for xample_MyPythiaWithEventSelection.cxx 1/100 or |
||
| 520 | 36/1000 events pass cuts (with 6.136 it was 3/100 or 37/1000). |
||
| 521 | |||
| 522 | * HepMC/GenParticle.h: now has a parent_event() access method, |
||
| 523 | which returns the parent_event of the particle's container |
||
| 524 | vertex's event. |
||
| 525 | |||
| 526 | 2001-06-27 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 527 | |||
| 528 | ---> Make the Vertex know which event it in in. <--- |
||
| 529 | * HepMC/GenVertex.h: added private data member m_event, public |
||
| 530 | access method parent_event() and protected access method |
||
| 531 | set_parent_event, which is only to be used by GenEvent. Thus |
||
| 532 | GenEvent is made to be a friend of GenVertex. |
||
| 533 | * HepMC/GenEvent.h, src/GenEvent.cxx (HepMC): added logic to |
||
| 534 | GenEvent::remove_vertex and GenEvent::add_vertex. The vtx's |
||
| 535 | m_event pointer is set to point back to the event. |
||
| 536 | |||
| 537 | * HepMC/ParticleData.h: |
||
| 538 | * HepMC/GenEvent.h: |
||
| 539 | * HepMC/GenParticle.h: |
||
| 540 | * HepMC/GenVertex.h: made method counter() protected. It was never |
||
| 541 | intended as public, merely as a method for detecting memory |
||
| 542 | leaks. If no-one complains (they shouldn't, it was commented |
||
| 543 | "temporary for debugging") I'll remove it entirely later. |
||
| 544 | |||
| 545 | 2001-03-29 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 546 | |||
| 547 | * src/IO_HEPEVT.cxx (HepMC): |
||
| 548 | When m_trust_mothers_before_daughters=0, the vertex position is |
||
| 549 | now filled. In ISAJET sometimes disjoint vertex structures exist, |
||
| 550 | in this case a merger of vertices is done, which accounts for it. |
||
| 551 | |||
| 552 | * HepMC/GenVertex.h: |
||
| 553 | * src/GenVertex.cxx (HepMC): |
||
| 554 | Added a void merge_vertex_contents( GenVertex* v_in ); |
||
| 555 | method which takes all the contents of v_in and places it in |
||
| 556 | the vertex. It does not delete v_in, nor does it remove |
||
| 557 | v_in from an event. |
||
| 558 | It will mainly be used by IO_HEPEVT, but it is forseen that users |
||
| 559 | may want to use it when reducing the overall size of the event |
||
| 560 | (deleting intermediate vertices) such as will be done by atlas. |
||
| 561 | |||
| 562 | 2001-02-28 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 563 | |||
| 564 | * Makefile.standalone: |
||
| 565 | using |
||
| 566 | HepMCdir = $(shell pwd) |
||
| 567 | instead of |
||
| 568 | HepMCdir = /afs/cern.ch/user/m/mdobbs/HepMC/myCheckoutV1.01 |
||
| 569 | for better portability. |
||
| 570 | |||
| 571 | * src/GenVertex.cxx (HepMC): added extra protection to the |
||
| 572 | GenVertex::edge_iterator::edge_iterator constructor to give |
||
| 573 | sensible result for the special case when a vertex has incoming |
||
| 574 | particles, but none outgoing and the user requests a children |
||
| 575 | iterator. The old version would have |
||
| 576 | m_set_iter points to m_particles_in.begin() and so the first |
||
| 577 | dereference might be wrong. |
||
| 578 | |||
| 579 | * HepMC/IO_HEPEVT.h: Two new switches are added to give more |
||
| 580 | flexibility in handling the possible inconsistencies arrising |
||
| 581 | from the bi-directional pointers in HEPEVT. The switches are: |
||
| 582 | bool m_trust_mothers_before_daughters; |
||
| 583 | bool m_print_inconsistency_errors; |
||
| 584 | which are described by comments in the code. Also makes minor |
||
| 585 | changes to src/IO_HEPEVT.cxx |
||
| 586 | |||
| 587 | * HepMC/Typedef_Version0names.h: |
||
| 588 | This header file added. It contains typedef statements which |
||
| 589 | should allow the new version 1.XX class names to be used with code |
||
| 590 | written with the old version 0.XX class names. |
||
| 591 | If the user wants to take advantage of these typedefs he needs to |
||
| 592 | define type variable HEPMC_SHORT_NAMES in his compiler options as |
||
| 593 | follows: -DHEPMC_SHORT_NAMES |
||
| 594 | or in his code using #define HEPMC_SHORT_NAMES |
||
| 595 | Note that since the header file names also changed, this ALSO |
||
| 596 | requires changing the include statements in the user code. |
||
| 597 | |||
| 598 | * doc/latex_user_manual/physicist_visualization.eps |
||
| 599 | fixed a mis-labelling in this figure... the labels were all |
||
| 600 | shifted and intermingled... its now right. Unfortunately |
||
| 601 | the mislabelled version appears in the CPC publication. |
||
| 602 | also affects doc/latex_user_manual/HepMC_user_manual.ps |
||
| 603 | |||
| 604 | ****************************************************** |
||
| 605 | Everything below this line corresponds to Version 1.01 |
||
| 606 | ****************************************************** |
||
| 607 | |||
| 608 | 2001-01-11 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 609 | |||
| 610 | * examples/example_UsingIterators.cxx: |
||
| 611 | Changed the class IsFinalState such that a particle must have no |
||
| 612 | end vertex AND have status==1 to be considered stable. |
||
| 613 | Does not effect package, only this specific example. |
||
| 614 | |||
| 615 | * HepMC/IO_BaseClass.h: |
||
| 616 | Bug reported by Lynn Garren |
||
| 617 | "There appears to be a problem with const-ness in HepMC/IO_BaseClass.h. |
||
| 618 | I have made the following changes in order to compile HepMC 1.0 |
||
| 619 | with g++. |
||
| 620 | virtual const GenEvent*& operator<<( GenEvent*& ); |
||
| 621 | becomes |
||
| 622 | virtual GenEvent*& operator<<( GenEvent*& ); |
||
| 623 | |||
| 624 | virtual const ParticleDataTable*& operator<<( ParticleDataTable*& ) |
||
| 625 | becomes |
||
| 626 | virtual ParticleDataTable*& operator<<( ParticleDataTable*& ) |
||
| 627 | In other words, I have made the const-ness match." |
||
| 628 | ... |
||
| 629 | These changes are implemented by Matt in the atlas repository. |
||
| 630 | |||
| 631 | * HepMC/HEPEVT_Wrapper.h: |
||
| 632 | Bug reported by Andreas Dell'Acqua |
||
| 633 | HEPEVT_Wrapper::last_child |
||
| 634 | HEPEVT_Wrapper::last_parent |
||
| 635 | There methods were returning 0 when exactly one parent exists. This |
||
| 636 | caused the number_children and number_parent methods to return 0 |
||
| 637 | every time there was exactly 1 parent/child. This error caused |
||
| 638 | major problems in the IO_HEPEVT class, with the end result that |
||
| 639 | the HEPEVT graphs were interpretted incorrectly [all particles are |
||
| 640 | correctly interpretted, but their relationships are incorrect for |
||
| 641 | the case where a particle has exactly ONE mother: in this case the |
||
| 642 | particles appeared as orphans.] |
||
| 643 | This bug was |
||
| 644 | introduced in version HepMC-00-00-94, so it has been present for |
||
| 645 | some time. This fix is for HEPEVT_Wrapper::last_child(): |
||
| 646 | // Returns the Index of the LAST child in the HEPEVT record |
||
| 647 | // for particle with Index index. |
||
| 648 | // If there is only one child, the last child is forced to |
||
| 649 | // be the same as the first child. |
||
| 650 | // If there are no children for this particle, both the first_child |
||
| 651 | // and the last_child with return 0. |
||
| 652 | // Error checking is done to ensure the child is always |
||
| 653 | // within range ( 0 <= parent <= nhep ) |
||
| 654 | |||
| 655 | * src/IO_HEPEVT.cxx (HepMC): |
||
| 656 | only comments in IO_HEPEVT::build_particle have changed. No change |
||
| 657 | to code. |
||
| 658 | |||
| 659 | ****************************************************** |
||
| 660 | Everything below this line corresponds to Version 1.0 |
||
| 661 | ****************************************************** |
||
| 662 | |||
| 663 | 2000-11-10 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 664 | |||
| 665 | MAJOR NAME CHANGES AFFECT ALMOST ALL FILES: |
||
| 666 | GeneratorEvent --> GenEvent |
||
| 667 | Particle --> GenParticle |
||
| 668 | Vertex --> GenVertex |
||
| 669 | |||
| 670 | user manual and online documentaion are updated to reflect this. |
||
| 671 | |||
| 672 | * HepMC/PythiaWrapper6_152.h: |
||
| 673 | A new wrapper for Pythia 6.1 is created to replace the old Pythia |
||
| 674 | 5.7 wrapper. It works with the versions of Pythia in both |
||
| 675 | CERNlib2000 and CERNlib2001 (versions 6.136 and 6.152 and probably |
||
| 676 | any Pythia 6). |
||
| 677 | A pointer file: |
||
| 678 | * HepMC/PythiaWrapper.h: |
||
| 679 | is created so the used doesn't have to worry about pythia version |
||
| 680 | numbers. A test file is located at: |
||
| 681 | * test/test_PythiaWrapper.cxx |
||
| 682 | |||
| 683 | All examples are updated to use Pythia 6. |
||
| 684 | |||
| 685 | |||
| 686 | 2000-11-09 Matt Dobbs <Matt.Dobbs@Cern.CH> |
||
| 687 | |||
| 688 | * HepMC/WeightContainer.h: |
||
| 689 | Created this class to house the weights in the vertex and event |
||
| 690 | classes. It is just an interface to std::vertex<double>. |
||
| 691 | |||
| 692 | The vertex class is modifid to use this. Required changes to: |
||
| 693 | * HepMC/Vertex.h: |
||
| 694 | * src/Vertex.cxx: |
||
| 695 | * src/IO_Ascii.cxx (HepMC): |
||
| 696 | |||
| 697 | ****************************************************** |
||
| 698 | Everything below this line corresponds to Version 0.94 |
||
| 699 | ****************************************************** |
||
| 700 | |||
| 701 | |||
| 702 | 2000-07-05 Matt Dobbs <Matthew.Adam.Dobbs@Cern.CH> |
||
| 703 | |||
| 704 | * HepMC/HEPEVT_Wrapper.h: Completely new wrapper for HEPEVT_Common |
||
| 705 | is implemented. This wrapper treats the common as a series of |
||
| 706 | bytes and interprets them "on the fly". The user can set the size |
||
| 707 | (in bytes) of the integer and real numbers to be interpretted from |
||
| 708 | HEPEVT, and also the total number of entries in HEPEVT. This |
||
| 709 | allows the user to interface to two applications which use |
||
| 710 | different HEPEVT definitions. |
||
| 711 | Benchmarks: 1000 events pythia only 34 seconds. |
||
| 712 | 1000 events Pythia+HepMC(using this new wrapper) 40s |
||
| 713 | on my particular machine. (extra time is 6 seconds.) Compare this |
||
| 714 | to the extra 5 seconds reported in the HepMC user manual for the |
||
| 715 | old HEPEVT wrapper ... so the difference is small compared to the |
||
| 716 | old wrapper considering the added functionality. |
||
| 717 | (all examples have been tested and they Run!) |
||
| 718 | |||
| 719 | * HepMC/HEPEVT_Common.h: Deleted, this common is now defined |
||
| 720 | inside HEPEVT_Wrapper.h |
||
| 721 | |||
| 722 | * src/HEPEVT_Wrapper.cxx (HepMC): This file is created since it is |
||
| 723 | necessary to instantiate the static members of HEPEVT_Wrapper in a |
||
| 724 | .cxx file. |
||
| 725 | |||
| 726 | * Makefile.Standalone: modified to build src/HEPEVT_Wrapper.cxx into |
||
| 727 | the HepMC library |
||
| 728 | |||
| 729 | * HepMC/IO_HEPEVT.h: Comment modified only so as to treat |
||
| 730 | HEPEVT_Wrapper consistently. |
||
| 731 | |||
| 732 | * examples/example_MyPythiaWithEventSelection.cxx: Modified to use new |
||
| 733 | HEPEVT_Wrapper |
||
| 734 | |||
| 735 | * examples/example_MyPythia.cxx: Modified to use new |
||
| 736 | HEPEVT_Wrapper |
||
| 737 | |||
| 738 | * examples/example_MyPythiaOnlyToHepMC.cxx (main): Modified to use new |
||
| 739 | HEPEVT_Wrapper |
||
| 740 | |||
| 741 | * PACKAGE: added linkset HepMC -lib:HepMC |
||
| 742 | (Modified GNUmakefile.in to use libHepMC.so as HepMC linkset) |
||
| 743 | |||
| 744 | 2000-07-04 Matt Dobbs <Matthew.Adam.Dobbs@Cern.CH> |
||
| 745 | |||
| 746 | * examples/GNUmakefile.in: $(top_srcdir) replaced by |
||
| 747 | $(srcdir) |
||
| 748 | |||
| 749 | * GNUmakefile.in (libHepMC.so_SRC): The location of src .cxx files |
||
| 750 | is now explicitly specified with $(top_srcdir)/src/*.cxx |
||
| 751 | This makefile now builds oth a shared library libHepMC.so and |
||
| 752 | libHepMC.a (requested by Ian H.) |
||
| 753 | * the initpydata.f routine is no longer compiled into the the |
||
| 754 | HepMC library, but is still packaged with the other routines. |
||
| 755 | The user needs to link to it explicitly. See the GNUmakefile.in |
||
| 756 | in the examples directory for an example of how to do this. |
||
| 757 | (requested by Ian H.) |
||
| 758 | * ./src is replaced with $(top_srcdir)/src everywhere in the |
||
| 759 | GNUmakefile.in |
||
| 760 | |||
| 761 | Files changed this time: |
||
| 762 | GNUmakefile.in, examples/GNUmakefile.in, Makefile.standalone, |
||
| 763 | Changelog |
||
| 764 | |||
| 765 | 2000-05-18 Matt Dobbs <Matthew.Adam.Dobbs@Cern.CH> |
||
| 766 | |||
| 767 | * HepMC/IO_BaseClass.h: There is now a fill_next_event method. |
||
| 768 | - bool fill_next_event( GeneratorEvent* evt ) is a new abstract method |
||
| 769 | which fills the passed event, and also returns true if successful. |
||
| 770 | - GeneratorEvent* read_next_event() is now make concrete. it |
||
| 771 | creates a new event, fills it using the above abstract method, |
||
| 772 | and returns the event |
||
| 773 | This change is backwards compatible since the method |
||
| 774 | read_next_event() has identical behavior. |
||
| 775 | Identical changes are made for the methods: |
||
| 776 | - bool fill_particle_data_table( ParticleDataTable* pdt ) |
||
| 777 | - ParticleDataTable* read_particle_data_table() |
||
| 778 | The methods are updated [ i.e. GeneratorEvent* read_next_event() |
||
| 779 | is changed to bool fill_next_event( GeneratorEvent* evt ), etc. ] |
||
| 780 | in: |
||
| 781 | - IO_HEPEVT.h |
||
| 782 | - IO_Ascii.h |
||
| 783 | - IO_PDG_ParticleDataTable.h |
||
| 784 | - IO_HEPEVT.cxx |
||
| 785 | - IO_Ascii.cxx |
||
| 786 | - IO_PDG_ParticleDataTable.cxx |
||
| 787 | (This change requested by Ian Hinchliffe and Marjorie Shapiro.) |
||
| 788 | |||
| 789 | |||
| 790 | 2000-04-24 Matt Dobbs <Matthew.Adam.Dobbs@Cern.CH> |
||
| 791 | |||
| 792 | * HepMC/HEPEVT_Wrapper.h: set_momentum and set_position now |
||
| 793 | properly cast input doubles as type HEPEVT_Precision, |
||
| 794 | previously they were hardwired as cast to double, this |
||
| 795 | meant writing to real*4 hepevt would fail. |
||
| 796 | |||
| 797 | ****************************************************** |
||
| 798 | Everything below this line corresponds to Version 0.91 |
||
| 799 | ****************************************************** |
||
| 800 | |||
| 801 | 2000-04-11 Matt Dobbs <Matthew.Adam.Dobbs@Cern.CH> |
||
| 802 | |||
| 803 | * doc/latex_user_manual/HepMC_user_manual.tex: User manual is |
||
| 804 | updated to replect changes since V0.9 |
||
| 805 | - HEPEVT and position in [mm] |
||
| 806 | |||
| 807 | 2000-04-06 Matt Dobbs <Matthew.Adam.Dobbs@Cern.CH> |
||
| 808 | |||
| 809 | * examples/example_MyPythia.cxx |
||
| 810 | * examples/example_MyPythiaOnlyToHepMC.cxx |
||
| 811 | * examples/example_MyPythiaWithEventSelection.cxx: |
||
| 812 | By commenting out the initpydata call (which may be required on |
||
| 813 | some systems to initialize the Pythia PYDATA block data as |
||
| 814 | external) the MyPythia examples now run on HPUX (and still on |
||
| 815 | Linux). Have not tested other platforms. |
||
| 816 | * Makefile: HPUX with gcc requires the -lf library which contains |
||
| 817 | the fortran intrinsic function. |
||
| 818 | |||
| 819 | 2000-04-05 Matt Dobbs <Matthew.Adam.Dobbs@Cern.CH> |
||
| 820 | |||
| 821 | The changes below will have no effect on the user or package, they |
||
| 822 | just serve to remove warnings when compiling. |
||
| 823 | |||
| 824 | * HepMC/Vertex.h: 313:342:364: warning: unused parameter `enum |
||
| 825 | ::HepMC::IteratorRange dummy_range' (all dummy range parameters |
||
| 826 | now appear as particles_end( IteratorRange /* dummy_range */ ) ) |
||
| 827 | |||
| 828 | * src/IO_Ascii.cxx (HepMC): 506: warning: ANSI C++ forbids |
||
| 829 | variable-size array `c' (the array is now declared as char* c = |
||
| 830 | new char[key_length +1]; and deleted before returning) |
||
| 831 | |||
| 832 | * HepMC/IO_PDG_ParticleDataTable.h: 53: warning: control reaches |
||
| 833 | end of non-void function read_next_event() |
||
| 834 | (this is a dummy function anyway -- return 0) |
||
| 835 | * HepMC/IO_HEPEVT.h:55: (as above) |
||
| 836 | |||
| 837 | * src/Flow.cxx (HepMC): 26: warning: default argument given for |
||
| 838 | parameter 1 of `void ::HepMC::Flow::print(class ostream & = cout) |
||
| 839 | const' (done) |
||
| 840 | |||
| 841 | * HepMC/IO_HEPEVT.h:57: warning: base class `class |
||
| 842 | ::HepMC::IO_BaseClass' should be explicitly initialized in the |
||
| 843 | copy constructor (done) |
||
| 844 | * HepMC/IO_Ascii.h: 98: (as above) |
||
| 845 | * HepMC/IO_PDG_ParticleDataTable.h: 56: (as above) |
||
| 846 | |||
| 847 | * HepMC/ParticleDataTable.h: 155: warning: suggest parentheses |
||
| 848 | around assignment used as truth value (done) |
||
| 849 | |||
| 850 | * src/IO_Ascii.cxx (HepMC): 37: warning: default argument given |
||
| 851 | (removed default argument) |
||
| 852 | |||
| 853 | * HepMC/Flow.h:21: warning: multiline `//' comment |
||
| 854 | (added space after \ to remove compiler warning) |
||
| 855 | |||
| 856 | * HepMC/Particle.h: removed =0 in the inline declaration |
||
| 857 | inline void Particle::set_flow( int code_index, int code = 0 ) |
||
| 858 | (caused warning). |
||
| 859 | |||
| 860 | |||
| 861 | 2000-04-04 Matt Dobbs <Matthew.Adam.Dobbs@Cern.CH> |
||
| 862 | |||
| 863 | * HepMC/HEPEVT_Wrapper.h: HepMC/HEPEVT_Common.h: |
||
| 864 | replace the classes HEPEVT_BaseClass.h HEPEVT_Double2000.h |
||
| 865 | HEPEVT_Double4000.h HEPEVT_Real2000.h HEPEVT_Real4000.h |
||
| 866 | |||
| 867 | Using different classes for each of the HEPEVT common block |
||
| 868 | varieties proved very troublesome - users had trouble and 4 |
||
| 869 | similar classes were being maintained. The new version uses only |
||
| 870 | static methods and cannot be instantiated (logical since it has |
||
| 871 | no data members). The HEPEVT common block is contained in the |
||
| 872 | HepMC/HEPEVT_Common.h header. The precision and number of entries |
||
| 873 | is specified using #define commands, default is double precision, |
||
| 874 | 2000 entries. The user will see only one change - the IO_HEPEVT |
||
| 875 | constructor now has no arguments, so he need not define the |
||
| 876 | any HEPEVT_XXX class. He may need to set the precision and number |
||
| 877 | of entries. See the header for instructions, and |
||
| 878 | examples/example_MyPythia.cxx for an example. |
||
| 879 | |||
| 880 | example_MyPythia.cxx, example_MyPythiaOnlyToHepMC.cxx, |
||
| 881 | example_MyPythiaWithEventSelection.cxx are modified to take this |
||
| 882 | into account. |
||
| 883 | |||
| 884 | * HepMC/IO_HEPEVT.h: This class now extracts information from the |
||
| 885 | fortran HEPEVT common using HEPEVT_Wrapper instead of having to |
||
| 886 | pass it a class which inherits from the obsolete HEPEVT_BaseClass. |
||
| 887 | |||
| 888 | 2000-04-03 Matt Dobbs <Matthew.Adam.Dobbs@Cern.CH> |
||
| 889 | |||
| 890 | * HepMC/PythiaWrapper5_720.h: Credit for writing the wrapper is |
||
| 891 | to Silvia Resconi. |
||
| 892 | Inclusion of HEPEVT wrapper header file is not necessary --- hence |
||
| 893 | removed. |
||
| 894 | |||
| 895 | 2000-03-31 Matt Dobbs <Matthew.Adam.Dobbs@Cern.CH> |
||
| 896 | |||
| 897 | * HepMC/ParticleData.h: clifetime is now represented in [mm] |
||
| 898 | instead of [cm] ... previously HepMC had internal inconsistencies |
||
| 899 | in this --- it claimed to use [cm], but sometimes used [mm] (as |
||
| 900 | when it read from HEPEVT, and othertimes used [cm] (as when it |
||
| 901 | transformed a width into a lifetime. Now all is consitent and [mm] |
||
| 902 | is used everywhere as it should be. |
||
| 903 | * HepMC/Vertex.h: src/ParticleData.cxx: |
||
| 904 | Changed comments which say clifetime is in [cm], to say |
||
| 905 | clifetime is in [mm]. |
||
| 906 | |||
| 907 | * Makefile (CLHEPdir): |
||
| 908 | Changed |
||
| 909 | CLHEPdir = /afs/cern.ch/sw/lhcxx/specific/Linux/CLHEP/pro |
||
| 910 | to |
||
| 911 | CLHEPdir = /afs/cern.ch/sw/lhcxx/specific/@sys/CLHEP/dev |
||
| 912 | to make it platform independent for CERN users. |
||
| 913 | And some cosmetic changes to the Makefile. |
||
| 914 | |||
| 915 | * HepMC/IO_BaseClass.h: |
||
| 916 | Using the compiler options -ansi -pedantic cause this error: |
||
| 917 | no match for `::HepMC::IO_Ascii & << ::HepMC::GeneratorEvent *&' |
||
| 918 | Even though it recognizes: |
||
| 919 | operator <<(::HepMC::IO_BaseClass &, |
||
| 920 | const ::HepMC::GeneratorEvent *&) <near match> |
||
| 921 | as the "best <near match>". |
||
| 922 | |||
| 923 | To fix this I make operator<<, operator>> members of the |
||
| 924 | IO_BaseClass rather than friends, and I add versions where the |
||
| 925 | argument of operator<< is not constant. |
||
| 926 | This will not affect users in any way (unless they were using |
||
| 927 | these compiler options, in which case HepMC didn't work anyway...) |
||
| 928 | |||
| 929 | 2000-02-16 Matt Dobbs <Matthew.Adam.Dobbs@Cern.CH> |
||
| 930 | |||
| 931 | * GeneratorEvent.h: set_signal_process_vertex() modified to ensure |
||
| 932 | that any vertex specified as signal process is ALSO in the |
||
| 933 | m_vertices set. |
||
| 934 | |||
| 935 | * This change log documents changes since Version 9 of HepMC was |
||
| 936 | "released" February 11, 2000 |
||
| 937 | |||
| 938 | pre 2000-02-16 Matt Dobbs <Matthew.Adam.Dobbs@Cern.CH> |
||
| 939 | Changes Before Version 0.9 (i.e. changes in going from V0.1 -->0.9) |
||
| 940 | HepMC improvements: |
||
| 941 | +backup V0.1 (done) |
||
| 942 | +save particle data as id in Particle (done) |
||
| 943 | +update IO strategies (done) |
||
| 944 | +test (done) |
||
| 945 | +backup (done) |
||
| 946 | -change set<Vertex*> in event to include all vertices (done) |
||
| 947 | +change iterators to reflect this (done) |
||
| 948 | +update IO strategies (done) |
||
| 949 | +test (done) |
||
| 950 | -fix all operator= to first destruct dependents. (done) |
||
| 951 | -access functions to iterate over all flows (done) |
||
| 952 | -check for stl namespace (done) |
||
| 953 | grep -n cout HepMC/*.h src/*.cxx | grep -v std::cout | |
||
| 954 | less |
||
| 955 | -add Hepevt:write event (done) |
||
| 956 | -implement lujet strategy (not done!) |
||
| 957 | -update documentation -- enumerating recent changes. (done) |
||
| 958 | -user manual written |
||
| 959 |