fisica - indicesbruzzone/flexpaper_1.4.2_flash/espec... · 2011. 4. 26. · 3. reducci on 8 3.1....

55
REDUCCI ´ ON ESPECTROSC ´ OPICA EN IRAF SEBASTI ´ AN BRUZZONE Resumen. El prop´ osito de este trabajo fue realizar la reducci´ onespectrosc´opi- ca sobre im´ agenes tomadas en un turno de observaci´on del CASLEO del as- teroide 1355 Magoeba utilizando como herramientas las tareas del entorno IRAF. ´ Indice 1. Introducci´ on 3 1.1. Im´ agenes de Espectros 3 1.2. El entorno IRAF 4 1.3. Ejecutando tareas 4 2. Los pasos a seguir 5 2.1. Reducci´ on 5 2.2. Extracci´ on y Calibraci´ on de espectros 7 3. Reducci´ on 8 3.1. Secciones de Trim y Bias 8 3.2. Configurando las tareas 11 3.3. Primer paso por CCDPROC 11 3.4. Procesando por Flats 16 3.5. Segundo paso por CCDPROC 21 4. Extracci´ on y Calibraci´ on del Espectro 21 4.1. Par´ ametros para la ventana de extracci´ on 22 4.2. Par´ ametros para las ventanas de cielo 22 4.3. Par´ ametros de la Traza 23 4.4. Par´ ametros para la suma y la resta de cielo 23 4.5. Par´ ametros para el formato de salida 24 4.6. A modo de resumen 24 4.7. Usando apall 25 4.8. Identificaci´ on de la l´ ıneas de emisi´ on 26 4.9. Calibraci´ on en Longitud de Onda 29 4.10. Normalizaci´ on 32 5. Resultados Preliminares 33 6. Filtros Espaciales 35 6.1. Mascaras (filtros ) 35 6.2. Aplicacion: Filtro de Mediana en el Espectro de 1355 Magoeba 36 7. Resultados y An´ alisis Cualitativo 39 Referencias 42 8. Apendice. Codigo de scripts desarrollados 43 8.1. Procesamiendo B´ asico por Lotes 43 1

Upload: others

Post on 16-Aug-2021

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

REDUCCION ESPECTROSCOPICA EN IRAF

SEBASTIAN BRUZZONE

Resumen. El proposito de este trabajo fue realizar la reduccion espectroscopi-

ca sobre imagenes tomadas en un turno de observacion del CASLEO del as-teroide 1355 Magoeba utilizando como herramientas las tareas del entorno

IRAF.

Indice

1. Introduccion 31.1. Imagenes de Espectros 31.2. El entorno IRAF 41.3. Ejecutando tareas 42. Los pasos a seguir 52.1. Reduccion 52.2. Extraccion y Calibracion de espectros 73. Reduccion 83.1. Secciones de Trim y Bias 83.2. Configurando las tareas 113.3. Primer paso por CCDPROC 113.4. Procesando por Flats 163.5. Segundo paso por CCDPROC 214. Extraccion y Calibracion del Espectro 214.1. Parametros para la ventana de extraccion 224.2. Parametros para las ventanas de cielo 224.3. Parametros de la Traza 234.4. Parametros para la suma y la resta de cielo 234.5. Parametros para el formato de salida 244.6. A modo de resumen 244.7. Usando apall 254.8. Identificacion de la lıneas de emision 264.9. Calibracion en Longitud de Onda 294.10. Normalizacion 325. Resultados Preliminares 336. Filtros Espaciales 356.1. Mascaras (filtros) 356.2. Aplicacion: Filtro de Mediana en el Espectro de 1355 Magoeba 367. Resultados y Analisis Cualitativo 39Referencias 428. Apendice. Codigo de scripts desarrollados 438.1. Procesamiendo Basico por Lotes 43

1

Page 2: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

2 SEBASTIAN BRUZZONE

8.2. Filtros de Medianas, Maximos y Mınimos 52

Page 3: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

PROCESAMIENTO DE ESPECTROS 3

Figura 1. Espectro del asteroide 1355 Magoeba

1. Introduccion

La Astronomıa del Sistema Solar es la rama de la astronomıa que agrupa a lasdisciplinas encargadas del estudio de los fenomenos relacionados con la creacion yevolucion del sistema solar, tanto desde un punto de vista teorico, como observa-cional. Una de estas importantes disciplinas, de especial integres en este trabajo esla espectroscopia de cuerpos menores del sistema solar. Con una gran relevanciadesde el punto de vista de la cosmogonıa de nuestro sistema, nos permite llevar acabo un estudio de la composicion de los cuerpos menores, asteroides y cometasdel sistema solar. Mediante el estudio de la composicion de los mismos es posible elencontrar respuestas a diversas interrogantes dinamicas sobre su comportamientoo abordar otros temas de interes como el origen del agua en la Tierra o los pro-cesos presentes en la creacion del Sistema Planetario. El proceso fısico encargadode la generacion de espectros es bien conocido por todos. La identificacion de lasdiversas lıneas presentes en los espectros de absorcion de cada cuerpo nos indicanque elementos presentes hay en este. Debido a la naturaleza de todo este proce-so, en nuestro espectro recibiremos la luz reflejada del Sol en el objeto a estudio,trayendo como consecuencia la presencia de lıneas espectrales propias de la fuenteoriginal, es decir, lineas espectrales generadas por la absorcion de ciertas longitudesde onda debido a diferentes elementos en la atmosfera solar, fotosfera, cromosfera.Nuestro objetivo sera identificar las lıneas espectrales del asteroide o cometa, te-niendo cuidado de no identificar alguna de estas con las presentes en un espectrosolar. Para evadir este obstaculo solo precisaremos el espectro una estrella cuyaclase espectral sea lo mas proxima a la Solar. Dichas estrellas las denominaremosAnalogas Solares.

1.1. Imagenes de Espectros. En las imagenes de espectros definimos el ejede dispersion, y el eje espacial. Ambos pueden ser segun filas o columnas en elchip CCD. El eje de dispersion sera el eje al cual es paralelo el espectro(o en lamisma direccion), segun su direccion veremos la variacion en longitudes de ondadel espectro. Mientras tanto el eje espacial sera el eje perpendicular al primero. Enla Figura1 tenemos que el eje de dispersion es segun las filas y el eje espacial segunlas columnas.

Page 4: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

4 SEBASTIAN BRUZZONE

En las secciones siguientes veremos en detalle el procedimiento y el procesamientonecesario en las imagenes para poder obtener debidamente nuestros espectros.

1.2. El entorno IRAF. El sistema lenguaje interpretado IRAF Image Reduc-tion and Analysis Faclity es una plataforma especialmente disenada para asistir enel procesamiento y analisis de imagenes astronomicas. Esta plataforma cuenta conuna gran y variada cantidad de herramientas que mediante una linea de comandos,el interpretador de comandos CL, pueden ser utilizadas sobre las imagenes para suprocesamiento.

El interpretador de comandos permite ademas la elaboracion de scripts parala ejecucion de las tareas. Los comandos, llamados Tareas, son ejecutados pararealizar las varias funciones requeridas. Las tareas pueden ser ejecutadas de dosmaneras, desde la lınea de comandos utilizando el interpretador CL o editandoel respectivo archivo de parametros de la tarea. Cada tarea posee un archivo deparametros que puede ser modificado por el usuario para cambiar el comportamien-to de la tarea, o sea su salida. En orden de poder ejecutar cualquier tarea deben serespecificados los parametros en un orden establecido. Estos parametros de dividenen dos grupos, los parametros posicionales o requeridos y los ocultos. Los primeros,son los parametros de entrada de la tarea. Si estos no son especificados la tareasolicita en la linea de comandos su ingreso. A diferencia de los anteriores los ocultosvienen especificados por defecto en cada tarea, de no ser ingresados por el usuariodesde la lınea de comandos la tarea asumira el valor de estos definidos por defecto.Una vez modificados los parametros ocultos en una tarea, son aprendidos por estay son guardados como predeterminados para futuras sesiones (modo :ql, quit andlearn). Por el contrario al ejecutarse desde la lınea de comandos los parametrosocultos no son aprendidos.

Por ejemplo podemos ver que tipos de parametros tenemos en una tarea viendo elarchivo de configuracion de esta. Los parametros ocultos aparecen entre parentesis.Evidentemente al ejecutar cualquier tarea desde la lınea de comandos veremos losparametros requeridos por esta. Para el comienzo, luego de haber instalado IRAF,nos ubicamos en ese directorio y en una terminal ejecutamos mkiraf, esto creara elarchivo login.cl y el subdirectorio uparm. Se configuran las terminales. Luego ubica-do en este directorio que contiene al login.cl y desde una terminal xterm o xgtermingresamos cl. Para salir de una sesion de IRAF, nos despedimos de cada paquetecon bye y luego logout. En el archivo login.cl podemos modificar a gusto el direc-torio donde se alojaran las imagenes .pix, impresoras, editores de texto, paquetescargados al inicio de sesion, opciones para el display de las imagenes, etc.

1.3. Ejecutando tareas. Como habıamos visto para ejecutar una tarea debe-mos o bien hacerlo desde la lınea de comandos o modificando su archivo de paramet-ros. Desde la lınea de comando debemos seguir un orden, se ingresa la tarea, susargumentos y sus valores. Los argumentos se asocian a los parametros posicionalesy los valores a los parametros ocultos.

linea de comandos

cl> tarea posicional oculto

cl> imhead archivo1 l+

cl> hedit archivo1 archivo2 archivo3 BIASSEC "value" add+ up+ ver-

Page 5: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

PROCESAMIENTO DE ESPECTROS 5

Se ejecuta la tarea image header al archivo1 (parametro posicional) con valorlong=yes. Vemos el header de archivo1 en formato largo. Se ejecuta la tarea headeredit con parametros posicionales archivo1-3, BIASSEC, value y luego add=yes, ver-bose=no como ocultos. Editamos el header de las imagenes archivo1-3 agregandoleel campo BIASSEC con valor value, lo agrega, lo actualiza y que no salga a pantalla.Para la restante opcion precisamos los comandos para listar y editar los parametros

de las tareas, estos son lpar y epar respectivamente

listar y editar parametros

cl> lpar tarea

cl> epar tarea

Se lista y se editan los parametros de la tarea. Estas tareas pueden ejecutarsecambiando el modo :ql (quit and learn) por :go (sale ejecutando) o simplemente unavez ubicados en el paquete donde la tarea se encuentra, la llamamos ingresando sunombre. Recordar que si no queremos guardar los cambios ingresar :q! en el editor.Para borrar todos los cambios desde la lınea de comando ingresar unlearn tarea.

Las tareas estan contenidas en paquetes, agrupadas segun su similitud dentro decada paquete. Para poder correr una tarea se debe cargar el paquete en el que estase encuentra. Para hacer esto basta escribir el nombre del paquete. Una serie depaquetes son cargados cada vez que se inicia una sesion en IRAF, siendo posiblemodificar cuales queremos al inicio de la sesion simplemente modificando el archivologin.cl. Para salir de un paquete se ingresa bye. Para ver los paquetes cargadoscl> ?.

2. Los pasos a seguir

2.1. Reduccion. Aquı presentamos los pasos a seguir en el proceso de reduc-cion. Asumimos que las imagenes han sido convertidas al formato IRAF, con susrespectivos archivos .imh y .pix y al formato real.

Regiones de BIASSEC y TRIMSEC Identificar la region de la ima-gen que contiene buena informacion y la region correspondiente al over-scan. Examinando una imagen flat utilizando la tarea implot podemosgraficar cortes segun lıneas o columnas para encontrar dichas regiones. Esimprescindible definir correctamente estas regiones para el procesamiento.La region del overscan viene definida por el campo BIASSEC en el head-er de la imagen. Esta region sera la que contenga buena informacion delvalor de pedestal que sera removido en todas la imagenes. Es decir, quer-emos tener la relacion cero luz cero cuentas en nuestras imagenes. La re-gion que contiene buena informacion, tendra a nuestro espectro, y estosera una parte de la imagen, entonces cortaremos y conservaremos dichaparte.Esta region esta definida por el campo TRIMSEC en el header de cadaimagen.

Configurar setinstrument Seleccionar el tipo de instrumento utilizado,el tipo de imagen con la que las tareas van a trabajar. Corriendo la tareasetinstrument esto es posible, ademas se definen parametros por defectodentro de los paquetes imred y ccdred. En este paso tenemos que asegu-rarnos que las tareas en lo sucesivo comprendan los campos en el header

Page 6: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

6 SEBASTIAN BRUZZONE

de las imagenes, que tipo de imagen es, Flatfield, Bias, sus filtros (0,1,2 )el formato,etc. Para verificar lo anterior corremos ccdlist a las imagenescl> ccdlist *.imh.

Combinar las imagenes Bias Utilizando la tarea Zerocombine com-binar las imagenes Bias para obtener una imagen combinada promediadazerocombine bias*.imh

Primer pasaje por la tarea ccdproc

Remover la region del overscan, recortar la imagen o triming y procesarpor la imagen Bias promediada Zero

cl> ccdproc *.imh overscan+ trim+ zerocor+ darkcor-

flatcor-illum- fring- zero=Zero.

Notar que no se procesa por Flat, por corriente oscura Darks ni fringes.Se ajusta la region del overscan, se recorta la imagen y se remueve el valorde pedestal en las imagenes.

Mascara de Bad Pixels. Basicamente consiste en interpolar sobre pıxelesdefectuosos o malos , es decir, pıxeles cuya respuesta no sea lineal. Estorequiere de imagenes Flat de cupula o proyector con un muy buen nivelde cuentas e imagenes del mismo tipo con muy pocas cuentas. No tenemosimagenes con muy pocas cuentas de este tipo por lo que no nos ocuparemosde este caso.

