Spreading vectors around an area

  • Context: Graduate 
  • Thread starter Thread starter wbrigg
  • Start date Start date
  • Tags Tags
    Area Vectors
Click For Summary

Discussion Overview

The discussion revolves around the challenge of evenly distributing vectors originating from a common point in space, particularly focusing on the transition from 2D to 3D and higher dimensions. Participants explore mathematical approaches, including the use of matrices and geometric arrangements, to achieve this distribution.

Discussion Character

  • Exploratory
  • Technical explanation
  • Mathematical reasoning
  • Debate/contested

Main Points Raised

  • One participant suggests that in 2D, dividing a unit circle is straightforward, but in 3D, distributing points evenly on a sphere is more complex and may require algorithms.
  • Another participant proposes using polar coordinates to distribute points evenly on a sphere, mentioning the need to account for latitude and the relationship between the number of points and their distribution.
  • A participant describes a method involving spirals to approximate even spacing on a sphere, noting limitations in adapting this method to higher dimensions.
  • Discussion includes specific examples of matrices representing points in 1D, 2D, and 3D, with calculations provided for spacing points around a circle and sphere.
  • One participant posits that the optimal arrangement of vectors occurs when the angle between each pair is consistent, leading to a specific matrix structure based on dot products.
  • Another participant questions the feasibility of achieving a minimized sum of dot products for a set of vectors, suggesting that the problem reduces to finding a matrix with specific properties.
  • Concerns are raised about the applicability of certain arrangements to higher dimensions and the implications of vector spacing in relation to nearest neighbors.

Areas of Agreement / Disagreement

Participants express differing views on the methods and feasibility of achieving even vector distribution, with no consensus reached on a definitive approach or solution.

Contextual Notes

Participants mention various mathematical constructs and assumptions, such as the dependence on the number of vectors and dimensions, as well as the unresolved nature of certain mathematical steps in the proposed methods.

wbrigg
Messages
15
Reaction score
0
hey all,

