Page Menu
Home
HEPForge
Search
Configure Global Search
Log In
Files
F11221743
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
19 KB
Subscribers
None
View Options
Index: trunk/src/Generators/FPythia/FPythia.cc
===================================================================
--- trunk/src/Generators/FPythia/FPythia.cc (revision 155)
+++ trunk/src/Generators/FPythia/FPythia.cc (revision 156)
@@ -1,136 +1,137 @@
// $Id: $
// Include files
#include "RivetGun/FPythia/FPythia.h"
#include <sstream>
#include <iostream>
using namespace std;
namespace RivetGun {
///-----------------------------------------------------------------------------
/// Implementation file for class : FPythia
/// @author Andy Buckley
///-----------------------------------------------------------------------------
/// Standard constructor
FPythia::FPythia() {
/// Herwig 6.2.6 uses HEPEVT with 4000 entries and 8-byte floats.
HepMC::HEPEVT_Wrapper::set_max_number_entries(4000);
HepMC::HEPEVT_Wrapper::set_sizeof_real(8);
//HepMC::HEPEVT_Wrapper::set_sizeof_int(4);
// (Some platforms may require the initialization of pythia PYDATA block
// data as external - if you get pythia initialization errors try
// commenting in/out the below call to initpydata() )
// initpydata();
//
// Select W+gamma process (process number 20)
// (here we have to be careful of C/F77 differences: arrays in C
// start at 0, F77 at 1, so we need to subtract 1 from the process #)
pysubs_.msel=0;
pysubs_.msub[20-1] = 1;
// set random number seed (mandatory!)
pydatr_.mrpy[0]=55122 ;
// Tell Pythia not to write multiple copies of particles in event record.
pypars_.mstp[128-1] = 2;
// Example of setting a Pythia parameter: set the top mass
pydat2_.pmas[1-1][6-1]= 175;
}
/// Standard destructor
FPythia::~FPythia() {}
/// Set a parameter with an integer value
Status FPythia::setParam(const string & name, int value) {
stringstream sval;
sval << value;
const string pygive_input( name + "=" + sval.str() );
call_pygive(pygive_input.c_str());
return Success;
}
/// Set a parameter with a double-precision value
Status FPythia::setParam(const string & name, double value) {
stringstream sval;
sval << value;
const string pygive_input( name + "=" + sval.str() );
call_pygive(pygive_input.c_str());
return Success;
}
/// Set a parameter with a boolean value
Status FPythia::setParam(const string & name, bool value) {
stringstream sval;
sval << value;
const string pygive_input( name + "=" + sval.str() );
call_pygive(pygive_input.c_str());
return Success;
}
/// Set up default params etc.
Status FPythia::initialize() {
// Call pythia initialization
call_pyinit( "CMS", "p", "p", 14000.0);
return Success;
}
/// Run the generator for one event
Status FPythia::makeEvent(HepMC::GenEvent& evt) {
+ clearEvent(evt);
call_pyevnt(); // generate one event
call_pyhepc(1); // convert common PYJETS into common HEPEVT
fillEvent(evt);
return Success;
}
/// Fill a HepMC event
Status FPythia::fillEvent(HepMC::GenEvent& evt) {
//cout << "Pythia filling event" << endl;
HepMC::IO_HEPEVT hepevt;
// HepMC::IO_Ascii output("dump.dat",std::ios::out);
// Populate HepMC event
hepevt.fill_next_event(&evt);
//hepevt.read_next_event();
// Set process ID code from common block
//evt.set_signal_process_id(gHwproc->iproc);
//evt.set_random_states(m_seeds);
//if (true) {
// HepMC::HEPEVT_Wrapper::print_hepevt();
// evt.print();
//}
return Success;
}
/// Tidy up after ourselves
Status FPythia::finalize() {
//call_pystat(1);
return Success;
}
////////////////////////////////////////////
// Class factory
extern "C" Generator* create() {
return new FPythia();
}
// Class destroyer
extern "C" void destroy(Generator* gen) {
delete gen;
}
}
Index: trunk/src/Generators/Generator.cc
===================================================================
--- trunk/src/Generators/Generator.cc (revision 155)
+++ trunk/src/Generators/Generator.cc (revision 156)
@@ -1,11 +1,19 @@
#include "RivetGun/Generator.h"
namespace RivetGun {
/// Standard constructor
Generator::Generator() {}
-
+
/// Standard destructor
Generator::~Generator() {}
+ /// Clear the passed event
+ Status Generator::clearEvent(HepMC::GenEvent& evt) {
+ if (!evt.particles_empty() || !evt.vertices_empty()) {
+ evt = HepMC::GenEvent();
+ }
+ return Success;
+ }
+
}
Index: trunk/src/Generators/FHerwig/FHerwig.cc
===================================================================
--- trunk/src/Generators/FHerwig/FHerwig.cc (revision 155)
+++ trunk/src/Generators/FHerwig/FHerwig.cc (revision 156)
@@ -1,159 +1,160 @@
// $Id: $
// Include files
#include "RivetGun/FHerwig/FHerwig.h"
#include <iostream>
using std::cout;
using std::endl;
using std::cerr;
namespace RivetGun {
//-----------------------------------------------------------------------------
// Implementation file for class : FHerwig
// @author Andy Buckley
//-----------------------------------------------------------------------------
// Standard constructor
FHerwig::FHerwig() {
/// Herwig 6.5 uses HEPEVT with 4000 entries and 8-byte floats.
HepMC::HEPEVT_Wrapper::set_max_number_entries(4000);
HepMC::HEPEVT_Wrapper::set_sizeof_real(8);
//HepMC::HEPEVT_Wrapper::set_sizeof_int(4);
// Set default common block params
hwproc_.PBEAM1 = 7000.0; // energy of beam1
hwproc_.PBEAM2 = 7000.0; // energy of beam2
// 1610 = gg->H--> WW, 1706 = qq-->ttbar, 2510 = ttH -> ttWW
hwproc_.IPROC = 1706; // qq -> ttbar production
hwproc_.MAXEV = 100; // number of events
hwevnt_.MAXPR = 2; // Number of events to print
// Specify beam particles
for ( unsigned int i = 0; i < 8; ++i ) {
hwbmch_.PART1[i] = (i < 1) ? 'P' : ' ';
hwbmch_.PART2[i] = (i < 1) ? 'P' : ' ';
}
}
// Standard destructor
FHerwig::~FHerwig() {}
/// Parameter setting
Status FHerwig::setParam(const std::string & name, const int value) {
if (name == "IPROC") {
// 1610 = gg->H--> WW, 1706 = qq-->ttbar, 2510 = ttH -> ttWW
hwproc_.IPROC = value; // qq -> ttbar production
} else if (name == "MAXEV") {
hwproc_.MAXEV = value; // number of events
} else if (name == "MAXPR") {
hwevnt_.MAXPR = value; // Number of events to print
} else if (name == "PART1[i]") {
// Specify beam particles
// hwbmch_.PART1[i] // i from 0 to 7
} else {
cerr << "FHerwig doesn't have an integer-valued parameter called " << name << endl;
}
return Success;
}
Status FHerwig::setParam(const std::string & name, const double value) {
if (name == "PBEAM1") {
hwproc_.PBEAM1 = value; // energy of beam1
} else if (name == "PBEAM2") {
hwproc_.PBEAM2 = value; // energy of beam2
} else {
cerr << "FHerwig doesn't have a double-valued parameter called " << name << endl;
}
return Success;
}
// Set bool-valued params
Status FHerwig::setParam(const std::string & name, const bool value) {
cerr << "FHerwig doesn't have a double-valued parameter called " << name << endl;
return Failure;
}
/// Set up initial state from supplied params
Status FHerwig::initialize() {
hwigin_(); // Initialise other common blocks
hwuinc_(); // Compute parameter-dependent constants
hweini_(); // Initialise elementary process
return Success;
}
// Run the generator for one event
/// @todo Make sub-process execution conditional
Status FHerwig::makeEvent(HepMC::GenEvent& evt) {
+ clearEvent(evt);
hwuine_(); // Initialize event
hwepro_(); // Generate hard subprocess
hwbgen_(); // Generate parton cascade
hwdhob_(); // Do heavy quark decays
hwcfor_(); // Do cluster formation
hwcdec_(); // Do cluster decays
hwdhad_(); // Do unstable particle decays
hwdhvy_(); // Do heavy flavor decays
hwmevt_(); // Add soft underlying event
hwufne_(); // Finish event
fillEvent(evt);
return Success;
}
/// Fill a HepMC event
Status FHerwig::fillEvent(HepMC::GenEvent& evt) {
//cout << "Herwig filling event" << endl;
HepMC::IO_HERWIG hepevt;
// HepMC::IO_Ascii output("dump.dat",ios::out);
// Populate HepMC event
hepevt.fill_next_event(&evt);
//hepevt.read_next_event();
// Set process ID code from common block
//evt.set_signal_process_id(gHwproc->iproc);
//evt.set_random_states(m_seeds);
// Re-interpret event weights
// if (gHwevnt->evwgt < 0.0) {
// evt.weights().push_back(-1.0);
// } else if (gHwevnt->evwgt > 0.0) {
// evt.weights().push_back(1.0);
// } else {
// cerr << "Herwig: event weight == 0!" << endl;
// }
//if (true) {
// HepMC::HEPEVT_Wrapper::print_hepevt();
// evt.print();
//}
return Success;
}
/// Tidy up after ourselves
Status FHerwig::finalize() {
hwefin_();
return Success;
}
////////////////////////////////////////////
// Class factory
extern "C" Generator* create() {
return new FHerwig();
}
// Class destroyer
extern "C" void destroy(Generator* gen) {
delete gen;
}
}
Index: trunk/src/Test/testRivet.cc
===================================================================
--- trunk/src/Test/testRivet.cc (revision 155)
+++ trunk/src/Test/testRivet.cc (revision 156)
@@ -1,66 +0,0 @@
-// -*- C++ -*-
-namespace RivetGun {}
-using namespace RivetGun;
-
-#ifdef FPYTHIA
-#include "RivetGun/FPythia/FPythia.h"
-typedef FPythia MyGen;
-#endif
-#ifdef FHERWIG
-#include "RivetGun/FHerwig/FHerwig.h"
-typedef FHerwig MyGen;
-#endif
-
-#include "Rivet/Analysis/RivetHandler.h"
-#include "Rivet/Analysis/Examples/TestMultiplicity.h"
-
-using namespace Rivet;
-using namespace std;
-
-
-int main() {
- //Generator* gen = GeneratorFactory::createGen("Pythia6206");
- Generator* gen = new MyGen();
- //HepMC::GenEvent myevent;
-
- //Set params
-#ifdef FHERWIG
- gen->setParam("PBEAM1", 8000.0);
- gen->setParam("IPROC", 1705);
-#endif
-#ifdef FPYTHIA
- gen->setParam("MSUB(96)", 0);
- gen->setParam("MSUB(25)", 1);
-#endif
-
- // Initialize
- gen->initialize();
-
- // Initialise Rivet
- RivetHandler rh;
- rh.addAnalysis(TestMultiplicity());
- rh.init();
- cout << "RivetHandler info: " << endl << rh.info() << endl;
-
- // Event loop
- unsigned int maxev(20);
- cout << "Generating " << maxev << " events." << endl;
- cout << "Starting..." << endl;
- for (unsigned int i = 0; i < maxev; ++i) {
- cout << "Event number " << i << endl;
- HepMC::GenEvent myevent;
- gen->makeEvent(myevent);
- rh.analyze(myevent);
- //myevent.clear();
- }
- cout << "Finished!" << endl;
-
- // Rivet reports...
- //rh.finalize();
-
- // Finalise Herwig
- gen->finalize();
-
- return EXIT_SUCCESS;
-}
-
Index: trunk/src/Test/Makefile.am
===================================================================
--- trunk/src/Test/Makefile.am (revision 155)
+++ trunk/src/Test/Makefile.am (revision 156)
@@ -1,86 +1,94 @@
noinst_PROGRAMS =
EXTRA_PROGRAMS = testrivet testloop
MYCPPFLAGS = -I$(top_srcdir)/include -I$(HEPMCINCPATH) -I$(CLHEPINCPATH)
MYLDFLAGS = -L$(top_srcdir)/src/Generators -export-dynamic
MYLDADD = -l$(CLHEPLIBNAME)
if WITH_RIVET
MYCPPFLAGS += -I$(RIVETINCPATH)
MYLDFLAGS += -L$(RIVETLIBPATH)
MYLDADD += -l$(RIVETLIBNAME)
endif
## Pythia 7 / ThePEG tests
if WITH_THEPEG
if WITH_RIVET
noinst_PROGRAMS += testrivet testloop
testrivet_SOURCES = testrivet.cc
testrivet_LDADD = $(MYLDADD) -l$(THEPEGLIBNAME)
testrivet_LDFLAGS = $(MYLDFLAGS) -L$(THEPEGLIBPATH)
testrivet_CPPFLAGS = $(MYCPPFLAGS) -I$(THEPEGINCPATH)
testloop_SOURCES = runEventLoop.cc
testloop_LDADD = $(MYLDADD) -l$(THEPEGLIBNAME)
testloop_LDFLAGS = $(MYLDFLAGS) -L$(THEPEGLIBPATH)
testloop_CPPFLAGS = $(MYCPPFLAGS) -I$(THEPEGINCPATH)
endif
endif
## Fortran Pythia 6206 tests
FPYTHIACPPFLAGS = $(MYCPPFLAGS)
-FPYTHIALDFLAGS = $(MYLDFLAGS) -L$(HEPMCFIOLIBPATH) -L$(LHAPDFLIBPATH) -L$(top_srcdir)/src/Generators
+FPYTHIALDFLAGS = $(MYLDFLAGS) -L$(HEPMCLIBPATH) -L$(HEPMCFIOLIBPATH) -L$(LHAPDFLIBPATH) -L$(top_srcdir)/src/Generators
FPYTHIALDADD = $(MYLDADD) -lg2c -l$(HEPMCLIBNAME) -l$(HEPMCFIOLIBNAME) -lAGILe -lAGILeFPythia -l$(LHAPDFLIBNAME)
if WITH_PYTHIA6206LIB
+ FPYTHIA6206CPPFLAGS = $(FPYTHIACPPFLAGS) -I$(PYTHIA6206INCPATH)/$(PYTHIA6206INCNAME) -DFPYTHIA
+ FPYTHIA6206LDFLAGS = $(FPYTHIALDFLAGS) -L$(PYTHIA6206LIBPATH)
+ FPYTHIA6206LDADD = $(FPYTHIALDADD) -l$(PYTHIA6206LIBNAME)
noinst_PROGRAMS += testFPythia6206
- testFPythia6206_SOURCES = testGenerator.cc
- testFPythia6206_CPPFLAGS = $(FPYTHIACPPFLAGS) -I$(PYTHIA6206INCPATH)/$(PYTHIA6206INCNAME) -DFPYTHIA
- testFPythia6206_LDFLAGS = $(FPYTHIALDFLAGS) -L$(PYTHIA6206LIBPATH)
- testFPythia6206_LDADD = $(FPYTHIALDADD) -l$(PYTHIA6206LIBNAME) -l$(LHAPDFLIBNAME)
+ testFPythia6206_SOURCES = testGenerator.cc
+ testFPythia6206_CPPFLAGS = $(FPYTHIA6206CPPFLAGS)
+ testFPythia6206_LDFLAGS = $(FPYTHIA6206LDFLAGS)
+ testFPythia6206_LDADD = $(FPYTHIA6206LDADD)
if WITH_RIVET
- noinst_PROGRAMS += testRivetWithFPythia6206
- testRivetWithFPythia6206_SOURCES = testRivet.cc
- testRivetWithFPythia6206_CPPFLAGS = $(FPYTHIACPPFLAGS) -I$(RIVETINCPATH) -I$(PYTHIA6206INCPATH)/$(PYTHIA6206INCNAME) -DFPYTHIA
- testRivetWithFPythia6206_LDFLAGS = $(FPYTHIALDFLAGS) -L$(PYTHIA6206LIBPATH)
- testRivetWithFPythia6206_LDADD = $(FPYTHIALDADD) -l$(PYTHIA6206LIBNAME) -l$(LHAPDFLIBNAME) -l$(RIVETLIBNAME)
+ noinst_PROGRAMS += testFPythia6206WithRivet
+ testFPythia6206WithRivet_SOURCES = testGenerator.cc
+ testFPythia6206WithRivet_CPPFLAGS = $(FPYTHIA6206CPPFLAGS) -I$(RIVETINCPATH) -DRIVET
+ testFPythia6206WithRivet_LDFLAGS = $(FPYTHIA6206LDFLAGS) -L$(RIVETLIBPATH)
+ testFPythia6206WithRivet_LDADD = $(FPYTHIA6206LDADD) -l$(RIVETLIBNAME)
endif
endif
## Fortran Herwig 6507 tests
FHERWIGCPPFLAGS = $(MYCPPFLAGS)
FHERWIGLDFLAGS = $(MYLDFLAGS) -L$(HEPMCFIOLIBPATH) -L$(LHAPDFLIBPATH) -L$(top_srcdir)/src/Generators
FHERWIGLDADD = $(MYLDADD) -lg2c -l$(HEPMCLIBNAME) -l$(HEPMCFIOLIBNAME) -lAGILe -lAGILeFHerwig -l$(LHAPDFLIBNAME)
if WITH_HERWIG6507LIB
+ FHERWIG6507CPPFLAGS = $(FHERWIGCPPFLAGS) -I$(HERWIG6507INCPATH)/$(HERWIG6507INCNAME) -DFHERWIG
+ FHERWIG6507LDFLAGS = $(FHERWIGLDFLAGS) -L$(HERWIG6507LIBPATH)
+ FHERWIG6507LDADD = $(FHERWIGLDADD) -l$(HERWIG6507LIBNAME)
noinst_PROGRAMS += testFHerwig6507
- testFHerwig6507_SOURCES = testGenerator.cc
- testFHerwig6507_CPPFLAGS = $(FHERWIGCPPFLAGS) -I$(HERWIG6507INCPATH)/$(HERWIG6507INCNAME) -DFHERWIG
- testFHerwig6507_LDFLAGS = $(FHERWIGLDFLAGS) -L$(HERWIG6507LIBPATH)
- testFHerwig6507_LDADD = $(FHERWIGLDADD) -l$(HERWIG6507LIBNAME)
+ testFHerwig6507_SOURCES = testGenerator.cc
+ testFHerwig6507_CPPFLAGS = $(FHERWIG6507CPPFLAGS)
+ testFHerwig6507_LDFLAGS = $(FHERWIG6507LDFLAGS)
+ testFHerwig6507_LDADD = $(FHERWIG6507LDADD)
if WITH_RIVET
- noinst_PROGRAMS += testRivetWithFHerwig6507
- testRivetWithFHerwig6507_SOURCES = testRivet.cc
- testRivetWithFHerwig6507_CPPFLAGS = $(MYCPPFLAGS) $(FHERWIGCPPFLAGS) -I$(HERWIG6507INCPATH)/$(HERWIG6507INCNAME) -DFHERWIG
- testRivetWithFHerwig6507_LDFLAGS = $(FHERWIGLDFLAGS) -L$(HERWIG6507LIBPATH)
- testRivetWithFHerwig6507_LDADD = -l$(RIVETLIBNAME) $(FHERWIGLDADD) -l$(HERWIG6507LIBNAME)
+ noinst_PROGRAMS += testFHerwig6507WithRivet
+ testFHerwig6507WithRivet_SOURCES = testGenerator.cc
+ testFHerwig6507WithRivet_CPPFLAGS = $(FHERWIG6507CPPFLAGS) -I$(RIVETINCPATH) -DRIVET
+ testFHerwig6507WithRivet_LDFLAGS = $(FHERWIG6507LDFLAGS) -L$(RIVETLIBPATH)
+ testFHerwig6507WithRivet_LDADD = $(FHERWIG6507LDADD) -l$(RIVETLIBNAME)
endif
endif
## Fortran Herwig 6510 tests
if WITH_HERWIG6510LIB
- noinst_PROGRAMS += testFHerwig6510
- testFHerwig6510_SOURCES = testGenerator.cc
- testFHerwig6510_CPPFLAGS = $(FHERWIGCPPFLAGS) -I$(HERWIG6510INCPATH)/$(HERWIG6510INCNAME) -DFHERWIG
- testFHerwig6510_LDFLAGS = $(FHERWIGLDFLAGS) -L$(HERWIG6510LIBPATH)
- testFHerwig6510_LDADD = $(FHERWIGLDADD) -l$(HERWIG6510LIBNAME)
+ FHERWIG6510CPPFLAGS = $(FHERWIGCPPFLAGS) -I$(HERWIG6510INCPATH)/$(HERWIG6510INCNAME) -DFHERWIG
+ FHERWIG6510LDFLAGS = $(FHERWIGLDFLAGS) -L$(HERWIG6510LIBPATH)
+ FHERWIG6510LDADD = $(FHERWIGLDADD) -l$(HERWIG6510LIBNAME)
+ noinst_PROGRAMS += testFHerwig6510
+ testFHerwig6510_SOURCES = testGenerator.cc
+ testFHerwig6510_CPPFLAGS = $(FHERWIG6510CPPFLAGS)
+ testFHerwig6510_LDFLAGS = $(FHERWIG6510LDFLAGS)
+ testFHerwig6510_LDADD = $(FHERWIG6510LDADD)
if WITH_RIVET
- noinst_PROGRAMS += testRivetWithFHerwig6510
- testRivetWithFHerwig6510_SOURCES = testRivet.cc
- testRivetWithFHerwig6510_CPPFLAGS = $(FHERWIGCPPFLAGS) -I$(HERWIG6510INCPATH)/$(HERWIG6510INCNAME) -DFHERWIG
- testRivetWithFHerwig6510_LDFLAGS = $(FHERWIGLDFLAGS) -L$(HERWIG6510LIBPATH)
- testRivetWithFHerwig6510_LDADD = -l$(RIVETLIBNAME) $(FHERWIGLDADD) -l$(HERWIG6510LIBNAME)
+ noinst_PROGRAMS += testFHerwig6510WithRivet
+ testFHerwig6510WithRivet_SOURCES = testGenerator.cc
+ testFHerwig6510WithRivet_CPPFLAGS = $(FHERWIG6510CPPFLAGS) -I$(RIVETINCPATH) -DRIVET
+ testFHerwig6510WithRivet_LDFLAGS = $(FHERWIG6510LDFLAGS) -L$(RIVETLIBPATH)
+ testFHerwig6510WithRivet_LDADD = $(FHERWIG6510LDADD) -l$(RIVETLIBNAME)
endif
endif
-
## Consistency checks
check-local:
./testrivet
Index: trunk/src/Test/testGenerator.cc
===================================================================
--- trunk/src/Test/testGenerator.cc (revision 155)
+++ trunk/src/Test/testGenerator.cc (revision 156)
@@ -1,45 +1,70 @@
// -*- C++ -*-
namespace RivetGun {}
using namespace RivetGun;
#ifdef FPYTHIA
#include "RivetGun/FPythia/FPythia.h"
typedef FPythia MyGen;
#endif
#ifdef FHERWIG
#include "RivetGun/FHerwig/FHerwig.h"
typedef FHerwig MyGen;
#endif
+#include "Rivet/Analysis/RivetHandler.h"
+#include "Rivet/Analysis/Examples/TestMultiplicity.h"
+
+using namespace Rivet;
+using namespace std;
+
+
int main() {
+ //Generator* gen = GeneratorFactory::createGen("Pythia6206");
Generator* gen = new MyGen();
HepMC::GenEvent myevent;
//Set params
#ifdef FHERWIG
gen->setParam("PBEAM1", 8000.0);
gen->setParam("IPROC", 1705);
#endif
#ifdef FPYTHIA
gen->setParam("MSUB(96)", 0);
gen->setParam("MSUB(25)", 1);
#endif
// Initialize
gen->initialize();
+#ifdef RIVET
+ // Initialise Rivet
+ RivetHandler rh;
+ rh.addAnalysis(TestMultiplicity());
+ rh.init();
+ cout << "RivetHandler info: " << endl << rh.info() << endl;
+#endif
+
// Event loop
- unsigned int maxev(10);
- std::cout << "Generating " << maxev << " events." << std::endl;
- std::cout << "Starting..." << std::endl;
- for (unsigned int i = 1; i < maxev + 1; ++i) {
- std::cout << "Event number " << i << std::endl;
+ unsigned int maxev(20);
+ cout << "Generating " << maxev << " events." << endl;
+ cout << "Starting..." << endl;
+ for (unsigned int i = 0; i < maxev; ++i) {
+ cout << "Event number " << i << endl;
gen->makeEvent(myevent);
+#ifdef RIVET
+ rh.analyze(myevent);
+#endif
}
- std::cout << "Finished generating" << std::endl;
+ cout << "Finished!" << endl;
+
+#ifdef RIVET
+ // Rivet reports...
+ //rh.finalize();
+#endif
- // Finalise
+ // Finalise Herwig
gen->finalize();
return EXIT_SUCCESS;
}
+
File Metadata
Details
Attached
Mime Type
text/x-diff
Expires
Wed, May 14, 10:51 AM (1 d, 3 h)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
5111271
Default Alt Text
(19 KB)
Attached To
rAGILESVN agilesvn
Event Timeline
Log In to Comment