32 #ifndef GCONTAINERS_H_
33 #define GCONTAINERS_H_
41 #include <thrust/device_vector.h>
42 #include <thrust/host_vector.h>
43 #include <thrust/complex.h>
45 #if !(THRUST_DEVICE_SYSTEM==THRUST_DEVICE_BACKEND_OMP || THRUST_DEVICE_SYSTEM==THRUST_DEVICE_BACKEND_TBB)
46 #include <thrust/system/cuda/experimental/pinned_allocator.h>
54 #if (THRUST_DEVICE_SYSTEM==THRUST_DEVICE_BACKEND_OMP || THRUST_DEVICE_SYSTEM==THRUST_DEVICE_BACKEND_TBB)
85 thrust::cuda::experimental::pinned_allocator<T>>;
121 typedef thrust::detail::tuple_of_iterator_references<
Vector4R &,
122 thrust::null_type, thrust::null_type, thrust::null_type,
123 thrust::null_type, thrust::null_type, thrust::null_type,
124 thrust::null_type, thrust::null_type, thrust::null_type>
GT1;
127 typedef thrust::detail::tuple_of_iterator_references<Vector4R &, Vector4R &,
128 thrust::null_type, thrust::null_type, thrust::null_type,
129 thrust::null_type, thrust::null_type, thrust::null_type,
130 thrust::null_type, thrust::null_type>
GT2;
133 typedef thrust::detail::tuple_of_iterator_references<Vector4R &, Vector4R &,
134 Vector4R &, thrust::null_type, thrust::null_type, thrust::null_type,
135 thrust::null_type, thrust::null_type, thrust::null_type,
139 typedef thrust::detail::tuple_of_iterator_references<Vector4R &, Vector4R &,
140 Vector4R &, Vector4R &, thrust::null_type, thrust::null_type,
141 thrust::null_type, thrust::null_type, thrust::null_type,
145 typedef thrust::detail::tuple_of_iterator_references<Vector4R &, Vector4R &,
146 Vector4R &, Vector4R &, Vector4R &, thrust::null_type,
147 thrust::null_type, thrust::null_type, thrust::null_type,
152 typedef thrust::detail::tuple_of_iterator_references<Vector4R &, Vector4R &,
153 Vector4R &, Vector4R &, Vector4R &, Vector4R &, thrust::null_type,
154 thrust::null_type, thrust::null_type, thrust::null_type>
GT6;
157 typedef thrust::detail::tuple_of_iterator_references<Vector4R &, Vector4R &,
158 Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &,
159 thrust::null_type, thrust::null_type, thrust::null_type>
GT7;
162 typedef thrust::detail::tuple_of_iterator_references<Vector4R &, Vector4R &,
163 Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &,
164 thrust::null_type, thrust::null_type>
GT8;
168 typedef thrust::detail::tuple_of_iterator_references<Vector4R &, Vector4R &,
169 Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &,
170 Vector4R &, thrust::null_type>
GT9;
173 typedef thrust::detail::tuple_of_iterator_references<Vector4R &, Vector4R &,
174 Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &,
181 typedef thrust::detail::tuple_of_iterator_references<
GReal_t &, Vector4R &,
182 thrust::null_type, thrust::null_type, thrust::null_type,
183 thrust::null_type, thrust::null_type, thrust::null_type,
184 thrust::null_type, thrust::null_type>
GTR2;
190 typedef thrust::detail::tuple_of_iterator_references<GReal_t &, Vector4R &,
191 Vector4R &, thrust::null_type, thrust::null_type, thrust::null_type,
192 thrust::null_type, thrust::null_type, thrust::null_type,
199 typedef thrust::detail::tuple_of_iterator_references<GReal_t &, Vector4R &,
200 Vector4R &, Vector4R &, thrust::null_type, thrust::null_type,
201 thrust::null_type, thrust::null_type, thrust::null_type,
207 typedef thrust::detail::tuple_of_iterator_references<GReal_t &, Vector4R &,
208 Vector4R &, Vector4R &, Vector4R &, thrust::null_type,
209 thrust::null_type, thrust::null_type, thrust::null_type,
213 typedef thrust::detail::tuple_of_iterator_references<GReal_t &, Vector4R &,
214 Vector4R &, Vector4R &, Vector4R &, Vector4R &, thrust::null_type,
215 thrust::null_type, thrust::null_type, thrust::null_type>
GTR6;
218 typedef thrust::detail::tuple_of_iterator_references<GReal_t &, Vector4R &,
219 Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &,
220 thrust::null_type, thrust::null_type, thrust::null_type>
GTR7;
223 typedef thrust::detail::tuple_of_iterator_references<GReal_t &, Vector4R &,
224 Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &,
225 thrust::null_type, thrust::null_type>
GTR8;
228 typedef thrust::detail::tuple_of_iterator_references<GReal_t &, Vector4R &,
229 Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &,
230 Vector4R &, thrust::null_type>
GTR9;
233 typedef thrust::detail::tuple_of_iterator_references<GReal_t &, Vector4R &,
234 Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &,
mc_host_vector< GComplex_t > ComplexVector_h
Typedef for a GReal_t host vector.
mc_host_vector< Vector3R > ThreeVectors_h
Vector4R host vector.
thrust::detail::tuple_of_iterator_references< Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type > GT5
GT5 iterator is a typedef for thrust::detail::tuple_of_iterator_references
thrust::host_vector< T > mc_host_vector
Generic template typedef for thrust::host_vector.
thrust::detail::tuple_of_iterator_references< Vector4R &, Vector4R &, Vector4R &, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type > GT3
GT3 iterator is a typedef for thrust::detail::tuple_of_iterator_references
thrust::detail::tuple_of_iterator_references< Vector4R &, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type > GT1
Typedef for a STL vector of pointers to device RealVector_d vectors.
thrust::detail::tuple_of_iterator_references< GReal_t &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type > GTR5
GTR5 iterator is a typedef for thrust::detail::tuple_of_iterator_references
thrust::detail::tuple_of_iterator_references< GReal_t &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type > GTR6
GTR6 iterator is a typedef for thrust::detail::tuple_of_iterator_references
thrust::detail::tuple_of_iterator_references< GReal_t &, Vector4R &, Vector4R &, Vector4R &, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type > GTR4
GTR4 iterator is a typedef for thrust::detail::tuple_of_iterator_references
mc_host_vector< GReal_t > RealVector_h
Typedef for a GBool_t host vector.
mc_device_vector< Vector4R > Particles_d
Typedef for a GComplex_t device vector.
vector< Particles_h * > ParticlesSet_h
Typedef for a Vector4R host vector.
vector< RealVector_d * > VariableSet_d
Typedef for a STL vector of pointers to device Particles_d vectors.
thrust::detail::tuple_of_iterator_references< Vector4R &, Vector4R &, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type > GT2
GT2 iterator is a typedef for thrust::detail::tuple_of_iterator_references
thrust::complex< GReal_t > GComplex_t
mc_host_vector< Vector4R > FourVectors_h
Typedef for complex number.
thrust::detail::tuple_of_iterator_references< Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, thrust::null_type > GT9
GT9 iterator is a typedef for thrust::detail::tuple_of_iterator_references
thrust::detail::tuple_of_iterator_references< GReal_t &, Vector4R &, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type > GTR2
GTR2 iterator is a typedef for thrust::detail::tuple_of_iterator_references
thrust::detail::tuple_of_iterator_references< Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R & > GT10
GT10 iterator is a typedef for thrust::detail::tuple_of_iterator_references
mc_device_vector< GBool_t > BoolVector_d
Typedef for a STL vector of pointers to host RealVector_h vectors.
mc_host_vector< Vector4R > Particles_h
Typedef for a GComplex_t host vector.
thrust::detail::tuple_of_iterator_references< Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, thrust::null_type, thrust::null_type, thrust::null_type > GT7
GT7 iterator is a typedef for thrust::detail::tuple_of_iterator_references
mc_device_vector< GComplex_t > ComplexVector_d
Typedef for a GReal_t device vector.
double GReal_t
Double 8 bytes or float 4 bytes.
thrust::detail::tuple_of_iterator_references< GReal_t &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, thrust::null_type, thrust::null_type > GTR8
GTR8 iterator is a typedef for thrust::detail::tuple_of_iterator_references
vector< Particles_d * > ParticlesSet_d
Typedef for a Vector4R device vector.
thrust::detail::tuple_of_iterator_references< Vector4R &, Vector4R &, Vector4R &, Vector4R &, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type > GT4
GT4 iterator is a typedef for thrust::detail::tuple_of_iterator_references
thrust::detail::tuple_of_iterator_references< GReal_t &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R & > GTR10
GTR10 iterator is a typedef for thrust::detail::tuple_of_iterator_references
thrust::detail::tuple_of_iterator_references< GReal_t &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, thrust::null_type, thrust::null_type, thrust::null_type > GTR7
GTR7 iterator is a typedef for thrust::detail::tuple_of_iterator_references
vector< RealVector_h * > VariableSet_h
Typedef for a STL vector of pointers to host Particles_h vectors .
mc_host_vector< GBool_t > BoolVector_h
Vector3R host vector.
thrust::host_vector< T > mc_device_vector
Generic template typedef for thrust::host_vector.
thrust::detail::tuple_of_iterator_references< GReal_t &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, thrust::null_type > GTR9
GTR9 iterator is a typedef for thrust::detail::tuple_of_iterator_references
thrust::detail::tuple_of_iterator_references< GReal_t &, Vector4R &, Vector4R &, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type > GTR3
GTR3 iterator is a typedef for thrust::detail::tuple_of_iterator_references
mc_device_vector< GReal_t > RealVector_d
Typedef for a GBool_t device vector.
thrust::detail::tuple_of_iterator_references< Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, thrust::null_type, thrust::null_type, thrust::null_type, thrust::null_type > GT6
GT6 iterator is a typedef for thrust::detail::tuple_of_iterator_references
thrust::detail::tuple_of_iterator_references< Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, Vector4R &, thrust::null_type, thrust::null_type > GT8
GT8 iterator is a typedef for thrust::detail::tuple_of_iterator_references