-
Notifications
You must be signed in to change notification settings - Fork 12
NBody Forces
NBody Forces is an interactor Module [1]. It makes all particle in the system interact with all the others directly, as an NxN computation.
NbodyForces is an identical module to PairForces[4]. Only it uses an infinite cutoff distance. If you want to evaluate a potential with an infinite range you should use PairForces, which will fall back to NBody if the cutoff is large. If you want an arbitrary NBody interaction you should use the NBody class[5], which has an interface very similar to a neighbour list. See BDHI_Lanczos for an example on how to use NBody.
See below for how to implement a Transverser.
NBody is a very simple class in which the main kernel, NBody_ns::computeGPU contains the NVIDIA nbody algorithm [2]. The transversal of the system by each particle is performed by this function. While the logic of what to do with each pair of particles and with all the pairs involving particle i its outsourced using the Transversed concept [3].
See [3] for information on how to implement a transverser.
Notice how this works for any general NxN computation, i.e summing the forces of all particles acting on each other or performing a matrix vector multiplication.
[1] https://github.com/RaulPPelaez/UAMMD/wiki/Interactor
[2]http://http.developer.nvidia.com/GPUGems3/gpugems3_ch31.html
[3] https://github.com/RaulPPelaez/UAMMD/wiki/List-Transverser
[4] https://github.com/RaulPPelaez/UAMMD/wiki/Pair-Forces
[5] https://github.com/RaulPPelaez/UAMMD/wiki/NBody
-
-
1. PairForces
2. NbodyForces
3. ExternalForces
4. BondedForces
5. AngularBondedForces
6. TorsionalBondedForces
7. Poisson (Electrostatics) -
-
MD (Molecular Dynamics)
1. VerletNVT
2. VerletNVE - BD Brownian Dynamics
-
BDHI Brownian Dynamics with Hydrodynamic Interactions
1. EulerMaruyama
1.1 BDHI_Cholesky Brownian displacements through Cholesky factorization.
1.2 BDHI_Lanczos Brownian displacements through Lanczos algorithm.
1.3 BDHI_PSE Positively Split Edwald.
1.4 BDHI_FCM Force Coupling Method. - DPD Dissipative Particle Dynamics
- SPH Smoothed Particle Hydrodynamics
-
Hydrodynamics
1. ICM Inertial Coupling Method.
2. FIB Fluctuating Immerse Boundary.
3. Quasi2D Quasi2D hydrodynamics
-
MD (Molecular Dynamics)
-
- 1. Neighbour Lists
-
1. Programming Tools
2. Utils
-
1. Transverser
2. Functor
3. Potential
-
1. Particle Data
2. Particle Group
3. System
4. Parameter updatable
-
1. Tabulated Function
2. Postprocessing tools
3. InputFile
4. Tests
5. Allocator
6. Temporary memory
7. Immersed Boundary (IBM)
-
1. NBody
2. Neighbour Lists
3. Python wrappers
- 1. Superpunto