Lo que está buscando es el método de navegación utilizado por barcos y aviones antes de la llegada del GPS. Requiere no solo un instrumento para medir el ángulo entre el sol o una estrella (como Polaris) y el horizonte, sino también una medición precisa del tiempo y gráficos que puedan usarse para interpretar los números. Y, por supuesto, un cronómetro preciso: necesitará saber la hora en Greenwich Obervatory, en Londres.
El instrumento tradicional utilizado para determinar este ángulo es el sextante. Aquí hay un artículo que describe el uso de un sextante para determinar la posición de uno:
http://www.ehow.com/how_7562747_use-nautical-sextant.html
Supongo que un algoritmo para hacer lo que está pidiendo está disponible donde se venden buenos sextantes, en cuanto a los gráficos, bueno, tal vez hay gráficos descargables en alguna parte.
Además, aquí hay un buen artículo sobre cómo determinar la latitud y la longitud de las estrellas. La latitud es lo que un sextante le dirá, la longitud se determina de manera diferente. Para eso necesita dos relojes: uno configurado en GMT; uno configurado a la hora UTC local (NO a la hora de la zona horaria). El método se describe aquí: Cómo calcular la longitud . Lo que nos lleva a la pregunta de cómo calcular su tiempo solar local, que se describe en este artículo Cómo calcular el tiempo solar . Claramente, no puede usar esto para la navegación: es conveniente para la economía humana, pero no encuentra su ubicación.
Solo para dejar en claro por qué no se puede usar el tiempo civil local para determinar la longitud es que el tiempo solar es casi el mismo en las islas de Hawai y Kodiak, pero el tiempo civil de Hawai es una hora después del de Kodiak. Y China se extiende unos 5.026 kilómetros a través de la masa continental del este de Asia, que es de aproximadamente 4 horas de tiempo solar, pero todo tiene el mismo tiempo civil.
Esta pregunta podría hacerse mejor en el SE Vela. Oh, espera, todavía no hay uno.