Procesar por corriente oscura. No nos ocuparemos de este caso debidoa que procesaremos unicamente por Bias ya que rara vez es significativa lacorriente oscura y se corre el riesgo en estos casos de ingresar ruido en elprocesamiento.

Combinar Flats Con la tarea Flatcombine combinamos las imagenes Flat

cl> flatcombine flat*imh scale=mode

reject=crreject gain=gain rdnoise=drnoise

Combinamos las imagenes Flat usando de escala la moda, con el algoritmode rechazo crreject que rechaza pıxeles positivos utilizando los valores deruido de lectura del chip CCD. Leera los valores gain y read noise del headerde las imagenes. Recordar: sera bueno en este paso analizar las imagenesde Flat utilizadas, comparar cortes segun lıneas y columnas de los diversostipos de Flat. Esperamos que nuestras imagenes al ser procesadas por Flatsqueden achatadas, si no es ası debemos corregirlo.

Normalizar si es necesario los Flats en la direccion del eje de dispersion. Sinuestras imagenes presentan un gradiente segun el eje de dispersion, este esel momento de corregirlo. Esto es posible utilizando response ubicada enel paquete twodspec.longslit. Se divide el flat combinado por un ajuste abajo orden

Segundo pasaje por ccdproc

Hacemos la correccion por Flat.

ccdproc ccdtype="" flatcor+ flat=Flat*.imh

Page 7: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

PROCESAMIENTO DE ESPECTROS 7

Corrigiendo otra vez por Flats.

Es necesario verificar de que el procesamiento por Flats anterior hizoun buen trabajo achatando las imagenes. Para esto es necesario estudiar elperfil del espectro para ver si existen variaciones a lo largo del eje espacial.(segun el eje de dispersion podıamos corregirlo con response). Para estose examinan las imagenes con un favorable numero de cuentas, por ejemploexposiciones con bastante cielo y se realiza un corte espacial para ver si elperfil del espectro es uniforme. Normalmente la lampara introduce efectosde iluminacion en sus flats.Correccion de Iluminacion

Combinar los Flats de cielo en un archivo Flatcielo usando imcombinecon escala y peso como moda.

Correr la tarea illum en el paquete twodspec.longslit. Esto ajus-tara el perfil por una funcion de bajo orden.

Para terminar, habilitamos la correccion por iluminacion en ccdprocy definimos como imagen de iluminacion a la imagen de salida de la tareaillum. Al procesar por iluminacion, la tarea se encargara del problema dela iluminacion al normalizar las imagenes por la funcion de ajuste.

2.2. Extraccion y Calibracion de espectros. Comentemos ahora brevementelos pasos requeridos para la extraccion y procesamiento de los espectros.

Ventanas de extraccion y de cielo. Aquı definimos las ventanas de ex-traccion y de cielo, regiones en pıxeles definidas a ambos lados del centrodel perfil espacial del espectro de donde se extraera el perfil del objeto y losvalores de fondo de cielo respectivamente.Traza. Se debe relacionar el centro del perfil espacial del objeto en funciondel eje de dispersion. Es decir definir la traza realizada por el objeto a lo largode la imagen. Notar que aunque se asuma que el eje espacial esta exactamentesegun filas o columnas, el espectro no sera perpendicular al anterior. Es decirque se asume que el eje espacial no sera perpendicular con la traza.Sumar el espectro y restar el valor del cielo. Se suma el espectrodentro de la ventana de extraccion y se le resta el fondo de cielo de susrespectivas ventanas. Nuevamente es crucial en este paso que el eje espa-cial este exactamente segun filas o columnas para una correcta operacion.Luego de estos pasos obtuvimos una imagen unidimensional, el espectro, apartir de las imagenes bidimensionales. La tarea encargada de esto es apall.Repetimos los pasos anteriores para extraer el espectro de la Analoga Solarst2001.imh y el espectro de comparacion hear.imh con los mismos valoresde traza y apertura utilizados en la extraccion del objeto a calibrar. Lassalidas de esta tarea seran imagen.ms.imh para cada imagen.imh.Remover el Espectro Solar Se deben remover todas las caracterısticas delespectro solar en las imagenes, esto se logra dividiendo el espectro extraıdoentre el espectro extraıdo de una Analoga Solar previamente observadaimarith mago.ms.imh st2001.ms.imh result=mago01_asolar.ms.imh

Solucion de dispersion. Se determina la solucion de dispersion para elespectro extraıdo de comparacion hear.ms.imh. Con esta solucion se poneal espectro del objeto en una relacion lineal en longitud de onda. La tareaencargada de esto es identify

Page 8: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

8 SEBASTIAN BRUZZONE

Calibracion de Flujo o Normalizacion Se pasa a unidades de flujo relati-vas o absolutas si se observaron estrellas fotometricas estandar o se normalizael espectro para que el valor base sea la unidad. Haremos lo ultimo con laayuda de la tarea continuum

Lo que haremos. Luego de la reduccion basica de las imagenes, extraeremos elespectro del asteroide mago01.imh, el de una estrella Analoga Solar st2001.imh y elde comparacion hear.imh con la tarea apall habiendo definido las ventanas de ex-traccion y de cielo y habiendo configurado una larga lista de parametros adecuada-mente. Con esto hecho, nos ocupamos del espectro de comparacion hear.ms.imh.Con la tarea identify identificamos las lıneas en este espectro y asignandole susvalores de longitud de onda, lo calibramos. Paso seguido, luego de dividir el espec-tro extraıdo del asteroide entre el de la analoga solar pasamos a asignarle a estenuevo espectro una relacion lineal en longitud de onda. La tarea encargada de estoultimo es dispcor. Como ultimo paso normalizaremos este espectro procesado concontinuum.

3. Reduccion

En esta seccion detallamos todos los pasos contenidos en el procesamiento delas imagenes. Comenzando con la reduccion, siguiendo en detalle todos los proced-imientos hasta llegar ası a la extraccion de los espectros. Las imagenes se encuen-tran en el directorio /root/imagenes/280203. Son imagenes correspondientes a unturno de observacion a cargo de Carvano en el CASLEO. Comenzamos por pasarlas imagenes al formato IRAF. Creamos una lista con las nuevas imagenes con ex-tension *.imh, list y las convertimos a formato real. Esto permitira una correctaoperacion aritmetica de las tareas sobre las imagenes. Pero antes definimos dondeestara el directorio con los archivos .pix

Directorio con los archivos .pix

cl> set imdir="/root/imagenes/280203/"

creo lista

cl> !ls *.fit > lista

Paso al formato IRAF en forma segura y global(que lo repita)

cl> !sed ’s/.fit/.imh/g’ lista>list

Convertimos formato entero al real

cl> chpixtype @lista @list real

3.1. Secciones de Trim y Bias. Comenzamos analizando las imagenes, antesque nada veamos cuan bien estaba alineada la rendija con el chip CCD, es decir,cuan inclinado esta el espectro. Para el proceso de extraccion del espectro, es crucialque la rendija este alineada y contenida, en este caso, en una columna. Visualizandolas imagenes es claro que hay presente una pequena inclinacion del espectro, lograficamos con implot.

Segun la Figura2 tenemos una diferencia de 5 pıxeles a lo largo de 417 filas.¿Pero que sucede con la rendija y las columnas? Para esto hacemos cortes sucesivossegun 3 lıneas en la imagen conteniendo el espectro de comparacion, hear.imh.Buscamos si la lıneas de emision estan alineadas con las columnas del chip CCD.Vemos que hay una diferencia de aproximadamente 0,24 pıxeles de punta a puntade la imagen, la lıneas se mantienen dentro de las columnas y por lo tanto tenemos

Page 9: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

PROCESAMIENTO DE ESPECTROS 9

Figura 2. Inclinacion de st2001.imh

Figura 3. Inclinacion de las lıneas en hear.imh

que las columnas del chip CCD estan alineadas con la rendija. Definamos entonceslas regiones donde estara la informacion util en nuestras imagenes y la region deloverscan que usaremos para ajustar los valores del bias en ellas.

En una rapida inspeccion notamos que las imagenes carecen de los campos BI-ASSEC y TRIMSEC. Estos deben de estar presentes en ellas para la reduccion.¿Por que es necesaria la region del overscan?

Page 10: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

10 SEBASTIAN BRUZZONE

Esta region existe para poder monitorear los cambios presentes del valor baseo pedestal, de un par de cientos de ADUs, al cambiar de imagen. Determinemosla region correcta del overscan. Tomamos la imagen ffcup01.imh y con implotrealizamos cortes segun las columnas para determinar en principio la region deloverscan. Figura4

Figura 4. Cortes segun columnas de un flat de cupula

Vemos claramente que la region del overscan estara aproximadamente entre lasfilas 400 y 425. Para ver en detalle nos paramos con el cursor cerca de esa posiciony presionamos e dos veces, esto expandira la imagen y veremos con mas precisiondonde comienza la zona del overscan.(imagen a la derecha) Tenemos entonces que laregion del overscan se encuentra entre las filas 417 y 425 y segun todas las columnasen principio. Determinemos ahora que region de la imagen contiene buena infor-macion. De forma similar pero esta vez cortando segun las filas encontramos que laimagen no posee un buen comportamiento desde el origen hasta su segundo pıxely a partir del ultimo pıxel hasta el final segun las columnas. Por ende la region deloverscan sera [2 : 515, 417 : 425], segun columnas y filas. Para decidir con que regionde las imagenes nos quedaremos, analizamos una imagen con el ds9 o nuevamenteutilizando implot. Es claro que la region que contiene la informacion esta conteni-da entre [2 : 515, 50 : 150] segun columnas y filas respectivamente. Esto considerael desalineamiento de la rendija con respecto al chip CCD. Tenemos entonces lasregiones de BIASSEC y TRIMSEC, falta ingresar estos campos en el header delas imagenes. Antes notamos que no hay un campo con informacion sobre los fil-tros usados, FILTERS, ccdproc se fija en esta campo para procesar por separadoimagenes segun sus tipos de filtros, cuando procesamos por Flats los tenemos porcada filtro. Las imagenes fueron obtenidas sin filtros, el valor correspondiente es 0.Ingresemos estos campos:

Agregamos los campos con sus valores, que lo ingrese y que no imprima enpantalla

cl> hedit *.imh BIASSEC "[2:515,417:425]" add+ up+ ver-

cl> hedit *.imh TRIMSEC "[2:515,50:150]" add+ up+ ver-

cl> hedit *.imh FILTERS "0" add+ up+ ver-

Page 11: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

PROCESAMIENTO DE ESPECTROS 11

Figura 5. Opciones para setinstrument

3.2. Configurando las tareas. Debemos cerciorarnos que las tareas encargadasde la reduccion identifiquen los campos definidos en el header de las imagenes deforma correcta y configurar valores por defecto en estas. Para esto se debe ejecutarla tarea setintrument en el paquete ccdred. Cargamos los siguientes paquetesnoao, imred y ccdred y corremos setinstrument.

Nuestra respuesta es specphot, vamos a trabajar con espectros entonces esrazonable esta eleccion, seguimos y consideramos como correctos los valores pordefecto en imred como en ccdred. Revisemos si se han pasado correctamente loscampos en el header de las imagenes, es decir si son interpretados por las tareas.

cl> ccdlist *.imh

3.3. Primer paso por CCDPROC. Habiendo aceptado los parametros pordefecto en las tareas imred y ccdred podemos comenzar con el procesamientopara sustraer el valor de base determinado por la region del overscan. Es decirqueremos llegar a la relacion cero luz cero cuentas, sacar ese valor de base presenteen las imagenes. Para hacer esto posible primero debemos combinar las imagenesBias con Zerocombine. Veamos y modifiquemos los parametros de esta tarea,cc> lpar zerocombie.

Se promediaran todos menos una de las imagenes ignorando el valor maximo encada pıxel. Con esto preparado corremos zerocombine y combinamos las imagenes.Veamos y modifiquemos los parametros de ccdproc.

Como estamos en la primera corrida por ccdproc queremos solamente una cor-reccion por Bias, es decir quitar el valor de base en las cuentas, que se encuentra en laregion del overscan, recortar y corregir esta region. No queremos corregir por Flats,Iluminacion ni por corriente oscura Darks o fringes. Desde cc> epar ccdproc con-figuramos la tarea.

Queremos corregir por Bias

zerocor=yes

Recortar la imagen y ajustar la region de overscan

trimcor=yes overscan=yes

Lea segun columnas

readaxis= column

Page 12: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

12 SEBASTIAN BRUZZONE

bias1.imh[516,426][real][zero][0]: bias10.imh[516,426][real][zero][0]:bias2.imh[516,426][real][zero][0]: bias3.imh[516,426][real][zero][0]:bias4.imh[516,426][real][zero][0]: bias5.imh[516,426][real][zero][0]:bias6.imh[516,426][real][zero][0]: bias7.imh[516,426][real][zero][0]:bias8.imh[516,426][real][zero][0]: bias9.imh[516,426][real][zero][0]:burck01.imh[516,426][real][object][0]:3447 burckhalterffcup01.imh[516,426][real][object][0]:flatdomeffcup02.imh[516,426][real][object][0]:flatdomeffcup03.imh[516,426][real][object][0]:flatdomeffcup04.imh[516,426][real][object][0]:flatdomeffcup05.imh[516,426][real][object][0]:flatdomeffcup06.imh[516,426][real][object][0]:flatdomeffcup07.imh[516,426][real][object][0]:flatdome ffl1.imh[516,426][real][flat][0]:flatlampara ffl10.imh[516,426][real][flat][0]:flat lamparaffl2.imh[516,426][real][flat][0]:flat lampara ffl3.imh[516,426][real][flat][0]:flatlampara ffl4.imh[516,426][real][flat][0]:flat lamparaffl5.imh[516,426][real][flat][0]:flat lampara ffl6.imh[516,426][real][flat][0]:flatlampara ffl7.imh[516,426][real][flat][0]:flat lamparaffl8.imh[516,426][real][flat][0]:flat lampara ffl9.imh[516,426][real][flat][0]:flatlampara hear.imh[516,426][real][comp][0]: hear03.imh[516,426][real][comp][0]:hear04.imh[516,426][real][comp][0]: mago01.imh[516,426][real][object][0]:1355Magoeba pdr001.imh[516,426][real][object][0]:ltt3864pdr002.imh[516,426][real][object][0]:ltt3864pdr003.imh[516,426][real][object][0]:ltt3864skyf01.imh[516,426][real][object][0]:skyflatskyf02.imh[516,426][real][object][0]:skyflatskyf03.imh[516,426][real][object][0]:skyflatskyf04.imh[516,426][real][object][0]:skyflatskyf05.imh[516,426][real][object][0]:skyflatst2001.imh[516,426][real][object][0]:hd76151st2002.imh[516,426][real][object][0]:hd76151st2003.imh[516,426][real][object][0]:hd76151

