FastJet
3.4.0
|
Parameters to configure the computation of jet areas using ghosts. More...
#include <fastjet/GhostedAreaSpec.hh>
Public Member Functions | |
GhostedAreaSpec () | |
default constructor | |
GhostedAreaSpec (double ghost_maxrap_in, BasicRandom< double > *user_random_generator) | |
explicit constructor More... | |
GhostedAreaSpec (double ghost_maxrap_in, int repeat_in=gas::def_repeat, double ghost_area_in=gas::def_ghost_area, double grid_scatter_in=gas::def_grid_scatter, double pt_scatter_in=gas::def_pt_scatter, double mean_ghost_pt_in=gas::def_mean_ghost_pt, BasicRandom< double > *user_random_generator=NULL) | |
explicit constructor | |
GhostedAreaSpec (double ghost_minrap_in, double ghost_maxrap_in, int repeat_in=gas::def_repeat, double ghost_area_in=gas::def_ghost_area, double grid_scatter_in=gas::def_grid_scatter, double pt_scatter_in=gas::def_pt_scatter, double mean_ghost_pt_in=gas::def_mean_ghost_pt, BasicRandom< double > *user_random_generator=NULL) | |
explicit constructor | |
GhostedAreaSpec (const Selector &selector, int repeat_in=gas::def_repeat, double ghost_area_in=gas::def_ghost_area, double grid_scatter_in=gas::def_grid_scatter, double pt_scatter_in=gas::def_pt_scatter, double mean_ghost_pt_in=gas::def_mean_ghost_pt, BasicRandom< double > *user_random_generator=NULL) | |
constructor based on a Selector More... | |
void | _initialize () |
does the initialization of actual ghost parameters More... | |
double | ghost_rapmax () const |
double | ghost_maxrap () const |
double | ghost_etamax () const |
double | ghost_maxeta () const |
double | ghost_area () const |
double | grid_scatter () const |
double | pt_scatter () const |
double | mean_ghost_pt () const |
int | repeat () const |
bool | fj2_placement () const |
double | kt_scatter () const |
double | mean_ghost_kt () const |
double | actual_ghost_area () const |
int | n_ghosts () const |
void | set_ghost_area (double val) |
void | set_ghost_rapmax (double val) |
void | set_ghost_maxrap (double val) |
void | set_ghost_etamax (double val) |
void | set_ghost_maxeta (double val) |
void | set_grid_scatter (double val) |
void | set_pt_scatter (double val) |
void | set_mean_ghost_pt (double val) |
void | set_repeat (int val) |
void | set_kt_scatter (double val) |
void | set_mean_ghost_kt (double val) |
void | set_fj2_placement (bool val) |
if val is true, set ghost placement as it was in FastJet 2.X. More... | |
int | nphi () const |
return nphi (ghosts layed out (-nrap, 0..nphi-1), (-nrap+1,0..nphi-1), ... More... | |
int | nrap () const |
void | get_random_status (std::vector< int > &__iseed) const |
get all relevant information about the status of the random number generator, so that it can be reset subsequently with set_random_status. | |
void | set_random_status (const std::vector< int > &__iseed) |
set the status of the random number generator, as obtained previously with get_random_status. More... | |
GhostedAreaSpec | with_fixed_seed (const std::vector< int > &__iseed) const |
allows to return a copy of this GhostedAreaSpec with a local set of seeds | |
void | get_fixed_seed (std::vector< int > &__iseed) const |
returns the current fixed seed | |
void | get_last_seed (std::vector< int > &__iseed) const |
allows the user to get the seed that was used at the start of the last generation of ghosts. More... | |
void | checkpoint_random () |
void | restore_checkpoint_random () |
std::string | description () const |
for a summary | |
void | add_ghosts (std::vector< PseudoJet > &) const |
push a set of ghost 4-momenta onto the back of the vector of PseudoJets More... | |
double | random_at_own_risk () const |
very deprecated public access to a random number from the internal generator | |
BasicRandom< double > & | generator_at_own_risk () const |
very deprecated public access to the generator itself | |
SharedPtr< BasicRandom< double > > & | user_random_generator_at_own_risk () |
access to the user-defined random-number generator. Will be empty if not set. | |
Parameters to configure the computation of jet areas using ghosts.
Class that defines the parameters that go into the measurement of active jet areas.
Ghosts are generated randomly, using by default a static random number generator.
By default, we will lock the number generator during the period over which we generate the required random numbers. The procedure will keep track of the seeds that have been used to generate a particular set of ghosts and, ultimately, these seeds will be made available from ClusterSequenceArea via
ClusterSequenceArea::area_def().ghost_spec().get_last_seed(vector<int>);
To use user-specified seeds in a thread-safe way, the end-user should use
ClusterSequenceArea csa(particles, jet_def, area_def.with_fixed_seed(user_defined_seed));
or explicitly make a copy of the AreaDefinition before doing the clustering:
AreaDefinition local_area_def = area_def.with_fixed_seed(user_defined_seed); ClusterSequenceArea csa(particles, jet_def, area_def,local_area_def);
This will use a local random generator to compute the ghosts (in particular, it will not affect the static global generator)
Note that each clustering done with the GhostedAreaSpec obtained through area_def.with_seed(user_defined_seed) will use exactly the same set of ghosts. Using area_def.with_fixed_seed(user_defined_seed), with an empty vector passed as argument, will return to using the common static random generator.
Definition at line 103 of file GhostedAreaSpec.hh.
|
inlineexplicit |
explicit constructor
It takes as parameters the maximal (abs) rapidity for the ghosts and an optional user-specified random number generator.
For the latter, ownership is transferred to the GhostedAreaSpec class (i.e. it is stored internally as a shared pointer)
Definition at line 124 of file GhostedAreaSpec.hh.
|
explicit |
constructor based on a Selector
explicit constructor
Definition at line 51 of file GhostedAreaSpec.cc.
void fastjet::GhostedAreaSpec::_initialize | ( | ) |
does the initialization of actual ghost parameters
sets the detailed parameters for the ghosts (which may not be quite the same as those requested – this is in order for things to fit in nicely into 2pi etc...
Definition at line 95 of file GhostedAreaSpec.cc.
void fastjet::GhostedAreaSpec::set_fj2_placement | ( | bool | val | ) |
if val is true, set ghost placement as it was in FastJet 2.X.
The main differences between FJ2 and FJ3 ghost placement are
in FJ2, the ghosts are placed at the corners of grid cells (i.e. extending up to maxrap), while in FJ3 they are placed at the centres of grid cells (i.e. extending roughly up to maxrap-sqrt(area)). The FJ2 behaviour effectively skews the total area coverage when maxrap is small, by an amount sqrt(area)/(2*maxrap).
FJ2 placement is now deprecated.
Definition at line 86 of file GhostedAreaSpec.cc.
|
inline |
return nphi (ghosts layed out (-nrap, 0..nphi-1), (-nrap+1,0..nphi-1), ...
(nrap,0..nphi-1)
Definition at line 242 of file GhostedAreaSpec.hh.
|
inline |
set the status of the random number generator, as obtained previously with get_random_status.
Note that the random generator is a static member of the class, i.e. common to all instances of the class — so if you modify the random for this instance, you modify it for all instances.
Definition at line 263 of file GhostedAreaSpec.hh.
|
inline |
allows the user to get the seed that was used at the start of the last generation of ghosts.
This should typically be access through the area definition held by the ClusterSequenceArea, because the CSA class takes a copy of the AreaDefinition and it is that copy that stored the
Definition at line 290 of file GhostedAreaSpec.hh.
void fastjet::GhostedAreaSpec::add_ghosts | ( | std::vector< PseudoJet > & | ) | const |
push a set of ghost 4-momenta onto the back of the vector of PseudoJets
adds the ghost 4-momenta to the vector of PseudoJet's
Definition at line 123 of file GhostedAreaSpec.cc.