¿Cuál es la ecuación / algoritmo para transformar el marco inercial centrado en la tierra (ECI) en un marco centrado en la tierra, fijo en la tierra (ECEF)?

Advertencia: aproximación involucrada, así que si está usando esto para una aplicación REAL, no la use. Consulte a su físico local si ese es el caso.

Aquí hay una idea aproximada de la conversión.

ECI tiene ejes fijos con respecto a la “esfera celeste” y, por lo tanto, sus ejes no giran con la rotación de la Tierra (o es “bamboleo”, pero aproximémonos al “bamboleo” como cero por simplicidad). ECEF fija el eje x (y por lo tanto, por ortogonalidad, y) con respecto a la rotación de la Tierra.

Por lo tanto, está cambiando de un marco de referencia no giratorio (ECI) a un marco de referencia giratorio (ECEF). ¿En qué consiste esto? Nada más que un cambio de base . Recuerde de Álgebra Lineal que la fórmula para un Cambio de Base es simplemente Cx = By, donde C es la matriz compuesta de los vectores base del marco de referencia 2, x es el vector en el marco de referencia 2, B es la matriz compuesta de la base vectores del marco de referencia 1, e y es el vector inicial.

Pasar de ECI a ECEF es bueno porque podemos establecer B con los vectores de base cartesiana i, j y k, lo que significa que B es la matriz de identidad. Eso simplifica Cx = By en Cx = y, por lo que todo lo que tenemos que hacer para encontrar x es definir C, y luego encontrar que es inverso.

Debido a que ECI y ECEF son sistemas de coordenadas tridimensionales, B y C son matrices de 3 × 3, y x e y son matrices de 3 × 1 (vectores de columna).

Entonces, ¿qué es C? Nos gustaría una C que sea una matriz ortogonal (es decir, las columnas son ortonormales entre sí, por lo que la longitud de cada una es 1 y el producto interno de las columnas es cero). Tiene que representar un sistema que está girando en su eje z a una velocidad de rotación constante, digamos [math] \ omega [/ math]. Si está planeando calcular un resultado, tome la velocidad de rotación de la Tierra de Wikipedia. Esta NO es la velocidad ecuatorial, es la velocidad angular.

¿Cómo cambia el eje x en ECEF en relación con el eje x en ECI? Si estuvieras mirando a la Tierra desde Polaris, verías una rotación en sentido antihorario. Entonces, el eje X de ECEF comienza a apuntar en la dirección + x de ECI, gira hacia ECI + y, luego hacia ECI -x, luego hacia ECI -y, y de regreso a ECI + x. Si divide esto en componentes, el eje x de ECEF comienza a apuntar a (1,0) en ECI, luego va a (0,1), luego (-1,0), etc., por lo que la primera coordenada aquí va a 1 -> 0 -> – 1 (como la función coseno), y la segunda coordenada va 0-> 1-> 0 -> – 1 (como la función seno).
Eso significa que el primer vector de columna en C es [matemáticas] \ vec {c} _1 = \ begin {bmatrix} \ cos {\ omega t} \\ \ sin {\ omega t} \\ 0 \ end {bmatrix} [/ matemáticas].

Use el mismo proceso de pensamiento para el eje y, y obtendrá el segundo vector de columna en C:
[matemáticas] \ vec {c} _2 = \ begin {bmatrix} – \ sin {\ omega t} \\ \ cos {\ omega t} \\ 0 \ end {bmatrix} [/ math]

El tercer vector de columna es fácil, ya que el eje z realmente no cambia entre los dos marcos de referencia, por lo que es simplemente:
[matemáticas] \ vec {c} _3 = \ begin {bmatrix} 0 \\ 0 \\ 1 \ end {bmatrix} [/ math]

Encuentre el inverso de C, y ahora tiene su vector transformado. Me gusta usar una matriz aumentada con C a la izquierda y la matriz de identidad a la derecha, luego usar operaciones de fila para obtener la matriz de identidad a la izquierda (y, por lo tanto, la inversa de C a la derecha).