OPAL (Object Oriented Parallel Accelerator Library)  2.2.0
OPAL
Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
PeakFinder Class Reference

#include <PeakFinder.h>

Public Types

using container_t = std::vector< double >
 

Public Member Functions

 PeakFinder ()=delete
 
 PeakFinder (std::string elem, double min, double max, double binwidth, bool singlemode)
 
void addParticle (const Vector_t &R)
 
void evaluate (const int &turn)
 
void save ()
 

Private Member Functions

void createHistogram_m ()
 
void open_m ()
 Open output file. More...
 
void append_m ()
 Open output file in append mode. More...
 
void close_m ()
 Close output file. More...
 
void saveASCII_m ()
 Write to output file. More...
 
void computeCentroid_m ()
 

Private Attributes

container_t radius_m
 
container_t globHist_m
 global histogram values More...
 
std::string fn_m
 filename with extension (.peaks) More...
 
std::string hist_m
 histogram filename with extension (.hist) More...
 
std::ofstream os_m
 used to write out the data More...
 
std::ofstream hos_m
 used to write out the histrogram More...
 
std::string element_m
 Element/probe name, for name output file. More...
 
unsigned int nBins_m
 Number of bins. More...
 
double binWidth_m
 Bin width in mm. More...
 
double min_m
 histogram size More...
 
double max_m
 
int turn_m
 
double peakRadius_m
 
int registered_m
 
std::list< double > peaks_m
 
bool singlemode_m
 
bool first_m
 
bool finished_m
 

Detailed Description

Definition at line 25 of file PeakFinder.h.

Member Typedef Documentation

using PeakFinder::container_t = std::vector<double>

Definition at line 28 of file PeakFinder.h.

Constructor & Destructor Documentation

PeakFinder::PeakFinder ( )
delete
PeakFinder::PeakFinder ( std::string  elem,
double  min,
double  max,
double  binwidth,
bool  singlemode 
)

Definition at line 10 of file PeakFinder.cpp.

References binWidth_m, ceil(), max_m, min_m, and nBins_m.

Here is the call graph for this function:

Member Function Documentation

void PeakFinder::addParticle ( const Vector_t R)

Append the particle coordinates to the container

Parameters
Ris a particle position (x, y, z)

Definition at line 31 of file PeakFinder.cpp.

References peakRadius_m, Attrib::Distribution::R, radius_m, and registered_m.

void PeakFinder::append_m ( )
private

Open output file in append mode.

Definition at line 158 of file PeakFinder.cpp.

References fn_m, hist_m, hos_m, and os_m.

Referenced by save().

void PeakFinder::close_m ( )
private

Close output file.

Definition at line 164 of file PeakFinder.cpp.

References hos_m, and os_m.

Referenced by save().

void PeakFinder::computeCentroid_m ( )
private

Definition at line 104 of file PeakFinder.cpp.

References IpplInfo::myNode(), peakRadius_m, peaks_m, reduce(), registered_m, and singlemode_m.

Referenced by evaluate(), and save().

Here is the call graph for this function:

void PeakFinder::createHistogram_m ( )
private

Definition at line 123 of file PeakFinder.cpp.

References abs(), binWidth_m, globHist_m, min_m, nBins_m, radius_m, reduce(), and singlemode_m.

Referenced by save().

Here is the call graph for this function:

void PeakFinder::evaluate ( const int &  turn)

Evaluate the centroid of a turn.

Definition at line 41 of file PeakFinder.cpp.

References allreduce(), computeCentroid_m(), finished_m, first_m, peakRadius_m, registered_m, singlemode_m, and turn_m.

Here is the call graph for this function:

void PeakFinder::open_m ( )
private

Open output file.

Definition at line 152 of file PeakFinder.cpp.

References fn_m, hist_m, hos_m, and os_m.

Referenced by save().

void PeakFinder::save ( )

Definition at line 73 of file PeakFinder.cpp.

References append_m(), close_m(), computeCentroid_m(), createHistogram_m(), element_m, endl(), fn_m, OpalData::getInstance(), globHist_m, hist_m, INFOMSG, open_m(), peaks_m, radius_m, and saveASCII_m().

Here is the call graph for this function:

void PeakFinder::saveASCII_m ( )
private

Write to output file.

Definition at line 170 of file PeakFinder.cpp.

References binWidth_m, endl(), globHist_m, hos_m, max_m, min_m, nBins_m, os_m, and peaks_m.

Referenced by save().

Here is the call graph for this function:

Member Data Documentation

double PeakFinder::binWidth_m
private

Bin width in mm.

Definition at line 92 of file PeakFinder.h.

Referenced by createHistogram_m(), PeakFinder(), and saveASCII_m().

std::string PeakFinder::element_m
private

Element/probe name, for name output file.

Definition at line 86 of file PeakFinder.h.

Referenced by save().

bool PeakFinder::finished_m
private

Definition at line 102 of file PeakFinder.h.

Referenced by evaluate().

bool PeakFinder::first_m
private

Definition at line 101 of file PeakFinder.h.

Referenced by evaluate().

std::string PeakFinder::fn_m
private

filename with extension (.peaks)

Definition at line 74 of file PeakFinder.h.

Referenced by append_m(), open_m(), and save().

container_t PeakFinder::globHist_m
private

global histogram values

Definition at line 71 of file PeakFinder.h.

Referenced by createHistogram_m(), save(), and saveASCII_m().

std::string PeakFinder::hist_m
private

histogram filename with extension (.hist)

Definition at line 77 of file PeakFinder.h.

Referenced by append_m(), open_m(), and save().

std::ofstream PeakFinder::hos_m
private

used to write out the histrogram

Definition at line 83 of file PeakFinder.h.

Referenced by append_m(), close_m(), open_m(), and saveASCII_m().

double PeakFinder::max_m
private

Definition at line 94 of file PeakFinder.h.

Referenced by PeakFinder(), and saveASCII_m().

double PeakFinder::min_m
private

histogram size

Definition at line 94 of file PeakFinder.h.

Referenced by createHistogram_m(), PeakFinder(), and saveASCII_m().

unsigned int PeakFinder::nBins_m
private

Number of bins.

Definition at line 90 of file PeakFinder.h.

Referenced by createHistogram_m(), PeakFinder(), and saveASCII_m().

std::ofstream PeakFinder::os_m
private

used to write out the data

Definition at line 80 of file PeakFinder.h.

Referenced by append_m(), close_m(), open_m(), and saveASCII_m().

double PeakFinder::peakRadius_m
private

Definition at line 97 of file PeakFinder.h.

Referenced by addParticle(), computeCentroid_m(), and evaluate().

std::list<double> PeakFinder::peaks_m
private

Definition at line 99 of file PeakFinder.h.

Referenced by computeCentroid_m(), save(), and saveASCII_m().

container_t PeakFinder::radius_m
private

Definition at line 69 of file PeakFinder.h.

Referenced by addParticle(), createHistogram_m(), and save().

int PeakFinder::registered_m
private

Definition at line 98 of file PeakFinder.h.

Referenced by addParticle(), computeCentroid_m(), and evaluate().

bool PeakFinder::singlemode_m
private

Definition at line 100 of file PeakFinder.h.

Referenced by computeCentroid_m(), createHistogram_m(), and evaluate().

int PeakFinder::turn_m
private

Definition at line 96 of file PeakFinder.h.

Referenced by evaluate().


The documentation for this class was generated from the following files: