Class CandidateSplitting

Inheritance Relationships

Base Type

Class Documentation

class CandidateSplitting : public Module

Candidates are split into n copies when they gain energy and cross specified energy bins. Weights are set accordingly. In case of Diffusice Shock Acceleration, splitting number can be adapted to expected spectral index to compensate for the loss of particles per magnitude in energy.

Public Functions

CandidateSplitting()
CandidateSplitting(int nSplit, double Emin, double Emax, double nBins, double minWeight, bool log = false)

Constructor

Parameters:
  • nSplit – Number of copies candidates are split

  • Emin – Minimal energy for splitting

  • Emax – Maximal energy for splitting

  • nBins – Number of energy bins

  • minWeight – Mimimal Weight

  • log – Energy bins in log

CandidateSplitting(double spectralIndex, double Emin, int nBins)

Constructor

Parameters:
  • spectralIndex – Expected spectral index determines splitting numbe

  • Emin – Minimal energy for splitting

  • nBins – Number of bins in energy, with dE(spectralIndex) it determines Emax

virtual void process(Candidate *c) const

Process function This is the main function to work with, it is called during every ModuleList::run step. Derived functions need to override this overload of process!

Parameters:

candidateCandidate raw pointer

void setEnergyBins(double Emin, double Emax, double nBins, bool log)
void setEnergyBinsDSA(double Emin, double dE, int n)
void setNsplit(int n)
void setMinimalWeight(double w)
int getNsplit() const
double getMinimalWeight() const
const std::vector<double> &getEnergyBins() const
virtual std::string getDescription() const

Returns description, can be overriden by derived class.

void setDescription(const std::string &description)

Sets description, can be used instead of getDescription in derived class

Parameters:

description – Description string

inline void process(ref_ptr<Candidate> candidate) const

Process function Overload for process function to explicitly make a conversion from ref_ptr to a raw pointer

inline size_t addReference() const
inline size_t removeReference() const
inline int removeReferenceNoDelete() const
inline size_t getReferenceCount() const

Protected Attributes

mutable size_t _referenceCount