Apply kernel operation. More...
Apply kernel operation.
exp1 | expression1 |
NN | list |
Definition at line 536 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_< false > | 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 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 |
Return the type of the Cell-list. | |
typedef boost::mpl::at< vector_type, boost::mpl::int_< 1 > >::type | Kernel |
Return the type of the kernel. | |
typedef boost::mpl::at< vector_type, boost::mpl::int_< 2 > >::type | vector_orig |
Return the vector containing the position of the 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(std::declval< Kernel_nr >().value(Point< vector_orig_nr::dims, typenamevector_orig_nr::stype >(0.0), Point< vector_orig_nr::dims, typenamevector_orig_nr::stype >(0.0)))>::rtype | rtype |
Get the return type of the expression. | |
Private Attributes | |
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 with the particle positions | |
typedef has_vector_kernel<vector_orig_nr>::type vector_dist_expression_op< exp1, vector_type, VECT_APPLYKER_IN_SIM >::is_ker |
indicate if this expression operate on kernel expression
Definition at line 568 of file vector_dist_operators_apply_kernel.hpp.
typedef boost::mpl::bool_<false> vector_dist_expression_op< exp1, vector_type, VECT_APPLYKER_IN_SIM >::is_sort |
indicate that is apply_kernel is not a sorted version
Definition at line 574 of file vector_dist_operators_apply_kernel.hpp.
|
private |
Return the type of the kernel.
Definition at line 541 of file vector_dist_operators_apply_kernel.hpp.
|
private |
Return the type of the kernel.
Definition at line 548 of file vector_dist_operators_apply_kernel.hpp.
|
private |
Return the type of the Cell-list.
Definition at line 539 of file vector_dist_operators_apply_kernel.hpp.
|
private |
Return the type of the Cell-list.
Definition at line 546 of file vector_dist_operators_apply_kernel.hpp.
typedef NN_nr vector_dist_expression_op< exp1, vector_type, VECT_APPLYKER_IN_SIM >::NN_type |
type of NN structure
Definition at line 577 of file vector_dist_operators_apply_kernel.hpp.
|
private |
Get the return type of the expression.
Definition at line 562 of file vector_dist_operators_apply_kernel.hpp.
|
private |
Return the vector containing the position of the particles.
Definition at line 543 of file vector_dist_operators_apply_kernel.hpp.
|
private |
Return the vector containing the position of the particles.
Definition at line 550 of file vector_dist_operators_apply_kernel.hpp.
typedef vector_orig_nr vector_dist_expression_op< exp1, vector_type, VECT_APPLYKER_IN_SIM >::vtype |
vector type on which this expression work
Definition at line 571 of file vector_dist_operators_apply_kernel.hpp.
|
inline |
Constructor.
cl | cell-list |
ker | kernel |
vd | Vector containing the particle positions |
Definition at line 615 of file vector_dist_operators_apply_kernel.hpp.
|
inline |
get the NN object
Definition at line 584 of file vector_dist_operators_apply_kernel.hpp.
|
inline |
get the vector
Definition at line 594 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 604 of file vector_dist_operators_apply_kernel.hpp.
|
inline |
Evaluate the expression.
key | where to evaluate the expression |
Definition at line 626 of file vector_dist_operators_apply_kernel.hpp.
|
private |
Cell-list.
Definition at line 553 of file vector_dist_operators_apply_kernel.hpp.
|
private |
kernel
Definition at line 556 of file vector_dist_operators_apply_kernel.hpp.
|
private |
vector with the particle positions
Definition at line 559 of file vector_dist_operators_apply_kernel.hpp.