Figura 6. salida de ccdlist

Que lea los campos TRIMSEC y BIASSEC de los headers

trimsec=image, biassec=image

Salida de zerocombine

zero=Zero

Los demas parametros, como por ejemplo, el tipo de funcion para el ajuste y suorden o el tipo de iteraciones podemos dejarlos sin modificar y aceptar los valorespor defecto. Es claro que se debe ingresar el nombre de las imagenes a procesar,podemos ingresarlo como una lista @list o simplemente todas las imagenes *.imh.Con esto ya configurado corremos ccdproc. Una vez hecho esto se nos preguntara si

Page 13: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

PROCESAMIENTO DE ESPECTROS 13

Figura 7. Parametros de zerocombine

Figura 8. Salida de zerocombine

deseamos hacer un ajuste interactivo de la region del overscan, con yes ingresamosen esta opcion. La aplicacion interactiva es icfit, o Interactive Curve Fiting. Algunoscomandos utiles:

? imprime opcionesf ajusta con una funcion:fuction tipo de funcion de ajuste:order orden de la funcion para el ajuste:niterate numero de iteracionesr vuelve a graficar

Page 14: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

14 SEBASTIAN BRUZZONE

Figura 9. Parametros de ccdproc

d borra un punto cerca del cursoru desborra un punto borradoo grafica sin refrescar la terminal:vshow(archivo) sale a archivo con informacion del ajuste, errores, RMS,etcq Sale del modo interactivo

En la mayorıa de los chips CCD, el valor base presente en la region del overscanes muy bien ajustado por un valor constante, inclusive en casos excepcionales dechips CCD grandes con gradientes de unas pocas ADU’s de de un extremo a otro,un ajuste de bajo orden, digamos primer orden sera suficiente. Como vemos en laFigura3.3 un valor constante ajusta bastante bien. Con q salimos y nuevamente senos pregunta si queremos ajustar interactivamente la region del overscan para lasiguiente imagen. Podemos responder yes y ajustar nuevamente, el tipo de funcion yel orden, como otras opciones son aprendidas por la tarea desde su ultima aplicaciony se usaran en las restantes imagenes. Salimos entonces y luego de ver un par deimagenes podemos contestar NO, salimos del ajuste interactivo y no se nos pregunta

Page 15: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

PROCESAMIENTO DE ESPECTROS 15

Figura 10. Ajuste interactivo de overscan

Figura 11. Parte de la salida de ccdproc

mas. La tarea se encarga de ajustar las regiones en las imagenes restantes. Con estohecho terminamos nuestra primera corrida por ccdproc.

Pasemos ahora a ocuparnos de los Flats

Page 16: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

16 SEBASTIAN BRUZZONE

Figura 12. Cortes segun filas y columnas de un flat de cielo proce-sado por Flat0.imh

Figura 13. Cortes segun filas y columnas de un flat de lampara.

3.4. Procesando por Flats. Antes que nada, hagamos cortes segun filas ycolumnas con implot para ver como se comportan. Empezamos con los flats decielo, con skyf01.imh por ejemplo. Tenemos que hay un gradiente segun el eje dedispersion pero segun el sentido espacial la respuesta es bastante buena, sigue unperfil bastante achatado segun las columnas. Haciendo lo mismo con uno de losflats de lampara, ffl1.imh, encontramos un gradiente similar al anterior segun laslıneas pero la vemos que segun el sentido espacial la respuesta no es la esperadapara un flat. Esto habra que tenerlo presente al procesar por flats con ccdproc.

Debemos combinar los Flats con flatcombine. Nuestros candidatos son, los flatsde cupula, de cielo y de lampara. Los flats de lampara poseen la mejor SNR e ingre-san menor ruido al proceso por lo que utilizaremos estos. Veamos los parametrosde flatcombine

Los algoritmos para el rechazo de pıxeles tienen varias opciones. Como algorit-mo de rechazo se utilizara crreject, que rechazara los maximos valores positivos enlas imagenes segun los parametros del ruido del chip CCD. Una eleccion plausiblesimilar a esta serıa avsigclip, que a diferencia del anterior se basa en la determi-nacion de la desviacion estandar de los valores a partir de las imagenes en vez de

Page 17: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

PROCESAMIENTO DE ESPECTROS 17

Figura 14. Parametros de flatcombine

Figura 15. Salida de flatcombine

las caracterısticas conocidas del detector. Promediamos las imagenes ffl*.imh en-tonces con flatcombine con salida Flat0. Procesemos ahora por esta imagen porccdproc, epar ccdproc y modifiquemos el parametro para la correccion por laimagen promediada Flat0.imh. Claro que tambien lo podemos hacer desde la lıneade comando si tenemos mas confianza

cc> ccdproc @list ftatcor+ flat=Flat0

Veamos si el flat promediado hizo bien las cosas. La idea de procesar por Flats esquitar efectos aditivos en las imagenes y achatar las mismas.

Page 18: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

18 SEBASTIAN BRUZZONE

Figura 16. Cortes segun filas y columnas de un flat de cielo proce-sado por Flat0.imh

¿Las imagenes seran uniformes? Como utilizamos los flats de lampara ya sabemosque no sera ası. De la mano de implot analizamos segun filas y columnas un flatde cielo skyf01.imh.

Habıamos visto que los flats de cielo presentaban una buena respuesta segun eleje espacial, pero luego de procesar por Flat0.imh cambiamos las cosas.

Es claro que no tenemos perfiles uniformes segun lineas ni columnas, por lotanto Flat0.imh no esta haciendo un buen trabajo. Lo que sucede es que la lamparaagrega su color a las imagenes, es decir que esta presenta un gradiente segun el eje dedispersion y segun el eje espacial. Estas anisotropias pueden estar relacionadas conla dependencia segun longitud de onda de la luz reflejada en donde incide la lampara,la diferencia en temperatura de esta con la de las fuentes de estudio u propiedadesde transmision de los filtros utilizados con la lampara de ser este el caso. Debemosentonces corregir estos inconvenientes. Las tareas response e illumination nosayudaran a resolver los problemas de respuesta segun el eje de dispersion y deiluminacion en el eje espacial respectivamente. La tarea response se encuentraen twodspec.longslit, ası que cargamos dichos paquetes. Esta tarea nos permiteajustar interactivamente el perfil del espectro segun el eje de dispersion. Donde lasalida de la tarea es la imagen original dividida por esta funcion de ajuste, por loque tendremos una imagen de salida nFlat0.imh normalizada segun la dispersion.Esto se encargara de las estructuras dependientes con la longitud de onda en elespectro.

Es evidente que la lampara presenta una curva suave segun el eje de dispersion,un ajuste a bajo orden sera mas que suficiente, no es necesario ajustes de alto orden,buscamos ajustar a grandes rasgos la curva de respuesta en el eje de dispersion. Unacurva de respuesta suave en el eje de dispersion nos indica que no sera crucial unacorreccion segun dicho eje en las imagenes. Igual lo hicimos.

Nos ocuparemos ahora de corregir el efecto de iluminacion en las imagenes. Latarea encargada de esto es illumination que se encuentra en twodspec.longslit.Lo que se hara es promediar las imagenes de Flat de cielo para luego mediante latarea illumination ajustar una funcion en el eje espacial. Para comenzar combi-namos las imagenes correspondientes a un Flat de cielo ya procesadas por Flat0 enccdproc con la tarea imcombine.

Combinamos los flats de cielo

Page 19: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

PROCESAMIENTO DE ESPECTROS 19

Figura 17. Parametros de response

Figura 18. Ajuste por response

lo> imcombine sfyf*.imh flatsky reject=avsigclip scale=mode

weight=mode subsets-

Veamos los parametros de illuminationNotar que se han modificado los parametros low-reject y high-reject a 3,0. La

tarea precisa un campo en el header de las imagenes para saber como se encuentraalineado el espectro, si es segun lıneas o columnas. Este campo es DISPAXIS ysus valores son 1 para espectros con ejes de dispersion segun lıneas y 2 para espec-tros segun columnas. De no encontrarse el campo DISPAXIS en el header de lasimagenes, la tarea nos preguntara como esta orientado el espectro, con la mismanotacion para las opciones. Una vez ingresado este campo con el valor 1, corremosla tarea entrando en un modo interactivo para seccionar el espectro mediante laubicacion de marcadores en la direccion de la dispersion, segun lıneas. Estos mar-cadores o bins podemos ubicarlos a gusto e inclusive modificar la cantidad que

Page 20: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

20 SEBASTIAN BRUZZONE

Figura 19. Parametros de illumination

Figura 20. Ubicacion de los bins

queremos utilizar. La cantidad de marcadores se ajusta al tipo de iluminacion enel espectro, con un mınimo de 5 estarıa bien. Buscamos un ajuste de bajo ordenpues queremos ajustar la respuesta del sistema a la iluminacion producida por lalampara. Al terminar de correr la tarea, podemos hacer cortes segun las columnaspara ver el perfil de la imagen de salida flatillum.imh, como esta es la funcion deajuste, debera ser igual a la unidad en el sentido espacial.

Ahora con hedit flatillum MKILLUM "illum" add+ up+ ver- agregamos enel header de la imagen que se trata de una imagen de iluminacion. Ya tenemosentonces la imagen necesaria flatillum.imh para corregir la iluminacion lo que noslleva al siguiente paso por ccdproc

Page 21: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

PROCESAMIENTO DE ESPECTROS 21

Figura 21. Ajuste en el septimo bin

Figura 22. Corte espacial de skyf01.imh luego de procesar por illum

3.5. Segundo paso por CCDPROC. Ahora bien, corrijamos la iluminacion.

lo> ccdproc *.imh illumcor+ illum=flatillum

4. Extraccion y Calibracion del Espectro

Habiendo hecho el procesamiento basico de las imagenes, nos ocuparemos ahorade los espectros. Todo el proceso de extraccion del espectro puede ser logrado atraves de la tarea apall. Por lo tanto vamos a configurar los parametros fundamen-tales de esta tarea, que son unos cuantos. Hay diferentes versiones de la tarea, consutiles diferencias en los paquetes kpnoslit, ctioslit, kpnocuode. Para nuestrospropositos, cualquiera de estas nos servira, por lo que cargamos noao, imred, yluego uno de los paquetes antes mensionados, digamos kpnocoude. Al momentode procesar se creara un directorio database en donde se guardara la identificacionde las lıneas del espectro de comparacion que seran usadas por otras tareas paraasignar las longitudes de onda para nuestros espectros. Como habıamos visto antes,

Page 22: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

22 SEBASTIAN BRUZZONE

la configuracion del espectrografo es la correcta, las columnas en este caso, estanalineadas con la rendija por lo que ya nos ocuparemos de los parametros para laextraccion del espectro.

4.1. Parametros para la ventana de extraccion. Los parametros fundamen-tales que controlan la extraccion son los siguientes:

line Es la linea de dispersion utilizada para encontrar el centro del perfilespacial. Eligiendo INDEF se usara el medio del eje de dispersion.nsum Es el numero de lıneas de dispersion sumadas alrededor de line uti-lizadas para encontrar un centro del perfil espacial. Un valor de 10 mejo-rara la senal ruido del corte utilizado para el centrado.width El ancho del perfil es el valor del ancho de la base en el perfil estelar.Este valor sera utilizado en el algoritmo de centrado. Como vimos tenemosun ancho tıpico de entre 8 y 14 pıxeles, por lo que utilizaremos en valor de14.lower El valor inferior del lımite de la apertura relativo al centro.upper El valor superior del lımite de la apertura relativo al centro.resize Podemos definir el valor de la apertura de extraccion en funcion dealgun valor fraccional del perfil espacial, digamos un valor fraccional del valormaximo del perfil espacial. Para habilitar esta caracterıstica se debe utilizarresize=yes.ylevel Habiendo habilitado resize debemos definir el valor fraccional delmaximo del perfil espacial utilizado para ajustar el tamano de la apertura.Este valor sera ylevel.

Utilizaremos los siguientes valores para la extraccion

line=INDEF

nsum=10

width= 14

lower= -7

upper= +7

resize=no

4.2. Parametros para las ventanas de cielo. Revisemos los parametros paradefinir y operar con las ventanas de cielo.

b−sample Elegimos donde ubicaremos las ventanas de cielo en la imagen acada lado del centro del perfil espacial. Cabe recordar que podemos redefinirinteractivamente estas regiones.b−naver Especifica la cantidad de numeros adyacentes de puntos utilizadosdentro de cada ventana para determinar el valor de ajuste del cielo. Ingre-sando un numero negativo indica que se empleara la media para el valor delajuste.b−func Tipo de funcion para el ajuste del valor del cielo en la ventana.b−order Orden de la funcion antes mencionada.

Elegimos:

b_sample= -22:12,12:22