I was wandering if there was a way to spread vectors as evenly as possible through space (all originating from the same point.

In 2D, this is easy, i just divide a unit circle into the number of peices i require (or in the specific case I'm looking at it for, i divide the 1st quadrant into that many peices).

In 3D it gets harder though. i figured it's effectively the same thing as spreading dots evenly around a sphere, and it seems there's no way (on the internet) to do this other than via algorithms.

would it be possible to achieve what I'm looking for using Matrices?

i.e.

\begin{pmatrix}<br /> a1\\<br /> a2\\<br /> a3<br /> \end{pmatrix}<br /> <br /> \begin{pmatrix}<br /> b1\\<br /> b2\\<br /> b3<br /> \end{pmatrix}<br /> <br /> \begin{pmatrix}<br /> c1\\<br /> c2\\<br /> c3<br /> \end{pmatrix}<br /> <br />

are my vectors i want to spread out as much as possible (all the same length).

if i take
<br /> \begin{pmatrix}<br /> a1&amp;b1&amp;c1\\<br /> a2&amp;b2&amp;c2\\<br /> a3&amp;b3&amp;c3<br /> \end{pmatrix}<br />
and it's transpose, and multiply them, i'll get a symetric matrix with 1s down the leading diagonal (dot product with itself) and numbers less than one (other dot products) everywhere else.

what I'm asking is if there's a way to minimise all the entries of this matrix so that the sum of them all is as small as possible? And would that result in having my vectors evenly spread out around the space?
 
Physics news on Phys.org
have i put this in the wrong thread/forum thing?
 
I don't think anyone understands what you are trying to do. If it is just "find n points evenly distributed on a unit sphere" then you probably want to use polar coordinates with \rho set equal to 1. Since a circle of lattitude \phi has radius sin(\phi) and so circumference 2\pi sin(\phi) you will want to distribute, say, n1 values of \phi evenly between 0 and \pi and distribute n2= floor(n1sin(\phi) on each circle of "latitude" \phi where n_1n_2= n_1^2 sin(\phi)= n.
 
i'm looking for a way to distribute n points so that they cover all directions evenly if you draw a line from the origin to each point. In 3 dimensions this corresponds to evenly spacing points around a sphere, and in two dimensions around a circle. In one dimension it's just left and right (or up and down, depends on what your one dimension is).


From browsing google and such I've found that the way people do it for a sphere is to have a spiral which goes from on point on the sphere to another on the other side, and then have the spiral such that the distance between the spirals is the same as the distance between the points. This method is a good approximation, but it's not ideal. And it cannot be altered (in anyway i see) to work in higher dimensions.

some numbers of vectors are easy to space around,

i.e. in 1D, the two unit vectors would be (1) and (-1)

So i'd have two matrices, (1,-1) and it's transpose. then I'd multiply the transpose by the first to get

<br /> \begin{pmatrix}<br /> 1&amp;-1\\<br /> -1&amp;1<br /> \end {pmatrix}<br />

If i do it in 2D, then I'm now spacing points around a circle.
Spacing 2 Points around a circle gives the same matrix as above.

Spacing 3 points around a circle gives:
<br /> \begin{pmatrix}<br /> 1&amp;-0.5&amp;-0.5\\<br /> -0.5&amp;1&amp;-0.5\\<br /> -0.5&amp;-0.5&amp;1<br /> \end {pmatrix}<br />

4 Points:
<br /> \begin{pmatrix}<br /> 1&amp;0&amp;-1&amp;0\\<br /> 0&amp;1&amp;0&amp;-1\\<br /> -1&amp;0&amp;1&amp;0\\<br /> 0&amp;-1&amp;0&amp;1<br /> \end {pmatrix}<br />

These matrices have the top values as Cos(a2Pi/b) where b is the number of points being spread an a just counts from 1 up to b.

No matter how many dimensions you do this in you always get a b by b matrix.

Extending the Cos thing from above to a sphere would give the matrix of

<br /> \begin{pmatrix}<br /> 1&amp;0.5&amp;-0.5&amp;-1&amp;-0.5&amp;0.5\\<br /> 0.5&amp;1&amp;0.5&amp;-0.5&amp;-1&amp;-0.5\\<br /> -0.5&amp;0.5&amp;1&amp;0.5&amp;-0.5&amp;-1\\<br /> -1&amp;-0.5&amp;0.5&amp;1&amp;0.5&amp;-0.5\\<br /> -0.5&amp;-1&amp;-0.5&amp;0.5&amp;1&amp;0.5\\<br /> 0.5&amp;-0.5&amp;-1&amp;-0.5&amp;0.5&amp;1<br /> \end {pmatrix}<br />

Now what vectors would i need to create that matrix? Obviously there are Three pairs of vecotrs differing only in their magnitude. and a Dot product of 60 degrees corresponds to the two vectors being at 60 Degrees to one another. The best way to space 6 points aroudn a sphere would be to have two triangles top and bottom, with one rotated 30 degrees... And, and it seems like that is what these vectors suggest. I'm asking would this continue to work in Higher dimensions and with more points?
 
I get what you're saying. I think it's clear (although I could be wrong and it would be hard to prove it) that the optimum arangement is when the angle between each pair of vectors is the same - otherwise you have to introduce some sort of measure of 'spaced-outness' - which sounds like a drugs test to me.

If we just deal with unit vectors then for each pair we must have v_i\cdot v_j = \cos\theta, where theta is the angle we want. So if we have n of them we can form the 3 by n matrix A=(v_1,\ldots,v_n), where we're using column vectors. Given what we have just said, we must have
A^TA=\left(\begin{array}{cccc}<br /> 1 &amp; C &amp; \ldots &amp; C \\<br /> C &amp; 1 &amp; \ldots &amp; C \\<br /> \vdots &amp; &amp; \ddots &amp; \vdots \\<br /> C &amp; C &amp; \ldots &amp; 1 \\ \end{array} \right),
where C=\cos\theta, since the ij-th entry is just the dot product of the i-th and j-th vectors.
So the problem reduces to finding a 3 by n matrix A (if it exists) with this property?

I think it should be do-able, but don't have the time right now (going to a 5-day music festival - and it just started pouring with rain, grr..) Have you tried looking at some chemistry (or related) sites? This reminds me of drawing e.g. the skeletal structure of CH_4 in high school.. all the 'bonds' have to be equally spaced. Search for molecular geometry or VSEPR
 
Last edited:
off to reading eh.


If by "angle between each pair of vectors" you mean each vector and it's nearest neighbor, then it would only work for a 2D space (or 2D plane in higher dimensions). i.e. you could just arrange the points around an equator of the sphere and it would satisfy your condition.


I'm essentially looking for a way to create a set of vectors where this:

\sum^{n}_{a=0}\sum^{n}_{b=0}\vec{x}_{a}\vec{x}_{b} is Minimised.

If you have vectors with 3 Elements, it's 3D, 2 elements is 2D. 20 Elements would be a 20 Dimensional *thing*. The matrix you get in the end is always an n\times n matrix, where n is the number of vectors.
 

Similar threads

  • · Replies 8 ·
Replies
8
Views
3K
  • · Replies 4 ·
Replies
4
Views
4K
  • · Replies 4 ·
Replies
4
Views
2K
  • · Replies 14 ·
Replies
14
Views
3K
  • · Replies 9 ·
Replies
9
Views
2K
  • · Replies 5 ·
Replies
5
Views
3K
  • · Replies 5 ·
Replies
5
Views
2K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 20 ·
Replies
20
Views
4K
  • · Replies 5 ·
Replies
5
Views
2K