¿Cómo detectar líneas de emisión en espectros ópticos?


11

¿Hay algún módulo útil para detectar líneas de emisión en un espectro como el que obtenemos del Sloan Digital Sky Survey (SDSS)?

Puede ver que hay muchas líneas de emisión como Ha, OI en el espectro a continuación. De hecho, el espectro es un conjunto de datos de dos columnas, longitud de onda y flujo. Es una combinación de muchos puntos de dispersión. El intervalo típico entre dos puntos cercanos es de 1,5 angstroms. Necesito encontrar todas las protuberancias gaussianas y su centro de línea.

Entonces, primero necesito encontrar las protuberancias y luego tengo que ajustarlas para obtener sus centros.

ingrese la descripción de la imagen aquí


Probablemente podría darte una respuesta detallada si me dices qué quieres hacer con el espectro. El análisis riguroso del espectro no suele ser un asunto trivial.
Moriarty

He actualizado mi publicación. Quizás ahora sea fácil de entender.
questionhang

Respuestas:


6

Los programas que conozco que podría utilizar requieren cierta experiencia en programación para funcionar. Recomendaría mirar IRAF (o PyRAF , que usa Python para interactuar con IRAF), o SPECTRE . Desafortunadamente, no conozco una solución de "recuadro negro" en la que pueda presionar un botón e ir.

SPECTER está escrito en FORTRAN77 y es bastante fácil de usar una vez que lo dominas, aunque tiene un conjunto de características algo limitado y la documentación es breve. Le ayudará a ajustar manualmente los gaussianos a las líneas espectrales, dando sus longitudes de onda centrales y anchos equivalentes. Una advertencia para SPECTER es que requiere el paquete de trazado SuperMongo , que no es software libre. Si está afiliado a una universidad, la mayoría de los departamentos de Física y Astronomía deberían tener una licencia.

IRAF es una aplicación multiplataforma gratuita, con todas las funciones, diseñada específicamente para el análisis de imágenes astronómicas. Puede ayudarlo a medir las líneas espectrales y puede analizar el espectro para determinar la velocidad radial del objeto.


¿Qué tal si escribimos nuestro propio código de Python para hacerlo? Todo lo que tenemos que hacer es analizar muchos conjuntos de datos de flujo de longitud de onda de muchos espectros.
questionhang

Ve a por ello. A menudo es más fácil escribir su propio código, especialmente si tiene grandes conjuntos de datos para analizar.
Moriarty

Primero encuentre un máximo local y luego ajústelo con un perfil gaussiano. Este método es demasiado fácil de creer. ¿Algo que extraño?
questionhang

1
Sí, eso es todo. Si desea encontrar los máximos locales computacionalmente, aplicar un suavizado medio (dependiendo de los niveles de ruido) y luego usar sus derivados puede funcionar bien. Este código hace exactamente eso (no creo que funcione bien para lo que quiere tal cual, aunque servirá como un ejemplo práctico de lo que podría querer hacer). adsabs.harvard.edu/abs/2007A%26A...469..783S
Moriarty

4

Sí, hay dos módulos de Python llamados astropía y astropísica que afirman tener herramientas de análisis espectral. Como referencia, aquí hay un enlace de recursos para astrónomos para el lenguaje de programación python.


4

Hay un montón de software y herramientas disponibles para hacer lo que quieras:

  • IRAF , por NOAO;
  • MIDAS que es básicamente muy similar a IRAF pero desarrollado por ESO;
  • en Python, ya sea astropy o pyRAF (para usar IRAF con una interfaz Python).

Me gustaría ir con algunas herramientas de Python (Python es más versátil que IRAF o MIDAS que están mucho más orientadas a "un solo propósito"), para beneficiarse de las otras características que ofrece Python.

Pero para trazar y procesar su espectro es solo la primera parte del trabajo, lo que probablemente querrá hacer al final es usar síntesis espectral para analizar su espectro. La síntesis espectral te permitirá:

  • para identificar eficientemente la composición química del objeto celestrial que estudias;
  • para determinar algunas propiedades del objeto celeste que estudias.

Entre las herramientas existentes para la síntesis espectral (para espectros estelares, por ejemplo), hay:


Gracias. Solo quiero saber las posiciones del centro de línea.
questionhang
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.