b_naver=-11

b_func= chebyshev

b_order= 1

Page 23: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

PROCESAMIENTO DE ESPECTROS 23

4.3. Parametros de la Traza.

t−nsum Numero de lıneas de dispersion sumadas antes de buscar el pico delperfil espacial.t−step Tamano del paso segun el eje de dispersion que va a ser usado paradeterminar la traza.t−func Funcion para el ajustet−order Orden de la funcion de ajustet−niter Es el numero de iteraciones para descartar puntos automaticamenteque se apartan mas de 3σ del valor medio, donde el σ se determina paratoda la traza.

Utilizaremos los siguientes

t_sum= 12

t_step= 10

t_func= legendre

t_order= 2

t_niter= 1

4.4. Parametros para la suma y la resta de cielo. Podemos elegir entre dostipos distintos de extraccion. En la primera opcion, se suman todos los valores decielo dentro de la ventana sin ningun peso, mientras que en la segunda opcion unalgoritmo de extraccion optima con un peso que es inversamente proporcional a laincertidumbre estadıstica de los puntos.

background Para extraer el cielo ingresamos fit

weights Para la extraccion optima debe ser configurado en variance. Si nodeseamos agregar un peso a los puntos ingresamos none clean Si deseamos”limpiar”puntos que se desvıen mucho de la media ingresamos yes de locontrario no.

Si deseamos implementar el algoritmo para la extraccion optima.

saturation Es el nivel de saturacion del chip CCD. Nuestra camara esde 16bits lo que nos da un valor de 65535ADU’s Al haber procesado lasimagenes, estas han sido liberadas del valor de pedestal, estan en cero luz,cero cuentas. El valor medio base era aproximadamente de 295ADU’s, lo quenos deja un valor de saturacion de 65240ADU’s.rednoise Valor del ruido de lectura del chip CCD. Este valor esta estipuladoen el header de las imagenes.gain Valor de ganancia del chip CCD, tambien en el header de las imageneslsigma El menor valor de σ para el rechazo de puntos por su desviacion. 3o 4 son valores razonables.usigma El mayor valor de σ.

Nos quedaremos con

background= fit

weights= variance

clean= yes

saturation= 652400

rednoise=image

gain= image

lsigma= 4

Page 24: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

24 SEBASTIAN BRUZZONE

usigma= 4

4.5. Parametros para el formato de salida. Tenemos dos tipos de formatospara la imagen de salida de apall. Estos son onesdpec y multispec. Esta ultimaopcion nos entrega mas informacion, primero tenemos el espectro extraıdo en for-ma optima. En otra dimension de la imagen tenemos el espectro que hubiesemosobtenido sin una extraccion optima, el espectro del cielo y un espectro mostrando lavariacion del espectro optimo extraıdo. Todo esto usando extras=yes. La imagentendra tres dimensiones, en la primera, el eje x sera el eje de dispersion, el eje ysera el eje de apertura y el eje z tendra los extras. En esta dimension encontraremosen z=1 el espectro optimo, en z=2 el espectro extraıdo sin haber sido optimizado,z=3 albergara al espectro de cielo mientras que en z=4 encontraremos un espectrocon el σ del espectro optimo. Vamos a elegir.

format= multispec

extas= yes

4.6. A modo de resumen. . La tarea buscara en el medio del eje de dispersion elcentro del perfil espacial. Sumara 10 lineas alrededor del medio del eje de dispersionpara encontrar este centro espacial. La ventana de extraccion sera de 14 pıxeles,7 pıxeles a cada lado del centro del perfil espacial. El ancho del perfil usado en elalgoritmo de centrado sera de 14 pıxeles donde se rechazaran puntos cuyos valoresse alejen de 4σ de la media. Las ventanas de cielo se ubicaran a cada lado del perfilespacial y seran dos regiones definidas respecto de este centro, entre los [−22 :−12, 12 : 22] pıxeles, es decir, con centro en el perfil se delimitan dos regionesde 10 de pıxeles de amplitud empezando a los 12 pıxeles a cada lado del centro.El valor del cielo en cada ventana sera aproximado en primera instancia por lamedia de los valores de los 11 pıxeles dentro de cada una de estas y luego por unajuste mediante polinomios de chebyshev de orden 1. Se toma la media en cadaventana para luego ajustar una funcion, constante, a esos dos valores. Respectoa la traza, una vez encontrado el centro del perfil espacial en algun punto a lolargo del eje de dispersion, lo buscara de nuevo t_steps adelante en dicho ejehabiendo sumado t_nsum lıneas de dispersion. En este caso, buscara el centro delperfil cada 10 pıxeles segun el eje de dispersion en ambas direcciones habiendosumado 12 lineas. Lo hara hasta encontrar el fin de la imagen. Luego el conjuntode posiciones del centro del perfil espacial segun el eje de dispersion se ajustara conuna funcion t_func de orden t_order donde se especifica el promedio en el errordel ajuste. En este caso se usaran polinomios de legendre de orden 2 para el ajustey se rechazaran los puntos que se alejen mas de 4σ del mismo. Esto sera posiblesi hemos seleccionado t_niter con un valor mayor de 1, que son el numero deiteraciones para rechazar puntos que se desvıen en el ajuste. Como queremos restarel cielo ingresamos background= fit. Sobre la resta del cielo, hemos seleccionado laimplementacion de un algoritmo para optimizar el proceso. Habiendo seleccionadoweigths= variance un algoritmo se encarga de rechazar puntos que se desvıenmucho de la media. Este algoritmo tomara los datos de la saturacion, ruido delectura y ganancia del chip CCD en el header de las imagenes. Con estos datoscalculara la desviacion estandar σ de los valores en la imagen y rechazara aquelloscon valores mayores de 4σ. Una forma de computar el valor de σ a partir de las

Page 25: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

PROCESAMIENTO DE ESPECTROS 25

caracterısticas del chip viene dada por la siguiente formula:

(1) σ =√GxI + r2/G

Donde G es la ganancia del chip, I es la intensidad en un pıxel y r es el ruido delectura del chip Como estamos asumiendo que el arribo de los fotones al detectores en forma aleatoria, este arribo se rige siguiendo una estadıstica de Poisson, ypor lo tanto sumamos entonces el ruido cuadraticamente. Este σ estara en ADU’s.Cabe aclarar que no tenemos conocimiento del ruido de cuantizacion ni el ruido detruncamiento. Por lo anterior hemos especificado la saturacion de 65240ADU’s, elruido de lectura y ganancia del header de las imagenes y como ultimo ingredienteel multiplo de σ para el rechazo de valores como 4σ.

4.7. Usando apall. Ya tenemos todo como para correr apall. Listemos losparametros de esta tarea.

Al correr la tarea se nos pregunta si deseamos encontrar y editar las aperturas,respondiendo afirmativamente a esto ingresamos en el editor de apertura, dondepodremos reubicarnos en el espectro y definir a gusto interactivamente la ubicaciony tamano de la ventana de extraccion. En Figura4.7 mostramos una breve resenade las opciones del editor, para la version detallada ingresar ? en el editor. Unaopcion que no aparece listada es de vital importancia. Esta es la opcion Interrupt,I la cual nos permite interrumpir el proceso en cualquier etapa sin escribir en eldirectorio database

Ya ubicados en el editor, nos encontramos con que la imagen del espectro no esla mejor que esperabamos para centrar la ventana de apertura, por lo que probamosviendo el espectro en otra seccion de la imagen, ingresamos :line 100 y nos en-contramos con un perfil mas amigable. Ubicados con el cursor cerca del centro delperfil, ingresamos m y definimos entonces el centro de la ventana de extraccionmanteniendo los valores anteriores de su tamano, lower= -7 y upper= +7. Conesto hecho, nos ocupamos de las ventanas de cielo con el comando b. Nos encon-tramos con una ventana donde se muestra un ajuste de los valores del cielo dentrode las ventanas y la ubicacion de las mismas. Ya no nos encontramos en apextractsino que estamos en el icfit con sus conocidas opciones. Contentos con el ajustemostrado y la posicion y tamano de las ventanas de cielo, salimos con q y volvemosal editor de apertura.

Contentos con estas ventanas y con el ajuste, con q pasamos a ocuparnos dela traza. De nuevo en icfit podemos modificar el ajuste de la traza seleccionandoel tipo de funcion para el ajuste, su orden y numero de iteraciones para el recha-zo de puntos entre otras cosas. Conformes con el ajuste y con un RMS de 0,047pıxeles salimos con q. Respondiendo yes a las preguntas que nos hace la tarea,se escribe en el directorio database los valores de los parametros para la apertu-ra, el fondo y la traza. Ademas se extrae el espectro y podemos visualizarlo. Consplot podemos visualizar las otras dimensiones de la imagen. La salida de apalles mago.ms.imh. Debemos aplicar el mismo procedimiento para el espectro dela estrella. Luego conservando los mismos parametros seleccionados anteriormentepara el asteroide, aperturas, ventanas de cielo, etc, extraemos el espectro de com-paracion hear.imh. En esta etapa no precisamos el modo interactivo. Corremos latarea con los siguientes parametros.

Para el espectro de comparacion

apall hear.imh ref=mago.ms.imh recen- trace- back- intera-

Page 26: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

26 SEBASTIAN BRUZZONE

Figura 23. Parametros de apall parte 1

Notar que no haremos resta de cielo en el espectro de comparacion. Ya tenemosentonces los espectros extraidos mago.ms.imh, st2001.ms.imh y hear.ms.imh.

4.8. Identificacion de la lıneas de emision. Para hacer esto contamos con latarea identify.

Page 27: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

PROCESAMIENTO DE ESPECTROS 27

Figura 24. Parametros de apall parte 2

Hemos elegido linelists\$ctiohear.dat que contiene las lıneas mas promi-nentes de las lamparas de Helio Argon de comparacion del CTIO. Ademas ingre-samos el ancho tıpico de una lınea de emision, con valor 9 pıxeles. Marcando conm unas cuatro lıneas de emision e ingresando su valor aproximado, ingresamosf para que se haga un ajuste. Ingresamos en la rutina icfit, podemos graficar laparte no lineal y los residuos del ajuste para ver si se precisa borrar algun punto,etc. Conformes con el ajuste salimos con q y volvemos a donde empezamos. Conel ajuste hecho y los valores de las lıneas leıdos del archivo de longitudes de on-da linelists\$ctiohear.dat ingresamos l para que se identifiquen nuevas lıneassegun el ajuste. Una vez hecho esto, ingresamos f para un nuevo ajuste. Como

Page 28: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

28 SEBASTIAN BRUZZONE

Figura 25. Opciones del editor de apertura apextract

Page 29: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

PROCESAMIENTO DE ESPECTROS 29

Figura 26. Ventana de extraccion y ventana de cielo

Figura 27. Ajuste de los valores del cielo

antes, modificamos este ajuste para que sea el mejor posible mirando los residuos ola parte no lineal. Una vez satisfechos salimos de la tarea ingresando dos veces q.

4.9. Calibracion en Longitud de Onda. Ya estamos cerca de terminar. Esbuen momento de deshacernos de todo tipo de caracterısticas del espectro solaren el espectro de nuestro asteroide. Esto podemos hacerlo simplemente dividiendoel espectro de nuestro asteroide entre el espectro de la estrella Analoga Solar. Lasalida es mago_asolar.ms.imh

Dividimos los espectros

imarith mago.ms.imh st2001.ms.imh result=mago_asolar.ms.imh

Ahora seguimos para calibrar a este nuevo espectro. Precisamos antes ingresar enel header de la imagen el campo REFSPEC1 con valor hear.ms.imh,

hedit mago_asolar.ms.imh REFSPEC1 hear.ms.imh add+ up+ ver-

Ası la proxima tarea sabra cual sera el espectro de referencia. Precisamos ahorade los servicios de la tarea dispcor. Teniendo configurados los parametros, corremos

Page 30: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

30 SEBASTIAN BRUZZONE

Figura 28. Traza del espectro del asteroide

Figura 29. Espectro extraıdo por apall

dispcor y calibramos nuestro espectro. Lo que haremos es cambiar las asignacionde las longitudes de onda, ingresando en la primera pregunta que nos hace la tareaun yes. Nos preguntara un comienzo para las coordenadas en longitud de onda,tomamos un valor muy proximo al sugerido. Tambien debemos ingresar un valormaximo en longitud de onda, pongamos INDEF. Queremos que haya un incrementode un Angstrom por pıxel, ingresemos 1.0. Como ultimo se nos pregunta un numerode salida de pıxeles, INDEF parece razonable pues no nos preocupa esto. Una vezhecho esto respondemos con NO a la pregunta

change wavelength coordinate assigments?: NO

Ya estamos por finalizar el procesamiento, miremos como se ve nuestro espectrocalibrado.

Page 31: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

PROCESAMIENTO DE ESPECTROS 31

Figura 30. Parametros de identify

Figura 31. Identificacion de lıneas de emision (izq) y ajuste dela parte no lineal con identify (der.)

Notar que se han identificado 11 lineas de emision en el espectro de comparacion.Esperabamos que la tarea encontrase mas en el archivo linelists\$ctiohear.dat.Quizas cambiando este archivo por otro tendrıamos una mayor cantidad de lıneasidentificadas. Probar con page linelists\$README para ver todos los archivosdisponibles.

Page 32: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

32 SEBASTIAN BRUZZONE

Figura 32. Parametros de dispcor

Figura 33. Salida de dispcor

4.10. Normalizacion. Quizas nos guste mas tener como resultado del proce-samiento un espectro normalizado, cuyo valor continuo sea la unidad. Bueno, latarea continuum nos da una mano con esto. Vemos los parametros de esta tarea yla ejecutamos. En la siguiente pagina tenemos la salida de continuum y el espectronormalizado. Hemos terminado!!!

Page 33: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

