Particle Identification and Tracking
accum_sofq_ND.h
Go to the documentation of this file.
1 //Copyright 2010 Thomas A Caswell
2 //tcaswell@uchicago.edu
3 //http://jfi.uchicago.edu/~tcaswell
4 //
5 //This program is free software; you can redistribute it and/or modify
6 //it under the terms of the GNU General Public License as published by
7 //the Free Software Foundation; either version 3 of the License, or (at
8 //your option) any later version.
9 //
10 //This program is distributed in the hope that it will be useful, but
11 //WITHOUT ANY WARRANTY; without even the implied warranty of
12 //MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 //General Public License for more details.
14 //
15 //You should have received a copy of the GNU General Public License
16 //along with this program; if not, see <http://www.gnu.org/licenses>.
17 //
18 //Additional permission under GNU GPL version 3 section 7
19 //
20 //If you modify this Program, or any covered work, by linking or
21 //combining it with IPP (or a modified version of that library),
22 //containing parts covered by the terms of End User License Agreement
23 //for the Intel(R) Software Development Products, the licensors of
24 //this Program grant you additional permission to convey the resulting
25 //work.
26 
27 #ifndef CORR_SOFQ_ND
28 #define CORR_SOFQ_ND
29 
30 #include <vector>
31 #include <string>
32 #include <complex>
33 #include "accumulator.h"
34 #include "ndarray.h"
35 
36 
37 
38 namespace tracking
39 {
43 class Accum_sofq_ND : public Accumulator
44 {
45 public:
46  // basic inherited stuff
47  void add_particle(const particle *) ;
49  const utilities::Md_store & md_store ) const ;
50 
51  // special stuff
52 
56  Accum_sofq_ND(const utilities::Tuplef& max_q,const utilities::Tuplei& n_bins);
58 
63 
64 
68  void display() const;
69 
73  const utilities::Tuplei & get_n_bins() const
74  {return n_bins_;}
75 
76 
77 
78 private:
87 
92 
97 
102 
103 
107  std::string name_;
108 
113 
117  std::string fname_;
118 
122  int dset_;
127 
131  bool step_indx(utilities::Tuplei & indx) const;
132 
137 
138 
139 };
140 
141 }
142 
143 
144 
145 #endif