¿Cómo podemos determinar si hay cuatro puntos en tierra firme que forman un tetraedro regular inscrito en la Tierra?

Gracias por A2A.

Una respuesta corta: simplemente puede tratar de encontrar esos cuatro puntos utilizando un enfoque heurístico. Por ejemplo, el hecho de que las distancias por pares entre los puntos deben ser iguales y alrededor de 12 000 km, como se señala en la respuesta de David Joyce, descartará la mayoría de las posibilidades para los continentes.

También puede usar el hecho de que en un cierto rango contiguo de longitudes y latitudes (ligeramente más grande que un cuarto de esfera) necesariamente debe contener un vértice.

Una respuesta larga: en realidad, incluso podemos elegir los cuatro puntos que se encuentran en los continentes. Marqué sus posibles ubicaciones con asteriscos.


Para ser más precisos, las latitudes / longitudes de estos lugares están dadas aproximadamente por:
[matemáticas] A_1 [/ matemáticas]: 66 ° N 126 ° 6 ‘W (Canadá)
[matemáticas] A_2 [/ matemáticas]: 35 ° S 71 ° O (Chile)
[matemáticas] A_3 [/ matemáticas]: 3 ° 48 ‘N 40 ° O (Kenia)
[matemáticas] A_4 [/ matemáticas]: 24 ° S 149 ° 48’O (Australia)

Para verificar si estos puntos se encuentran en los vértices de un tetraedro regular, uno puede usar los bordes centrales del borde del tetraedro mencionados en la respuesta de David Joyce. Estos ángulos son iguales a [math] \ arccos \ left (- \ frac {1} {3} \ right) \ aprox 109.47 °. [/ Math]

Utilicé scripts de Python rápidos y sucios para calcular los cosenos de estos ángulos y buscar los puntos.

Para [matemática] 6 [/ matemática] pares de ángulos centrales del borde [matemática] \ ángulo A_i O A_j [/ matemática], donde [matemática] O [/ matemática] es el centro de la esfera que obtenemos:

math.acos(cosgamma(vec2rad([-126.1, 66.0]), vec2rad([-71.0, -35.0])))*180/math.pi
109.47290628204665
>>> math.acos(cosgamma(vec2rad([-126.1, 66.0]),vec2rad([40, 3.8])))*180/math.pi
109.47610500446437
>>> math.acos(cosgamma(vec2rad([-126.1, 66.0]),vec2rad([149.8, -24.0])))*180/math.pi
109.47390726703492
>>> math.acos(cosgamma(vec2rad([-71.0, -35.0]),vec2rad([40, 3.8])))*180/math.pi
109.32496464988074
>>> math.acos(cosgamma(vec2rad([-71.0, -35.0]),vec2rad([149.8, -24.0])))*180/math.pi
109.46248271962358
>>> math.acos(cosgamma(vec2rad([40, 3.8]),vec2rad([149.8, -24.0])))*180/math.pi
109.61682372450616

Como puede ver, todos los ángulos centrales del borde están bastante cerca del requerido.

Bueno, ahora puedes hacerlo con mucha más precisión. Puede arreglar uno de [math] A_i [/ ​​math], digamos [math] A_2 [/ math], que no le gusta mover debido a su cercanía al océano, calcule la ecuación del avión que pasa por otro Tres puntos. Ahora puede elegir un punto en la intersección del plano y la esfera que se encuentra en el continente que está muy cerca / el más cercano al resto [matemáticas] A_1, A_3, A_4 [/ matemáticas]. Después de eso, debes rotarlo 120 ° (en sentido horario, en sentido antihorario) en el avión para obtener el resto de dos puntos. Después de comprobar que esos yacen en la tierra, ya está. Básicamente, tiene tres grados de libertad al resolver este problema (dos parámetros para elegir un vértice cerca de un cierto punto y un parámetro para elegir otros 3 puntos), lo que facilita las cosas al menos localmente.

Esto no va a ser una respuesta completa, pero quizás un trozo:

El tetraedro inscrito en la tierra tiene 4 vértices que deben estar en tierra firme. En la esfera, la distancia entre vértices es fija.

Cada uno de los 4 lados del tetraedro es un triángulo equilátero. Los 4 triángulos equiláteros se convierten en triángulos equiláteros esféricos en los que se divide toda la superficie terrestre. (Piense en inflar el tetraedro hasta que se convierta en la esfera).

El tetraedro se repara si arreglas 2 de los 4 vértices.

Si arregla el primer vértice en tierra firme, puede “rotar” el tetraedro hasta que los cuatro vértices estén en tierra firme. Si no hay solución después de una rotación completa, se debe elegir otro punto inicial de tierra seca.

Construir una función que proporcione para cada coordenada lat / long si es tierra o mar sería el primer paso para construir el algoritmo para encontrar todas las parejas de coordenadas de vértice que identifiquen todos los tetraedros posibles que satisfagan la pregunta.

@mgua

El ángulo central del borde de un tetraedro es de aproximadamente 109.47 °. Eso significa que necesitamos encontrar cuatro puntos en tierra para que el ángulo central entre dos de ellos sea 109.47 °. En otras palabras, necesitamos cuatro puntos de tierra, cada par de los cuales están separados por 7572 millas (12186 km de distancia).

El gran problema es que tenemos que atravesar el Océano Pacífico con tres puntos terrestres y luego verificar que el cuarto punto opuesto también esté en tierra. O eso, o elige una isla en el Pacífico y busca los otros tres puntos en tierra.

Parece que si tomas Tarawa, Kiribati, una isla en el Pacífico, entonces puedes encontrar los otros tres puntos en la Antártida, América del Norte y Asia. Solo tenía una cadena que usaba en un globo, así que podría estar equivocado. Si puede obtener los puntos en la Antártida y América del Norte, el tercero debería aterrizar en Asia.

La tierra tiene forma esférica con un centro.
Por lo tanto, cualquier punto en la tierra tendrá la misma distancia al centro de la tierra (llamado como radio).
Entonces, si tomamos 4 puntos en la superficie de la tierra (en cualquier lugar) e intentamos movernos hacia el centro de la tierra desde los cuatro puntos (o unimos los cuatro puntos y el centro), la forma será tetraedro.