PROCESAMIENTO DE ESPECTROS 33

Figura 34. Espectro calibrado

Figura 35. Parametros de continuum

5. Resultados Preliminares

Presentamos los espectros del asteroide 1355 Magoeba extraidos y procesadosen la Figura36 y Figura37. Resulta claro que el espectro obtenido esta seriamentecontaminado de ruido, hechando por tierra las posibilidades de tener datos confi-ables del mismo. Diversos son los motivos para obtener espectros tan afectados de

Page 34: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

34 SEBASTIAN BRUZZONE

Figura 36. Espectro calibrado del 1355 Magoeba

Figura 37. Espectro normalizado del 1355 Magoeba

ruido como este, siendo uno de los mas evidentes la pobre SNR del asteroide obser-vado. Presentaremos a continuacion un metodo alternativo para el procesamientodel espectro basado en el uso de filtros espaciales con el fin de mejorar dentro de loposible el espectro del asteroide.

Page 35: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

PROCESAMIENTO DE ESPECTROS 35

6. Filtros Espaciales

Las imagenes pueden ser consideradas como funciones bidimensionales en undominio espacial definido, con limites especificados en un detector CCD, con unaamplitud asociada al brillo o intensidad de la misma. Normalmente suele referirsecomo espacio muestral a su dominio mientras que su amplitud como cuantizacion oprofundidad de bits. Pensando a las imagenes como colecciones de valores sobre undeterminado dominio, podemos efectuar entonces diversas operaciones aritmeticassobre estas con infinitos usos. Las operaciones aritmeticas que podremos definirsobre cada pıxel son la suma, resta, division y multiplicacion. Pensados como es-calares, tenemos total libertad de agrupar estos elementos con sus valores en arrayso conjuntos de pıxeles y sobre ellos efectuar operaciones mas complejas basadas enla aritmetica de elementos finitos.

6.1. Mascaras (filtros). Una forma practica de operar sobre las imagenes esmediante el uso de mascaras o arrays de valores que relacionan el valor de undeterminado pıxel, con el de sus pixeles contiguos o proximos. Podemos ver comoejemplo en la Figura38 una mascara con 9 elementos que seran, una vez aplicadasobre una imagen, los valores sobre 9 pıxeles con ciertos pesos asociados αi.

α1 α2 α3

α4 α5 α6

α7 α8 α9

Figura 38. Mascara con 9 elementos

Los tipos de filtros espaciales, u operaciones de mascara, pueden ser definidos var-iando la asignacion en los pesos de sus componentes y variando el tamano o extesionde estos filtros. Por enumerar los de mayor simplicidad:

Filtro pasa-bajos Son los encargados de atenuar las altas frecuencias espa-ciales en las imagenes. Es decir, atenuara los objetos con cierta extensionmenor o igual que la extension del filtro mediante el promedio de los pıxelesvecinos. Esto creara la perdida de detalles en las imagenesFiltro de mediana De forma similar al fltro pasa-bajo, este filtro empleara elcalculo de la mediana de los pıxeles vecinos eliminando ası las componentesde ruido. La mediana sera definida como el valor que esta estadısticamentea la mitad o 50 % del rango en los valores.Filtro pasa-alto A diferencia de los anteriores, este filtro atenuara todos losdetalles en extensiones mayores que el filtro, generando ası un realce en elcontraste. Suelen escribirse como un array con pesos cuya suma es 0 con unvalor o peso central positivo rodeado con valores negativos para alcanzar elrequerimiento de una suma nula.Filtro de alto rango Podemos generar un filtro de alto rango sumando a laimagen original, la imagen original luego de operarse sobre ella un filtro pasa-bajo producto con ciertas constante positiva. Lo que tendremos sera un realceen las altas frecuencias unicamente generando un incremento en el contraste.

Page 36: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

36 SEBASTIAN BRUZZONE

-1 -1 -10 0 01 1 1

-1 0 1-1 0 1-1 0 1

Figura 39. Operador de Prewitt como derivada en direccion ver-tical y horizontal respectivamente

Figura 40. Imagen original y luego de correr un filtro de altorango de 3x3

Filtros derivativos Estos filtros simulan las operaciones de derivacion sobrelas imagenes. Un ejemplo de ello son los operadores de Prewitt que imple-mentas las derivadas primeras en ambas direcciones que se muestran en laFigura39.Estos filtros aumentaran los bordes en las imagenes. La Figura40muestra una ejemplo de este operador.

6.2. Aplicacion: Filtro de Mediana en el Espectro de 1355 Magoeba.Rapidamente pasemos a aplicar los conceptos introducidos anteriormente en nuestrocaso de interes. Habiendonos encontrado con un espectro severamente contaminadode ruido, tratemos de mejorar la calidad del mismo, por lo menos en un espıritu deexperimentacion y prueba con las herramientas a nuestra disposicion. Procederemosde la siguiente forma:

1. Identificar los detalles a remover en la imagen del espectro2. Definir las mascaras a emplear en funcion de la extension espacial de cada

detalle en particular3. Remover las bandas de emision del cielo en la imagen4. Sustraer el cielo del espectro empleando filtros adecuados5. Implementar un script para automatizar el proceso6. Recalibrar el espectro y comparar resultados cualitativamente

Lo primero que desearemos remover son las lıneas de emisıon del cielo. Estaslıneas presentan un ancho tıpico de 5 pıxeles en la imagen. Por lo tanto empleare-mos una mascara de mediana para removerlas. Un detalle importante a tener encuenta es que tenemos que remover detalles o elementos en las imagenes que sonperpendiculares entres sı, estos son, el continuo del asteroide y las lineas de emision.

Page 37: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

PROCESAMIENTO DE ESPECTROS 37

1 0 0 1 00 0 0 0 00 1 0 0 1

1 0 00 0 10 0 00 0 00 0 00 0 00 0 01 0 00 0 1

Figura 41. Dos filtros de ejemplo, uno horizontal(3x5) y uno vertical(9x3)

Por lo que no podremos usar deliberadamente mascaras cuadradas. Utilizaremosmascaras rectangulares con el siguiente detalle:(ver FIgura4)

1. Mascaras rectangulares de 3x5, 3x9 y 3x15 pıxeles. No referiremos a estascomo filtros horizontales. Estos filtros seran utiles para remover las lıneas deemision perpendiculares al eje de dispersion.

2. Mascaras de 9x3. 15x3. 63x3 y 83x3 pıxeles. Estos filtros verticales haran losuyo para eliminar el continuo del asteroide a lo largo del eje de dispersion.

3. Los valores para estos filtros, contemplaran ser un balance entre extensiony forma. Los mas extensos provienen de una mayor extension del espectrodel asteroide manteniendo la relacion de 3 o 4 veces la extension del detallea eliminar. La forma debera permanecer rectangular y no exceder de ciertovalor, estimado en 5 pıxeles en nuestro caso, un valor de 3 permite algo deflexibilidad dentro de los lımites.

4. Ultimo pero no menos importante, las mascaras no contendran elementos yasea, en la misma fila o misma columna del pıxel a remplazar(o pıxel central)en cada filtro horizontal o vertical respectivamente. Esto pretende evitaroperar sobre columnas o lıneas defectuosas.

6.2.1. Los Pasos. A modo de resumen los pasos a seguir para la sustraccion delcielo.

1. Comenzamos por identificar las lıneas de emision con un ancho tıpico de 5pıxeles. Entonces empleamos un filtro horizontal de 3x15 pıxeles. Al per-manecer efectos artificiales verticales, provenientes del propio filtro de medi-ana por ser sensible con los bordes de los detalles, optamos por un segundopaso, esta vez de un filtro menor de 3x5 pıxeles, ver Figura45.

2. Procedemos a remover el espectro del asteroide. Empleamos un filtro verticalde 63x3pıxeles. Al permanecer efectos de nuevo por la sensibilidad del filtrode mediana a los bordes de los detalles, se pasa un nuevo filtro de 83x3pıxeles, en Figura45 y Figura45.

3. Con lo anterior hacemos la resta del cielo y la multiplicamos por una con-stante igual a 4. Figura42

Page 38: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

38 SEBASTIAN BRUZZONE

Figura 42. Imagen del espectro del 1355 Magoeba Original y concielo substraido

Habiendo restado el cielo y las lıneas de emision, pasamos a calibrar el espectro.Procedemos de igual forma a la extraccion del espectro y a la calibracion en longitudde onda como lo hicimos antes.

Page 39: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

PROCESAMIENTO DE ESPECTROS 39

7. Resultados y Analisis Cualitativo

Presentamos en la Figura43 el espectro del asteroide 1355 Magoeba siguiendodos procesos de extraccion de cielo diferentes.

Figura 43. Espectro original y espectro con cielo reducido yprocesado con filtros sin extraction de cielo en apall

Page 40: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

40 SEBASTIAN BRUZZONE

Lo primero que puede apreciarse es una notoria atenuacion de las frecuenciasaltas, o componentes de ruido en el espectro procesado mediante filtros de medi-ana. Aparece un escalon artificial producto de ciertos valores de cielo que no fueroncorrectamente extraıdos, por una ligera diferencia en el ancho ventana de extrac-cion del espectro. Lamentablemente carecemos de informacion sobre la naturalezadel espectro o de las lıneas conocidas en el mismo para este objeto. Correspondi-endo a la clase Taxonomica espectral Tholen no es posible por el momento indicarpropiedades especificas en este espectro objenido.

En Sıntesis, el paquete de procesamiento IRAF comprende una extensiva y muyversatil herramienta de trabajo que nos ha permitido procesar las imagenes deforma transparente, elaborar filtros para post procesar las imagenes, crear scriptspara realizar los pasos de forma mas sencilla y hasta automatizar por completo elproceso de reduccion basico de imagenes en grandes lotes

Page 41: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

PROCESAMIENTO DE ESPECTROS 41

Figura 44. Detalle del espectro del 1355 Magoeba en el procesode filtrado.

Figura 45. En sentido horario, abajo derecha filtro hoz3x15, filtrohoz3x15 2do paso, filtro hoz9x3,filtro hox3x5 (centro), filtro hoz3x52do paso (abajo centro), filtro ver63x3 (abajo der.), filtro ver83x3,espectro st2001 y espectro st2001 con filtros

Page 42: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

42 SEBASTIAN BRUZZONE

Referencias

[1] . W. Sulentic, ‘OPTIMAL ENHANCEMENT OF FEATURES IN DIGITAL SPECTRA’,AJ90

[2] .Secker,’A RING MEDIAN FILTERFOR DIGITAL IMAGES’, 1995PASP..107..496s

[3] Gil-Hutton ’NOTAS DEL CURSO TECNICAS AVANZADAS DE OBSERVACION’, 2006.[4] .Gonzalez, ’DIGITAL IMAGE PROCESSING’,ISBN 0201180758.

Page 43: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

PROCESAMIENTO DE ESPECTROS 43

8. Apendice. Codigo de scripts desarrollados

8.1. Procesamiendo Basico por Lotes.

procedure cas pro ( f i l , l e c tu ra , bin )

#−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−# By Sebast ian Bruzzone 2008−2009

# contact : sb ruzzone@f i s i c a . edu . uy

# Los Molinos Observatory IAU code 844

# Departamento de Astronomia , Facultad de CIencias , Montevideo , Uruguay

#

#Fina l v e r s i on August 14

# This s c r i p t performs bas i c image c a l i b r a t i o n on images taken with the Roper

# 1300B CCD camera at CASLEO. The s c r i p t would look f o r ob j e c t and c a l i b r a t i o n

images in each binning ( bin ) f a c to r ,

# read ing f requency ( l e c t u r a ) and f i l t e r ( f i l ) , a l l o f these , provided by the user .

# Also , the re i s a s e l e c t i o n f o r b ia s p ro c e s s i ng or overscan reg ion p ro c e s s i ng .

# Dome f l a t s and sky f l a t s are searched and analysed to select only non−sa turated

# frames and those with in the l i n e a r i t y o f the CCD det e c to r .

# After p ro c e s s i ng the images , c a l i b r a t i o n f o l d e r s are c reated f o r each f i l t e r ,

bin f a c t o r and frequency

# The images are a l s o converted to f i t s format

# Please note GAIN and RDNOISE va lues . AVSIGCLIP i s used to perform the master Flat frame .

# Optional , run Maxim header v1a to enable MaximDL compat i b i l i t y .

# Summary :

# 1 . Images are converted to . imh f i l e format , g ene ra t ing a l s o the . pix f i l e s

# sto red at the imdir d i r e c t o r y

# 2 . Header keywords are ed i t ed f o r the s e l e c t e d bin , l e c t u r a and f i l t e r d e s i r ed

# by the user .

# 2a . L i s t s c r eated : b i n l i s t a 1 , b i n l i s t a 2 ( bin f a c t o r images used )

# b i a s l i s t ( ze ro images )

# l i s t R l i s t V ( f i l t e r e d images e . g . R or V)

# k l i s t , M l i s t ( . imh images with s e l e c t e d f r e q )

# k l i s t a , M l i s t a ( . f i t s images with s e l e c t e d f r e q )

# f l t a s b u e n o s ( good f l a t s )

# f l a t s m a l o s ( bad f l a t s )

# f l a t l i s t ( f l a t images )

# o b j e c t l i s t ( ob j e c t images )

# s a l i d a b i a s c o r s t a t ( s t a t i s t i c s o f c a l i b r a t e d f i l e s )

# s a l i d a o s c a n c o r s t a t ( s t a t i s t i c s o f c a l i b r a t ed , v ia oscan f i l e s )

# s a l i d a f l a t s t a t ( f l a t s s t a t i s t i c s )

# 3a . Domeflat and s k y f l a t images are checked f o r l i n e a r i t y

and non saturaded f i l e s , the good f l a t s

# are s e l e c t ed , those saturated f l a t s are moved to a

