I'm writing a particle simulation which I will make open source, designed to test electron confinement and see if I can reproduce the whiffle ball effect which chokes off the point cusp funnels.
I already wrote a version on the CPU that was really slow, and I'm porting to CUDA right now. I have all the math worked out so it's progressing pretty quickly, but it's still a WIP. I posted a video of my early results here:
http://www.youtube.com/watch?v=UfHXKUrb-as&hd=1
Polywell particle simulation
-
- Posts: 1439
- Joined: Wed Jul 14, 2010 5:27 pm
i started out w/nvidia's n-body sample and modified it to do EM-calculations instead of gravity ones.
if you get stuck on anything, you can check my code on sourceforge:
https://sourceforge.net/projects/em-nbody/
the compute kernel is in "bodysystemcuda.cu":
http://em-nbody.svn.sourceforge.net/vie ... iew=markup
but be ware lest you copy any unknown bugs... more scientific to do it independantly.
i watched the video. looking good!
if you get stuck on anything, you can check my code on sourceforge:
https://sourceforge.net/projects/em-nbody/
the compute kernel is in "bodysystemcuda.cu":
http://em-nbody.svn.sourceforge.net/vie ... iew=markup
but be ware lest you copy any unknown bugs... more scientific to do it independantly.
i watched the video. looking good!
-
- Posts: 1439
- Joined: Wed Jul 14, 2010 5:27 pm
-
- Posts: 1439
- Joined: Wed Jul 14, 2010 5:27 pm
also, you seem pretty smart and like you'd share my interests. if you want to check out an evil distraction, i came up with an idea that can possibly decrease the computational time complexity of n-body problems with only a small impact on accuracy. you can check out the basic idea here:
http://kevinspublicstuff.wikidot.com/petrock
it's sort of like going from a lagragian description to a multi-scalar eulerian description ( http://en.wikipedia.org/wiki/Lagrangian ... flow_field ) and back.
an advantage over a barnes-hut tree code is that due to the much more regular data access pattern, it scales a lot better on data-parallel processors.
i came up w/it when working on my swarm wars project ( https://sourceforge.net/projects/swarmwars/ ). i ran into a practical population limit due to n x n inter-organism interactions. but i needed the population size to be dynamic and practically unlimited. when i came up with the solution i thought it was an awesome idea. and could have practical implications for scientific modelling. i havent gotten around to fully implementing and testing it in swarm wars yet. (i've been doing some other improvements instead.)
http://kevinspublicstuff.wikidot.com/petrock
it's sort of like going from a lagragian description to a multi-scalar eulerian description ( http://en.wikipedia.org/wiki/Lagrangian ... flow_field ) and back.
an advantage over a barnes-hut tree code is that due to the much more regular data access pattern, it scales a lot better on data-parallel processors.
i came up w/it when working on my swarm wars project ( https://sourceforge.net/projects/swarmwars/ ). i ran into a practical population limit due to n x n inter-organism interactions. but i needed the population size to be dynamic and practically unlimited. when i came up with the solution i thought it was an awesome idea. and could have practical implications for scientific modelling. i havent gotten around to fully implementing and testing it in swarm wars yet. (i've been doing some other improvements instead.)
-
- Posts: 1439
- Joined: Wed Jul 14, 2010 5:27 pm
i just moved the above mentioned swarmwars over to github:
https://github.com/happyjack27/SwarmWars
i haven't been happy w/sourceforge. interface is kinda kludgy. (Though i'm not all to impressed w/github search and advertising features. kinda feels like i'm moving into a black hole.) might eventually move tsunami and em_nbody over there, too.
https://github.com/happyjack27/SwarmWars
i haven't been happy w/sourceforge. interface is kinda kludgy. (Though i'm not all to impressed w/github search and advertising features. kinda feels like i'm moving into a black hole.) might eventually move tsunami and em_nbody over there, too.