/home/julian/svn/gpucpumd/mdgpu2/gpu_forces.cu File Reference

#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.

Detailed Description

Author:
Julian P. Engel
Date:
08.06.2010

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.

 All Files Functions Defines

Generated on Thu Jun 17 14:22:54 2010 for mdgpu - a molecular dynamic simulation program using GPUs by  doxygen 1.6.1