#include "gpu_forces.cuh"
Go to the source code of this file.
Functions | |
__device__ void | gpuAddHarmonicBondForce (FLOAT_ARRAY_TYPE *dForce, FLOAT_ARRAY_TYPE *dA, FLOAT_ARRAY_TYPE *dB, float *dK, float *boxsize) |
Add harmonic force to one particle. | |
__device__ void | gpuAddLJForce (FLOAT_ARRAY_TYPE *dForce, FLOAT_ARRAY_TYPE *dA, FLOAT_ARRAY_TYPE *dB, float *boxsize) |
Add Lennard-Jones force to one particle. | |
__device__ void | gpuAddLJForceCut (FLOAT_ARRAY_TYPE *dForce, FLOAT_ARRAY_TYPE *dA, FLOAT_ARRAY_TYPE *dB, float *boxsize, float *rCutSq) |
Add Lennard-Jones force to one particle under respect of a cutoff. | |
__global__ void | gpuHarmonicBondForces (FLOAT_ARRAY_TYPE *dPos, FLOAT_ARRAY_TYPE *dForce, int *cnn, size_t pitch, int N, int numNN, float k, float boxsize) |
Harmonic force calculation kernel. | |
__global__ void | gpuHarmonicBondForcesSmem (FLOAT_ARRAY_TYPE *dPos, FLOAT_ARRAY_TYPE *dForce, int *cnn, size_t pitch, int N, int numNN, float k, float boxsize) |
Harmonic force calculation kernel using shared memory. | |
__global__ void | gpuLJForces (FLOAT_ARRAY_TYPE *dPos, FLOAT_ARRAY_TYPE *dForce, int N, float boxsize) |
'Brute force' Lennard-Jones force calculation kernel | |
__global__ void | gpuLJForcesCut (FLOAT_ARRAY_TYPE *dPos, FLOAT_ARRAY_TYPE *dForce, int N, float boxsize, float rCutSq) |
'Brute force' Lennard-Jones force calculation kernel with potential cutoff | |
__global__ void | gpuLJForcesCutRSmem (FLOAT_ARRAY_TYPE *dPos, FLOAT_ARRAY_TYPE *dForce, int N, float boxsize, float rCutSq) |
'Brute force' Lennard-Jones force calculation kernel with potential cutoff - using shared memory for reference particles | |
__global__ void | gpuLJForcesCutSmem (FLOAT_ARRAY_TYPE *dPos, FLOAT_ARRAY_TYPE *dForce, int N, float boxsize, float rCutSq) |
'Brute force' Lennard-Jones force calculation kernel with potential cutoff - using registers for reference particles, shared memory for others | |
__global__ void | gpuLJForcesCutSmemSmem (FLOAT_ARRAY_TYPE *dPos, FLOAT_ARRAY_TYPE *dForce, int N, float boxsize, float rCutSq) |
'Brute force' Lennard-Jones force calculation kernel with potential cutoff using shared memory, Version 2 | |
__global__ void | gpuLJForcesCutVar1 (FLOAT_ARRAY_TYPE *dPos, FLOAT_ARRAY_TYPE *dForce, int N, float boxsize, float rCutSq) |
'Brute force' Lennard-Jones force calculation kernel with potential cutoff - using registers for reference particles | |
__global__ void | gpuLJForcesSmem (FLOAT_ARRAY_TYPE *dPos, FLOAT_ARRAY_TYPE *dForce, int N, float boxsize) |
'Brute force' Lennard-Jones force calculation kernel using shared memory | |
__global__ void | gpuLJForcesSmemSmem (FLOAT_ARRAY_TYPE *dPos, FLOAT_ARRAY_TYPE *dForce, int N, float boxsize) |
'Brute force' Lennard-Jones force calculation kernel using shared memory for all coordinates | |
__global__ void | gpuLJForcesVerletList (FLOAT_ARRAY_TYPE *dPos, FLOAT_ARRAY_TYPE *dForce, int N, int *dVlists, size_t vlists_pitch, int *dVcount, float boxsize, float rCutSq) |
Verlet List Lennard-Jones force calculation kernel with potential cutoff. | |
__global__ void | gpuResetForces (FLOAT_ARRAY_TYPE *dForces, int N) |
Reset all forces. |
mdgpu - a molecular dynamic simulation program using GPUs
Copyright (C) 2010 Julian P. Engel
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
Definition in file gpu_forces.cu.