<jupyter_start><jupyter_text>*Instrumento espectroscópico de energía oscura* Hoy, continuamos el legado de [Slipher](https://es.wikipedia.org/wiki/Vesto_Slipher), [Hubble](https://es.wikipedia.org/wiki/Edwin_Hubble), [Vera Rubin](https://es.wikipedia.org/wiki/Vera_Rubin) y otros con el estudio DESI de *30 millones* de galaxias. ¡Eso es mucho más que las 24 originales de Hubble! ![title](../desihigh/images/kittpeak.jpg) Para obtener tantas, necesitamos un telescopio lo suficientemente grande para observar galaxias muy débiles. Con un espejo de 4 m de diámetro, el telescopio Mayall en Kitt Peak es perfecto: ![title](../desihigh/images/desi_mayall.jpg) Cómo hizo Hubble una vez, también necesitamos observadores que manejen el telescopio por nosotros. Dentro de DESI, todo el mundo tiene su turno en esto (¡seas un experto o no!). Aquí está [Satya](https://satyagontcho.space/) en la sala de control mostrándonos cómo ![alt](../desihigh/images/satya.jpg) Escuchemos primero a Satya que nos cuenta sobre su experiencia en la montaña Kitt Peak, en Arizona: *Normalmente, la noche comienza unas horas antes de la puesta de sol. Los observadores suben al telescopio y se reunen con un grupo de colaboradores de DESI para decidir el plan de observación de la noche. De hecho, en función del clima y de lo avanzados que estemos en la observación de todas las galaxias y cuásares de nuestra lista, debemos decidir qué debemos observar prioritariamente esa noche. Una vez hecho el plan, todos salimos del telescopio para cenar, contemplar una última y hermosa vista antes de la puesta de sol desde la cima de la montaña, y volver al telescopio para empezar nuestro trabajo. Mientras se pone el sol, hacemos pruebas para asegurarnos de que el telescopio está bien montado. Justo cuando el cielo se oscurece lo suficiente, abrimos la cúpula y empezamos a trabajar.**Durante la noche, el papel de un observador es monitorear la eficacia del instrumento que recolecta la luz de las galaxias y cuásares lejanos, vigilar el clima y, en consecuencia, utilizar su criterio para adaptar el plan de la noche. En la imagen de abajo se puede ver una pequeña muestra de lo que se ve en las pantallas y que hay que vigilar para asegurarse de que todo funciona como debe. Esto continúa hasta que sale el sol a la mañana siguiente. Observar es una actividad extremadamente gratificante porque nos da la oportunidad de conocer todos los pasos y la magnitud del trabajo que se necesita para obtener datos de calidad. Imagínese esto: estamos moviendo suavemente un telescopio que pesa varias toneladas, ajustando la posición de fibras ópticas del grosor de 1/3 de un cabello para que apunten exactamente a una galaxia o a un cuásar con el fin de recoger sus fotones que viajaron miles de millones de años luz para llegar a nosotros. A veces, al trabajar con catálogos de datos durante mucho tiempo, olvidamos lo increíblemente privilegiado y especial que es nuestro trabajo. Conseguimos construir grandes instrumentos de última generación que recogen los diminutos y escasos fotones de objetos celestes lejanos que, a su vez, utilizaremos para jugar a los detectives con el fin de reconstruir la historia de nuestro universo. Qué cool.* ¡Este puedes ser tú algún día! Desde el telescopio, nuestros datos parecen bastante irreconocibles: ![title](../desihigh/images/spectra2D.png) Aquí estás viendo la luz de 500 fibras ópticas (cada una recolectando la luz de una galaxia) empaquetadas en una cámara CCD. Los arcos horizontales corresponden a una longitud de onda dada, y los arcos brillantes corresponden a líneas brillantes del cielo, ¡una completa molestia!Los trazos aparentemente aleatorios son rayos cósmicos, detecciones de partículas de alta energía generadas dentro de la atmósfera.Necesitamos calibrar y limpiar cuidadosamente estas imágenes para recuperar la luz de la galaxia que realmente nos importa. Supongamos que algunas personas inteligentes ya han hecho esto por nosotros, y han mirado las imágenes limpias de la luz de algunas galaxias con DESI. También buscaremos agregar algunos marcadores que indiquen las líneas fuertes del hidrógeno (que aprendimos anteriormente) en algunos espectros de cuásares de DESI.<jupyter_code>def Rydberg(n, m):
    # Longitud de onda en el vacío del Hidrógeno [nanometros]. Más información en el cuaderno [Intro_es.ipynb](https://github.com/michaelJwilson/desihigh/blob/main/Espanol/Intro_es.ipynb). 
    result = 1.096e-2 * (1. / n / n - 1. / m / m)
    return 1. / result
# Línea de Lyman-alfa del Hidrógeno.
Lya        = 10. * Rydberg(1, 2)

# La serie de Balmer del Hidrógeno.
Balmers    = 10. * np.array([Rydberg(2, m) for m in np.arange(6, 3, -1)])
Balmers<jupyter_output><empty_output><jupyter_text>Ahora vamos a seleccionar un tipo de galaxia que se observa con DESI (pensamos en las galaxias como diferentes _trazadores_ de materia oscura). Comenzaremos con los cuásares (QSO), que se explicarán más adelante. Al final del cuaderno, tendrás la oportunidad de seleccionar otros tipos de galaxia.Para tu deleite visual, tienes cualquiera de las siguientes- MWS: El censo de la Vía Láctea (The Milky Way Survey), un subconjunto de objetivos que intentan atrapar estrellas y [enanas blancas](https://es.wikipedia.org/wiki/Enana_blanca).- BGS: El censo de galaxias brillantes (The Bright Galaxy Survey), algunas de las galaxias más brillantes y bonitas del censo DESI.- LRG: El censo de galaxias rojas (Luminous Red Galaxy), muy rojo, muy luminoso (¡los astrónomos no suelen ser tan creativos!). [Aproximadamente 6 mil millones de años de edad y del orden de $10^{11}$ masas solares.](https://academic.oup.com/mnras/article/377/2/787/1038423).- ELG: Galaxias de líneas de emisión (Emission line galaxy), con su propio cuaderno: [DesigningDESI_es.ipynb](https://github.com/michaelJwilson/desihigh/blob/main/Espanol/DesigningDESI_es.ipynb).<jupyter_code># Puedes reemplazar ['qso'] por cualquiera de los otros tipos ['mws'], ['bgs'], ['lrg'], ['elg'], ['qso'] aquí. 
tracers     = ['qso']<jupyter_output><empty_output><jupyter_text>Ok, primero necesitamos cargar los datos que necesitamos. Los paquetes anteriores son muy útiles para esto. Ponlo a prueba, rompeloy mira lo que hay ahí!<jupyter_code># Aquí creamos tablas vacías que posteriormente rellenaremos con datos de los desplazamientos al rojo (redshift) de las galaxias, y sus espectros. 
redshifts   = Table()
spectra     = Table()

#DESI observa un "tile" de 5000 galaxias al mismo tiempo. Necesitamos saber el número de ID que le corresponde al tile correspondiente
#de los objetivos que queremos 
tiles       = {'mws': 66003, 'bgs': 66003, 'elg': 67230, 'lrg': 68002, 'qso': 68002}

#Indicamos todos los archivos se encuentran en la carpeta student_andes, y empiezan con, por ejemplo, "zbest-"
rfiles      = glob.glob('../desihigh/student_andes/zbest-*')
sfiles      = glob.glob('../desihigh/student_andes/coadd-*')

for tracer in tracers:
  # Construimos el nombre del archivo para este trazador y tile.
    rfile     = '../desihigh/student_andes/zbest-{}-{}-20200315.fits'.format(tracer, tiles[tracer])    
  
  # Cargamos la información de los desplazamientos al rojo para este archivo y trazador.  
    redshifts = vstack((redshifts, Table.read(rfile)))

  # Lo mismo, pero para su espectro.
    sfile     = '../desihigh/student_andes/coadd-{}-{}-20200315.fits'.format(tracer, tiles[tracer]) 
    spectra   = vstack((spectra, Table.read(sfile)))
    
print('Número de galaxias {} disponibles: {:d}'.format(tracers[0], len(redshifts)))<jupyter_output>Número de galaxias qso disponibles: 5<jupyter_text>Recuerda, en Python todo es un objeto, por lo que tiene muchas formas de preguntarle a cualquier cosa qué puede hacer. Intenta escribir 'rfiles?', 'Print (rfiles)', 'rfiles.TAB' en una nueva celda para ver qué puede hacer este objeto. TAB significa que terminas con la tecla TAB (-->|), esto abrirá un cuadro que te indicará los métodos disponibles para el objeto, las cosas que puedes pedirle.Por ejemplo, rfiles.append, al que le puedes preguntar: 'rfiles.append?' etc. Puedes probar lo mismo con la tabla de corrimientos al rojo, ¡que tendrá muchas más opciones! Veamos qué obtuvimos en los desplazamientos al rojo. Tendremos cinco filas, una para cada galaxia. Su posición en el cielo, brillo en varias longitudes de onda, tipo de galaxia y número de identificación.<jupyter_code>redshifts<jupyter_output><empty_output><jupyter_text>Ahora, usaremos la tabla de espectros para hacer un gráfico de la luz de la galaxia.<jupyter_code>ngal = 5

# Hace la distribución de los gráficos.
fig, axes  = plt.subplots(ngal, 2, figsize=(15., 3.5 * ngal))

for i, tid in enumerate(redshifts['TARGETID'][:ngal]):
  redshift = redshifts['Z'][i]

  # Añade una línea vertical. Aquí para mostrar la linea de Lyman-alfa.
  axes[i,1].axvline((1. + redshift) * Lya, c='cyan', alpha=0.5)

  # Añade las líneas de Balmer. 
  for balmer in Balmers:
    axes[i,1].axvline((1. + redshift) * balmer, c='magenta', alpha=0.5)      
    
  # ¡Finalmente, grafica el espectro de la galaxia!
  axes[i,1].plot(spectra['WAVELENGTH'], spectra['TARGET{:d}'.format(tid)], lw=1)
  
  # Añade un título.
  axes[i,1].set_title('Objetivo {} @ desplazamiento al rojo {:.3f}]'.format(tid, redshift))

  # Define los límites de los ejes. 
  axes[i,1].set_xlim(3.5e3, 1.e4)
  axes[i,1].set_ylim(bottom=-0.5)

  axes[i,1].set_ylabel('Flujo')

  # Añade una foto de cada galaxia.
  url = cutout(axes[i,0], redshifts['TARGET_RA'][i], redshifts['TARGET_DEC'][i])

fig.suptitle('{} Trazadores'.format(tracers[0].upper()), fontsize=18, y=0.91)<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.0836276750467484, 'fraction_numerical': 0.013505090380220236, 'mean_word_length': 4.723543400713436, 'pattern_counts': {'":': 0, '<': 20, '<?xml version=': 0, '>': 21, 'https://': 8, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '5', 'dir': 'jupyter-structured-clean-dedup', 'id': '287971', 'license': 'BSD-3-Clause', 'n_tokens_mistral': 3434, 'n_tokens_neox': 3302, 'n_words': 1237, 'path': 'Espanol/DESI_es.ipynb', 'repo_name': 'XanderC9/desihigh', 'size': '9626'}