trajectorydiagnostics.hpp
Go to the documentation of this file.
Class for emittance conversion from (r,r') to (x,x').
Definition: trajectorydiagnostics.hpp:357
const Histogram2D & histogram(void) const
Get a const reference to histogram built.
Definition: trajectorydiagnostics.hpp:397
void free_histogram(void)
Free emittance histogram.
Definition: trajectorydiagnostics.hpp:401
~EmittanceConv()
Destructor for emittance converter.
Definition: trajectorydiagnostics.cpp:694
EmittanceConv(uint32_t n, uint32_t m, const std::vector< double > &r, const std::vector< double > &rp, const std::vector< double > &ap, const std::vector< double > &I, uint32_t rotn=100, double xmin=std::numeric_limits< double >::quiet_NaN(), double xpmin=std::numeric_limits< double >::quiet_NaN(), double xmax=std::numeric_limits< double >::quiet_NaN(), double xpmax=std::numeric_limits< double >::quiet_NaN())
Constructor for (x,x') emittance data and statistics from (r,r') data.
Definition: trajectorydiagnostics.cpp:378
double alpha(void) const
Return of emittance distribution.
Definition: trajectorydiagnostics.hpp:321
double epsilon(void) const
Return rms emittance.
Definition: trajectorydiagnostics.hpp:333
double current(void) const
Return current of beam trajectories used to calculate the emittance.
Definition: trajectorydiagnostics.hpp:309
double gamma(void) const
Return of emittance distribution.
Definition: trajectorydiagnostics.hpp:329
double xave(void) const
Return average position (center location) of emittance distribution.
Definition: trajectorydiagnostics.hpp:313
Emittance()
Default constructor for emittance statistics.
Definition: trajectorydiagnostics.cpp:140
double angle(void) const
Return angle of fitted rms ellipse.
Definition: trajectorydiagnostics.hpp:337
double rminor(void) const
Return minor radius of fitted rms ellipse.
Definition: trajectorydiagnostics.hpp:345
double beta(void) const
Return of emittance distribution.
Definition: trajectorydiagnostics.hpp:325
double rmajor(void) const
Return major radius of fitted rms ellipse.
Definition: trajectorydiagnostics.hpp:341
void debug_print(std::ostream &os) const
Print debugging information to os.
Definition: trajectorydiagnostics.cpp:342
double xpave(void) const
Return average angle (center location) of emittance distribution.
Definition: trajectorydiagnostics.hpp:317
Class for trajectory diagnostic data column.
Definition: trajectorydiagnostics.hpp:63
TrajectoryDiagnosticColumn(trajectory_diagnostic_e diag)
Create new diagnostic data column with type diag.
Definition: trajectorydiagnostics.hpp:72
double & operator()(size_t i)
Get reference to data element i.
Definition: trajectorydiagnostics.hpp:112
void add_data(double x)
Add diagnostic data point to column.
Definition: trajectorydiagnostics.hpp:86
const double & operator()(size_t i) const
Get const reference to data element i.
Definition: trajectorydiagnostics.hpp:108
size_t size(void) const
Get size of diagnostic data vector.
Definition: trajectorydiagnostics.hpp:100
double & operator[](size_t i)
Get reference to data element i.
Definition: trajectorydiagnostics.hpp:120
std::vector< double > & data(void)
Get a reference to diagnostic data vector.
Definition: trajectorydiagnostics.hpp:92
void mirror(coordinate_axis_e axis, double level)
Add mirrored trajectory diagnostic data to the column.
Definition: trajectorydiagnostics.cpp:59
const double & operator[](size_t i) const
Get const reference to data element i.
Definition: trajectorydiagnostics.hpp:116
trajectory_diagnostic_e diagnostic(void) const
Get diagnostic type.
Definition: trajectorydiagnostics.hpp:104
const std::vector< double > & data(void) const
Get a const reference to diagnostic data vector.
Definition: trajectorydiagnostics.hpp:96
Class for trajectory diagnostic data.
Definition: trajectorydiagnostics.hpp:129
void add_data(size_t i, double x)
Add data point to i:th diagnostic column.
Definition: trajectorydiagnostics.hpp:221
void clear()
Clear all data and diagnostic types.
Definition: trajectorydiagnostics.hpp:155
void export_data(const std::string &filename)
Export trajectory data as ASCII.
Definition: trajectorydiagnostics.cpp:108
double & operator()(size_t j, size_t i)
Return reference to j:th trajectory data in i:th diagnostic column.
Definition: trajectorydiagnostics.hpp:213
size_t traj_size() const
Return number of trajectories in data.
Definition: trajectorydiagnostics.hpp:173
trajectory_diagnostic_e diagnostic(size_t i) const
Return i:th diagnostic type.
Definition: trajectorydiagnostics.hpp:181
void mirror(coordinate_axis_e axis, double level)
Mirror data columns along plane at axis = level.
Definition: trajectorydiagnostics.hpp:148
TrajectoryDiagnosticData()
Create new empty diagnostic data object.
Definition: trajectorydiagnostics.hpp:137
const double & operator()(size_t j, size_t i) const
Return const reference to j:th trajectory data in i:th diagnostic column.
Definition: trajectorydiagnostics.hpp:204
void add_data_column(trajectory_diagnostic_e diag)
Add data column with type diag.
Definition: trajectorydiagnostics.hpp:161
const TrajectoryDiagnosticColumn & operator()(size_t i) const
Return i:th diagnostic type.
Definition: trajectorydiagnostics.hpp:187
TrajectoryDiagnosticData(std::vector< trajectory_diagnostic_e > diag)
Create diagnostic data object with diagnostic types defined in vector diag.
Definition: trajectorydiagnostics.hpp:141
size_t diag_size() const
Return number of data columns.
Definition: trajectorydiagnostics.hpp:167
TrajectoryDiagnosticColumn & operator()(size_t i)
Return i:th diagnostic column.
Definition: trajectorydiagnostics.hpp:195
Error classes and handling
#define ERROR_LOCATION
Macro for setting error location when throwing errors.
Definition: error.hpp:83
Histogram data handling for 1D and 2D
Base types.
trajectory_diagnostic_e
Type of diagnostic for trajectories.
Definition: types.hpp:196