herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.3.0
MatrixElement
FxFx
FxFxReader.h
1
// -*- C++ -*-
2
//
3
// FxFxReader.h is a part of ThePEG - Toolkit for HEP Event Generation
4
// Copyright (C) 1999-2019 Leif Lonnblad
5
//
6
// ThePEG is licenced under version 3 of the GPL, see COPYING for details.
7
// Please respect the MCnet academic guidelines, see GUIDELINES for details.
8
//
9
#ifndef THEPEG_FxFxReader_H
10
#define THEPEG_FxFxReader_H
11
// This is the declaration of the FxFxReader class.
12
13
#include "FxFx.h"
14
#include "ThePEG/Handlers/HandlerBase.h"
15
#include "ThePEG/Utilities/ObjectIndexer.h"
16
#include "ThePEG/Utilities/Exception.h"
17
#include "ThePEG/Utilities/XSecStat.h"
18
#include "ThePEG/PDF/PartonBinInstance.h"
19
#include "ThePEG/PDF/PartonBin.fh"
20
#include "ThePEG/MatrixElement/ReweightBase.h"
21
#include "FxFxEventHandler.fh"
22
#include "FxFxReader.fh"
23
#include "ThePEG/Utilities/CFile.h"
24
#include <cstdio>
25
#include <cstring>
26
27
namespace
ThePEG
{
28
77
class
FxFxReader
:
public
HandlerBase
,
public
LastXCombInfo
<> {
78
82
friend
class
FxFxEventHandler
;
83
88
typedef
map<int,XSecStat>
StatMap
;
89
94
typedef
map<tcPBPair,XCombPtr>
XCombMap
;
95
99
typedef
vector<ReweightPtr>
ReweightVector
;
100
101
public
:
102
110
FxFxReader
(
bool
active
=
false
);
111
115
FxFxReader
(
const
FxFxReader
&);
116
120
virtual
~FxFxReader
();
122
123
public
:
124
134
virtual
void
open
() = 0;
135
141
virtual
bool
doReadEvent
() = 0;
142
146
virtual
void
close
() = 0;
147
151
// virtual vector<string> optWeightsNamesFunc();
152
virtual
vector<string>
optWeightsNamesFunc
() = 0;
153
//virtual vector<string*> optWeightNamesFunc() = 0;
154
vector<string> optionalWeightsNames;
155
160
// vector<string> optionalWeightsNames;
161
162
164
174
virtual
void
initialize
(
FxFxEventHandler
& eh);
175
188
virtual
double
getEvent
();
189
195
virtual
bool
readEvent
();
196
202
virtual
void
skip
(
long
n);
203
210
tXCombPtr
getXComb
();
211
216
tSubProPtr
getSubProcess
();
217
224
virtual
long
scan
();
225
230
virtual
void
initStat
();
231
237
double
reweight
();
238
243
virtual
void
fillEvent
();
244
249
void
reset
();
250
258
virtual
void
setWeightScale
(
long
neve);
259
261
264
270
static
size_t
eventSize
(
int
N) {
271
return
(N + 1)*
sizeof
(int) +
// IDPRUP, ISTUP
272
(7*N + 4)*
sizeof
(double) +
// XWGTUP, SCALUP, AQEDUP, AQCDUP, PUP,
273
// VTIMUP, SPINUP
274
N*
sizeof
(
long
) +
// IDUP
275
2*N*
sizeof
(pair<int,int>) +
// MOTHUP, ICOLUP
276
sizeof
(pair<double,double>) +
// XPDWUP.
277
2*
sizeof
(double);
// lastweight and preweight
278
}
279
286
double
eventWeight
()
const
{
return
hepeup
.
XWGTUP
*
lastweight
; }
287
291
const
map<string,double>&
optionalEventWeights
()
const
{
return
optionalWeights
; }
292
296
const
long
&
LHEEventNum
()
const
{
return
LHEeventnum
; }
297
301
const
int
&
optionalEventnpLO
()
const
{
return
optionalnpLO
; }
302
const
int
& optionalEventnpNLO()
const
{
return
optionalnpNLO
; }
303
308
const
PBIPair
&
partonBinInstances
()
const
{
return
thePartonBinInstances
; }
312
const
PPair
&
beams
()
const
{
return
theBeams
; }
317
const
PPair
&
incoming
()
const
{
return
theIncoming
; }
322
const
PVector
&
outgoing
()
const
{
return
theOutgoing
; }
327
const
PVector
&
intermediates
()
const
{
return
theIntermediates
; }
334
int
maxMultCKKW
()
const
{
return
theMaxMultCKKW
; }
341
int
minMultCKKW
()
const
{
return
theMinMultCKKW
; }
//@}
342
349
long
NEvents
()
const
{
return
theNEvents
; }
350
355
long
currentPosition
()
const
{
return
position
; }
356
362
long
maxScan
()
const
{
return
theMaxScan
; }
363
367
bool
active
()
const
{
return
isActive
; }
368
372
bool
negativeWeights
()
const
{
return
heprup
.
IDWTUP
< 0; }
373
377
const
XSecStat
&
xSecStats
()
const
{
return
stats
; }
378
382
const
StatMap
&
processStats
()
const
{
return
statmap
; }
383
388
void
select
(
double
weight) {
389
stats
.
select
(weight);
390
statmap
[
hepeup
.
IDPRUP
].select(weight);
391
}
392
396
void
accept
() {
397
stats
.
accept
();
398
statmap
[
hepeup
.
IDPRUP
].accept();
399
}
400
404
void
reject
(
double
w) {
405
stats
.
reject
(w);
406
statmap
[
hepeup
.
IDPRUP
].reject(w);
407
}
408
412
virtual
void
increaseMaxXSec
(CrossSection maxxsec);
413
417
tPExtrPtr
partonExtractor
()
const
{
return
thePartonExtractor
; }
418
423
tCascHdlPtr
CKKWHandler
()
const
{
return
theCKKW
; }
424
429
const
PartonPairVec &
partonBins
()
const
{
return
thePartonBins
; }
430
435
const
XCombMap
&
xCombs
()
const
{
return
theXCombs
; }
436
440
const
Cuts
&
cuts
()
const
{
return
*
theCuts
; }
441
443
444
protected
:
445
448
453
string
cacheFileName
()
const
{
return
theCacheFileName
; }
454
459
bool
cutEarly
()
const
{
return
doCutEarly
; }
460
464
CFile
cacheFile
()
const
{
return
theCacheFile
;}
465
469
void
openReadCacheFile
();
470
474
void
openWriteCacheFile
();
475
479
void
closeCacheFile
();
480
484
void
cacheEvent
()
const
;
485
489
bool
uncacheEvent
();
490
496
void
reopen
();
497
501
template
<
typename
T>
502
static
char
*
mwrite
(
char
* pos,
const
T & t,
size_t
n = 1) {
503
std::memcpy(pos, &t, n*
sizeof
(T));
504
return
pos + n*
sizeof
(T);
505
}
506
510
template
<
typename
T>
511
static
const
char
*
mread
(
const
char
* pos, T & t,
size_t
n = 1) {
512
std::memcpy(&t, pos, n*
sizeof
(T));
513
return
pos + n*
sizeof
(T);
514
}
515
517
526
virtual
bool
checkPartonBin
();
527
532
virtual
void
createParticles
();
533
539
virtual
tcPBPair
createPartonBinInstances
();
540
546
virtual
void
createBeams
();
547
551
virtual
void
connectMothers
();
553
554
public
:
555
562
void
persistentOutput
(
PersistentOStream
& os)
const
;
563
569
void
persistentInput
(
PersistentIStream
& is,
int
version);
571
575
static
void
Init
();
576
577
protected
:
578
585
void
NEvents
(
long
x) {
theNEvents
= x; }
586
591
XCombMap
&
xCombs
() {
return
theXCombs
; }
593
601
virtual
void
doinit
();
602
607
virtual
void
doinitrun
();
608
613
virtual
void
dofinish
() {
614
close
();
615
HandlerBase::dofinish
();
616
}
617
622
virtual
bool
preInitialize
()
const
;
623
628
virtual
void
initPDFs
();
630
631
protected
:
632
636
HEPRUP
heprup
;
637
641
HEPEUP
hepeup
;
642
646
tcPDPair
inData
;
647
653
pair<PDFPtr,PDFPtr>
inPDF
;
654
658
pair<cPDFPtr,cPDFPtr>
outPDF
;
659
663
PExtrPtr
thePartonExtractor
;
664
668
tCascHdlPtr
theCKKW
;
669
674
PartonPairVec
thePartonBins
;
675
680
XCombMap
theXCombs
;
681
685
CutsPtr
theCuts
;
686
691
long
theNEvents
;
692
697
long
position
;
698
702
int
reopened
;
703
709
long
theMaxScan
;
710
714
bool
scanning
;
715
719
bool
isActive
;
720
725
string
theCacheFileName
;
726
731
bool
doCutEarly
;
732
736
XSecStat
stats
;
737
741
StatMap
statmap
;
742
747
PBIPair
thePartonBinInstances
;
748
753
ObjectIndexer<long,ColourLine>
colourIndex
;
754
759
ObjectIndexer<long,Particle>
particleIndex
;
760
764
PPair
theBeams
;
765
770
PPair
theIncoming
;
771
776
PVector
theOutgoing
;
777
782
PVector
theIntermediates
;
783
787
CFile
theCacheFile
;
788
792
ReweightVector
reweights
;
793
797
ReweightVector
preweights
;
798
802
double
preweight
;
803
807
bool
reweightPDF
;
808
813
bool
doInitPDFs
;
814
821
int
theMaxMultCKKW
;
822
829
int
theMinMultCKKW
;
830
836
double
lastweight
;
837
841
map<string,double>
optionalWeights
;
842
846
long
LHEeventnum
;
847
853
double
maxFactor
;
854
858
int
optionalnpLO
;
859
863
int
optionalnpNLO
;
864
869
CrossSection
weightScale
;
870
874
vector<double>
xSecWeights
;
875
880
map<int,double>
maxWeights
;
881
885
bool
skipping
;
886
890
unsigned
int
theMomentumTreatment
;
891
896
bool
useWeightWarnings
;
897
901
bool
theReOpenAllowed
;
902
906
bool
theIncludeSpin
;
907
908
private
:
909
911
void
setBeamA
(
long
id
);
913
long
getBeamA
()
const
;
915
void
setBeamB
(
long
id
);
917
long
getBeamB
()
const
;
919
void
setEBeamA
(Energy e);
921
Energy
getEBeamA
()
const
;
923
void
setEBeamB
(Energy e);
925
Energy
getEBeamB
()
const
;
927
void
setPDFA
(
PDFPtr
);
929
PDFPtr
getPDFA
()
const
;
931
void
setPDFB
(
PDFPtr
);
933
PDFPtr
getPDFB
()
const
;
934
935
private
:
936
940
static
AbstractClassDescription<FxFxReader>
initFxFxReader
;
941
945
FxFxReader
&
operator=
(
const
FxFxReader
&) =
delete
;
946
947
public
:
948
952
class
FxFxInconsistencyError:
public
Exception
{};
953
956
class
FxFxReopenWarning:
public
Exception
{};
957
960
class
FxFxReopenError:
public
Exception {};
961
964
class
FxFxInitError:
public
InitException {};
967
};
968
970
ostream &
operator<<
(ostream & os,
const
HEPEUP & h);
971
972
}
973
974
975
#include "ThePEG/Utilities/ClassTraits.h"
976
977
namespace
ThePEG
{
978
985
template
<>
986
struct
BaseClassTrait<FxFxReader,1>:
public
ClassTraitsType {
988
typedef
HandlerBase
NthBase
;
989
};
990
996
template
<>
997
struct
ClassTraits<FxFxReader>
998
:
public
ClassTraitsBase<FxFxReader> {
1002
static
string
className
() {
return
"Herwig::FxFxReader"
; }
1008
static
string
library
() {
return
"HwFxFx.so"
; }
1009
1010
};
1011
1014
}
1015
1016
#endif
/* THEPEG_FxFxReader_H */
ThePEG::AbstractClassDescription
ThePEG::CFile
ThePEG::Cuts
ThePEG::Exception
ThePEG::FxFxEventHandler
The FxFxEventHandler inherits from the general EventHandler class and administers the reading of even...
Definition:
FxFxEventHandler.h:40
ThePEG::FxFxReader
FxFxReader is an abstract base class to be used for objects which reads event files or streams from m...
Definition:
FxFxReader.h:77
ThePEG::FxFxReader::optionalEventnpLO
const int & optionalEventnpLO() const
Return the optional npLO and npNLO.
Definition:
FxFxReader.h:301
ThePEG::FxFxReader::~FxFxReader
virtual ~FxFxReader()
Destructor.
ThePEG::FxFxReader::setWeightScale
virtual void setWeightScale(long neve)
Possibility for subclasses to recover from non-conformant settings of XMAXUP when an event file has b...
ThePEG::FxFxReader::persistentInput
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
ThePEG::FxFxReader::CKKWHandler
tCascHdlPtr CKKWHandler() const
Return a possibly null pointer to a CascadeHandler to be used for CKKW-reweighting.
Definition:
FxFxReader.h:423
ThePEG::FxFxReader::doinit
virtual void doinit()
Initialize this object after the setup phase before saving an EventGenerator to disk.
ThePEG::FxFxReader::heprup
HEPRUP heprup
The HEPRUP common block.
Definition:
FxFxReader.h:636
ThePEG::FxFxReader::theCuts
CutsPtr theCuts
The Cuts object to be used for this reader.
Definition:
FxFxReader.h:685
ThePEG::FxFxReader::doCutEarly
bool doCutEarly
Determines whether to apply cuts to events before converting them to ThePEG format.
Definition:
FxFxReader.h:731
ThePEG::FxFxReader::theNEvents
long theNEvents
The number of events in this reader.
Definition:
FxFxReader.h:691
ThePEG::FxFxReader::NEvents
void NEvents(long x)
The number of events in this reader.
Definition:
FxFxReader.h:585
ThePEG::FxFxReader::reset
void reset()
Removes the particles created in the last generated event, preparing to produce a new one.
ThePEG::FxFxReader::optionalWeights
map< string, double > optionalWeights
The optional weights associated to the last read events.
Definition:
FxFxReader.h:841
ThePEG::FxFxReader::optWeightsNamesFunc
virtual vector< string > optWeightsNamesFunc()=0
return the weight names
ThePEG::FxFxReader::reopen
void reopen()
Reopen a reader.
ThePEG::FxFxReader::setPDFA
void setPDFA(PDFPtr)
Access function for the interface.
ThePEG::FxFxReader::getBeamB
long getBeamB() const
Access function for the interface.
ThePEG::FxFxReader::xCombs
const XCombMap & xCombs() const
The map of XComb objects indexed by the corresponding PartonBin pair.
Definition:
FxFxReader.h:435
ThePEG::FxFxReader::lastweight
double lastweight
The weight multiplying the last read event due to PDF reweighting, CKKW reweighting or assigned rewei...
Definition:
FxFxReader.h:836
ThePEG::FxFxReader::theOutgoing
PVector theOutgoing
The instances of the outgoing particles from the sub process for the current event.
Definition:
FxFxReader.h:776
ThePEG::FxFxReader::preweights
ReweightVector preweights
The preweight objects modifying the weights of this reader.
Definition:
FxFxReader.h:797
ThePEG::FxFxReader::outgoing
const PVector & outgoing() const
Return the instances of the outgoing particles from the sub process for the current event.
Definition:
FxFxReader.h:322
ThePEG::FxFxReader::cacheFile
CFile cacheFile() const
File stream for the cache.
Definition:
FxFxReader.h:464
ThePEG::FxFxReader::partonBins
const PartonPairVec & partonBins() const
The pairs of PartonBin objects describing the partons which can be extracted by the PartonExtractor o...
Definition:
FxFxReader.h:429
ThePEG::FxFxReader::theIntermediates
PVector theIntermediates
The instances of the intermediate particles in the sub process for the current event.
Definition:
FxFxReader.h:782
ThePEG::FxFxReader::setBeamA
void setBeamA(long id)
Access function for the interface.
ThePEG::FxFxReader::inPDF
pair< PDFPtr, PDFPtr > inPDF
The PDFBase objects which has been used for the beam particle when generating the events being read.
Definition:
FxFxReader.h:653
ThePEG::FxFxReader::reject
void reject(double w)
Reject the current event assuming it was previously accepted.
Definition:
FxFxReader.h:404
ThePEG::FxFxReader::intermediates
const PVector & intermediates() const
Return the instances of the intermediate particles in the sub process for the current event.
Definition:
FxFxReader.h:327
ThePEG::FxFxReader::theMomentumTreatment
unsigned int theMomentumTreatment
Option for the treatment of the momenta supplied.
Definition:
FxFxReader.h:890
ThePEG::FxFxReader::partonBinInstances
const PBIPair & partonBinInstances() const
The pair of PartonBinInstance objects describing the current incoming partons in the event.
Definition:
FxFxReader.h:308
ThePEG::FxFxReader::mread
static const char * mread(const char *pos, T &t, size_t n=1)
Helper function to read a variable from a memory location.
Definition:
FxFxReader.h:511
ThePEG::FxFxReader::close
virtual void close()=0
Close the file or stream from which events have been read.
ThePEG::FxFxReader::optionalnpNLO
int optionalnpNLO
npNLO for FxFx merging
Definition:
FxFxReader.h:863
ThePEG::FxFxReader::theMinMultCKKW
int theMinMultCKKW
If this reader is to be used (possibly together with others) for CKKW reweighting and veto,...
Definition:
FxFxReader.h:829
ThePEG::FxFxReader::negativeWeights
bool negativeWeights() const
True if negative weights may be produced.
Definition:
FxFxReader.h:372
ThePEG::FxFxReader::theBeams
PPair theBeams
The instances of the beam particles for the current event.
Definition:
FxFxReader.h:764
ThePEG::FxFxReader::setEBeamB
void setEBeamB(Energy e)
Access function for the interface.
ThePEG::FxFxReader::dofinish
virtual void dofinish()
Finalize this object.
Definition:
FxFxReader.h:613
ThePEG::FxFxReader::getPDFA
PDFPtr getPDFA() const
Access function for the interface.
ThePEG::FxFxReader::maxWeights
map< int, double > maxWeights
Individual maximum weights for individual (possibly reweighted) processes.
Definition:
FxFxReader.h:880
ThePEG::FxFxReader::xSecWeights
vector< double > xSecWeights
Individual scales for different sub-processes if reweighted.
Definition:
FxFxReader.h:874
ThePEG::FxFxReader::maxMultCKKW
int maxMultCKKW() const
If this reader is to be used (possibly together with others) for CKKW reweighting and veto,...
Definition:
FxFxReader.h:334
ThePEG::FxFxReader::mwrite
static char * mwrite(char *pos, const T &t, size_t n=1)
Helper function to write a variable to a memory location.
Definition:
FxFxReader.h:502
ThePEG::FxFxReader::optionalEventWeights
const map< string, double > & optionalEventWeights() const
Return the optional named weights associated to the current event.
Definition:
FxFxReader.h:291
ThePEG::FxFxReader::processStats
const StatMap & processStats() const
Collected statistics about the individual processes.
Definition:
FxFxReader.h:382
ThePEG::FxFxReader::reweightPDF
bool reweightPDF
Should the event be reweighted by PDFs used by the PartonExtractor?
Definition:
FxFxReader.h:807
ThePEG::FxFxReader::getBeamA
long getBeamA() const
Access function for the interface.
ThePEG::FxFxReader::isActive
bool isActive
True if this is an active reader.
Definition:
FxFxReader.h:719
ThePEG::FxFxReader::LHEeventnum
long LHEeventnum
The event number.
Definition:
FxFxReader.h:846
ThePEG::FxFxReader::maxFactor
double maxFactor
If the maximum cross section of this reader has been increased with increaseMaxXSec(),...
Definition:
FxFxReader.h:853
ThePEG::FxFxReader::reweight
double reweight()
Reweights the current event using the reweights and preweights vectors.
ThePEG::FxFxReader::accept
void accept()
Accept the current event assuming it was previously selcted.
Definition:
FxFxReader.h:396
ThePEG::FxFxReader::preInitialize
virtual bool preInitialize() const
Return true if this object needs to be initialized before all other objects because it needs to extra...
ThePEG::FxFxReader::doInitPDFs
bool doInitPDFs
Should PDFBase objects be constructed from the information in the event file in the initialization?
Definition:
FxFxReader.h:813
ThePEG::FxFxReader::getEvent
virtual double getEvent()
Calls readEvent() or uncacheEvent() to read information into the FxFx common block variables.
ThePEG::FxFxReader::cacheEvent
void cacheEvent() const
Write the current event to the cache file.
ThePEG::FxFxReader::weightScale
CrossSection weightScale
The (reweighted) XWGTUP value should be scaled with this cross section when compared to the overestim...
Definition:
FxFxReader.h:869
ThePEG::FxFxReader::initialize
virtual void initialize(FxFxEventHandler &eh)
Initialize.
ThePEG::FxFxReader::ReweightVector
vector< ReweightPtr > ReweightVector
A vector of pointers to ReweightBase objects.
Definition:
FxFxReader.h:99
ThePEG::FxFxReader::outPDF
pair< cPDFPtr, cPDFPtr > outPDF
The PDFBase object to be used in the subsequent generation.
Definition:
FxFxReader.h:658
ThePEG::FxFxReader::theCKKW
tCascHdlPtr theCKKW
A pointer to a CascadeHandler to be used for CKKW-reweighting.
Definition:
FxFxReader.h:668
ThePEG::FxFxReader::incoming
const PPair & incoming() const
Return the instances of the incoming particles to the sub process for the current event.
Definition:
FxFxReader.h:317
ThePEG::FxFxReader::thePartonExtractor
PExtrPtr thePartonExtractor
The PartonExtractor object used to construct remnants.
Definition:
FxFxReader.h:663
ThePEG::FxFxReader::eventWeight
double eventWeight() const
The current event weight given by XWGTUP times possible reweighting.
Definition:
FxFxReader.h:286
ThePEG::FxFxReader::currentPosition
long currentPosition() const
The number of events produced so far.
Definition:
FxFxReader.h:355
ThePEG::FxFxReader::StatMap
map< int, XSecStat > StatMap
Map for accumulating statistics of cross sections per process number.
Definition:
FxFxReader.h:88
ThePEG::FxFxReader::theCacheFile
CFile theCacheFile
File stream for the cache.
Definition:
FxFxReader.h:787
ThePEG::FxFxReader::stats
XSecStat stats
Collect statistics for this reader.
Definition:
FxFxReader.h:736
ThePEG::FxFxReader::getPDFB
PDFPtr getPDFB() const
Access function for the interface.
ThePEG::FxFxReader::LHEEventNum
const long & LHEEventNum() const
Return the Les Houches event number associated with the current event.
Definition:
FxFxReader.h:296
ThePEG::FxFxReader::skipping
bool skipping
Is set to true when getEvent() is called from skip(int).
Definition:
FxFxReader.h:885
ThePEG::FxFxReader::beams
const PPair & beams() const
Return the instances of the beam particles for the current event.
Definition:
FxFxReader.h:312
ThePEG::FxFxReader::persistentOutput
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
ThePEG::FxFxReader::theIncoming
PPair theIncoming
The instances of the incoming particles to the sub process for the current event.
Definition:
FxFxReader.h:770
ThePEG::FxFxReader::position
long position
The number of events produced by this reader so far.
Definition:
FxFxReader.h:697
ThePEG::FxFxReader::operator=
FxFxReader & operator=(const FxFxReader &)=delete
Private and non-existent assignment operator.
ThePEG::FxFxReader::XCombMap
map< tcPBPair, XCombPtr > XCombMap
Map of XComb objects describing the incoming partons indexed by the corresponding PartonBin pair.
Definition:
FxFxReader.h:94
ThePEG::FxFxReader::doinitrun
virtual void doinitrun()
Initialize this object.
ThePEG::FxFxReader::getEBeamA
Energy getEBeamA() const
Access function for the interface.
ThePEG::FxFxReader::openReadCacheFile
void openReadCacheFile()
Open the cache file for reading.
ThePEG::FxFxReader::uncacheEvent
bool uncacheEvent()
Read an event from the cache file.
ThePEG::FxFxReader::inData
tcPDPair inData
The ParticleData objects corresponding to the incoming particles.
Definition:
FxFxReader.h:646
ThePEG::FxFxReader::FxFxReader
FxFxReader(const FxFxReader &)
Copy-constructor.
ThePEG::FxFxReader::particleIndex
ObjectIndexer< long, Particle > particleIndex
Association between Particles and indices in the current translation.
Definition:
FxFxReader.h:759
ThePEG::FxFxReader::initPDFs
virtual void initPDFs()
Called from doinit() to extract PDFs from the event file and add the corresponding objects to the cur...
ThePEG::FxFxReader::partonExtractor
tPExtrPtr partonExtractor() const
The PartonExtractor object used to construct remnants.
Definition:
FxFxReader.h:417
ThePEG::FxFxReader::statmap
StatMap statmap
Collect statistics for each individual process.
Definition:
FxFxReader.h:741
ThePEG::FxFxReader::open
virtual void open()=0
Open a file or stream with events and read in the run information into the heprup variable.
ThePEG::FxFxReader::theCacheFileName
string theCacheFileName
Name of file used to cache the events form the reader in a fast-readable form.
Definition:
FxFxReader.h:725
ThePEG::FxFxReader::thePartonBins
PartonPairVec thePartonBins
The pairs of PartonBin objects describing the partons which can be extracted by the PartonExtractor o...
Definition:
FxFxReader.h:674
ThePEG::FxFxReader::initFxFxReader
static AbstractClassDescription< FxFxReader > initFxFxReader
Describe an abstract base class with persistent data.
Definition:
FxFxReader.h:940
ThePEG::FxFxReader::Init
static void Init()
Standard Init function used to initialize the interfaces.
ThePEG::FxFxReader::NEvents
long NEvents() const
The number of events found in this reader.
Definition:
FxFxReader.h:349
ThePEG::FxFxReader::createParticles
virtual void createParticles()
Create instances of all particles in the event and store them in particleIndex.
ThePEG::FxFxReader::theMaxScan
long theMaxScan
The maximum number of events to scan to collect information about processes and cross sections.
Definition:
FxFxReader.h:709
ThePEG::FxFxReader::hepeup
HEPEUP hepeup
The HEPEUP common block.
Definition:
FxFxReader.h:641
ThePEG::FxFxReader::createPartonBinInstances
virtual tcPBPair createPartonBinInstances()
Using the already created particles create a pair of PartonBinInstance objects corresponding to the i...
ThePEG::FxFxReader::setEBeamA
void setEBeamA(Energy e)
Access function for the interface.
ThePEG::FxFxReader::theMaxMultCKKW
int theMaxMultCKKW
If this reader is to be used (possibly together with others) for CKKW reweighting and veto,...
Definition:
FxFxReader.h:821
ThePEG::FxFxReader::colourIndex
ObjectIndexer< long, ColourLine > colourIndex
Association between ColourLines and colour indices in the current translation.
Definition:
FxFxReader.h:753
ThePEG::FxFxReader::cacheFileName
string cacheFileName() const
Name of file used to cache the events form the reader in a fast-readable form.
Definition:
FxFxReader.h:453
ThePEG::FxFxReader::theIncludeSpin
bool theIncludeSpin
Use the spin information.
Definition:
FxFxReader.h:906
ThePEG::FxFxReader::thePartonBinInstances
PBIPair thePartonBinInstances
The pair of PartonBinInstance objects describing the current incoming partons in the event.
Definition:
FxFxReader.h:747
ThePEG::FxFxReader::minMultCKKW
int minMultCKKW() const
If this reader is to be used (possibly together with others) for CKKW reweighting and veto,...
Definition:
FxFxReader.h:341
ThePEG::FxFxReader::useWeightWarnings
bool useWeightWarnings
Set to true if warnings about possible weight incompatibilities should be issued.
Definition:
FxFxReader.h:896
ThePEG::FxFxReader::increaseMaxXSec
virtual void increaseMaxXSec(CrossSection maxxsec)
Increase the overestimated cross section for this reader.
ThePEG::FxFxReader::eventSize
static size_t eventSize(int N)
Return the size of this event in bytes.
Definition:
FxFxReader.h:270
ThePEG::FxFxReader::cuts
const Cuts & cuts() const
The Cuts object to be used for this reader.
Definition:
FxFxReader.h:440
ThePEG::FxFxReader::optionalnpLO
int optionalnpLO
npLO for FxFx merging
Definition:
FxFxReader.h:858
ThePEG::FxFxReader::xSecStats
const XSecStat & xSecStats() const
The collected cross section statistics for this reader.
Definition:
FxFxReader.h:377
ThePEG::FxFxReader::preweight
double preweight
The factor with which this reader was last pre-weighted.
Definition:
FxFxReader.h:802
ThePEG::FxFxReader::scanning
bool scanning
Flag to tell whether we are in the process of scanning.
Definition:
FxFxReader.h:714
ThePEG::FxFxReader::getEBeamB
Energy getEBeamB() const
Access function for the interface.
ThePEG::FxFxReader::cutEarly
bool cutEarly() const
Determines whether to apply cuts to events converting them to ThePEG format.
Definition:
FxFxReader.h:459
ThePEG::FxFxReader::maxScan
long maxScan() const
The maximum number of events to scan to collect information about processes and cross sections.
Definition:
FxFxReader.h:362
ThePEG::FxFxReader::fillEvent
virtual void fillEvent()
Converts the information in the Les Houches common block variables into a Particle objects.
ThePEG::FxFxReader::openWriteCacheFile
void openWriteCacheFile()
Open the cache file for writing.
ThePEG::FxFxReader::closeCacheFile
void closeCacheFile()
Close the cache file;.
ThePEG::FxFxReader::createBeams
virtual void createBeams()
Create instances of the incoming beams in the event and store them in particleIndex.
ThePEG::FxFxReader::setBeamB
void setBeamB(long id)
Access function for the interface.
ThePEG::FxFxReader::initStat
virtual void initStat()
Take the information corresponding to the HEPRUP common block and initialize the statistics for this ...
ThePEG::FxFxReader::skip
virtual void skip(long n)
Skip n events.
ThePEG::FxFxReader::doReadEvent
virtual bool doReadEvent()=0
Read the next event from the file or stream into the corresponding protected variables.
ThePEG::FxFxReader::theReOpenAllowed
bool theReOpenAllowed
Option to allow reopening of the file.
Definition:
FxFxReader.h:901
ThePEG::FxFxReader::connectMothers
virtual void connectMothers()
Go through the mother indices and connect up the Particles.
ThePEG::FxFxReader::reweights
ReweightVector reweights
The reweight objects modifying the weights of this reader.
Definition:
FxFxReader.h:792
ThePEG::FxFxReader::FxFxReader
FxFxReader(bool active=false)
Default constructor.
ThePEG::FxFxReader::checkPartonBin
virtual bool checkPartonBin()
Check the existence of a pair of PartonBin objects corresponding to the current event.
ThePEG::FxFxReader::scan
virtual long scan()
Scan the file or stream to obtain information about cross section weights and particles etc.
ThePEG::FxFxReader::reopened
int reopened
The number of times this reader has been reopened.
Definition:
FxFxReader.h:702
ThePEG::FxFxReader::active
bool active() const
Return true if this reader is active.
Definition:
FxFxReader.h:367
ThePEG::FxFxReader::readEvent
virtual bool readEvent()
Calls doReadEvent() and performs pre-defined reweightings.
ThePEG::FxFxReader::xCombs
XCombMap & xCombs()
The map of XComb objects indexed by the corresponding PartonBin pair.
Definition:
FxFxReader.h:591
ThePEG::FxFxReader::getXComb
tXCombPtr getXComb()
Get an XComb object.
ThePEG::FxFxReader::setPDFB
void setPDFB(PDFPtr)
Access function for the interface.
ThePEG::FxFxReader::getSubProcess
tSubProPtr getSubProcess()
Get a SubProcess object corresponding to the information in the Les Houches common block variables.
ThePEG::FxFxReader::theXCombs
XCombMap theXCombs
The map of XComb objects indexed by the corresponding PartonBin pair.
Definition:
FxFxReader.h:680
ThePEG::FxFxReader::select
void select(double weight)
Select the current event.
Definition:
FxFxReader.h:388
ThePEG::HEPEUP
ThePEG::HEPEUP::IDPRUP
int IDPRUP
Definition:
FxFx.h:177
ThePEG::HEPEUP::XWGTUP
double XWGTUP
Definition:
FxFx.h:182
ThePEG::HEPRUP
ThePEG::HEPRUP::IDWTUP
int IDWTUP
Definition:
FxFx.h:89
ThePEG::HandlerBase
ThePEG::InterfacedBase::dofinish
virtual void dofinish()
ThePEG::LastXCombInfo
ThePEG::ObjectIndexer
ThePEG::PersistentIStream
ThePEG::PersistentOStream
ThePEG::XSecStat
ThePEG::XSecStat::accept
void accept()
ThePEG::XSecStat::select
void select(double weight)
ThePEG::XSecStat::reject
void reject(double weight=1.0)
ThePEG
ThePEG::PPair
pair< PPtr, PPtr > PPair
ThePEG::tPExtrPtr
ThePEG::Ptr< PartonExtractor >::transient_pointer tPExtrPtr
ThePEG::PBIPair
pair< PBIPtr, PBIPtr > PBIPair
ThePEG::tSubProPtr
ThePEG::Ptr< SubProcess >::transient_pointer tSubProPtr
ThePEG::tcPDPair
pair< tcPDPtr, tcPDPtr > tcPDPair
ThePEG::tCascHdlPtr
ThePEG::Ptr< CascadeHandler >::transient_pointer tCascHdlPtr
ThePEG::PVector
vector< PPtr > PVector
ThePEG::tXCombPtr
ThePEG::Ptr< XComb >::transient_pointer tXCombPtr
ThePEG::operator<<
ostream & operator<<(ostream &, const Collision &)
ThePEG::PDFPtr
ThePEG::Ptr< PDFBase >::pointer PDFPtr
ThePEG::PExtrPtr
ThePEG::Ptr< PartonExtractor >::pointer PExtrPtr
ThePEG::BaseClassTrait::NthBase
int NthBase
ThePEG::ClassTraitsBase::className
static string className()
ThePEG::ClassTraitsBase::library
static string library()
Generated on Thu Jun 20 2024 17:50:52 for Herwig by
1.9.6