Usando SOFA, la biblioteca de la IAU

Data de publicació, 27 de setembre de 2023

Standards Of Fundamental Astronomy (SOFA) es un una librería publicada periódicamente por la IAU que incluye las subrutinas en ANSI C y Fortran para movernos a lo largo de la cadena de transformaciones astrométricas. 

SOFA está muy bien documentada y es una excelente fuente de información sobre los cálculos y modelos utilizados. Sin embargo, para ser usada primero debe ser compilada por el usuario según el sistema operativo que use, lo que puede ser complicado si no tenemos experiencia.


En este ejemplo, vamos a describir paso a paso cómo bajar la versión en ANSI C, compilarla para Microsoft Windows y ejecutar un programa de prueba.

Instalación del compilador 


Instalación de la librería SOFA

for %f in (*.c) do gcc -O2 -Wall -fPIC -c "%f" -o "%~nf.o"  

ar rcs libsofa.a *.o


Creación de un archivo ejecutable de ejemplo.

gcc -o sofatest.exe sofatest.c -IC:\sofa\src -LC:\sofa\src -lsofa  


C:\>sofatest

     ICRS, epoch J2000.0: 14 34 16.8118300 -12 31 10.396500

  catalog -> astrometric: 14 34 16.4960283 -12 31 02.523786

     astrometric -> CIRS: 14 34 20.2370587 -12 34 36.381654

         catalog -> CIRS: 14 34 20.2370587 -12 34 36.381654

     geocentric apparent: 14 35 01.7725802 -12 34 36.381654

     CIRS -> topocentric: 14 34 20.2570287 -12 34 36.141207

        CIRS -> observed: 14 34 16.9649101 -12 34 44.643091

        ICRS -> observed: 14 34 16.9649106 -12 34 44.643094

ICRS -> CIRS (JPL, IERS): 14 34 20.2370639 -12 34 36.381756

ICRS -> CIRS (+ planets): 14 34 20.2370658 -12 34 36.381784

     CIRS -> astrometric: 14 34 16.4960283 -12 31 02.523786


¡Enhorabuena,  ya  puedes usar sofatest.c como modelo para tus propios desarrollos!