Yes. Between .5 an 2TOn a separate note, I'm not entirely following why such high currents (1000A?) are needed thru the coils. Is the goal to create a multi-kilogauss field?
Virtual Polywell
If I am not mistaken WB6 had 200 turns of copper in each coil. And they ran 1000 amperes through them. That makes 200,000 ampere-turns. Calculate here how strong of a field that makes for a single coil (around 1T for WB-6 I take):
http://hyperphysics.phy-astr.gsu.edu/hb ... oo.html#c2
BTW I've made some progress with the wiffleball. It will probably take me a week or perhaps two to explore all the issues and grind out proper results but these two images are already showing something:
Before: http://www.mare.ee/indrek/ephi/wb1/wb1off_lic.jpg
After: http://www.mare.ee/indrek/ephi/wb1/wb1on_lic.jpg
But this still is not proper evolutionary simulation but my first pot-shot. Many more of those have to come to gain proper insight. Months of fun it seems are ahead
- Indrek
http://hyperphysics.phy-astr.gsu.edu/hb ... oo.html#c2
BTW I've made some progress with the wiffleball. It will probably take me a week or perhaps two to explore all the issues and grind out proper results but these two images are already showing something:
Before: http://www.mare.ee/indrek/ephi/wb1/wb1off_lic.jpg
After: http://www.mare.ee/indrek/ephi/wb1/wb1on_lic.jpg
But this still is not proper evolutionary simulation but my first pot-shot. Many more of those have to come to gain proper insight. Months of fun it seems are ahead

- Indrek

