ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
flowAfterburner.cc File Reference
#include "flowAfterburner.h"
#include <phool/phool.h>
#include <gsl/gsl_errno.h>
#include <gsl/gsl_math.h>
#include <gsl/gsl_roots.h>
#include <HepMC/GenEvent.h>
#include <HepMC/GenParticle.h>
#include <HepMC/GenRanges.h>
#include <HepMC/GenVertex.h>
#include <HepMC/HeavyIon.h>
#include <HepMC/IteratorRange.h>
#include <HepMC/SimpleVector.h>
#include <CLHEP/Random/RandFlat.h>
#include <CLHEP/Vector/LorentzVector.h>
#include <cmath>
#include <cstdlib>
#include <iostream>
#include <map>
+ Include dependency graph for flowAfterburner.cc:

Go to the source code of this file.

Classes

struct  loaderObj
 

Namespaces

namespace  CLHEP
 

Functions

double vn_func (double x, void *params)
 
double vn_func_derivative (double x, void *params)
 
void MoveDescendantsToParent (HepMC::GenParticle *parent, double phishift)
 
float calc_v2 (double b, double eta, double pt)
 
void jjia_minbias_new (double b, double eta, double pt)
 
void jjia_minbias_new_v2only (double b, double eta, double pt)
 
void custom_vn (double, double, double)
 
double AddFlowToParent (HepMC::GenEvent *event, HepMC::GenParticle *parent)
 
int flowAfterburner (HepMC::GenEvent *event, CLHEP::HepRandomEngine *engine, std::string algorithmName, float mineta, float maxeta, float minpt, float maxpt)
 

Variables

flowAfterburnerAlgorithm algorithm
 
std::map< std::string,
flowAfterburnerAlgorithm
algorithms
 
loaderObj loader
 
float psi_n [6]
 
float v1
 
float v2
 
float v3
 
float v4
 
float v5
 
float v6
 

Function Documentation

double AddFlowToParent ( HepMC::GenEvent *  event,
HepMC::GenParticle *  parent 
)

Definition at line 209 of file flowAfterburner.cc.

View newest version in sPHENIX GitHub at line 209 of file flowAfterburner.cc

References algorithm, b, custom_algorithm, custom_vn(), e, Acts::VectorHelpers::eta(), F, jjia_minbias_new(), jjia_minbias_new_v2only(), M_PI, minbias_algorithm, minbias_v2_algorithm, momentum, phi, psi_n, pt, T, v1, v2, v3, v4, v5, v6, and vn_func().

Referenced by flowAfterburner().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

float calc_v2 ( double  b,
double  eta,
double  pt 
)

Definition at line 146 of file flowAfterburner.cc.

View newest version in sPHENIX GitHub at line 146 of file flowAfterburner.cc

References temp1, temp2, and v2.

Referenced by jjia_minbias_new(), and jjia_minbias_new_v2only().

+ Here is the caller graph for this function:

void custom_vn ( double  ,
double  ,
double   
)

Definition at line 198 of file flowAfterburner.cc.

View newest version in sPHENIX GitHub at line 198 of file flowAfterburner.cc

References v1, v2, v3, v4, v5, and v6.

Referenced by AddFlowToParent().

+ Here is the caller graph for this function:

int flowAfterburner ( HepMC::GenEvent *  event,
CLHEP::HepRandomEngine engine,
std::string  algorithmName,
float  mineta,
float  maxeta,
float  minpt,
float  maxpt 
)

Definition at line 293 of file flowAfterburner.cc.

View newest version in sPHENIX GitHub at line 293 of file flowAfterburner.cc

References AddFlowToParent(), algorithm, Acts::VectorHelpers::eta(), g4zmq::exit(), it, M_PI, momentum, MoveDescendantsToParent(), PHWHERE, psi_n, ds::pT, r, and CLHEP::RandFlat::shoot().

Referenced by main(), and HepMCFlowAfterBurner::process_event().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void jjia_minbias_new ( double  b,
double  eta,
double  pt 
)

Definition at line 170 of file flowAfterburner.cc.

View newest version in sPHENIX GitHub at line 170 of file flowAfterburner.cc

References calc_v2(), fb(), v1, v2, v3, v4, v5, and v6.

Referenced by AddFlowToParent().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void jjia_minbias_new_v2only ( double  b,
double  eta,
double  pt 
)

Definition at line 186 of file flowAfterburner.cc.

View newest version in sPHENIX GitHub at line 186 of file flowAfterburner.cc

References calc_v2(), v1, v2, v3, v4, v5, and v6.

Referenced by AddFlowToParent().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void MoveDescendantsToParent ( HepMC::GenParticle *  parent,
double  phishift 
)

Definition at line 97 of file flowAfterburner.cc.

View newest version in sPHENIX GitHub at line 97 of file flowAfterburner.cc

References e, momentum, and position.

Referenced by flowAfterburner().

+ Here is the caller graph for this function:

double vn_func ( double  x,
void params 
)

Definition at line 63 of file flowAfterburner.cc.

