Apply kernel operation. More...
Apply kernel operation.
exp1 | expression1 |
NN | list |
Definition at line 866 of file vector_dist_operators_apply_kernel.hpp.
#include <vector_dist_operators_apply_kernel.hpp>
Public Types | |
typedef has_vector_kernel< vector_orig_nr >::type | is_ker |
indicate if this expression operate on kernel expression | |
typedef vector_orig_nr | vtype |
vector type on which this expression work | |
typedef boost::mpl::bool_< true > | is_sort |
indicate that is apply_kernel is not a sorted version | |
typedef NN_nr | NN_type |
type of NN structure | |
Public Member Functions | |
NN_nr * | getNN () const |
get the NN object | |
const vtype & | getVector () const |
get the vector | |
void | init () const |
This function must be called before value. | |
vector_dist_expression_op (const exp1 &o1, const NN &cl, Kernel &ker, const vector_orig &vd) | |
Constructor. | |
__device__ __host__ std::remove_reference< rtype >::type | value (const vect_dist_key_dx &key) const |
Evaluate the expression. | |
Private Types | |
typedef boost::mpl::at< vector_type, boost::mpl::int_< 0 > >::type | NN |
Get the type of the Cell-list. | |
typedef boost::mpl::at< vector_type, boost::mpl::int_< 1 > >::type | Kernel |
Get the type of the kernel. | |
typedef boost::mpl::at< vector_type, boost::mpl::int_< 2 > >::type | vector_orig |
Get the type of the vector containing the set of particles. | |
typedef std::remove_reference< NN >::type | NN_nr |
Return the type of the Cell-list. | |
typedef std::remove_reference< Kernel >::type | Kernel_nr |
Return the type of the kernel. | |
typedef std::remove_reference< vector_orig >::type | vector_orig_nr |
Return the vector containing the position of the particles. | |
typedef apply_kernel_rtype< decltype(o1.value(vect_dist_key_dx()))>::rtype | rtype |
Return type of the expression. | |
Private Attributes | |
const exp1 | o1 |
Expression. | |
mutable_or_not< NN, is_gpu_celllist< NN >::type::value||is_gpu_ker_celllist< NN >::type::value > | cl |
Cell-list. | |
mutable_or_not< Kernel, is_gpu_celllist< NN >::type::value||is_gpu_ker_celllist< NN >::type::value > | ker |
kernel | |
const vector_orig | vd |
Vector containing the particles. | |
typedef has_vector_kernel<vector_orig_nr>::type vector_dist_expression_op< exp1, vector_type, VECT_APPLYKER_IN_GEN_SORT >::is_ker |
indicate if this expression operate on kernel expression
Definition at line 901 of file vector_dist_operators_apply_kernel.hpp.
typedef boost::mpl::bool_<true> vector_dist_expression_op< exp1, vector_type, VECT_APPLYKER_IN_GEN_SORT >::is_sort |
indicate that is apply_kernel is not a sorted version
Definition at line 907 of file vector_dist_operators_apply_kernel.hpp.
|
private |
Get the type of the kernel.
Definition at line 871 of file vector_dist_operators_apply_kernel.hpp.
|
private |
Return the type of the kernel.
Definition at line 879 of file vector_dist_operators_apply_kernel.hpp.
|
private |
Get the type of the Cell-list.
Definition at line 869 of file vector_dist_operators_apply_kernel.hpp.
|
private |
Return the type of the Cell-list.
Definition at line 877 of file vector_dist_operators_apply_kernel.hpp.
typedef NN_nr vector_dist_expression_op< exp1, vector_type, VECT_APPLYKER_IN_GEN_SORT >::NN_type |
type of NN structure
Definition at line 910 of file vector_dist_operators_apply_kernel.hpp.
|
private |
Return type of the expression.
Definition at line 896 of file vector_dist_operators_apply_kernel.hpp.
|
private |
Get the type of the vector containing the set of particles.
Definition at line 874 of file vector_dist_operators_apply_kernel.hpp.
|
private |
Return the vector containing the position of the particles.
Definition at line 881 of file vector_dist_operators_apply_kernel.hpp.
typedef vector_orig_nr vector_dist_expression_op< exp1, vector_type, VECT_APPLYKER_IN_GEN_SORT >::vtype |
vector type on which this expression work
Definition at line 904 of file vector_dist_operators_apply_kernel.hpp.
|
inline |
Constructor.
o1 | expression |
cl | Cell-list |
ker | Kernel |
vd | vector containing the set of particles |
Definition at line 950 of file vector_dist_operators_apply_kernel.hpp.
|
inline |
get the NN object
Definition at line 917 of file vector_dist_operators_apply_kernel.hpp.
|
inline |
get the vector
Definition at line 927 of file vector_dist_operators_apply_kernel.hpp.
|
inline |
This function must be called before value.
it initialize the expression if needed
Definition at line 937 of file vector_dist_operators_apply_kernel.hpp.
|
inline |
Evaluate the expression.
key | where to evaluate the expression |
Definition at line 961 of file vector_dist_operators_apply_kernel.hpp.
|
private |
Cell-list.
Definition at line 887 of file vector_dist_operators_apply_kernel.hpp.
|
private |
kernel
Definition at line 890 of file vector_dist_operators_apply_kernel.hpp.
|
private |
Expression.
Definition at line 884 of file vector_dist_operators_apply_kernel.hpp.
|
private |
Vector containing the particles.
Definition at line 893 of file vector_dist_operators_apply_kernel.hpp.