|
Gromacs
2026.0-dev-20251119-5f0a571d
|
#include "gromacs/gpu_utils/gputraits.h"#include "gromacs/gpu_utils/vectype_ops_hip.h"#include "gromacs/pbcutil/ishift.h"#include "gromacs/pbcutil/pbc_aiuc.h"
Include dependency graph for pbc_aiuc_hip.h:
This graph shows which files directly or indirectly include this file:Basic routines to handle periodic boundary conditions with HIP.
This file contains GPU implementation of the PBC-aware vector evaluation.
Functions | |
| static __device__ int | xyzToShiftIndex (int x, int y, int z) |
| static __device__ int | int3ToShiftIndex (int3 iv) |
| template<bool returnShift> | |
| static __forceinline__ __device__ int | pbcDxAiucGpu (const PbcAiuc &pbcAiuc, const float4 r1, const float4 r2, float3 &dr) |
| Computes the vector between two points taking PBC into account. More... | |
| static __forceinline__ __host__ __device__ float3 | pbcDxAiuc (const PbcAiuc &pbcAiuc, const float3 &r1, const float3 &r2) |
| Computes the vector between two points taking PBC into account. More... | |
|
static |
Computes the vector between two points taking PBC into account.
Computes the vector dr between points r2 and r1, taking into account the periodic boundary conditions, described in pbcAiuc object. Same as above, only takes and returns data in float3 format. Does not return shifts.
| [in] | pbcAiuc | PBC object. |
| [in] | r1 | Coordinates of the first point. |
| [in] | r2 | Coordinates of the second point. |
|
static |
Computes the vector between two points taking PBC into account.
Computes the vector dr between points r2 and r1, taking into account the periodic boundary conditions, described in pbcAiuc object. Note that this routine always does the PBC arithmetic for all directions, multiplying the displacements by zeroes if the corresponding direction is not periodic. For triclinic boxes only distances up to half the smallest box diagonal element are guaranteed to be the shortest. This means that distances from 0.5/sqrt(2) times a box vector length (e.g. for a rhombic dodecahedron) can use a more distant periodic image.
| [in] | pbcAiuc | PBC object. |
| [in] | r1 | Coordinates of the first point. |
| [in] | r2 | Coordinates of the second point. |
| [out] | dr | Resulting distance. |
1.8.5