Skip to content

WIP: Refactoring of the whole code structure #2

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 16 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
105 changes: 105 additions & 0 deletions CHANGELOG
Original file line number Diff line number Diff line change
@@ -0,0 +1,105 @@
2016-10-07 Cristian Baldenegro <[email protected] / [email protected]>

* Added EFT for AA->AZ, according to Sylvain and Gero's computations. Datacard: dataQED_AZanom
* In 2017-02-15 corrected the ME to include two operators which induce the Zgamma process.

2016-09-23 Cristian Baldenegro <[email protected] / [email protected]>

* Correction for AA->Spin2->AA (-1 factor when calling Mxxxx matrix elements)
* Couldn't run dataQED_ZZanom anymore; now it's corrected.

2016-06-20 Cristian Baldenegro <[email protected] / [email protected]>

* Exclusive AA-> HH (IPROC=16071) and AA->Dijet (IPROC=16070) were included
* Matrix elements calculated by Gero von Gersdorff and Sylvain Fichet
* Correspond to Datacards: dataQED_HHexoticSPin0EvenResonances and dataQED_GluGluexoticSpin0EvenResonances respectively
* New parameters (F0H and F0G)

2016-05-20 Cristian Baldenegro <[email protected] / [email protected]>

* Exclusive AA->ZZ (IPROC=16066) and AA->AZ (IPROC=16068)
* Exclusive AA->WW (IPROC=16067) and AA->AA (IPROC=16069) processes included
* Helicity amplitudes from Gero von Gersdorff and Sylvain Fichet
* Corresponding datacards: dataQED_ZZexoticSpin0EvenResonances and dataQED_AZexoticSpin0EvenResonances
dataQED_WWexoticSpin0EvenResonances and dataQED_AAexoticSpin2Resonances
* New parameter F0Z (1/coupling for Phi->ZZ) AF0ZG (1/coupling for Phi->gamma Z)
* New parameter F0W (1/coupling for phi->WW)
* Such exclusive productions are included in the same subroutine calling section as Matthias' (AAANOM=3, AAEXOTIC=1)

2015-07-24 Matthias Saimpert <[email protected]>
* IMPORTANT BUG CORRECTIONS: symmetry factor was omitted for
gamgam->gamgam, now added. As a result, gamgam->gamgam xsec twice smaller

2015-06-25 Matthias Saimpert <[email protected]>
* exclusive gamma gamma->gamma gamma studies, exotic spin 0-even resonance added
* IPROC=16065, associated datacard, dataQED_AAexoticSpin0EvenResonances
* new parameters AAF0 (1/coupling), AAW (width const), AAA2 (dumping factor
for sqrt(s) dependence of the width)

2015-01-20 Christophe Royon <[email protected]>, Murilo Rangel <[email protected]>
* correct for normalisation for reggeon (applied in PDFs and not in flux)

2014-11-26 Christophe Royon <[email protected]>
* new code for heavy ion flux (nflux=11)
* new cards to transmit BMIN
* new code and fluxes for proton ion, ion proton via Pom/Photon exchange
* bug fix for photon pom

2014-09-11 Matthias Saimpert <[email protected]>
* Fix for gamma gamma->gamma gamma, high energy limit implemented (sqrt(s)>>m)
* Final release for gamma gamma->gamma gamma :)

2014-08-18 Matthias Saimpert <[email protected]>
* Anomalous aaaa with compHEP routine found to be wrong (around a factor 2.1
too small)
* Code from Gero and Sylvain replaced the compHEP routine, everything is now
in agreement
* Possibility to switch back to compHEP routine by commenting/uncommenting
fpmc.f l. 3435
* The new EFT routine takes interferences with SM aa production via W loop
into account