nice one indrek.
while im here, this would be a good place to post this awesome physics java applet page. Words cannot describe its awesomeness, take a peak at the magneto/electrodynamics and vector fields. It has helped me visualize a lot of physics. It may help with your sims as can grab the source code. Apologies for the java.
Purity is Power
Really nice graphics you guys!! Keegan, I will definitely point your java
stuff at my kids. I'm sure it will help them a lot with science.
Indrek, I like your 1/48 symmetry just fine! I think following a particle path is more complicated than symmetry. It is more likely chaotic, and the starting conditions will determine just how chaotic. You can do a force mapping where every particle energy entering a point gives rise to a force exiting that point, but that doesn't tell you anything about orbits.
I love those moving cones though - that is just plain cool!!
stuff at my kids. I'm sure it will help them a lot with science.
Indrek, I like your 1/48 symmetry just fine! I think following a particle path is more complicated than symmetry. It is more likely chaotic, and the starting conditions will determine just how chaotic. You can do a force mapping where every particle energy entering a point gives rise to a force exiting that point, but that doesn't tell you anything about orbits.
I love those moving cones though - that is just plain cool!!
When not counting collisions or particle-particle interactions/fields, a particle's path can be duplicated in 24 ways. Because of the inherent symmetries in the coil-generated fields. Or 48 ways with a little hack. And individual path will be chaotic indeed.
My plan is to simulate a bunch of particles for some time, calculate the fields (48 times particles now, but only have to calculate in 1/48 of space), then apply those fields (with magnification) to the particles and calculate a new set of paths. And repeat. And so see where the system evolves as the fields are magnified higher and higher.
Collision can be added on the way using statistic distribution functions (but haven't got that far yet though, so speculating).
Now all this way assumes that polywell is a steady-state system where microscopic effects have little or no impact. A big assumption, but good enough for me for now. Resolution can be increased by recalculating the fields more often and using extrapolation or predictor-correcter methods on the field values as they change in time.
- Indrek
My plan is to simulate a bunch of particles for some time, calculate the fields (48 times particles now, but only have to calculate in 1/48 of space), then apply those fields (with magnification) to the particles and calculate a new set of paths. And repeat. And so see where the system evolves as the fields are magnified higher and higher.
Collision can be added on the way using statistic distribution functions (but haven't got that far yet though, so speculating).
Now all this way assumes that polywell is a steady-state system where microscopic effects have little or no impact. A big assumption, but good enough for me for now. Resolution can be increased by recalculating the fields more often and using extrapolation or predictor-correcter methods on the field values as they change in time.
- Indrek
Thanks for that. It is indeed awesome. As is Indrek's current work.Keegan wrote::shock: pretty trippy wiffle ball !
nice one indrek.
while im here, this would be a good place to post this awesome physics java applet page. Words cannot describe its awesomeness, take a peak at the magneto/electrodynamics and vector fields. It has helped me visualize a lot of physics. It may help with your sims as can grab the source code. Apologies for the java.
The resident expert, drmike. I have a question.
If I have 48 million particles and I want to produce a smooth magnetic field out of them, what are the established algorithms for doing that?
I have a few ideas myself but I just realized that I'm a clueless amateur. So before I make a complete fool out of myself I need a vague idea of what's out there. Actually right now I'm not even sure what terms to google.
- Indrek
If I have 48 million particles and I want to produce a smooth magnetic field out of them, what are the established algorithms for doing that?
I have a few ideas myself but I just realized that I'm a clueless amateur. So before I make a complete fool out of myself I need a vague idea of what's out there. Actually right now I'm not even sure what terms to google.
- Indrek
48 million is kind of a lot. but check out http://pbpl.physics.ucla.edu/Computing/Code_Overview/
and buzz words oopic, plasma pic, particle tracking, plasma particle tracking
to start with.
I bet it won't take you long to get to the meat of it all!
and buzz words oopic, plasma pic, particle tracking, plasma particle tracking
to start with.
I bet it won't take you long to get to the meat of it all!
Pardon my ignorance, but will a sim using 4.8e7 particles be anywhere the same as reality? I imagine 1e20 particles in a full size polywell. 1 amp is 6.25e18 electrons / sec, and we are firing several kA down the throat of the polywell. I appreciate this is an area where I don't know much, please feel free to enlighten me!
Regards,
Tony Barry
Regards,
Tony Barry
Indrek,
I'm no expert, but since I wrote a similar (but not-quiet-working-yet) program here is one way to do it.
The magnetic field is the curl of the magnetic vectorpotential, to calculate this potential you need to solve the poisson equation on the volume you want.
Laplace( A(r) ) = -j(r) / (epsilon0*c^2)
A(r) magnetic vectorpotential field
j(r) current density field
j(r) can be calculated from the particle positions and velocitys (and the currents in the coils).
I used finite difference method (versus the probably much more difficult to code finite element method) i.e. solved the equation on a mesh made of cubes.
The problem with magnetic fields is how to choose the boundary conditions.
At an infinite distance the vector potential should become zero, but that would be a rather big volume to calculate.
I just set it to zero at the boundary of my mesh (this probably is equivalent to having a diamagnetic medium surrounding the polywell).
You could also use periodic boundary conditions (the solution this would provide could probably easier be calculated with 3-dimensional FFT, I don't know exactly how to do that though).
When you have the mesh, the boundary conditions and the current density on the mesh, you have a system of linear equations to solve.
I used a multigrid algorithm to solve the system, but also considered krylov subspace methods, in particular GMRES.
I'm no expert, but since I wrote a similar (but not-quiet-working-yet) program here is one way to do it.
The magnetic field is the curl of the magnetic vectorpotential, to calculate this potential you need to solve the poisson equation on the volume you want.
Laplace( A(r) ) = -j(r) / (epsilon0*c^2)
A(r) magnetic vectorpotential field
j(r) current density field
j(r) can be calculated from the particle positions and velocitys (and the currents in the coils).
I used finite difference method (versus the probably much more difficult to code finite element method) i.e. solved the equation on a mesh made of cubes.
The problem with magnetic fields is how to choose the boundary conditions.
At an infinite distance the vector potential should become zero, but that would be a rather big volume to calculate.
I just set it to zero at the boundary of my mesh (this probably is equivalent to having a diamagnetic medium surrounding the polywell).
You could also use periodic boundary conditions (the solution this would provide could probably easier be calculated with 3-dimensional FFT, I don't know exactly how to do that though).
When you have the mesh, the boundary conditions and the current density on the mesh, you have a system of linear equations to solve.
I used a multigrid algorithm to solve the system, but also considered krylov subspace methods, in particular GMRES.
I finally got a chance to get back into the math of things. I've started to code up Indrek's original 1/48 data cut (1/6th of what I started with). The mapping from where I am in physical space to stored data space is an interesting problem, so I hope to get that figure out first. Then I'll modify the previous code to create the data in ram, and compute particle trajectories from that.
I think it will be interesting to look for the number of orbits which strike walls (and coils count as walls) vs orbits which don't. I'm thinking a million steps should be enough to determine if a count of "didn't hit" versus "did hit" is a reasonable check. A full check is iimpossible, I'd need to start from every point in the 1/48 volume and go in every direction at every velocity. And that's just to check a free electron!! Some reasonable fraction of that space should be checked though just to get some idea of what the recirculation rates might be.
The main thing I want to find is the ratio of outer wall radius to coil position. Coil radius relative to position can also be looked at. There must be a good optimum which would give a good starting point for fluid studies. But if circulation doesn't happen with free particles, then it won't work at all.
Have a safe and happy new year!!
I think it will be interesting to look for the number of orbits which strike walls (and coils count as walls) vs orbits which don't. I'm thinking a million steps should be enough to determine if a count of "didn't hit" versus "did hit" is a reasonable check. A full check is iimpossible, I'd need to start from every point in the 1/48 volume and go in every direction at every velocity. And that's just to check a free electron!! Some reasonable fraction of that space should be checked though just to get some idea of what the recirculation rates might be.
The main thing I want to find is the ratio of outer wall radius to coil position. Coil radius relative to position can also be looked at. There must be a good optimum which would give a good starting point for fluid studies. But if circulation doesn't happen with free particles, then it won't work at all.
Have a safe and happy new year!!
I got particle tracks going, but they are all wrong.
I'm pretty sure I screwed up the field lookup process, so it's just some debugging.
But I did come up with a nice idea for getting a lot more accuracy in the data tables. The basic geometry is a cube sitting inside a sphere. I use spherical coordinates to store the field data so every point that is useful can be reached using cartesian indexing, and all the computations are done using cartesian coordinates. To look up the field values requires a cartesian -> spherical transform (after I figure out which of the 48 segments the point of look up is in!) but the advantage is I have no wasted space in the lookup volume.
The great thing is accuracy. Before, I had a 256x256x256 grid that took up 800 MB to store E and B fields, and now I have a 400x400x400 grid that takes only 519 MB.
Hopefully I'll have some reasonable particle tracks in the next few days.

But I did come up with a nice idea for getting a lot more accuracy in the data tables. The basic geometry is a cube sitting inside a sphere. I use spherical coordinates to store the field data so every point that is useful can be reached using cartesian indexing, and all the computations are done using cartesian coordinates. To look up the field values requires a cartesian -> spherical transform (after I figure out which of the 48 segments the point of look up is in!) but the advantage is I have no wasted space in the lookup volume.
The great thing is accuracy. Before, I had a 256x256x256 grid that took up 800 MB to store E and B fields, and now I have a 400x400x400 grid that takes only 519 MB.
Hopefully I'll have some reasonable particle tracks in the next few days.
I just realized something. Which I guess was already there but now I understand it. With the wiffleball formation, the amount of electrons needed to negate the b-field is obscene. That is if it was electrons only the amount of space charge would be gigantous. This means it's impossible to have the wiffleball with electrons only. You must have ions within the mix to tone the negative space charge down in the order of 1e5 times.
- Indrek
- Indrek