ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
Loading...
Searching...
No Matches
particle_packing.hpp File Reference

Reusable particle packing/unpacking for ghost communications. More...

#include <config/config.hpp>
#include "BoxGeometry.hpp"
#include "ParticleList.hpp"
#include <utils/Vector.hpp>
#include <cstddef>
#include <memory>
#include <span>
#include <vector>
+ Include dependency graph for particle_packing.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  GhostComm::CommBuf
 Class that stores marshalled data for ghost communications. More...
 

Namespaces

namespace  GhostComm
 

Functions

std::size_t GhostComm::calc_transmit_size (BoxGeometry const &box_geo, unsigned data_parts)
 Calculate the per-particle transmit size for the given data parts.
 
std::size_t GhostComm::calc_transmit_size (std::span< ParticleList *const > cells, BoxGeometry const &box_geo, unsigned data_parts)
 Calculate the total transmit size for a list of cells and data parts.
 
void GhostComm::pack_cells (CommBuf &buf, std::span< ParticleList *const > cells, Utils::Vector3d const &shift, BoxGeometry const &box_geo, unsigned data_parts)
 Pack particle data from cells into a communication buffer.
 
void GhostComm::unpack_cells (CommBuf &buf, std::span< ParticleList *const > cells, BoxGeometry const &box_geo, unsigned data_parts)
 Unpack particle data from a communication buffer into cells.
 
void GhostComm::add_forces (CommBuf &buf, std::span< ParticleList *const > cells, unsigned data_parts)
 Add forces (and optionally torques) from a communication buffer to particles in cells.
 
void GhostComm::add_rattle (CommBuf &buf, std::span< ParticleList *const > cells)
 Add rattle corrections from a communication buffer to particles.
 
void GhostComm::add_dip_fld (CommBuf &buf, std::span< ParticleList *const > cells)
 Add dipole fields from a communication buffer to particles.
 
void GhostComm::local_cell_copy (ParticleList &src, ParticleList &dst, Utils::Vector3d const &shift, BoxGeometry const &box_geo, unsigned data_parts)
 Copy particle data from src to dst applying a ghost shift.
 

Detailed Description

Reusable particle packing/unpacking for ghost communications.

Definition in file particle_packing.hpp.