created d i r e c to ry , the JUNK d i r e c t o r y .

# 3b . Also , images with negat ive values , and non−saturated , are converted in to

# p o s i t i v e va lues by adding the o f f s e t by t h i s s igned b i t s ,

those images are renamed as m in u s f i l e , where f i l e stands f o r the o r i g i n a l f i l e .

# 4 . The s c r i p t prompts f o r a b ia s c o r r e c t i o n or overscan sub s t r a c t i on method .

# 5 . For the s e l e c t e d option , b i a s or oscan sub s t r a c t i on i s performed , a l s o

# with the s e l e c t e d good f l a t s , a f l a t c a l i b r a t i o n i s a l s o performed .

# 6 . The c a l i b r a t e d images are moved to a f o l d e r , the PRO f o l d e r with

# in format ion about the c a l i b r a t i o n method used ,

the l i s t o f the ob j e c t f i l e s , # the l i s t o f c a l i b r a t i o n

images used and the master images , Zero and Flat

# 7 . . imh f i l e s and l i s t s are DELETED upon s t a r t o f the s c r i p t .

# 8 . Optional , w i t s could be used to convert the . imh f i l e s to the standar . f i t s format

#−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−

i n t bin {prompt=’HEDIT CASLEO: Binning f a c t o r o f images (1 o 2 ) : ’}s t r i n g f i l {prompt=’ HEDIT CASLEO: F i l t e r (R,V) : ’}

Page 44: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

44 SEBASTIAN BRUZZONE

s t r i n g l e c t u r a {prompt=’HEDIT CASLEO: Reading Frequency , 100 khz ( k ) or 1Mhz(M) : ’

}bool resp {prompt=”Would you l i k e to cont inue ? ” , mode=”q”}

s t r u c t ∗ l i s t 3

s t r u c t ∗ l i s t 2

s t r u c t ∗ l i s t

begin

s t r i n g f i l t r o , read

bool resp2

real w

i n t dummy, inum , inumf , inumobj , inumbias , binning , j

f i l t r o= f i l

read=l e c t u r a

binning=bin

# . . . . . . . . . . . . . . . . . . . . . .

imdel ( ” ∗ . imh” )

de l ( ” l i s t R ” )

de l ( ” l i s t V ” )

de l ( ” b i a s l i s t ” )

de l ( ” b i n l i s t a 2 ” )

de l ( ” b i n l i s t a 1 ” )

de l ( ” l i s t R ” )

de l ( ” k l i s t ” )

de l ( ” k l i s t a ” )

de l ( ” f l a t l i s t ” )

de l ( ” f l a t s b u e n o s ” )

de l ( ” f l a t s m a l o s ” )

de l ( ” f l a t s n e g a t i v o s ” )

de l ( ” o b j e c t l i s t ” )

de l ( ” s a l i d a b i a s c o r s t a t ” )

de l ( ” s a l i d a o s c a n c o r s t a t ” )

de l ( ” s a l i d a f l a t s t a t ” )

de l ( ” M l i s t ” )

de l ( ” M l i s t a ” )

de l ( ” f l a t s ” )

de l ( ” a l l imh ” )

de l ( ” a l l f i t s ” )

de l ( ” p ro ob j e c t ” )

de l ( ” p r o f l a t s ” )

c l e a r

print ( ”∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗” )

print ( ”” )

print ( ” Sc r i p t f o r ba s i c r educt ion o f images from CASLEO’ s Roper 1300b CCD Camera” )

print ( ”This s c r i p t would e d i t image headers and perform bas i c

zero l e v e l and f l a t f i e l d c o r r e c t i o n s ” )

print ( ” Input images should be in . f i t or . f i t s format . Images

would be converted and handled as . imh f i l e s ” )

print ( ” Place the s c r i p t along with the de s i r ed images in the

same f o l d e r . User would be asked to proceed ” )

print ( ” with c a l i b r a t i o n be f o r e s t a r t i n g ” )

print ( ” Required f i e l d s de f ined : LECTURA, BIN , FILTER01 ,

with va lues 100Khz or 1Mhz f o r LECTURA” )

print ( ”e . g . LECTURA=’100Khz ’ , BIN= ’2 ’ , FILTER01=’R’ ” )

print ( ” Input : Raw f i t or f i t s images by :

Binning f a c t o r ( bin ) , read ing f requency (LECTURA) and f i l t e r ( f i l ) ” )

print ( ”Output : Processed images in . imh format and . f i t s format ” )

print ( ” Please check that the ob j e c t images have the IMAGETYP=’ object ’

f i e l d de f ined . I f not , e d i t i t ” )

Page 45: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

PROCESAMIENTO DE ESPECTROS 45

print ( ”” )

print ( ” Images would be f i l t e r e d by binning fac to r ,

f i l t e r and then frequency (LECTURA) ” )

print ( ” packages noao . o b s u t i l imred . ccdred should be loaded ” )

print ( ”” )

print ( ”TRIMSEC and BIASSEC sec t i on s , f o r bin 1 images :

[ 1 : 1 3 4 0 , 1 : 1 2 9 9 ] , [ 1 : 1 3 4 0 , 1 3 0 0 : 1 3 0 9 ] ” )

print ( ”TRIMSEC and BIASSEC sec t i on s , f o r bin 2 images :

[ 1 : 6 7 0 , 1 : 6 4 9 ] , [ 1 : 6 7 0 , 6 5 1 : 6 5 4 ] ” )

print ( ”IF you don ’ t agree with t h i s reg ions , p l e a s e e d i t them in the s c r i p t ” )

print ( ”” )

print ( ”” )

print ( ” Sebast ian Bruzzone 2009 ” )

print ( ” contact : sb ruzzone@f i s i c a . edu . uy” )

print ( ”Los Molinos Observatory IAU code 844 Departamento

de Astronomia , Fac de Cienc ia s ” )

print ( ”∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗” )

