ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
Loading...
Searching...
No Matches
short_range_cabana.hpp File Reference
#include <config/config.hpp>
#include "cell_system/CellStructure.hpp"
#include "aosoa_pack.hpp"
#include "bond_forces_kokkos.hpp"
#include "custom_verlet_list.hpp"
#include "forces_cabana.hpp"
#include "kokkos_helpers.hpp"
#include <Cabana_Core.hpp>
#include <Cabana_NeighborList.hpp>
#include <caliper/cali.h>
#include <functional>
#include <iterator>
#include <span>
#include <utility>
+ Include dependency graph for short_range_cabana.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Typedefs

using ShortRangeVerletPairLoop = std::function< void(CellStructure::ListType const &, std::size_t)>
 

Functions

ESPRESSO_ATTR_ALWAYS_INLINE void commit_particle (Particle const &p, auto const index, CellStructure::AoSoA_pack &aosoa, bool const rebuild)
 
ESPRESSO_ATTR_ALWAYS_INLINE void link_cell_kokkos (std::span< Cell *const > cells, BoxGeometry const &box_geo, auto const &verlet_criterion, Kokkos::View< int *, Kokkos::DefaultHostExecutionSpace > const &id_to_index, int const max_id, auto const &intra_operator, auto const &inter_operator)
 
template<class execution_space = Kokkos::DefaultHostExecutionSpace>
ESPRESSO_ATTR_ALWAYS_INLINE void update_cabana_state (CellStructure &cell_structure, auto const &make_verlet_criterion, double const pair_cutoff, auto const integ_switch)
 
template<class execution_space = Kokkos::DefaultHostExecutionSpace>
ESPRESSO_ATTR_ALWAYS_INLINE void update_aosoa_charges (CellStructure &cell_structure)
 
template<class execution_space = Kokkos::DefaultHostExecutionSpace>
void cabana_short_range (auto const &pair_bonds_kernel, auto const &angle_bonds_kernel, auto const &dihedral_bonds_kernel, auto const &nonbonded_kernel, CellStructure &cell_structure, double pair_cutoff, double bond_cutoff, auto const &make_verlet_criterion, auto const integ_switch, ShortRangeVerletPairLoop const &verlet_pair_loop={})
 

Typedef Documentation

◆ ShortRangeVerletPairLoop

Function Documentation

◆ cabana_short_range()

template<class execution_space = Kokkos::DefaultHostExecutionSpace>
void cabana_short_range ( auto const pair_bonds_kernel,
auto const angle_bonds_kernel,
auto const dihedral_bonds_kernel,
auto const nonbonded_kernel,
CellStructure cell_structure,
double  pair_cutoff,
double  bond_cutoff,
auto const make_verlet_criterion,
auto const  integ_switch,
ShortRangeVerletPairLoop const verlet_pair_loop = {} 
)

◆ commit_particle()

◆ link_cell_kokkos()

ESPRESSO_ATTR_ALWAYS_INLINE void link_cell_kokkos ( std::span< Cell *const cells,
BoxGeometry const box_geo,
auto const verlet_criterion,
Kokkos::View< int *, Kokkos::DefaultHostExecutionSpace > const id_to_index,
int const  max_id,
auto const intra_operator,
auto const inter_operator 
)
inline

◆ update_aosoa_charges()

template<class execution_space = Kokkos::DefaultHostExecutionSpace>
ESPRESSO_ATTR_ALWAYS_INLINE void update_aosoa_charges ( CellStructure cell_structure)
inline

◆ update_cabana_state()