22 bool ReadFile(
const std::string& file,
const unsigned int nIons = 0,
23 const unsigned int nSkip = 0);
36 bool NewTrack(
const double x0,
const double y0,
const double z0,
37 const double t0,
const double dx0,
const double dy0,
38 const double dz0)
override;
39 bool GetCluster(
double& xcls,
double& ycls,
double& zcls,
40 double& tcls,
int& n,
double& e,
double& extra)
override;
51 std::vector<std::vector<std::array<float, 5> > >
m_ions;
66 void AddIon(
const std::vector<float>& x,
const std::vector<float>& y,
67 const std::vector<float>& z,
const std::vector<float>& dedx,
68 const std::vector<float>& ekin);
double m_ekin
Projectile energy [eV].
std::vector< std::vector< std::array< float, 5 > > > m_ions
List of tracks.
size_t m_cluster
Index of the next cluster to be returned.
bool GetCluster(double &xcls, double &ycls, double &zcls, double &tcls, int &n, double &e, double &extra) override
void AddIon(const std::vector< float > &x, const std::vector< float > &y, const std::vector< float > &z, const std::vector< float > &dedx, const std::vector< float > &ekin)
double GetWorkFunction() const
Get the W value [eV].
std::vector< Cluster > m_clusters
Clusters on the current track.
double m_fano
Fano factor [-].
void SetWorkFunction(const double w)
Set the W value [eV].
size_t m_ion
Index of the current track.
virtual ~TrackTrim()
Destructor.
double m_work
Work function [eV].
void Print()
Print a summary of the available TRIM data.
void SetFanoFactor(const double f)
Set the Fano factor.
double GetFanoFactor() const
Get the Fano factor.
bool ReadFile(const std::string &file, const unsigned int nIons=0, const unsigned int nSkip=0)
Load data from an EXYZ.txt file.
bool NewTrack(const double x0, const double y0, const double z0, const double t0, const double dx0, const double dy0, const double dz0) override
Abstract base class for track generation.
double t
Cluster location and time.
double ekin
Ion energy when cluster was created.
int electrons
Number of electrons in this cluster.
double ec
Energy spent to make the cluster.