Como se dijo, quiero construir un programa para generar n puntos equidistantes en un espacio euclidiano. Por lo que sé
- 1d: todos los puntos
- 2d: todos los triángulos equiláteros
- 3d: todos los tetraedros equiláteros
- hasta 3d: supongo que se llama hipertriangulo equilátero
Entonces, mi problema es el siguiente, en un espacio euclidiano n-1, dando un punto definido, construya el otro n-1 para tener un hipertriangulo equilátero con una d distante entre cada punto.
Supongo que podemos comenzar como sigue con, por ejemplo, un espacio 3d.
- p1 = (x1, y1, z1) fijo
- p2 = (x2, y2, z2)
- p3 = (x3, y3, z3)
- p4 = (x4, y4, z4)
- re
Comenzamos a arreglar p2 sabiendo d y p1
Tenemos 3 variables x2, y2, z2. Podemos arreglar al azar dos de ellos y determinar el tercero sin problema.
Luego para el segundo punto tenemos ahora 2 ecuaciones para definirlo:
Como anteriormente, supongo que podemos arreglar 2 variables para determinar la tercera.
Para el último punto ahora tenemos 3 ecuaciones que lo definieron.
Entonces, para un espacio dimensional n-1 tenemos una ecuación n-1 para definir el último punto.
No sé cómo resolver este tipo de sistema compuesto de ecuaciones cuadráticas con una variable y si el proceso que consiste en fijar la dimensión n-1 para determinar la última conduce a un hipertriangulo equidistante. Además, existen otros métodos con una complejidad menor y más fáciles de implementar.
Espero haber sido lo suficientemente claro y gracias por su ayuda.
Puede hacer n-1 puntos equidistantes utilizando los vectores unitarios a lo largo de cada uno de los ejes aka. (1, 0, 0, 0, ..., 0); (0, 1, 0, 0, ..., 0); (0, 0, 1, 0, ..., 0); etc., el último enésimo punto estará a lo largo de la dirección 1, 1, 1, ..., 1.
Luego puede usar una escala para establecer la distancia entre los puntos de a y una traslación para mover uno de los puntos al punto fijo2–√ d
fuente