23 std::vector<bool> this_nodes;
25 double low_val = 1.E-20;
27 std::vector<ParticlesThroughVolumesData> vec_ptv = aa.
ptv_info;
32 for(
int index_vol=0;index_vol<3;index_vol++){
33 for(
int ii=0;ii<3;ii++){
34 passVOL = passVOL || (vec_ptv[index_vol].AmountMat[ii] >low_val && (
abs(vec_ptv[index_vol].Pdgs[ii])!=211 &&
abs(vec_ptv[index_vol].Pdgs[ii])!=321 && vec_ptv[index_vol].Pdgs[ii]!=2212 && vec_ptv[index_vol].Pdgs[ii]!=2112 &&
abs(vec_ptv[index_vol].Pdgs[ii])>99));
37 this_nodes.push_back(passVOL);
43 std::vector<ParticlesThroughVolumesData> vec_ptv = aa.
ptv_info;
48 double NA_mb = 6.02E-4;
50 double tot_dist = 0.0;
51 double low_val = 1.E-20;
53 for(
int index_vol=0;index_vol<3;index_vol++){
54 for(
int ii=0;ii<3;ii++){
56 tot_dist = vec_ptv[index_vol].AmountMat[ii];
57 if(tot_dist<low_val)
continue;
58 if(
abs(vec_ptv[index_vol].Pdgs[ii])==321 ||
abs(vec_ptv[index_vol].Pdgs[ii])==211 || vec_ptv[index_vol].Pdgs[ii]==2212 || vec_ptv[index_vol].Pdgs[ii]==2112 ||
abs(vec_ptv[index_vol].Pdgs[ii])<100)
continue;
61 if(vec_ptv[index_vol].Moms[ii]<2.0){
62 tot_dist *= shift_lowP;
64 else if(vec_ptv[index_vol].Moms[ii]>=2.0){
65 tot_dist *= shift_highP;
67 wgt *= exp(-1.0*tot_dist);
A list/table of parameter names and values.
float inel_kapAl_xsec_lowP
float inel_kapAl_xsec_highP
Information about the chain of interactions leading to a neutrino.
double getParameterValue(const std::string &name) const
get the value of a parameter. throw an exception of a well defined type if we don't have it ...
virtual double calculateWeight(const InteractionChainData &aa)
calculate a weight for this interaction chain given the central value parameters and the parameters f...
virtual ~OtherAbsorptionOutOfTargetReweighter()
std::vector< ParticlesThroughVolumesData > ptv_info
Information about all particles that pass through volumes without interacting.
const ParameterTable & univPars
virtual std::vector< bool > canReweight(const InteractionChainData &aa)
Look through the InteractionChainData input and identify those Interactions that can be reweighted as...
OtherAbsorptionOutOfTargetReweighter(int iuniv, const ParameterTable &cv_pars, const ParameterTable &univ_pars)