15 #ifndef CORE_GPU_MECHANICAL_FORCES_OP_CUDA_KERNEL_H_
16 #define CORE_GPU_MECHANICAL_FORCES_OP_CUDA_KERNEL_H_
23 #include <thrust/device_ptr.h>
24 #include <thrust/device_vector.h>
37 const uint32_t* box_id,
const real_t* mass,
const real_t timestep,
38 const real_t max_displacement,
const real_t squared_radius,
39 const uint32_t num_agents, uint32_t* starts, uint16_t* lengths,
40 uint64_t* timestamps, uint64_t current_timestamp, uint32_t* successors,
41 uint32_t* num_boxes_axis,
real_t* cell_movements);
49 thrust::device_vector<real_t3> d_positions_;
50 thrust::device_vector<real_t3> d_tractor_force_;
51 thrust::device_vector<real_t> d_adherence_;
52 thrust::device_vector<real_t> d_diameters_;
53 thrust::device_vector<real_t> d_mass_;
54 thrust::device_vector<real_t3> d_cell_movements_;
55 thrust::device_vector<uint32_t> d_box_id_;
56 thrust::device_vector<uint32_t> d_starts_;
57 thrust::device_vector<uint16_t> d_lengths_;
58 thrust::device_vector<uint32_t> d_successors_;
59 thrust::device_vector<uint64_t> d_timestamps_;
60 thrust::device_ptr<uint3> d_num_boxes_axis_;
69 uint32_t num_agents, uint32_t num_boxes) {}
75 const uint32_t* box_id,
const real_t* mass,
const real_t timestep,
76 const real_t max_displacement,
const real_t squared_radius,
77 const uint32_t num_agents, uint32_t* starts, uint16_t* lengths,
78 uint64_t* timestamps, uint64_t current_timestamp, uint32_t* successors,
79 uint32_t* num_boxes_axis,
real_t* cell_movements) {}
83 uint32_t num_cells) {}
85 uint32_t num_boxes) {}
91 #endif // CORE_GPU_MECHANICAL_FORCES_OP_CUDA_KERNEL_H_