|
Particle Identification and Tracking
|
s(|q|) computation. More...
#include <accum_sofq.h>
Inheritance diagram for tracking::Accum_sofq:
Collaboration diagram for tracking::Accum_sofq:Public Member Functions | |
| void | add_particle (const particle *) |
| Adds a particle. More... | |
| void | out_to_wrapper (utilities::Generic_wrapper &, const utilities::Md_store &md_store) const |
| outputs the result of the computation to the wrapper More... | |
| Accum_sofq (const utilities::Tuple< float, 2 > &q_range, utilities::Tuplef q, const int n_bins) | |
| constructor,will gain arguments More... | |
| ~Accum_sofq () | |
| void | get_magnitude_sqr (std::vector< float > &out) const |
| Returns an array with the magnitudes of the complex s(q) values. More... | |
| void | display () const |
| Plots to screen using gnuplot. More... | |
| void | get_q_vec (std::vector< float > &out) const |
| Fills a vector with the q values used. More... | |
| int | get_n_bins () const |
Private Attributes | |
| const unsigned int | n_bins_ |
| number of bins More... | |
| const utilities::Tuple< float, 2 > | q_range_ |
| range More... | |
| const float | q_step_ |
| Spacing of evaluation points in reciprocal space. More... | |
| const utilities::Tuplef | q_ |
| direction in reciprocal space to evaluate along. More... | |
| std::vector< std::complex < float > > | s_of_q_ |
| vector to hold the values More... | |
| int | parts_added_ |
| count of the number of particles added More... | |
| std::string | units_ |
| the units of q More... | |
Static Private Attributes | |
| static const std::complex< float > | i_ = complex<float>(0,1) |
More... | |
| static const float | pi_ = 4.0*atan(1.0) |
More... | |
s(|q|) computation.
This takes in a specific direction in reciprocal space and computes s(|q|) along that direction. If the assumption that the particles have no preferred direction holds, then this saves a lot of computation time.
| Accum_sofq::Accum_sofq | ( | const utilities::Tuple< float, 2 > & | q_range, |
| utilities::Tuplef | q, | ||
| const int | n_bins | ||
| ) |
constructor,will gain arguments
| [in] | q_range | Pair with the min and max |
| [in] | q | the direction to take s(q) along, does not need to be a unit vector |
| [in] | n_bins | the number of bins to use |
| Accum_sofq::~Accum_sofq | ( | ) |
|
virtual |
Adds a particle.
The sub class determines what is computed from the particle.
Implements tracking::Accumulator.
References tracking::particle_base::get_position(), i_, n_bins_, parts_added_, pi_, q_, q_range_, q_step_, and s_of_q_.
| void Accum_sofq::display | ( | ) | const |
Plots to screen using gnuplot.
References get_magnitude_sqr(), get_q_vec(), n_bins_, and parts_added_.
Referenced by main().
| void Accum_sofq::get_magnitude_sqr | ( | std::vector< float > & | out) | const |
Returns an array with the magnitudes of the complex s(q) values.
| [out] | out | vector of . Vector will be re-sized if needed |
References n_bins_, parts_added_, and s_of_q_.
Referenced by display(), and out_to_wrapper().
|
inline |
References n_bins_.
| void Accum_sofq::get_q_vec | ( | std::vector< float > & | out) | const |
Fills a vector with the q values used.
Out is cleared and resized as needed.
| [out] | out | vector of q values |
References n_bins_, q_range_, and q_step_.
Referenced by display(), and out_to_wrapper().
|
virtual |
outputs the result of the computation to the wrapper
Implements tracking::Accumulator.
References utilities::Generic_wrapper::add_dset(), utilities::Generic_wrapper::add_meta_data(), get_magnitude_sqr(), get_q_vec(), n_bins_, q_, and utilities::V_FLOAT.
|
staticprivate |
Referenced by add_particle().
|
private |
number of bins
Referenced by add_particle(), display(), get_magnitude_sqr(), get_n_bins(), get_q_vec(), and out_to_wrapper().
|
private |
count of the number of particles added
Referenced by add_particle(), display(), and get_magnitude_sqr().
|
staticprivate |
Referenced by add_particle().
|
private |
direction in reciprocal space to evaluate along.
Referenced by add_particle(), and out_to_wrapper().
|
private |
range
Referenced by add_particle(), and get_q_vec().
|
private |
Spacing of evaluation points in reciprocal space.
Referenced by add_particle(), and get_q_vec().
|
private |
vector to hold the values
Referenced by add_particle(), and get_magnitude_sqr().
|
private |
the units of q
1.8.4