View newest version in sPHENIX GitHub at line 63 of file flowAfterburner.cc

References psi_n.

Referenced by AddFlowToParent().

+ Here is the caller graph for this function:

double vn_func_derivative ( double  x,
void params 
)

Definition at line 80 of file flowAfterburner.cc.

View newest version in sPHENIX GitHub at line 80 of file flowAfterburner.cc

References psi_n.

Variable Documentation

std::map<std::string, flowAfterburnerAlgorithm> algorithms

Definition at line 44 of file flowAfterburner.cc.

View newest version in sPHENIX GitHub at line 44 of file flowAfterburner.cc

Referenced by hijfst_control(), and loaderObj::loaderObj().

loaderObj loader

Definition at line 60 of file flowAfterburner.cc.

View newest version in sPHENIX GitHub at line 60 of file flowAfterburner.cc

float psi_n[6]

Definition at line 95 of file flowAfterburner.cc.

View newest version in sPHENIX GitHub at line 95 of file flowAfterburner.cc

Referenced by AddFlowToParent(), flowAfterburner(), vn_func(), and vn_func_derivative().

float v1

Definition at line 95 of file flowAfterburner.cc.

View newest version in sPHENIX GitHub at line 95 of file flowAfterburner.cc

Referenced by AddFlowToParent(), G4Material::AddMaterial(), G4GMocrenFileSceneHandler::AddSolid(), G4ChargeExchange::ApplyYourself(), G4LMsdGenerator::ApplyYourself(), G4AtimaEnergyLossModel::Bethek_dedx_e(), Acts::Test::BOOST_AUTO_TEST_CASE(), G4PolyconeSide::CalculateExtent(), CLHEP::HepLorentzVector::coLinearRapidity(), G4KokoulinMuonNuclearXS::ComputeDDMicroscopicCrossSection(), PHG4FullProjSpacalDetector::Construct_Fibers(), PHG4FullProjTiltedSpacalDetector::Construct_Fibers(), PHG4FullProjSpacalDetector::Construct_Fibers_SameLengthFiberPerTower(), PHG4FullProjTiltedSpacalDetector::Construct_Fibers_SameLengthFiberPerTower(), PHG4HcalDetector::ConstructMe(), PHG4InnerHcalDetector::ConstructSteelPlate(), PHG4OuterHcalDetector::ConstructSteelPlate(), G4Tet::CreatePolyhedron(), MuCrossSections::CRN_Mephi(), custom_vn(), G4QuadrangularFacet::Distance(), PerspectiveVisAction::ExtendedDraw(), G4GMocrenFileSceneHandler::ExtractDetector(), fillEvent(), CLHEP::HepLorentzVector::findBoostToCM(), G4Facet::G4Facet(), G4Abla::gausshaz(), CLHEP::RandGamma::genGamma(), G4PolyhedraSide::GetPointOnFace(), G4NeutronInelasticXS::Initialise(), G4ParticleInelasticXS::Initialise(), G4PenelopeBremsstrahlungFS::InitializeEnergySampling(), G4hIonEffChargeSquare::IonEffChargeSquare(), G4GenericTrap::IsSegCrossingZ(), jjia_minbias_new(), jjia_minbias_new_v2only(), CLHEP::normal(), CLHEP::RandGauss::normal(), kdfinder::operator*(), kdfinder::operator+(), kdfinder::operator-(), PHG4ParticleGeneratorD0::process_event(), PHG4ParticleGeneratorVectorMeson::process_event(), ptwXY_div_ptwXY(), ptwXY_div_s_ptwXY(), ptwXY_mul2_ptwXY(), ptwXY_mul2_s_ptwXY(), pyreco(), quench(), HepPolyhedron::RotateAroundZ(), G4PAIPhotData::SampleAlongStepPhotonTransfer(), G4PAIPhotData::SampleAlongStepPlasmonTransfer(), G4PAIPhotData::SampleAlongStepTransfer(), G4PAIModelData::SampleAlongStepTransfer(), G4PenelopeBremsstrahlungAngular::SampleDirection(), G4ParticleHPLegendreStore::SampleDiscreteTwoBody(), G4ParticleHPLegendreStore::SampleElastic(), G4PenelopeBremsstrahlungFS::SampleGammaEnergy(), G4ParticleHPLegendreStore::SampleMax(), G4PAIModelData::SamplePostStepTransfer(), G4eSingleCoulombScatteringModel::SampleSecondaries(), G4hCoulombScatteringModel::SampleSecondaries(), G4IonCoulombScatteringModel::SampleSecondaries(), G4NuclNuclDiffuseElastic::SampleThetaLab(), G4DiffuseElastic::SampleThetaLab(), CLHEP::HepRotation::set(), G4EmExtraParametersMessenger::SetNewValue(), G4EmExtraParameters::SetStepFunction(), G4EmExtraParameters::SetStepFunctionMuHad(), CLHEP::RandGauss::shoot(), G4PolyhedraSide::SurfaceArea(), G4DiffuseElasticV2::ThetaCMStoThetaLab(), G4NuclNuclDiffuseElastic::ThetaCMStoThetaLab(), G4DiffuseElastic::ThetaCMStoThetaLab(), G4DiffuseElasticV2::ThetaLabToThetaCMS(), G4NuclNuclDiffuseElastic::ThetaLabToThetaCMS(), G4DiffuseElastic::ThetaLabToThetaCMS(), G4PolyPhiFace::Triangulate(), PHG4EICMvtxSteppingAction::UserSteppingAction(), and PHG4MvtxSteppingAction::UserSteppingAction().

float v2

Definition at line 95 of file flowAfterburner.cc.

View newest version in sPHENIX GitHub at line 95 of file flowAfterburner.cc

Referenced by AddFlowToParent(), G4GMocrenFileSceneHandler::AddSolid(), Acts::Test::BOOST_AUTO_TEST_CASE(), calc_v2(), G4PolyconeSide::CalculateExtent(), G4KokoulinMuonNuclearXS::ComputeDDMicroscopicCrossSection(), PHG4FullProjSpacalDetector::Construct_Fibers(), PHG4FullProjTiltedSpacalDetector::Construct_Fibers(), PHG4FullProjSpacalDetector::Construct_Fibers_SameLengthFiberPerTower(), PHG4FullProjTiltedSpacalDetector::Construct_Fibers_SameLengthFiberPerTower(), PHG4HcalDetector::ConstructMe(), PHG4InnerHcalDetector::ConstructSteelPlate(), PHG4OuterHcalDetector::ConstructSteelPlate(), G4Tet::CreatePolyhedron(), MuCrossSections::CRN_Mephi(), custom_vn(), G4DNARuddIonisationModel::DifferentialCrossSection(), G4QuadrangularFacet::Distance(), G4Abla::evap_postsaddle(), G4Abla::evapora(), PerspectiveVisAction::ExtendedDraw(), G4GMocrenFileSceneHandler::ExtractDetector(), G4Abla::FillData(), G4Facet::G4Facet(), CLHEP::HepLorentzVector::gamma(), G4Abla::gausshaz(), CLHEP::RandGamma::genGamma(), G4PolyhedraSide::GetPointOnFace(), G4PenelopeBremsstrahlungFS::InitializeEnergySampling(), G4GenericTrap::IsSegCrossingZ(), jjia_minbias_new(), jjia_minbias_new_v2only(), CLHEP::normal(), CLHEP::RandGauss::normal(), PHG4ParticleGeneratorD0::process_event(), PHG4ParticleGeneratorVectorMeson::process_event(), G4DNARuddIonisationExtendedModel::ProposedSampledEnergy(), ptwXY_div_ptwXY(), ptwXY_div_s_ptwXY(), ptwXY_LogLogToLinLin(), ptwXY_mul2_ptwXY(), ptwXY_mul2_s_ptwXY(), pyreco(), quench(), G4DNARuddIonisationExtendedModel::RejectionFunction(), HepPolyhedron::RotateAroundZ(), G4PAIPhotData::SampleAlongStepPhotonTransfer(), G4PAIPhotData::SampleAlongStepPlasmonTransfer(), G4PAIPhotData::SampleAlongStepTransfer(), G4PAIModelData::SampleAlongStepTransfer(), G4PenelopeBremsstrahlungAngular::SampleDirection(), G4ParticleHPLegendreStore::SampleDiscreteTwoBody(), G4ParticleHPLegendreStore::SampleElastic(), G4PenelopeBremsstrahlungFS::SampleGammaEnergy(), G4ParticleHPLegendreStore::SampleMax(), G4GoudsmitSaundersonMscModel::SampleMSC(), G4PAIModelData::SamplePostStepTransfer(), CLHEP::HepRotation::set(), TowerBackgroundv1::set_v2(), G4EmExtraParametersMessenger::SetNewValue(), HepPolyhedron::SetReferences(), G4EmExtraParameters::SetStepFunction(), G4VEnergyLossProcess::SetStepFunction(), G4EmExtraParameters::SetStepFunctionMuHad(), G4AtimaEnergyLossModel::sezi_dedx_e(), CLHEP::RandGauss::shoot(), G4PolyhedraSide::SurfaceArea(), G4PolyPhiFace::Triangulate(), PHG4EICMvtxSteppingAction::UserSteppingAction(), and PHG4MvtxSteppingAction::UserSteppingAction().

float v5

Definition at line 95 of file flowAfterburner.cc.

View newest version in sPHENIX GitHub at line 95 of file flowAfterburner.cc

Referenced by AddFlowToParent(), custom_vn(), jjia_minbias_new(), and jjia_minbias_new_v2only().

float v6

Definition at line 95 of file flowAfterburner.cc.

View newest version in sPHENIX GitHub at line 95 of file flowAfterburner.cc

Referenced by AddFlowToParent(), custom_vn(), jjia_minbias_new(), and jjia_minbias_new_v2only().