i f ( resp ){

print ( ” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ” )

print ( ” Proce s s ing us ing f i l t e r : ” , ( f i l t r o ) )

print ( ” with binning f a c t o r : ” , ( b inning ) )

print ( ” at : ” , ( read ) )

print ( ” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ” )

switch ( binning ) {#.Switch binning 1 ( case 1)

case 1 :

{h s e l e c t ( ” ∗ . f i t ” , ” $I ” , ”BIN=1” , > ” b i n l i s t a 1 ” )

h s e l e c t ( ” @ b i n l i s t a 1 ” , ” $I ” , ”FILTER01?=’”// f i l t r o //” ’ ” , > ” l i s t ”// f i l t r o )

hed i t ( ” @ l i s t ”// f i l t r o , ”BIASSEC” , ” [ 1 : 1 3 4 0 , 1 3 0 0 : 1 3 0 9 ] ” , add+,addonly+,up+,ver−)

hed i t ( ” @ l i s t ”// f i l t r o , ”TRIMSEC” , ” [ 1 : 1 3 4 0 , 1 : 1 2 9 9 ] ” , add+,addonly+,up+,ver−)

# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . begin o f nested switch @bin1

switch ( s t r i d x ( read , ”k” ) )

{case 1 :

{print ( ”” )

print ( ” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ” )

print ( ” Using bin1 images at 100Khz ” )

print ( ” Press any key to cont inue ” )

print ( ” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ” )

h s e l e c t ( ” @ b i n l i s t a 1 ” , ” $I ” , ”IMAGETYP ?=’ zero ’&&(LECTURA=’100khz ’ ||LECTURA=’100kHZ ’ | |LECTURA=’100Khz ’ ) ” , > ” k l i s t a ” )

h s e l e c t ( ” @ l i s t ”// f i l t r o , ” $I ” , ”LECTURA=’100khz ’ | |LECTURA=’100kHZ ’ ||LECTURA=’100Khz ’ ” , >> ” k l i s t a ” )

! sed ’ s /. f i t / . imh/g ’ k l i s t a > k l i s t

r f i t s ( ” @ k l i s t a ” , ”∗” , ” @ k l i s t ” , datatype=u)

chpixtype ( ” @ k l i s t ” , ” @ k l i s t ” , newpixty=” r e a l ” )

hed i t ( ” @ k l i s t ” , ”FILTERID” , f i l t r o , add+,up+,ver−)

h s e l e c t ( ” @ k l i s t ” , ” $I ” , ”IMAGETYP?=’ zero ’ ”,> ” b i a s l i s t ” )

h s e l e c t ( ” @ k l i s t ” , ” $I ” , ”IMAGETYP ?=’ object ’ ” , > ” o b j e c t l i s t ” )

h s e l e c t ( ” @ k l i s t ” , ” $I ” , ”IMAGETYP ?=’ f l a t ’ ”,> ” f l a t l i s t ” )

h s e l e c t ( ” @ k l i s t ” , ” $I ” , ”IMAGETYP ?=’sky ’ ”,>> ” f l a t l i s t ” )

hed i t ( ” @ k l i s t ” , ”RDNOISE” , ”5” , add+, up+,ver−)

hed i t ( ” @ k l i s t ” , ”GAIN” , ”2” , add+, up+,ver−)

}case 0 :

Page 46: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

46 SEBASTIAN BRUZZONE

{print ( ” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ” )

print ( ”Using bin1 images at 1Mhz” )

print ( ” Press any key to cont inue ” )

print ( ” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ” )

h s e l e c t ( ” @ b i n l i s t a 1 ” , ” $I ” , ”IMAGETYP ?=’ zero ’&&LECTURA =’1Mhz’ ” ,

> ” M l i s t a ” )

h s e l e c t ( ” @ l i s t ”// f i l t r o , ” $I ” , ”LECTURA=’1Mhz’ ” , >> ” M l i s t a ” )

! sed ’ s /. f i t / . imh/g ’ M l i s ta > M li s t

r f i t s ( ” @M lista ” , ”∗” , ” @M list ” , datatype=u)

chpixtype ( ” @M list ” , ” @M list ” , newpixty=” r e a l ” )

hed i t ( ” @M list ” , ”FILTERID” , f i l t r o , add+,up+,ver−)

h s e l e c t ( ” @M list ” , ” $I ” , ”IMAGETYP?=’ zero ’ ”,> ” b i a s l i s t ” )

h s e l e c t ( ” @M list ” , ” $I ” , ”IMAGETYP?=’ object ’ ” , > ” o b j e c t l i s t ” )

h s e l e c t ( ” @M list ” , ” $I ” , ”IMAGETYP?=’ f l a t ’ ”,> ” f l a t l i s t ” )

h s e l e c t ( ” @M list ” , ” $I ” , ”IMAGETYP?=’sky ’ ”,>> ” f l a t l i s t ” )

hed i t ( ” @M list ” , ”RDNOISE” , ”7” , add+, up+,ver−)

hed i t ( ” @M list ” , ”GAIN” , ”2” , add+, up+,ver−)

}default :

print ( ” Input e r r o r ” )

}# . . . . . . . . . . . end o f nested switch @bin1

}case 2 : #.Switch binning 2 ( case 2)

{h s e l e c t ( ” ∗ . f i t ” , ” $I ” , ”BIN=2” , > ” b i n l i s t a 2 ” )

h s e l e c t ( ” @ b i n l i s t a 2 ” , ” $I ” , ”FILTER01?=’”// f i l t r o //” ’ ” , > ” l i s t ”// f i l t r o )

hed i t ( ” @ l i s t ”// f i l t r o , ”BIASSEC” , ” [ 1 : 6 7 0 , 6 5 1 : 6 5 4 ] ” , add+,addonly+,up+,ver−)

hed i t ( ” @ l i s t ”// f i l t r o , ”TRIMSEC” , ” [ 1 : 6 7 0 , 1 : 6 4 9 ] ” , add+,addonly+,up+,ver−)

# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . begin o f nested switch @bin2

switch ( s t r i d x ( read , ”k” ) )

{

case 1 :

#Gain value o f 1 .49 and RDNOISE 2 .6 @ bin2 and 100 khz with f i ndga in

{print ( ”” )

print ( ” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ” )

print ( ” Using bin2 mages at 100Khz” )

print ( ” Press any key to cont inue ” )

print ( ” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ” )

h s e l e c t ( ” @ b i n l i s t a 2 ” , ” $I ” , ”IMAGETYP ?=’ zero ’&&(LECTURA=’100khz ’ | |LECTURA=’100kHZ ’ | |LECTURA=’100Khz ’ ) ” , > ” k l i s t a ” )

h s e l e c t ( ” @ l i s t ”// f i l t r o , ” $I ” , ”LECTURA=’100khz ’ | |LECTURA=’100kHZ ’ | |LECTURA=’100Khz ’ ” , >> ” k l i s t a ” )

! sed ’ s /. f i t / . imh/g ’ k l i s t a > k l i s t

r f i t s ( ” @ k l i s t a ” , ”∗” , ” @ k l i s t ” , datatype=u)

chpixtype ( ” @ k l i s t ” , ” @ k l i s t ” , newpixty=” r e a l ” )

hed i t ( ” @ k l i s t ” , ”FILTERID” , f i l t r o , add+,up+,ver−)

h s e l e c t ( ” @ k l i s t ” , ” $I ” , ”IMAGETYP?=’ zero ’ ”,> ” b i a s l i s t ” )

h s e l e c t ( ” @ k l i s t ” , ” $I ” , ”IMAGETYP ?=’ object ’ ” , > ” o b j e c t l i s t ” )

h s e l e c t ( ” @ k l i s t ” , ” $I ” , ”IMAGETYP ?=’ f l a t ’ ”,> ” f l a t l i s t ” )

h s e l e c t ( ” @ k l i s t ” , ” $I ” , ”IMAGETYP ?=’sky ’ ”,> ” f l a t l i s t ” )

hed i t ( ” @ k l i s t ” , ”RDNOISE” , ”5” , add+, up+,ver−)

hed i t ( ” @ k l i s t ” , ”GAIN” , ”2” , add+, up+,ver−)

}case 0 :

{print ( ” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ” )

Page 47: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

PROCESAMIENTO DE ESPECTROS 47

print ( ”Using bin2 images at 1Mhz ” ) #en bin2

print ( ” Press any key to cont inue ” )

print ( ” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ” )

h s e l e c t ( ” @ b i n l i s t a 2 ” , ” $I ” , ”IMAGETYP ?=’ zero ’&&LECTURA=’1Mhz’ ” , > ” M l i s t a ” )

h s e l e c t ( ” @ l i s t ”// f i l t r o , ” $I ” , ” ( (LECTURA=’1MHz’ ) | | (LECTURA=’1Mhz ’ ) ) ” ,

>> ” M l i s t a ” )

! sed ’ s /. f i t / . imh/g ’ M l i s ta > M li s t

r f i t s ( ” @M lista ” , ”∗” , ” @M list ” , datatype=u)

chpixtype ( ” @M list ” , ” @M list ” , newpixty=” r e a l ” )

hed i t ( ” @M list ” , ”FILTERID” , f i l t r o , add+,up+,ver−)

h s e l e c t ( ” @M list ” , ” $I ” , ”IMAGETYP?=’ zero ’ ”,> ” b i a s l i s t ” )

h s e l e c t ( ” @M list ” , ” $I ” , ”IMAGETYP?=’ object ’ ” , > ” o b j e c t l i s t ” )

h s e l e c t ( ” @M list ” , ” $I ” , ”IMAGETYP?=’ f l a t ’ ”,> ” f l a t l i s t ” )

h s e l e c t ( ” @M list ” , ” $I ” , ”IMAGETYP?=’sky ’ ”,>> ” f l a t l i s t ” )

hed i t ( ” @M list ” , ”RDNOISE” , ”7” , add+, up+,ver−)

hed i t ( ” @M list ” , ”GAIN” , ”2” , add+, up+,ver−)

}

}} # . . . . . . . . . . . . . . . . . . . . . . . . . . . end o f nested switch @bin2

default :

print ( ” Input Error ” )

}# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Case 2 ending , main switch

#

# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . count ing ob jec t s , f l a t s and b ia s images

inumbias=0

i f ( access ( ” b i a s l i s t ” ) ) {count ( ” b i a s l i s t ” ) | scan ( inumbias )

}i f ( inumbias >0){print ( ”” )

print ( ”∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗” )

print ( ” Bias F i l e s @”//read//” : ” , ( inumbias ) )

print ( ”∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗” )

print ( ”” )

}else {print ( ”∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗” )

print ( ”There were NO Bias Images” )

print ( ”Check IMAGETYP key in you images ” )

print ( ” Bias f i l e s should have IMAGETYP=’zero ’ ” )

print ( ”∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗” )

}inumobj=0

i f ( access ( ” o b j e c t l i s t ” ) ) {count ( ” o b j e c t l i s t ” ) | scan ( inumobj )

}i f ( inumobj>0){print ( ”” )

print ( ”∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗” )

print ( ” Object f i l e s @100”//read//”hz : ” , ( inumobj ) )

print ( ”∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗” )

}else {print ( ”” )

print ( ”∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗” )

print ( ”THERE ARE NO OBJECT FILES” )

print ( ”∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗” )

Page 48: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

48 SEBASTIAN BRUZZONE

}# . . . . . . . . . . . . . . . .

print ( ” . . . l ook ing f o r Non−sa turated F la t s ” )

print ( ” . . . . . . . . ” )

count ( ” f l a t l i s t ” ) | scan ( inum)

print ( ”” )

print ( ”∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗” )

print ( ” Flat f i l e s , inum=” , ( inum ) )

print ( ”∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗” )

i f ( inum>0) { #.. l ook ing f o r sa turated f l a t s

l i s t=” f l a t l i s t ”

while ( f s can ( l i s t , s1 ) !=EOF) {imstat ( s1 //” [ 1 0 0 : 6 0 0 , 1 0 0 : 5 0 0 ] ” , f i e l d s=”mean” , format−, cache+) | scan (w)

i f ( w < 40000 && w > 2000 ) {f i l e s ( s1 ,>>” f l a t s b u e n o s ” )

}else i f (w>−32768 && w<−24768){imar i t ( s1 , ’+ ’ ,65535 , s1 ) # . . . adding

65535 adu ’ s .

imrename ( s1 , ” minus ”// s1 ) #See Note 1 at the end o f the s c r i p t

f i l e s (” minus ”// s1 ,>>” f l a t s b u e n o s ”)

p r in t (” Negative f l a t found ”)

p r in t (” Renaming t h i s f i l e ” , s1 , ” as minus ”// s1 )

} e l s e

f i l e s ( s1 ,>>” f l a t s m a l o s ”)

}

i f ( a c c e s s (” f l a t s b u e n o s ”)){count (” f l a t s b u e n o s ”) | scan ( inumf )

p r in t (””)

p r in t (”∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗”)

p r in t (”Good Fla t s : ” , inumf )

p r in t (”∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗”)

}e l s e {

pr in t (”∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗”)

p r in t (” There are no GOOD f l a t s ”)

p r in t (”∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗”)

}}e l s e {

pr in t ( ” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ” )

p r i n t (” Therea are NO f l a t s ”)

p r in t ( ” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ” )

}# . . . . . . . . . . . . . . . . . . . . . . . . . . . movig bad f l a t s to the JUNK d i r e c t o r y

i=0

i f ( a c c e s s (” f l a t s m a l o s ” ) ) {count (” f l a t s m a l o s ”) | scan ( i )

}i f ( i >0){pr in t ( ” . . . . . . . . . . . . . . . . . . . . . ” )

p r i n t (”Bad Fla t s : ” , ( i ) )

p r i n t ( ” . . . . . . . . . . . . . . . . . . . . . . . ” )

mkdir (”JUNK”)

imcopy (” @f la t s ma lo s ” ,”JUNK” , ver+)

}

# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Bias or Oscan s e l e c t i o n

pr in t (””)

p r in t (””)

Page 49: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

PROCESAMIENTO DE ESPECTROS 49

pr in t ( ” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ” )

p r i n t (” Choose between Overscan c o r r e c t i o n ( ’ yes ’ )” )

p r in t (” or Bias c o r r e c t i o n ( ’ no ’ ) ”)

p r in t (” I f ( ’ yes ’ ) , the i n t e r a c t i v e curve f i t i n g mode would be enabled ”)

p r in t (” to f i t the overscan p r o f i l e ”)

p r in t (””)

p r in t (”Would you l i k e to run the Overscan c o r r e c t i o n mode?”)

p r in t ( ” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ” )

p r i n t (””)

# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

! cat ” o b j e c t l i s t ” ” f l a t s b u e n o s ” >

” o b j e t o s m a s f l a t s ” #merging the l i s t s o f o b j e c t s and f l a t s

dummy=scan ( resp2 )

i f ( resp2 ){

############

#Oscan Correc t ion # . . . . . . . . . . . .

############

pr in t (””)

p r in t (”∗∗∗∗ Overscan Correct ion ∗∗∗∗”)

p r in t (””)

# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 s t run on ccdproc

ccdproc (” @ob j e to s mas f l a t s ” , output =””, oversca+ , trim+ , zerocor−, darkcor− , f l a t c o r− , r eadax i=”column ” , b i a s s e c=”image ” ,

t r imsec=”image ” , i n t e r a c t +, f u n c t i o=”s p l i n e 3 ” , order =6, n i t e r a t e =2)

# . . . . . . . . . . . . . . . . . . . . . . l ook ing f o r f l a t s

inumf=0

i f ( a c c e s s (” f l a t s b u e n o s ”) ) {count (” f l a t s b u e n o s ”) | scan ( inumf )

}#There should be at l e a s t , 3 f l a t s

i f ( inumf>3) {pr in t ( ” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ” )

p r i n t (” Good f l a t s : ” , inumf )

p r in t ( ” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ” )

# . . . . . . . . . . . . . . . . . . . . . . Creat ing the Flat

imcombine (” @f la t s buenos ” , output=”Flat . imh” , combine=”median”

, r e j e c t =”a v s i g c l i p ” , s c a l e=”mode”)

imstat (” @f la t s buenos ”,> ” s a l i d a f l a t s t a t ”)

}e l s e {pr in t ( ” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ” )

p r i n t (” There wasn ’ t enough f l a t s images ” )

p r in t ( ” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ” )

}imstat ( ” @ o b j e c t l i s t ” , > ” s a l i d a o s c a n c o r s t a t ” )

# . . . . . . . . . . . . . . . . . . . . . . . . . 2 nd run on ccdproc Flat c o r r e c t i o n

ccdproc ( ” @ o b j e c t l i s t ” , output=”” , oversca −, tr im+, zerocor −,

darkcor−, f l a t c o r +, f l a t=” Flat . imh” , i l lum −, f r i ng e −, r eadax i=”column” ,

b i a s s e c=”image” , t r imsec=”image” , i n t e r a c t −, f u n c t i o=” s p l i n e 3 ” , order =6)

# . . . . . . . . . . . . . . . . . . sav ing f i t s f i l e s us ing w f i t s at the PROC f o l d e r

mkdir ( ”PROC oscan ”// f i l t r o //” ”// read )

l i s t 2=” o b j e c t l i s t ”

whi le ( f s can ( l i s t 2 , s2 ) != EOF){imrename ( s2 , ” pro ”// s2 )

f i l e s ( ” pro ”// s2 ,>>” p ro ob j e c t ” )

}

Page 50: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

50 SEBASTIAN BRUZZONE

l i s t 3=” f l a t s b u e n o s ”

whi le ( f s can ( l i s t 3 , s2 ) != EOF){imrename ( s2 , ” pro ”// s2 )

f i l e s ( ” pro ”// s2 ,>>” p r o f l a t s ” )

}

! cat ” p ro ob j e c t ” ” p r o f l a t s ” > ” a l l imh ”

! l s Flat . imh >> ” a l l imh ”

! l s Zero . imh >> ” a l l imh ”

! sed ’ s / . imh / . f i t s /g ’ a l l imh > a l l f i t s

w f i t s ( ” @all imh ” , ” @ a l l f i t s ” )

imcopy ( ” @ a l l f i t s ” , ”PROC oscan ”// f i l t r o //” ”// read , ver+)

cp ( ” s a l i d a o s c a n c o r s t a t ” , ”PROC oscan ”// f i l t r o //” ”// read )

cp ( ” s a l i d a f l a t s t a t ” , ”PROC oscan ”// f i l t r o //” ”// read )

cp ( ” o b j e c t l i s t a ” , ”PROC oscan ”// f i l t r o //” ”// read )

cp ( ” o b j e c t l i s t ” , ”PROC oscan ”// f i l t r o //” ”// read )

cp ( ” f l a t s b u e n o s ” , ”PROC oscan ”// f i l t r o //” ”// read )

# . . . . . . . . . . . . . . . . . . v iewing the master Flat ( could be ignored )

d i sp l ay ( ” Flat . imh” ,1)

# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . d e l e t i n g f i l e s

imdel ( ” ∗ . imh” )

de l ( ” l i s t a ” )

de l ( ” l i s t ” )

de l ( ” l i s t R ” )

de l ( ” l i s t V ” )

de l ( ” b i a s l i s t ” )

de l ( ” f l a t l i s t ” )

de l ( ” f l a t s b u e n o s ” )

de l ( ” f l a t s m a l o s ” )

de l ( ” o b j e c t l i s t ” )

de l ( ” s a l i d a b i a s c o r s t a t ” )

de l ( ” s a l i d a o s c a n c o r s t a t ” )

de l ( ” s a l i d a f l a t s t a t ” )

# . . . . . . . . . . . . . . . . . . . . . . . . .

p r i n t ( ”∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗” )

p r in t ( ” Object images proces sed : ” , ( inumobj ) )

p r in t ( ” Flat images proces sed : ” , ( inum ) )

p r in t ( ” Images saved at PROC f o l d e r ” )

p r in t ( ” in f i t s format us ing w f i t s ” )

p r in t ( ”End o f S c r i p t ” )

p r in t ( ”∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗CAS PRO” )

}e l s e {

###########

# Bias Correc t ion # . . . . . . . . . . . . . . . . . . . . . . .

###########

pr in t ( ”” )

p r in t ( ”∗∗∗ Bias Correc t ion ∗∗∗” )

p r in t ( ”” )

# . . . . . . . . Combining Bias frames and 1 s t run on ccdproc

imcombine ( ” @ b i a s l i s t ” , output=”Zero . imh” , combine=” average ”

, r e j e c t=”minmax” , s c a l e=”none” , nlow=0,nhigh=1, gain=”image” , rdno i s e=”image” )

Page 51: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

PROCESAMIENTO DE ESPECTROS 51

ccdproc ( ” @ob j e to s mas f l a t s ” , output=”” , oversca −, tr im+, ze roco r +,

zero=”Zero . imh” , darkcor−, f l a t c o r −, i l lum −, f r i ng e −, r eadax i=”column”

, t r imsec=”image” , i n t e r a c t −, f u n c t i o=” chebyshev ” , order =1)

# . . . . . . . . . . . . . . . l ook ing f o r good f l a t s

inumf=0

i f ( a c c e s s ( ” f l a t s b u e n o s ” ) ) {count ( ” f l a t s b u e n o s ” ) | scan ( inumf )

}# . . . . . . . . . . . . . . . . . . . . . . the re should be more than 3 f l a t s

i f ( inumf>3) {

pr in t ( ” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ” )

p r i n t ( ”Good Fla t s : ” , inumf )

p r in t ( ” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ” )

# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creat ing the Flat image

imcombine ( ” @f la t s buenos ” , output=” Flat . imh” , combine=”median”

, r e j e c t=” a v s i g c l i p ” , s c a l e=”mode” , rdno i s e=” rdno i s e ” , gain=” gain ” )

imstat ( ” @f la t s buenos ”,> ” s a l i d a f l a t s t a t ” )

}e l s e {pr in t ( ” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ” )

p r i n t ( ”∗∗∗There wasn ’ t not enough f l a t images ∗∗∗”)

p r in t ( ” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ” )

}

imstat (” @ o b j e c t l i s t ” , > ” s a l i d a b i a s c o r s t a t ”)

# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 nd run on ccdproc , Flat c o r r e c t i o n

ccdproc (” @ o b j e c t l i s t ” , output =””, oversca −, tr im+, ze roco r +, zero=”Zero . imh” ,

darkcor−, f l a t c o r +, f l a t =”Flat . imh” , i l lum −, f r i ng e −,

r eadax i=”column ” , t r imsec=”image ” , i n t e r a c t −, f u n c t i o=”chebyshev ” , order =1)

# . . . . . . . . . . . sav ing images in f i t s format at the PROC f o l d e r

mkdir (” PROC bias ”// f i l t r o //” ”// read )

l i s t 2 =” o b j e c t l i s t ”

whi le ( f s can ( l i s t 2 , s2 ) != EOF){imrename ( s2 , ” pro ”// s2 )

f i l e s (” pro ”// s2 ,>>” p ro ob j e c t ”)

}

l i s t 3 =”f l a t s b u e n o s ”

whi le ( f s can ( l i s t 3 , s2 ) != EOF){imrename ( s2 , ” pro ”// s2 )

f i l e s (” pro ”// s2 ,>>” p r o f l a t s ”)

}! l s Flat . imh >> ” a l l imh ”

! l s Zero . imh >> ” a l l imh ”

! cat ” p ro ob j e c t ” ” p r o f l a t s ” > ” a l l imh ”

! sed ’ s / . imh / . f i t s /g ’ a l l imh > a l l f i t s

w f i t s (” @all imh ” , ” @ a l l f i t s ”)

imcopy (” @ a l l f i t s ” , ”PROC bias ”// f i l t r o //” ”// read , ver+)

cp (” s a l i d a b i a s c o r s t a t ” ,” PROC bias ”// f i l t r o //” ”// read )

cp (” s a l i d a f l a t s t a t ” ,” PROC bias ”// f i l t r o //” ”// read )

cp (” f l a t s b u e n o s ” ,” PROC bias ”// f i l t r o //” ”// read )

! sed ’ s / . imh / . f i t s /g ’ o b j e c t l i s t > o b j e c t l i s t a

cp (” o b j e c t l i s t a ” , ”PROC bias ”// f i l t r o //” ”// read )

cp (” o b j e c t l i s t ” ,” PROC bias ”// f i l t r o //” ”// read )

Page 52: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

52 SEBASTIAN BRUZZONE

# . . . . . . . . . . . . . . . . . . . . . . . v iewing the Flat images ( i t could be ignored )

d i sp l ay (” Flat . imh ” ,1)

# . . . . . . . . . . . . . . . . . . . . . . d e l e t i n g f i l e s .

imdel ( ”∗ . imh”)

de l (” l i s t a ”)

de l (” l i s t ”)

de l (” l i s t R ”)

de l (” l i s t V ”)

de l (” b i a s l i s t ”)

de l (” f l a t l i s t ”)

# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

p r i n t (”∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗”)

p r in t (” Object images proces sed : ” , ( inumobj ) )

p r in t (” Flat images proces sed : ” , ( inum ) )

p r in t (” Images saved at PROC f o l d e r ”)

p r in t (” in f i t s format us ing w f i t s ”)

p r in t (”End o f Sc r i p t ”)

p r in t (”∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗CAS PRO”)

}}

end

#Note

#The negat ive valued images apeared in the l a s t run at

Casleo , a l s o very saturated images , due maybe because o f r e s i d u a l charges

#in the ccd de t e c to r .

8.2. Filtros de Medianas, Maximos y Mınimos.

#template de s c r i p t para f i l t r o e s p a c i a l de 3x3

#se i ng r e s a con l a imagen i n i c i a l y nombre imagen f i n a l

#como argumentos de l procedimiento

procedure Mascara 1 ( imagein , imageout , f i l , op )

##se de f inen l o s parametros de l s c r i p t

s t r i n g imagein {prompt=”Imagen de entrada ”}s t r i n g imageout {prompt=”imagen de s a l i d a ”}s t r i n g f i l {”median” , prompt=”Tipo de f i l t r o (max |min |median ) ”}i n t op {prompt=” Ing r e s e opcion ( | 1 . : (3 x3 ) | 2 : (3 x5 )

| 3 : (3 x9 ) | 4 : (9 x3 ) | 5 : (15 x3 ) | 6 : (3 x15 ) | 7 : (63 x3 ) | 8 : (83 x3 ) | ) ”}begin

s t r i n g in , out , f i l t r o

i n t v in f , vsup , opcion

real constant

#def in imos l a s v a r i a b l e s

in=imagein

out=imageout

opcion=op

f i l t r o= f i l

constant =−30000.

Page 53: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

PROCESAMIENTO DE ESPECTROS 53

print ( ”∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗” )

print ( ” Programa Mascara 1” )

print ( ”El usuar io puede s e l e c c i o n a r ent re d i v e r s a s mascaras ” )

print ( ” para a p l i c a r sobre una imagen a e l e c c i o n ” )

print ( ”Los f i l t r o s d i s p o n i b l e s son max , min y mediana” )

print ( ”Las mascaras comprenden una mascara cuadrada de 3x3 pix ” )

print ( ”y cuatro mascaras r e c t a n g u l a r e s de 3x5 , 3x9 , 3x15 ,

9x3 , 15x3 , 63x3 y 83x3 p i x e l e s ” )

print ( ”∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗” )

#usando mascara de 3x3

#implemento una mascara v e r t i c a l o r e c tangu l a r

switch ( opcion ){case 1 :

{

#uso i m s h i f t para c r ea r 8 imagenes que tengan centrado

#cada vec ino en e l p i x e l c e n t r a l . La imagen ” f3x3 . 5 ” es imagein

i m s h i f t ( in , ” f3x3 . 1 ” , 1 . , 1 . , boundary=’ constant ’ )

i m s h i f t ( in , ” f3x3 . 2 ” , 0 . , 1 . , boundary=’ constant ’ )

i m s h i f t ( in , ” f3x3 . 3 ” , −1 . ,1 . , boundary=’ constant ’ )

i m s h i f t ( in , ” f3x3 . 4 ” , 1 . , 0 . , boundary=’ constant ’ )

i m s h i f t ( in , ” f3x3 . 6 ” , −1 . ,0 . , boundary=’ constant ’ )

i m s h i f t ( in , ” f3x3 . 7 ” ,1 . , −1 . , boundary=’ constant ’ )

i m s h i f t ( in , ” f3x3 . 8 ” ,0 . , −1 . , boundary=’ constant ’ )

i m s h i f t ( in , ” f3x3 . 9 ” ,−1. ,−1. , boundary=’ constant ’ )

i f ( f i l t r o == ”max” ){v i n f=8

vsup=0

} else i f ( f i l t r o == ”min” ){v i n f=0

vsup=8

} else i f ( f i l t r o == ”median” ){v i n f=4

vsup=4

}}case 2 : #3x5

{ #se cuenta en sen t ido a n t i h o r a r i o

i m s h i f t ( in , ” f3x3 . 1 ” , −2 . ,1 . , boundary=’ constant ’ )

i m s h i f t ( in , ” f3x3 . 2 ” ,−1. ,−1. , boundary=’ constant ’ )

i m s h i f t ( in , ” f3x3 . 3 ” ,2 . , −1 . , boundary=’ constant ’ )

i m s h i f t ( in , ” f3x3 . 4 ” , 1 . , 1 . , boundary=’ constant ’ )

i f ( f i l t r o == ”max” ){v i n f=4

vsup=0

} else i f ( f i l t r o == ”min” ){v i n f=0

vsup=4

} else i f ( f i l t r o == ”median” ){v i n f=2

vsup=2

}}

case 3 : #3x9

{ #se cuenta en sen t ido a n t i h o r a r i o

i m s h i f t ( in , ” f3x3 . 1 ” , −4 . ,1 . , boundary=’ constant ’ )

i m s h i f t ( in , ” f3x3 . 2 ” ,−3. ,−1. , boundary=’ constant ’ )

i m s h i f t ( in , ” f3x3 . 3 ” ,4 . , −1 . , boundary=’ constant ’ )

i m s h i f t ( in , ” f3x3 . 4 ” , 3 . , 1 . , boundary=’ constant ’ )

i f ( f i l t r o == ”max” ){v i n f=4

Page 54: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

54 SEBASTIAN BRUZZONE

vsup=0

} else i f ( f i l t r o == ”min” ){v i n f=0

vsup=4

} else i f ( f i l t r o == ”median” ){v i n f=2

vsup=2

}}

case 4 : #9x3

{ #se cuenta en sen t ido a n t i h o r a r i o

i m s h i f t ( in , ” f3x3 . 1 ” , −1 . ,4 . , boundary=’ constant ’ )

i m s h i f t ( in , ” f3x3 . 2 ” ,−1. ,−3. , boundary=’ constant ’ )

i m s h i f t ( in , ” f3x3 . 3 ” ,1 . , −4 . , boundary=’ constant ’ )

i m s h i f t ( in , ” f3x3 . 4 ” , 1 . , 3 . , boundary=’ constant ’ )

i f ( f i l t r o == ”max” ){v i n f=4

vsup=0

} else i f ( f i l t r o == ”min” ){v i n f=0

vsup=4

} else i f ( f i l t r o == ”median” ){v i n f=2

vsup=2

}

}

case 5 : #15x3

{ se cuenta en sen t ido a n t i h o r a r i o

i m s h i f t ( in , ” f3x3 . 1 ” , −1 . ,7 . , boundary=’ constant ’ )

i m s h i f t ( in , ” f3x3 . 2 ” , −1 . ,6 . , boundary=’ constant ’ )

i m s h i f t ( in , ” f3x3 . 3 ” ,1 . , −7 . , boundary=’ constant ’ )

i m s h i f t ( in , ” f3x3 . 4 ” , 1 . , 6 . , boundary=’ constant ’ )

i f ( f i l t r o == ”max” ){v i n f=4

vsup=0

} else i f ( f i l t r o == ”min” ){v i n f=0

vsup=4

} else i f ( f i l t r o == ”median” ){v i n f=2

vsup=2

}}case 6 : #3x15

{ #se cuenta en sen t ido a n t i h o r a r i o

i m s h i f t ( in , ” f3x3 . 1 ” , −7 . ,1 . , boundary=’ constant ’ )

i m s h i f t ( in , ” f3x3 . 2 ” ,−6. ,−1. , boundary=’ constant ’ )

i m s h i f t ( in , ” f3x3 . 3 ” ,7 . , −1 . , boundary=’ constant ’ )

i m s h i f t ( in , ” f3x3 . 4 ” , 6 . , 1 . , boundary=’ constant ’ )

i f ( f i l t r o == ”max” ){v i n f=4

vsup=0

} else i f ( f i l t r o == ”min” ){v i n f=0

vsup=4

} else i f ( f i l t r o == ”median” ){v i n f=2

vsup=2

}

Page 55: FISICA - Indicesbruzzone/FlexPaper_1.4.2_flash/Espec... · 2011. 4. 26. · 3. Reducci on 8 3.1. Secciones de Trim y Bias 8 3.2. Con gurando las tareas 11 3.3. Primer paso por CCDPROC

PROCESAMIENTO DE ESPECTROS 55

}

case 8 : #83x3

{ #se cuenta en sen t ido a n t i h o r a r i o

i m s h i f t ( in , ” f3x3 . 1 ” , −1 . ,41 . , boundary=’ constant ’ )

i m s h i f t ( in , ” f3x3 . 2 ” ,−1. ,−40. , boundary=’ constant ’ )

i m s h i f t ( in , ” f3x3 . 3 ” ,1 . , −41 . , boundary=’ constant ’ )

i m s h i f t ( in , ” f3x3 . 4 ” , 1 . , 4 0 . , boundary=’ constant ’ )

i f ( f i l t r o == ”max” ){v i n f=4

vsup=0

} else i f ( f i l t r o == ”min” ){v i n f=0

vsup=4

} else i f ( f i l t r o == ”median” ){v i n f=2

vsup=2

}}case 7 : #63x3

{ #se cuenta en sen t ido a n t i h o r a r i o

i m s h i f t ( in , ” f3x3 . 1 ” , −1 . ,31 . , boundary=’ constant ’ )

i m s h i f t ( in , ” f3x3 . 2 ” ,−1. ,−30. , boundary=’ constant ’ )

i m s h i f t ( in , ” f3x3 . 3 ” ,1 . , −31 . , boundary=’ constant ’ )

i m s h i f t ( in , ” f3x3 . 4 ” , 1 . , 3 0 . , boundary=’ constant ’ )

i f ( f i l t r o == ”max” ){v i n f=4

vsup=0

} else i f ( f i l t r o == ”min” ){v i n f=0

vsup=4

} else i f ( f i l t r o == ”median” ){v i n f=2

vsup=2

}}default :

print ( ’ Error de entrada , s e l e c c i o n e ( 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 ) ’ )

}

#combina l a s imagenes

imcombine ( ” f3x3 .∗ , ”// in , out , comb=

” average ” , r e j e c t=”minmax” , nlow=vinf , nhigh=vsup )

#imar i t ( in , ’− ’ ,out , out )

#borra l a s imagenes inte rmed ias

imdel ( ” f3x3 .∗ ” , ver−)

end

#f i n de l s c r i p t

Departamento de Astronomıa Instituto de FısicaE-mail address: [email protected]