I’m working toward producing a set of vectors for the joints between the tori. I just need to calculate where the these line segments intersect:
UPDATE:
this approach is proving difficult to actually accomplish in code, mine or others.
I’m working toward producing a set of vectors for the joints between the tori. I just need to calculate where the these line segments intersect:
UPDATE:
this approach is proving difficult to actually accomplish in code, mine or others.
Our unit dodecahedron does not lineup with out unit icosahedron:
dodecahedron:
(±1, ±1, ±1)
(0, ±1/φ, ±φ)
(±1/φ, ±φ, 0)
(±φ, 0, ±1/φ)
icosahedron:
(0, ±1, ±φ)
(±1, ±φ, 0)
(±φ, 0, ±1)
We need to scale and rotate the dodecahedron, not sure of the specifics.
Check this out. A truncated dodecahedral Polywell rendered in CAD.
I created this using ruby to pass draw instructions to mged (the main command line tool for BRL-CAD):
require 'matrix'
phi = (1+Math.sqrt(5))/2
icosahedron = Matrix[
[0, +1, +phi],
[0, +1, -phi],
[0, -1, +phi],
[0, -1, -phi],
[+1, +phi, 0],
[+1, -phi, 0],
[-1, +phi, 0],
[-1, -phi, 0],
[+phi, 0, +1],
[+phi, 0, -1],
[-phi, 0, +1],
[-phi, 0, -1]
]
icosahedron.row_vectors().each_with_index do |v,index|
`/usr/brlcad/bin/mged -f -c test3.g 'in torus#{index}.s tor #{v[0]} #{v[1]} #{v[2]} #{v[0]} #{v[1]} #{v[2]} 1.0 0.125'`
end
This basically iterates through the vertices of the icosahedron, and draws a torus normal to the origin. Now we are tantalizingly close to having a CAD file we can render in metal.
The Polywell reactor has a core. This is the core of WB6 from EMC2:
This is what it looks like opened up:
So lets start by modeling the shape of the core. To make it more interesting, we’ll use the truncated dodecahedron. Supposedly the truncated dodecahedron has advantages over the truncated cube:
This is a simple dodecahedron:
To find the midpoint of the dodecahedron’s planes, we can use the Icosahedron:
So now we can generate a torus at each of the vertices of the Icosahedron, orthogonal to the line connecting the vertices to the origin. But first lets take a look at some of the tool and technologies we might use.