Gromacs
2025-dev-20240508-5d2129b
|
#include "config.h"
#include "gromacs/simd/simd.h"
#include "gromacs/utility/gmxassert.h"
#include "boundingbox.h"
#include "boundingbox_simd.h"
Declares and defines functions for computing distances between bounding boxes.
Functions | |
template<typename T > | |
static std::enable_if_t < std::is_same_v< T, gmx::BasicVector< float > >, gmx::BasicVector< float > > | Nbnxm::loadBoundingBoxCorner (const BoundingBox::Corner &corner) |
Loads a corner of a bounding box into a float vector. | |
static gmx::BasicVector< float > | Nbnxm::max (const gmx::BasicVector< float > &v1, const gmx::BasicVector< float > &v2) |
Return the element-wise max of two 3-float vectors, needed to share code with SIMD. | |
static float | Nbnxm::dotProduct (const gmx::BasicVector< float > &v1, const gmx::BasicVector< float > &v2) |
Return the dot product of two 3-float vectors, needed to share code with SIMD. | |
static float | Nbnxm::clusterBoundingBoxDistance2 (const BoundingBox &bb_i, const BoundingBox &bb_j) |
Returns the distance^2 between two bounding boxes. More... | |