2014-03-20 Matthias Saimpert <[email protected]>
* General update/upgrade of the QED Diphoton exclusive process
* IPROC=16060, SM QED Exc diphoton production (W + massive fermions loops included)
* (old routine is IPROC=19800 kept for comparison purpose but is most likely
to be WRONG)
* IPROC=16061, SM QED Exc diphoton production at high mass (massive fermion
loops EXCLUDED)
* IPROC=16062, SM QED Exc diphoton production at low mass (W loop EXCLUDED)
* IPROC=16063, General exotic vector contributions with SM interf (SM fermion
loops EXCLUDED
* IPROC=16064, General exotic fermion contributions with SM interf (SM
fermion EXCLUDED)
* Corresponding datacards added

2014-01-21 Christophe Royon <[email protected]>
* with Goergiy Stelmakh,
* add Reggeon (nflux=10), Pomeron-Reggeon (nflux=19), Reggeon Pomeron (nflux=21)
* Photon-Pomeron (nflux=20), Pomeron-Photon (nflux=22)

2013-12-12 Matthias Saimpert <[email protected]>
* Adding aa->aa anomalous couplings (IPROC=16016) based on arXiv:1311.6815 [hep-ph]
* Adding ~/External/comphep_interface/sqme_aaaa folder
* Modifications of ~/Examples/ffcard., module., module_reco., fpmc_main. and ~/Fpmc/fpmc.

2013-03-26 Oldrich Kepka <[email protected]>
* Adding setup_lxplus.sh, to be used on lxplus to configure CERNLIB

2012-06-05 Rafal Staszewski
* New Examples/fpmc_main.f created to supercede module.f and module_reco.f.
module and module_reco are disabled in the Makefile. The new exacutable is
called fpmc.
* The information from jet alg. was not stored into ntuple. A change in
External/ntuple.f was needed to fix it.
* New OUTPUT option added to steering, determining the generator output.
Possible values:
0 : Only the text output with the cross section at the end.
1 : Ntuple with few histograms and a list of particles for each event.
2 : Jet CONE algorithm is performed and its output is also stored in the
ntuple.

2011-05-09 Oldrich Kepka <[email protected]>
* Tagging version fpmc_v01-05 - cleanup of nutples, version for testing


1 change: 1 addition & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ project(FPMC)
set(PROJECT_VERSION 1)

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wno-long-long -Wno-deprecated-declarations -pedantic -lgfortran -std=c++11 -g")
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -g -O1 -fno-automatic -fPIC")
set(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake")

set(MODULES Fpmc Herwig)
Expand Down
1 change: 0 additions & 1 deletion Examples/FPMC.INC

This file was deleted.

2 changes: 0 additions & 2 deletions Examples/HERWIG65.INC

This file was deleted.

19 changes: 19 additions & 0 deletions Examples/fpmc-bare.cc
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
#include "Fpmc/Fpmc.h"

#include <iostream>

using namespace std;

int main( int argc, char* argv[] )
{
fpmc::Fpmc generator( argv[1] );

generator.parameters().dump();

hwevnt_t ev;
for( unsigned int evt = 0; evt < 10; ++evt ) {
cout << "[FPMC] Processing event " << ( evt+1 ) << endl;
generator.next( ev );
}
return 0;
}
57 changes: 57 additions & 0 deletions Examples/fpmc-wrapper.cc
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
#include "Fpmc/HepMCWrapper.h"
#include "Fpmc/ArgsParser.h"

#include <iostream>
#include <iomanip>

#ifdef HEPMC_VERSION2
#include "HepMC/IO_GenEvent.h"
#else
#include "HepMC/WriterAscii.h"
#endif

using namespace std;

int main( int argc, char* argv[] )
{
fpmc::ArgsParser args( argc, argv, { "cfg", "nevents", "comenergy" }, { "fileout" } );
const auto required_params = args.required_parameters(), optional_params = args.optional_parameters();

//----------------------------
// Required parameters
string datacard_ = required_params.at( "cfg" );
unsigned int maxEvents_ = stoi( required_params.at( "nevents" ) );
double comEnergy_ = stof( required_params.at( "comenergy" ) );

// Optional parameters
string outputFileName_ = "fpmc.hepmc";
if ( optional_params.count("fileout") != 0 ) outputFileName_ = optional_params.at( "fileout" );

stringstream oss;
oss << "=========================================================" << endl
<< "FPMC (Wrapper) will initialize with parameters: " << endl
<< " Datacard: " << datacard_ << endl
<< " N events: " << maxEvents_ << endl
<< " COM energy: " << comEnergy_ << endl
<< " Output file: " << outputFileName_ << endl
<< "=========================================================" << endl;
cout << oss.str();

fpmc::HepMCWrapper generator( comEnergy_, datacard_.c_str() );


#ifdef HEPMC_VERSION2
HepMC::IO_GenEvent output( outputFileName_, ios::out );
#else
HepMC::WriterAscii output( outputFileName_ );
#endif
for( unsigned int evt = 0; evt < maxEvents_; ++evt ) {
cout << "[FPMC Wrapper] Processing event " << ( evt+1 ) << endl;
#ifdef HEPMC_VERSION2
output.write_event( generator.event() );
#else
output.write_event( *generator.event() );
#endif
}
return 0;
}
Loading