Astronomía

Cómo calcular el oscurecimiento de las extremidades $ mu $ valor

Cómo calcular el oscurecimiento de las extremidades $  mu $ valor

Estoy leyendo sobre el oscurecimiento de las extremidades y estoy muy confundido sobre cómo encontrar el valor de $ mu $.

Dice que se puede encontrar por $ mu = cos ( gamma) $, pero estoy perdido como $ gamma $ se encuentra, o lo que representa.

Si un planeta está, digamos en tránsito, $ gamma $ ser cero grados?

Parece que no puedo visualizar la trigonometría para entenderla. Espero que alguien pueda explicarlo.


Oscurecimiento de extremidades¶

TransitFit se construyó con dos motivaciones principales. Primero, para facilitar los estudios de espectroscopia de transmisión utilizando observaciones de telescopios heterogéneos, y segundo, para permitir al usuario ajustar las curvas de luz al tiempo que tiene en cuenta los efectos que los perfiles de filtro y los parámetros del host tienen en los LDC, a los que nos referimos como 'acoplar' los LDC. . Discutiremos esto último aquí.

La justificación completa y los impactos de este enfoque se pueden encontrar en el documento adjunto, pero, en resumen, no incluir los parámetros del anfitrión y los perfiles de filtro en los cálculos de probabilidad de los PMA puede generar sesgos en sus mediciones de (R_p / R_ star ) de decenas de por ciento. Al incluir esto, TransitFit ha facilitado la realización de estudios de espectroscopia de transmisión sólidos utilizando observaciones de fuentes heterogéneas.


Título: Oscurecimiento de extremidades y tránsitos planetarios: prueba de variaciones de intensidad de centro a extremidad y oscurecimiento de extremidades directamente desde atmósferas estelares modelo

El método de tránsito, empleado por Microvariability and Oscillation of Stars (MOST), Kepler y varios estudios terrestres ha permitido la caracterización de planetas extrasolares con una precisión sin precedentes. Estos resultados son lo suficientemente precisos como para comenzar a medir la composición de la atmósfera del planeta, el achatamiento planetario, las manchas estelares y otros fenómenos a un nivel de unos pocos cientos de partes por millón. Sin embargo, estos resultados dependen de nuestra comprensión del oscurecimiento de las extremidades estelares, es decir, la distribución de intensidad a través del disco estelar que se bloquea secuencialmente a medida que el planeta transita. Por lo general, se supone que el oscurecimiento de las extremidades estelares es una simple parametrización con dos coeficientes que se derivan de modelos de atmósfera estelar o que se ajustan directamente. En este trabajo, revisamos esta suposición y calculamos curvas de luz sintéticas de tránsito planetario directamente a partir de las variaciones de intensidad del centro a la extremidad de la atmósfera estelar del modelo (CLIV) utilizando el Atlas plano-paralelo y los códigos SAtlas esféricamente simétricos. Comparamos estas curvas de luz con las construidas utilizando parametrizaciones de oscurecimiento de extremidades más adecuadas. Encontramos que la adopción de leyes paramétricas de oscurecimiento de extremidades estelares conduce a diferencias sistemáticas con el modelo CLIV de atmósfera estelar más realista geométricamente de aproximadamente 50-100 ppm en el centro de tránsito y hasta 300 ppm en la entrada / salida. Si bien estos errores son pequeños, son sistemáticos y parecen limitar más y más la precisión necesaria para medir los efectos secundarios. Nuestros resultados también pueden tener un impacto significativo en los espectros de tránsito. & laquo menos


Cómo calcular el oscurecimiento de las extremidades $ mu $ valor - Astronomía

Python Lsoy B Darkening Toolkit: un conjunto de herramientas de Python para calcular perfiles de oscurecimiento de extremidades estelares y coeficientes específicos del modelo para bandas de paso arbitrarias utilizando la biblioteca de modelos de espectro estelar de Husser et al (2013).

. y lo mismo, pero para 19 bandas de paso estrechas.

PyLDTk automatiza el cálculo de perfiles de oscurecimiento de extremidades estelares (LD) personalizados y coeficientes de oscurecimiento de extremidades (LDC) específicos del modelo utilizando la biblioteca de espectros de intensidad específicos generados por PHOENIX por Husser et al. (2013).

El objetivo del paquete es facilitar el modelado de la curva de luz de tránsito de exoplanetas, especialmente la espectroscopia de transmisión, donde el modelado se lleva a cabo para bandas de paso estrechas personalizadas. El paquete puede ser

  1. utilizado para construir a priori específicos del modelo en los coeficientes de oscurecimiento de las extremidades antes del modelado de la curva de luz de tránsito
  2. directamente integrado en el cálculo posterior del registro de cualquier código de modelado de tránsito preexistente con modificaciones mínimas.

El segundo enfoque se puede utilizar para restringir el espacio de parámetros del modelo LD directamente por el perfil LD, permitiendo la marginación sobre todo el espacio de parámetros que puede explicar el perfil sin la necesidad de aproximar esta restricción mediante una distribución previa. Esto es útil cuando se usa un modelo de oscurecimiento de las extremidades de alto orden en el que los coeficientes a menudo están correlacionados y los valores previos estimados a partir de los valores tabulados generalmente no incluyen estas correlaciones.

  • Se agregó la clase de filtro ldtk.SVOFilter que crea un filtro utilizando el Servicio de perfil de filtro (FPS) del Observatorio virtual español (SVO). El FPS contiene más de 10000 filtros con nombre, y crear un filtro basado en los datos de FPS ahora es tan simple como darle al SVOFilter el nombre del filtro SVO.

LDTk ahora puede usar cuatro conjuntos diferentes de espectros estelares modelados: vis, vis-lowres, visir y visir-lowres. El primero, vis, es el original de Husser et al (2013) que abarca desde 50 nm hasta 2600 nm vis-lowres es una versión de menor resolución del conjunto de datos original, agrupada en una resolución de 5 nm visir es una nueva versión del original conjunto de modelos ampliado para abarcar desde 50 nm a 5500 nm y visir-lowres es una versión de menor resolución del nuevo conjunto de modelos agrupados en una resolución de 5 nm.

El conjunto de modelos se puede elegir en la inicialización de LDPSetCreator estableciendo el argumento del conjunto de datos. LDTk usa vis-lowres por defecto, pero visir-lowres se puede usar cuando se trata de observaciones IR, y las versiones originales (vis y visir) se pueden usar si se requiere una resolución espectral superior a 5 nm.


Rutinas de curva de luz de tránsito¶

occultnonlin () & # 8211 oscurecimiento de extremidades no lineal completo (4 parámetros)

t2z () & # 8211 convertir fechas en parámetro z en tránsito para circular

Ciertos valores de p (& lt0.09, & gt0.5) hacen que algunas rutinas cuelguen su millaje puede variar. Si averigua por qué, ¡hágamelo saber!

Las pruebas de curso sugieren que las rutinas de Python contenidas en

son más lentos que el código IDL correspondiente en un factor de 5 a 10.

Para ocultquad () Confié mucho en el código IDL de E. Agol y J. Eastman.

Función appellf1 () proviene de la compilación mpmath y se adopta (con modificaciones) para su uso en este documento de conformidad con su licencia BSD (consulte la documentación de la función para obtener más detalles).

La principal referencia es la obra fundamental de Mandel y Agol (2002).

Creado por Ian Crossfield en UCLA. El código contenido en este documento puede reutilizarse, adaptarse o modificarse siempre que se haga la atribución adecuada a los autores originales.

Documentación limpia. Publicado en el sitio web.

formato de: func: `occultuniform. '

Genere una curva de luz JKTEBOP utilizando la biblioteca compilada por F2Py.

Las entradas a la función Fortran & # 8216jktebop.getmodel & # 8217 son muchas y su formato es complicado. Es posible que desee examinar el código fuente de Fortran para obtener más información.

v: secuencia de 138 flotadores

Parámetros fotométricos. En su totalidad, estos son:

V (0) = relación de brillo de la superficie central (starB / starA)

V (1) = suma de los radios fraccionarios (radios divididos por el semieje mayor)

V (2) = relación de radios estelares (starB / starA)

V (3) = coeficiente de oscurecimiento de la extremidad lineal para la estrella A

V (4) = coeficiente de oscurecimiento de la extremidad lineal para la estrella B

V (5) = inclinación orbital (grados)

V (6) = e cos (omega) O ecentricidad

V (7) = e sin (omega) O omega (grados)

V (8) = oscurecimiento por gravedad de la estrella A

V (9) = oscurecimiento por gravedad de la estrella B

V (10) = luz reflejada para la estrella A

V (11) = luz reflejada para la estrella A

V (12) = relación de masa (starB / starA) para el cálculo de la curva de luz

V (13) = ángulo de avance / retraso de marea (grados)

V (14) = tercera luz en unidades donde (LA + LB + LC = 1)

V (15) = factor de corrección de fase (es decir, fase del eclipse primario)

V (16) = factor de escala de luz (magnitudes)

V (17) = tamaño del anillo de integración (grados)

V (18) = período orbital (días)

V (19) = base de tiempo de efemérides (días)

V (20) = coeficiente de oscurecimiento de la extremidad 2 para la estrella A

V (21) = coeficiente de oscurecimiento de la extremidad 3 para la estrella A

V (22) = coeficiente de oscurecimiento de la extremidad 4 para la estrella A

V (23) = coeficiente de oscurecimiento de la extremidad 2 para la estrella B

V (24) = coeficiente de oscurecimiento de la extremidad 3 para la estrella B

V (25) = coeficiente de oscurecimiento de la extremidad 4 para la estrella B

V (26) = amplitud de velocidad de la estrella A (km / s)

V (27) = amplitud de velocidad de la estrella B (km / s)

V (28) = velocidad sistémica de la estrella A (km / s)

V (29) = velocidad sistémica de la estrella B (km / s)

V (30-56) nueve lotes de parámetros de curva sinusoidal [T0, período, amplitud]

V (57-137) nueve lotes de parámetros polinomiales [pivot, Tstart, Tend, const, x, x2, x3, x4, x5]

& # 8220Qué parámetros se ajustan. & # 8221 Pero para jktebop.getmodel directamente llamado, los únicos valores relevantes posibles son [a] todos los valores cero (operaciones normales) o [b] todos los valores cero, pero varían [29] = - 1 (si dtype1 = 8).

ldtype: 2 secuencias de ints

Tipo de ley LD para las estrellas A y B, respectivamente:

El número de senos y polinomios, respectivamente.

Los parámetros para senos y polinomios, respectivamente.

El TIEMPO, FASE o CICLO dados

dtype1: int, 1-8 inclusive. El significado preciso del valor de salida depende de DTYPE.

1 genera una magnitud de EBOP para el tiempo dado 2 genera una relación de luz para el tiempo dado 3 genera un tiempo de eclipse para el = CICLO = 4 dado simplemente genera el tercer valor de luz 5 genera e o e * cos (omega) 6 emite omega o e * sin (omega) 7 emite el RV de la estrella A 8 emite el RV de la estrella B

Luz producida por cada estrella (??)

Número de integraciones numéricas. Los tiempos de exposición prolongados se pueden dividir en NUMINT puntos.

Intervalo de tiempo para integraciones. Si numint & gt1, cada punto de la integración numérica ocupa un intervalo de tiempo total de NINTERVAL segundos.

Consulte la documentación de JKTEBOP para obtener más detalles. JKTEBOP está actualmente disponible en línea en http://www.astro.keele.ac.uk/

Para compilar JKTEBOP (v34) con F2Py, tuve que cambiar el nombre del archivo fuente para que fuera & # 8220jktebop_orig.f90 & # 8221, y luego ejecuté el siguiente comando:

f2py-2.7 -c & # 8211debug -m jktebop_f2py jktebop_orig.f90

O

f2py-2.7 -c & # 8211debug -m jktebop_mod jktebop.f90

vv = ((v, variar, ldtype, nsine, psine, npoly, ppoly, bjd, 1, 0, 0, numint, ninterval))

out0 = np.array ([jktebop_f2py.getmodel (v, changes, ldtype, nsine, psine, npoly, ppoly, time, 1, 0, 0, numint, ninterval) para el tiempo en bjd]) out00 = jktebop_mod.getmodelarray (v , variar, ldtype, nsine, psine, npoly, ppoly, bjd, 1, 0, 0, numint, ninterval, bjd.size) out1 = transit.JKTEBOP_lightcurve (* vv) out2 = transit.JKTEBOP_lightcurve_helper (vv)

out3 = np.array (map (transit.JKTEBOP_lightcurve_helper, [(v, variar, ldtype, nsine, psine, npoly, ppoly, time0, 1, 0, 0, numint, ninterval) para time0 en bjd])). squeeze ( ) out4 = np.array (pool.map (transit.JKTEBOP_lightcurve_helper, [(v, variar, ldtype, nsine, psine, npoly, ppoly, time0, 1, 0, 0, numint, ninterval) para time0 en bjd])) .estrujar()

0 0.104 0.984 9.762 1 0.103 0.979 9.878 2 0.101 0.999 9.801 3 0.252 3.028 31.8 4 0.228 3.006 30.7

Determine el mejor ajuste e incertidumbres en tránsitos, eclipses, curvas de fase.

VER TAMBIÉN: blender.modeltransit_jktebop

devoluciones: bestfit, sampler, weights, bestmod

Determine el mejor ajuste y las incertidumbres en los datos de eclipses secundarios.

VER TAMBIÉN: modeleclipse_simple

devoluciones: bestfit, sampler, weights, bestmod

Ajuste el tránsito a los datos y estime las incertidumbres sobre el ajuste.

Una estimación de los parámetros de tránsito del modelo que mejor se ajustan, que se pasarán a modeltransit_general () .

Si se pasan & # 8216svs & # 8217 (ver más abajo), los parámetros deben tener un valor adicional concatenado al final como el coeficiente para cada vector de estado.

número de coeficientes polinomiales normalizadores (cf. modeltransit_general () )

valores de tiempo (por ejemplo, BJD_TDB - BJD_0)

valores fotométricos (es decir, la curva de luz de tránsito) a los que se ajustará.

pesos a los valores fotométricos. Si es Ninguno, las ponderaciones se establecerán iguales al cuadrado inverso de los residuos para el modelo de mejor ajuste. En cualquier caso, los valores atípicos extremos serán desponderados en el proceso de ajuste. Esto no cambiará los valores de la entrada & # 8216weights & # 8217.

Los residuos que superen este valor de desviaciones estándar recortadas con sigma serán desponderados.

Si es Verdadero, ejecute un análisis de error de cuentas de oración (permutación residual).

Si es verdadero, ejecute el análisis de errores de Markov Chain Monte Carlo (requiere EmCee)

Número de pasos para ejecutar EmCee MCMC. Esto debería ser por lo menos Varios miles.

svs: Ninguno, o secuencia de matrices 1D NumPy

Vectores de estado, para una descorrelación adicional de datos en un sentido de mínimos cuadrados. Ver modeltransit_general ()

(eventualmente, algún objeto con campos útiles)

Da la función hipergeométrica de Appell de dos variables.

seis parámetros, todos escalares.

eps & # 8211 escalar, precisión de tolerancia de la máquina. El valor predeterminado es 1e-10.

Adaptado del módulo mpmath, pero el uso de la función hipergeométrica scipy (en lugar de mpmath) de Gauss acelera las cosas.

MPMATH Copyright (c) 2005-2010 Fredrik Johansson y colaboradores de mpmath. Reservados todos los derechos.

Se permite la redistribución y el uso en formato fuente y binario, con o sin modificaciones, siempre que se cumplan las siguientes condiciones:

  1. Las redistribuciones del código fuente deben conservar el aviso de derechos de autor anterior, esta lista de condiciones y el siguiente descargo de responsabilidad.
  2. Las redistribuciones en formato binario deben reproducir el aviso de derechos de autor anterior, esta lista de condiciones y el siguiente descargo de responsabilidad en la documentación y / u otros materiales proporcionados con la distribución.
  3. Ni el nombre de mpmath ni los nombres de sus colaboradores pueden usarse para respaldar o promocionar productos derivados de este software sin un permiso previo específico por escrito.

ESTE SOFTWARE ES PROPORCIONADO POR LOS TITULARES DE LOS DERECHOS DE AUTOR Y COLABORADORES & # 8220 AS IS & # 8221 Y CUALQUIER GARANTÍA EXPRESA O IMPLÍCITA, INCLUYENDO, PERO NO LIMITADO A, LAS GARANTÍAS IMPLÍCITAS DE COMERCIABILIDAD E IDONEIDAD PARA UN PROPÓSITO PARTICULAR. EN NINGÚN CASO LOS REGENTES O COLABORADORES SERÁN RESPONSABLES DE NINGÚN DAÑO DIRECTO, INDIRECTO, INCIDENTAL, ESPECIAL, EJEMPLAR O CONSECUENCIAL (INCLUYENDO, PERO NO LIMITADO A, LA ADQUISICIÓN DE BIENES O SERVICIOS SUSTITUTIVOS, PÉRDIDA DE USO, DATOS O GANANCIAS O INTERRUPCIÓN COMERCIAL ) SIN EMBARGO Y POR CUALQUIER TEORÍA DE RESPONSABILIDAD, YA SEA POR CONTRATO, RESPONSABILIDAD ESTRICTA O AGRAVIO (INCLUYENDO NEGLIGENCIA O DE OTRA MANERA) QUE SURJA DE CUALQUIER FORMA DEL USO DE ESTE SOFTWARE, INCLUSO SI SE HA INFORMADO DE LA POSIBILIDAD DE DICHO DAÑO.

Implemente una versión simple / estúpida del algoritmo Box-Least-Squares.

marcas de tiempo de la serie temporal de entrada

Periodos mínimos y máximos de búsqueda.

Los períodos de prueba se separarán uniformemente en el espacio logarítmico, con este espacio en log10.

Número de contenedores que se utilizarán al agrupar los datos plegados en fase. El ancho de cada contenedor dependerá del período de prueba considerado, como (P / nbins)

Ancho máximo de la señal de tránsito buscada, en términos del número de bins de fase.

Número de subprocesos de multiprocesamiento a utilizar.

Los tránsitos más cortos que (prange [0] / nbins) y más largos que (maxwid * prange [1] / nbins) pueden no modelarse correctamente.

Esta rutina es mi propio intento tosco de un algoritmo de mínimos cuadrados de ajuste de cajas. Sin embargo, tenga en cuenta que esto es NO la versión bien publicitada (y más rigurosa) de Kovacs et al. (2002). Aquí, para cada período de prueba, clasifico los datos y construyo modelos de tránsito simples en forma de caja para combinaciones de tiempos de entrada y salida. Para cada modelo, se calcula la reducción en la desviación estándar de (datos agrupados - modelo) para cada período, se informa el mayor valor de reducción.

Vuelva a convertir una máscara booleana, Verdadero dondequiera que el planeta esté en tránsito.

Cree un archivo de entrada adecuado para ejecutar JKTEBOP.

Una secuencia larga de entradas numéricas y de cadena de amplificador, definida como sigue. Si se simula un planeta en tránsito, el objeto & # 8220A & # 8221 indica la estrella y el objeto & # 8220B & # 8221 indica el planeta.

JKTEBOP & # 8220Task & # 8221 to do (del 1 al 9) & # 8211 por ahora, solo 2 es válido.

Integración del tamaño del anillo (grados) y # 8211 entre 0,1 y 10,0 grados

Suma de los radios (R_A / a + R_B / a)

Relación de los radios (R_B / R_A)

Inclinación orbital (grados)

Relación de masa del sistema (M_B / M_A)

e * cos (omega) o excentricidad orbital & # 8211 ver NOTAS a continuación.

e * sin (omega) o longitud del periastrón (grados) & # 8211 ver NOTAS a continuación.

Oscurecimiento por gravedad (el objeto A normalmente se establece en 1,0)

Oscurecimiento de gravedad (el objeto B normalmente se establece en 1.0)

Relación de brillo de la superficie (normalmente establecida en 0.0)

Cantidad de tercera luz

Tipo de ley de oscurecimiento de extremidades para la estrella A:

uno de (& # 8216lin & # 8217, & # 8216log & # 8217, & # 8216sqrt & # 8217, & # 8216quad & # 8217, & # 8216cub & # 8217, & # 82164par & # 8217)

Tipo de ley de oscurecimiento de extremidades para la estrella A:

(cualquiera de las opciones anteriores, o & # 8216same & # 8217 para la misma)

LD estrella A:

si la ley LD es & # 82164par & # 8217 entonces uno tras otro ingrese los 4 valores (coef1, coef2, coef3, coef). De lo contrario, (coeff lineal, nonlincoef)

LD estrella B:

Igual que se describió anteriormente.

Efecto de reflexión estrella A

Efecto de reflexión estrella B

Fase orbital del eclipse primario

Factor de escala de luz: escalar

Magnitud aparente de la estrella objetivo

Período orbital del binario en días, utilizado para calcular las marcas de tiempo de salida. Si no se ingresa, la salida & # 8216time & # 8217 será la fase orbital.

Nombre del & # 8216 archivo de entrada & # 8217 que creará esta rutina.

Nombre del & # 8216 archivo de salida & # 8217 que JKTEBOP creará.

El nombre del & # 8216data file & # 8217 que se va a introducir tiene 2-3 columnas de marcas de tiempo, fotometría e incertidumbres (opcionales), respectivamente.

Si es verdadero, sobrescriba cualquier archivo existente. De lo contrario: ¡don & # 8217t!

Si no se pasó la opción & # 8216filename & # 8217, devuelve una lista de cadenas, adecuada para escribir en el disco a través de lo habitual:

Ponga un número negativo para la relación de masa para forzar a las estrellas a ser esféricas. La relación de masa será entonces irrelevante (solo se usa para obtener deformaciones).

Para ingresar R_A / ay R_B / a (en lugar de [R_A + R_B] / ay R_B / R_A), dé un valor negativo para [R_A + R_B] / a. Entonces se interpretará que significa R_A / a, y R_B / R_A se interpretará como R_B / a.

Si la excentricidad & lt 10, entonces se asumirá que e y omega son e * cos (omega) y e * sin (omega). Si e & gt = 10, se supondrá que e y omega son (e + 10) y omega (grados). La primera opción suele ser mejor a menos que la excentricidad sea mayor o fija.

Consulte la documentación de JKTEBOP para obtener más detalles sobre todos estos parámetros. JKTEBOP está actualmente disponible en línea en http://www.astro.keele.ac.uk/

Agregue otros parámetros opcionales: TMIN, LRAT, THDL, ECSW, ENSW, SINE, POLY, NUMI, RV1 & amp RV2, período orbital, época de referencia.

Permitir ajuste (es decir, habilitar Tareas 3-9).

Calcule la aproximación polinomial de Hasting & # 8217 para la integral elíptica completa del primer (ek) y segundo (kk) tipo.

ENTRADAS:k & # 8211 matriz escalar o Numpy
SALIDAS:ek, kk
NOTAS:Adaptado de la función IDL del mismo nombre por J. Eastman (OSU).
tránsito.ellke2(k, tol = 2.2204460492503131e-14, maxiter = 100) [fuente] ¶

Calcule integrales elípticas completas del primer tipo (K) y del segundo tipo (E) utilizando las expansiones en serie.

Calcule la integral elíptica completa del tercer tipo utilizando el algoritmo de Bulirsch (1965).

Adaptado de la función IDL del mismo nombre por J. Eastman (OSU).

Evaluar la integral en un límite especificado (superior o inferior)

datos: series de tiempo para ajustar usando mínimos cuadrados.

sv: vectores de estado (por ejemplo, varios parámetros instrumentales)

ords: órdenes para elevar cada vector sv a: p. ej., [1, [1,2], 3]

edata: error en los datos (¡SOLO para chisq! Sin ajustes ponderados).

index: índice de matriz para aplicar a datos, sv y tlc

dopb: hacer análisis de incertidumbre de cuentas de oración

dotransit: incluya tlc en el accesorio, de lo contrario, déjelo fuera.

Función auxiliar para bls_simple.

args = thisperiod, times, flux, phasebins, maxwid):

Devuelve la integral en I * (z) en la ecuación. 8 de Mandel & amp Agol (2002). & # 8211 Int [I (r) 2r dr] _^ <1>, donde:

planeta, normalizado por el radio estelar.

p = escalar. Relación de radio planeta / estrella.

cn = 4 secuencias. Coeficientes de oscurecimiento de las extremidades no lineales,

flotadores inferiores, superiores y # 8211. Límites de integración en unidades de mu

valor de la integral en z especificado.

MCMC para función de eclipse de 3 parámetros con órbita CONOCIDA

Contiene desviación estándar (incertidumbres) de los datos de flujo.

Contiene datos independientes: información de tiempo

params: parámetros a ajustar: O BIEN:

[c0,. c13, T_center, profundidad, Fstar]

parámetros: 4 parámetros orbitales CONSTANTES CONOCIDOS

Matriz de cambio 1-sigma en parámetro por iteración

Número de iteraciones a realizar

Guarda cada & # 8220nth & # 8221 paso de la cadena

posdef: Ninguno, & # 8216todos & # 8217, o secuencias de índices.

¿Qué elementos deben restringirse a positivo definido? Si es un índice, debe tener el formato (p. Ej.): [0, 1, 4]

holdfixed: Ninguno, o secuencias de índices.

¿Qué elementos deben mantenerse fijos en el análisis? Si es un índice, debe tener el formato (p. Ej.): [0, 1, 4]

Contiene todos los parámetros en cada paso

Contiene los mejores parámetros según lo determinado por el menor Chi ^ 2

Valor de chi-cuadrado en cada paso

Recetas numéricas, tercera edición (sección 15.8) Wikipedia

MCMC para función de eclipse de 5 parámetros de tránsito con período CONOCIDO

Contiene desviación estándar (incertidumbres) de los datos de flujo.

Contiene datos independientes: información de tiempo

Período orbital conocido (mismas unidades que t)

Función para modelar el tránsito (por ejemplo, transit.occultuniform)

params: 5 + N parámetros para ajustar [T_center, b, Rstar / a, Rp / Rstar, Fstar] + (¿parámetros de oscurecimiento de las extremidades?)

# [Fstar, t_center, b, v (en Rstar / día), p (Rp / Rs)]

si 1D: matriz de cambio 1-sigma en el parámetro por iteración si 2D: matriz de covarianzas para nuevos parámetros

Número de iteraciones a realizar

Guarda cada & # 8220nth & # 8221 paso de la cadena

posdef: Ninguno, & # 8216todos & # 8217, o secuencias de índices.

¿Qué elementos deben restringirse a positivo definido? Si es un índice, debe tener el formato (p. Ej.): [0, 1, 4]

holdfixed: Ninguno, o secuencias de índices.

¿Qué elementos deben mantenerse fijos en el análisis? Si es un índice, debe tener el formato (p. Ej.): [0, 1, 4]

Contiene todos los parámetros en cada paso

Contiene los mejores parámetros según lo determinado por el menor Chi ^ 2

Valor de chi-cuadrado en cada paso

Recetas numéricas, tercera edición (sección 15.8) Wikipedia

MCMC para función de eclipse de 5 parámetros de tránsito con período CONOCIDO

Contiene desviación estándar (incertidumbres) de los datos de flujo.

Contiene datos independientes: información de tiempo

Período orbital conocido (mismas unidades que t)

Función para modelar el tránsito (por ejemplo, transit.occultuniform)

params: 14 + 5 + N parámetros a ajustar

[c0. c13] + [T_center, b, Rstar / a, Rp / Rstar, Fstar] + (¿parámetros de oscurecimiento de las extremidades?)

Si 1D: cambio 1-sigma de parámetro por iteración. Si 2D: matriz de covarianza para cambios de parámetro.

Número de iteraciones a realizar

Guarda cada & # 8220nth & # 8221 paso de la cadena

posdef: Ninguno, & # 8216todos & # 8217, o secuencias de índices.

¿Qué elementos deben restringirse a positivo definido? Si es un índice, debe tener el formato (p. Ej.): [0, 1, 4]

holdfixed: Ninguno, o secuencias de índices.

¿Qué elementos deben mantenerse fijos en el análisis? Si es un índice, debe tener el formato (p. Ej.): [0, 1, 4]

Contiene todos los parámetros en cada paso

Contiene los mejores parámetros según lo determinado por el menor Chi ^ 2

Valor de chi-cuadrado en cada paso

Recetas numéricas, tercera edición (sección 15.8) Wikipedia

Modele una curva de luz de eclipse de tipo arbitrario a una serie de tiempo de flujo, asumiendo una excentricidad cero y un período CONOCIDO fijo.

el tiempo de conjunción para cada eclipse individual (Tc),

el parámetro de impacto (b = a cos i / Rstar)

el radio estelar en unidades de distancia orbital (Rstar / a),

Relación de radio planeta-estrella (Rp / Rstar),

profundidad del eclipse (adimensional),

func & # 8211 función para adaptarse a los datos presumiblemente transit.occultuniform ()

Ninguno, si el período está incluido en los parámetros

Tiempo de observaciones (mismas unidades que Tc y per)

Modele una curva de luz de un eclipse de tipo arbitrario a una serie de tiempo de flujo, asumiendo una excentricidad cero y una órbita CONOCIDA fija.

el tiempo de conjunción para cada eclipse individual (Tc),

profundidad del eclipse (adimensional),

tparams & # 8211 (4) -secuencia de parámetros de tránsito para MANTENER FIJO:

el parámetro de impacto (b = a cos i / Rstar)

el radio estelar en unidades de distancia orbital (Rstar / a),

Relación de radio planeta-estrella (Rp / Rstar),

período orbital (mismas unidades que Tc y t)

func & # 8211 función para adaptarse a los datos presumiblemente transit.occultuniform ()

t & # 8211 matriz numpy. Hora de las observaciones.

Modele una curva de luz de un eclipse de tipo arbitrario a una serie de tiempo de flujo, asumiendo una excentricidad cero y una órbita CONOCIDA fija.

los efectos de sensibilidad multiplicativa (c0,. c13), que afectan a cada bit de datos como (1. + c_j) *. SIN EMBARGO, para evitar que estos se degeneren con el nivel de flujo estelar general, solo 13 de estos son parámetros libres: el primero (c0) siempre se establecerá de manera que el producto PROD_j (1 + c_j) = 1.

el tiempo de conjunción para cada eclipse individual (Tc),

profundidad del eclipse (adimensional),

tparams & # 8211 (4) -secuencia de parámetros de tránsito para MANTENER FIJO:

el parámetro de impacto (b = a cos i / Rstar)

el radio estelar en unidades de distancia orbital (Rstar / a),

Relación de radio planeta-estrella (Rp / Rstar),

período orbital (mismas unidades que Tc y t)

func & # 8211 función para adaptarse a los datos presumiblemente transit.occultuniform ()

t & # 8211 matriz numpy. Hora de las observaciones.

Debe ser de tamaño (14xN), o si es un vector 1D, entonces t.reshape (14, N) debe reformatear correctamente los datos en flujos de datos en 14 posiciones separadas.

Modele una curva de luz planetaria completa: tránsito, eclipse y variación de fase (sinusoidal). Acepte tiempos de centro de eclipse y tránsito independientes, pero de lo contrario asuma una órbita circular (y por lo tanto tránsitos y eclipses simétricos).

params & # 8211 (M + 10 + N) -secuencia con lo siguiente:

variaciones de sensibilidad para cada uno de los M canales (por ejemplo, SST / MIPS). Esto supone que los tiempos en & # 8216t & # 8217 están en el orden (T_ <1,0>,. T_ <1, M-1>,. T_ <2,0>,.). Los parámetros afectan los datos de forma multiplicativa como (1 + c_i), con la restricción de que Prod_i (1 + c_i) = 1.

el tiempo de conjunción para cada tránsito individual (T_t),

el tiempo de conjunción para cada eclipse individual (T_e),

el parámetro de impacto (b = a cos i / Rstar)

el radio estelar en unidades de distancia orbital (Rstar / a),

Relación de radio planeta-estrella (Rp / Rstar),

flujo planetario máximo (lado caliente) (Fbright),

flujo planetario mínimo (lado frío) (Fdark),

Desplazamiento de la curva de fase (phi_0 0 implica un flujo máximo cerca del eclipse)

parámetros de oscurecimiento de las extremidades (según tfunc):

Coeficientes cuadráticos de oscurecimiento de las extremidades gamma1, gamma2 y # 8211

coeficientes de oscurecimiento de extremidades no lineales c1, c2, c3, c4 & # 8211

período y efemérides. Si nchan & gt0, t debería tener la forma (nchan, L), o una versión .ravel () ed de eso.

número de parámetros de oscurecimiento de las extremidades, estos deben ser los últimos valores de params.

número de perturbaciones de sensibilidad del canal fotométrico estos deben ser los primeros valores & # 8216nchan & # 8217 de los parámetros.

Esto debe actualizarse para usar las nuevas opciones & # 8216transitonly & # 8217 en t2z ()

Modele una curva de luz de tránsito de tipo arbitrario a una serie de tiempo de flujo, asumiendo una excentricidad cero y un período CONOCIDO fijo.

el tiempo de conjunción para cada tránsito individual (Tc),

el parámetro de impacto (b = a cos i / Rstar)

el radio estelar en unidades de distancia orbital (Rstar / a),

Relación de radio planeta-estrella (Rp / Rstar),

los parámetros de oscurecimiento de las extremidades u1 y u2:

YA SEA:

Coeficientes cuadráticos de oscurecimiento de las extremidades gamma1, gamma2 y # 8211

O:

coeficientes de oscurecimiento de extremidades no lineales c1, c2, c3, c4 & # 8211

O:

Nada en absoluto (es decir, solo 5 parámetros).

func & # 8211 función para ajustarse a los datos, p. ej. transit.occultquad

por & # 8211 flotador. Período orbital, en días.

t & # 8211 matriz numpy. Hora de las observaciones.

Modele una curva de luz de tránsito de tipo arbitrario a una serie de tiempo de flujo, asumiendo excentricidad cero y un período CONOCIDO fijo, y asumiendo datos de tipo MIPS con 14 dependencias de sensibilidad separadas.

params & # 8211 (14 + 5 + N) -secuencia con lo siguiente:

los efectos de sensibilidad multiplicativa (c0,. c13), que afectan a cada bit de datos como (1. + c_j) *. SIN EMBARGO, para evitar que estos se degeneren con el nivel de flujo estelar general, solo 13 de estos son parámetros libres: el primero (c0) siempre se establecerá de manera que el producto PROD_j (1 + c_j) = 1.

el tiempo de conjunción para cada tránsito individual (Tc),

el parámetro de impacto (b = a cos i / Rstar)

el radio estelar en unidades de distancia orbital (Rstar / a),

Relación de radio planeta-estrella (Rp / Rstar),

flujo estelar (F0),

los parámetros de oscurecimiento de las extremidades u1 y u2:

YA SEA:

Coeficientes cuadráticos de oscurecimiento de las extremidades gamma1, gamma2 y # 8211

O:

coeficientes de oscurecimiento de extremidades no lineales c1, c2, c3, c4 & # 8211

O:

Nada en absoluto (es decir, solo 5 parámetros).

func & # 8211 función para ajustarse a los datos, p. ej. transit.occultquad

por & # 8211 flotador. Período orbital, en días.

t & # 8211 matriz numpy. Hora de las observaciones.

Debe ser de tamaño (14xN), o si es un vector 1D, entonces t.reshape (14, N) debe reformatear correctamente los datos en flujos de datos en 14 posiciones separadas.

Modele una curva de luz de tránsito de tipo arbitrario a una serie de tiempo de flujo, asumiendo una excentricidad cero.

Tc, el tiempo de conjunción para cada tránsito individual,

P, el período orbital (en unidades de & # 8220t & # 8221)

i, la inclinación orbital (en grados 90 es de canto)

R * / a, el radio estelar en unidades de distancia orbital,

Rp / R *, relación de radio planeta-estrella,

los coeficientes del polinomio NP para normalizar los datos.

YA SEA:

F0 & # 8211 flujo estelar _ONLY_ (establecer NP = 1)

O:

[p_1, p_2,. p_ (NP)] & # 8211 coeficientes para polyval, que se utilizará como: numpy.polyval ([p_1,.], t)

los parámetros de oscurecimiento de las extremidades de NL (cf. Claret + 2011):

YA SEA:

u & # 8211 oscurecimiento lineal de extremidades (set NL = 1)

O:

a, b & # 8211 oscurecimiento cuadrático de las extremidades (establecer NL = 2)

O: c, d & # 8211 oscurecimiento de extremidades de raíz cuadrada (establecer NL = -2)

dónde

Yo (mu) = 1 - c * (1 - mu) - d * (1 - mu ^ 0.5)

O: a1, a2, a3, a4 & # 8211 oscurecimiento de extremidades no lineal (establecer NL = 4)

dónde

I (mu) = 1 - a1 * (1 - mu ^ 0.5) - a2 * (1 - mu) - a3 * (1 - mu ^ 1.5) - a4 * (1 - mu ^ 2)

O:

Nada en absoluto & # 8211 oscurecimiento uniforme de las extremidades (establecer NL = 0)

factores multiplicativos para los vectores de estado NS (pasados ​​como & # 8216svs & # 8217)

t & # 8211 matriz numpy. Hora de las observaciones.

Esto solo importa para el oscurecimiento de extremidades no lineal de cuatro parámetros y de raíz cuadrada. Si & # 8220smallplanet & # 8221 es True, utilice occultnonlin_small () . De lo contrario, use occultnonlin ()

Si se cumplen ciertas condiciones (ver más abajo), la curva de luz de tránsito resultante se escala por este factor. Al ajustar, establezca errscale en un valor muy grande (por ejemplo, 1e6) para usarlo como un filtro de bordes duros extremadamente tosco.

Una mejor manera sería incorporar un ajuste restringido.

svs: Ninguno o lista de matrices 1D NumPy

Vectores de estado, aplicados con los coeficientes definidos anteriormente. Para evitar degeneraciones con los términos polinomiales NP (especialmente el término de desplazamiento constante), es preferible que todos los vectores de estado se resten de medias.

Si se usa oscurecimiento de extremidades cuadrático o lineal (L.D.), la suma de L.D. los coeficientes no pueden exceder 1. Si lo hacen, esta rutina normaliza los coeficientes [g1, g2] a: g_i = g_i / (g1 + g2).

Si & # 8220Rp / R * & # 8221, o & # 8220R * / a & # 8221 son & lt 0, se establecerán en cero.

Si & # 8220P & # 8221 & lt 0.01, se establecerá en 0.01.

Si & # 8220inc & # 8221 & gt 90, se establecerá en 90.

Agregue un modelo de neblina ad-hoc simple al espectro de radio de un planeta # 8217s.

params [0]: valor de compensación para el modelo de neblina params [1]: valor de pendiente (= alfa * H) para el modelo de neblina params [2]: factor de escala para rmod

neblina = params [1] * np.log (wmod) + params [0] newmod = vstack ((rmod * params [2], neblina / (planet.rstar * an.rsun))). max (0)

Cuadrícula de longitud de onda del espectro del modelo & # 8216rmod & # 8217

Radio del planeta en cada longitud de onda especificada en & # 8216wmod & # 8217

Radio estelar, en unidades de radios solares.

Si es True, devuelva el nuevo espectro del modelo.

Si es False, devuelve el valor promediado del filtro del espectro resultante para cada perfil de filtro especificado en & # 8216filts & # 8217.

Cuadrícula de longitud de onda de flujo estelar, en las mismas unidades que wmod (¡pero no necesariamente del mismo tamaño!).

Densidad de flujo de fotones del flujo estelar en longitudes de onda especificadas en w_star.

Debido a que esta rutina hace uso de la función numpy.interp, usar una cuadrícula de modelo de entrada más pequeña puede acelerar significativamente las cosas.

Nonlinear limb-darkening light curve cf. Section 3 of Mandel & Agol (2002).

z – sequence of positional offset values

p0 – planet/star radius ratio

cn – four-sequence. nonlinear limb darkening coefficients

Scipy is much faster than mpmath for computing the Beta and Gauss hypergeometric functions. However, Scipy does not have the Appell hypergeometric function – the current version is not vectorized.

Nonlinear limb-darkening light curve in the small-planet approximation (section 5 of Mandel & Agol 2002).

z – sequence of positional offset values

p – planet/star radius ratio

cn – four-sequence nonlinear limb darkening coefficients. Si

a shorter sequence is entered, the later values will be set to zero.

I had to divide the effect at the near-edge of the light curve by pi for consistency this factor was not in Mandel & Agol, so I may have coded something incorrectly (or there was a typo).

Quadratic limb-darkening light curve cf. Section 4 of Mandel & Agol (2002).

z – sequence of positional offset values

p0 – planet/star radius ratio

quadratic limb darkening coefficients. (c1=c3=0 c2 = gamma[0] + 2*gamma[1], c4 = -gamma[1]). If only a single gamma is used, then you’re assuming linear limb-darkening.

If True, in addition to the light curve return the uniform-disk light curve, lambda^d, and eta^d parameters. Using these quantities allows for quicker model generation with new limb-darkening coefficients – the speed boost is roughly a factor of 50. See the second example below.

In writing this I relied heavily on the occultquad IDL routine by E. Agol and J. Eastman, especially for efficient computation of elliptical integrals and for identification of several apparent typographic errors in the 2002 paper (see comments in the source code).

From some cursory testing, this routine appears about 9 times slower than the IDL version. The difference drops only slightly when using precomputed quantities (i.e., retall=True). A large portion of time is taken up in ellpic_bulirsch() y ellke() , but at least as much is taken up by this function itself. More optimization (or a C wrapper) is desired!

Uniform-disk transit light curve (i.e., no limb darkening).

units of the stellar radius.

p – scalar planet/star radius ratio.

If True, return (1 - occultuniform(z, p))

Simple toy model for Pixel-Level-Decorrelation testing.

vecs are: np.vstack((phat.T, othervecs.T)) of shape (Nvec x Nobs)

params are [eclipseCenter, . then all the PLD coefs]

Run JKTEBOP simulation from the command line, and return results.

Ver createJKTEBOPinput() for a description of the inputs. For now, only “Task 2” can be run through this Python interface.

Full path to the JKTEBOP executable.

Orbital period of the binary in days, used to compute the output timestamps. If not entered, output ‘time’ will be orbital phase.

Name of the ‘input file’ to be created by this routine. If no value is passed, the routine will create a file named ‘testX.in’, where “X” is a random, long, integer.

Name of the ‘output file’ to be created by JKTEBOP. If no value is passed, the routine will create a file named “textX.out”

If true, overwrite any and all existing files. Otherwise: don’t!

See the JKTEBOP documentation for more details. JKTEBOP is currently available online at http://www.astro.keele.ac.uk/

Enable light-curve simulations (Tasks 3-9).

Placeholder for backwards compatibility with my old code. The function is now called occultnonlin_small() .

Convert HJD (time) to transit crossing parameter z.

tt – scalar. transit ephemeris

per – scalar. planetary orbital period (in days)

inc – scalar. orbital inclination (in degrees)

hjd – scalar or array of times, typically heliocentric or

ars – scalar. ratio a/Rs, orbital semimajor axis over stellar radius

ecc – scalar. orbital eccentricity.

longperi=0 scalar. longitude of periapse (in radians)

If False, both transits and occultations have z=0. But this means that other routines (e.g., occultuniform() ) model two eclipse events per orbit. As a kludge, set transitonly=True – it sets all values of ‘z’ near occultations to be very large, so that they are not modeled as eclipses.

Same as transitonly, but for occultations (secondary eclipses)

At zero eccentricity, z relates to physical quantities by:

z = (a/Rs) * sqrt(sin[w*(t-t0)]**2+[cos(i)*cos(w*[t-t0])]**2)

Placeholder for my old code the new function is called occultuniform() .

Convert transit crossing parameter z to a time offset for circular orbits.

per – scalar. planetary orbital period

inc – scalar. orbital inclination (in degrees)

ars – scalar. ratio a/Rs, orbital semimajor axis over stellar radius


Line list based Gaussian spectral model¶

A spectral model based on Gaussian profiles and a line list.

This class provides a simple spectral model based on a number of Gaussian lines, whose strength may be fitted individually. Note that the EW of the lines is given by: A`*`lineScale , where A is the area of the n-th Gaussian. The scale parameter does not influence the EW of the Gaussians.

The unit of the EWs given in the lineList needs to be the same as the wavelength units.

  • lineScale - A common scaling of the area of todas líneas.
  • scale - A scaling of the completo spectrum.
  • eps - Linear limb-darkening coefficient.
  • vrad - Radial velocity [km/s].
  • vsini - Projected stellar rotational velocity [km/s].
  • A - The amplitudes (area) parameters of the individual Gaussians.
  • sig - The standard deviations of the individual Gaussian.
  • mu - The position of the individual Gaussians.

If True (default), restrictions will be applied, which prevent emission lines in the spectrum.

lineList : array

An array with either two or three columns. The first column given the position of the lines, the second gives the EW of the lines, and the third—if present—gives the depth of the lines. The depth is the maximal depression of the continuum, e.g., a value of 0.96 means that the center of the line of 4% below the continuum. If the depth is given, the width of the individual Gaussians is determined from it, unless the uniSig is specified.

uniSig : float, optional

Use “unified sigma”, i.e., the same width for all lines. Note that this flag overrules the “depth” column in the lineList , if it has been specified.

modelBinsize : float, optional

Internally, the model should be calculated on a finer grid than the actual spectrum. This parameter specifies the used bin size, which is 0.005 by default.

useFastRB : boolean, optional

Use the “fast” rotational broadening algorithm. This algorithm uses a wavelength-independent broadening kernel, which is considerably faster than considering the wavelength dependence. Setting this flag to False is necessary if you use very long wavelength ranges by default it is True.

verbose : boolean, optional

If True, the class print the current parameters during the evaluation.

MCMCautoParameters (ranges[, picky, …]) Convenience function to generate parameters for MCMC fit.
addConditionalRestriction (*args) Define a conditional restriction.
assignValue (specval) Assign new values to variables.
assignValues (specval) Assign new values to variables.
autoFitMCMC (x, y, ranges[, picky, stepsize, …]) Convenience function to using auto-generated sampling parameters in MCMC.
availableParameters () Provides a list of existing parameters.
delRestriction (parName) Delete restriction
description ([parenthesis]) Returns a description of the model based on the names of the individual components.
errorConfInterval (par[, dstat, statTol, …]) Calculate confidence interval for a parameter.
evaluate (x) Calculates the model for current parameters.
fit (x, y[, yerr, X0, minAlgo, mAA, …]) Carries out a fit.
fitEMCEE ([x, y, yerr, nwalker, priors, …]) MCMC sampling using emcee package.
fitMCMC (x, y, X0, Lims, Steps[, yerr, …]) Carry out MCMC fit/error estimation.
freeParamNames () Get the names of the free parameters.
freeParameters () Get names and values of free parameters.
freeze (specifiers) Consider variables free to float.
frozenParameters () Get names and values of frozen parameters.
getRelationsOf (specifier) Return relations of a variable.
getRestrictions () Get all restrictions.
hasVariable (specifier) Determine whether the variable exists.
numberOfFreeParams () Get number of free parameters.
numberOfLines () Get the number of lines in the model.
parameterSummary ([toScreen, prefix, sorting]) Writes a summary of the parameters in text form.
parameters () Obtain parameter names and values.
relate (dependentVar, independentVars[, func]) Define a relation.
removeConditionalRestriction (*args) Remove an existing conditional constraint.
renameVariable (oldName, newName) Change name of variable.
restoreState (resource) Restores parameter values from file or dictionary.
saveState (*args, **kwargs) Save the state of the fitting object.
setObjectiveFunction ([miniFunc]) Define the objective function.
setPenaltyFactor (penalFac) Change the penalty factor.
setRestriction (restricts) Define restrictions.
setRootName (root[, rename]) Define the root name of the model.
showConditionalRestrictions (**kwargs) Show conditional restrictions.
steppar (pars, ranges[, extractFctVal, quiet]) Allows to step a parameter through a specified range.
thaw (specifiers) Consider variables fixed.
thawLineStrengths ([wlmin, wlmax]) Thaw line strengths.
thawLineWidths ([wlmin, wlmax]) Thaw line widths.
untie (parName[, forceFree]) Remove all relations of parameter parName, i.e., the parameter is not dependend on other parameters.
updateModel () Recalculate the model using current settings.
evaluate ( X ) ¶

Calculates the model for current parameters.

The “model” is calculated on a wavelength axis with binning specified by the modelBinsize parameter.

The line positions are Doppler shifted and the resulting model is rotationally broadened. Finally, the entire model is multiplied by the scale parameter to account for a global normalization.

The wavelengths at which to calculate the model.

The model evaluated at the specified positions.

Get the number of lines in the model.

Number of Gaussian in the model.

Thaws parameters of the from A, where n is the number of the Gaussian component. By default all such parameters will be thawed. The selection may, however, be influenced by specifying wlmin and wlmax .

If specified, only the strength of lines at wavelengths larger than this limits will be thawed.

wlmax : float, optional

If specified, only the strength of lines at wavelengths below this limit will be thawed.

A list of thawed parameter names.

Thaws parameters of the from sig, where n is the number of the Gaussian component. By default all such parameters will be thawed. The selection may, however, be influenced by specifying wlmin and wlmax .

If specified, only the strength of lines at wavelengths larger than this limits will be thawed.

wlmax : float, optional

If specified, only the strength of lines at wavelengths below this limit will be thawed.


How to calculate the limb darkening $mu$ value - Astronomy

Tools for Exoplanetary Transits around Host Stars

version: 2.0.0

ExoTETHyS is an open-source package for modeling exoplanetary transits, eclipsing binaries and related phenomena.
It includes various subpackages with different functions. We remind to the user manuals and relevant papers (see below) for their rationale and detailed instructions. You can also consult the wiki with the answers to frequently asked questions (FAQ).

These instructions will get you to have a version of the package on your computer up and running.

The code is consistent with python2/3.
The required python libraries are specified in the file requirements.txt.

1.2. Download and installation

Type on the terminal: pip install exotethys
This command installs the latest stable version of the package.

The most updated version of the package is available on GitHub. As this version is constantly under development, stability is not guaranteed.

To download and install with a single command, type on the terminal
pip install git+git://github.com/ucl-exoplanets/ExoTETHyS .

To download, then (optionally) install:

Go to https://github.com/ucl-exoplanets/ExoTETHyS,
then click the green button Clone or download,
then click Download ZIP to download the whole repository.

Access the root folder from terminal (you may need to unzip first).

After accessing the root folder from terminal, type pip install . to install the package.

Otherwise, you could import the package without installation, if you run python from the root folder.

To test the installation, you can type:

If you had already installed/used an older version of ExoTETHyS (v1.x.y), you should delete the old database folder to avoid incompatibility issues.

The database folder should be located in your home: /PATH_HOME/.exotethys . You could locate and remove this folder.
This operation can also be performed by using the manage_database subpackage of ExoTETHyS, as follows:

1.3. Quick how to run the subpackages

SAIL — Stellar Atmosphere Intensity Limb
This subpackage can compute the stellar limb-darkening coefficients for requested targets.

TRIP — Transit Ring-Integrated Profile
This subpackage can compute transit light-curves by using stellar specific intensities rather than (approximate) limb-darkening coefficients.

BOATS — Bias in the Occultation Analysis of Transiting Systems
This subpackage can compute the potential bias in transit/eclipse depth due to neglecting the exoplanetary flux and/or its variation with the orbital phase (common approximations). It also provides the predicted transit/eclipse depth values with the photon noise limited error bars.

manage_database
This subpackage can be used to manage the .exotethys folder that is created in your home the first time that a file is downloaded to perform a calculation. It contains 3 functions to list, copy and remove the items in this folder. Consult the manage_database manual.

This package is an open source project under GNU General Public License v3.

If you use this package for your research, please consider citing the following references:

Morello, G., Claret, A., Martin-Lagarde, M., Cossou, C., Tsiaras, A., & Lagage, P.-O. 2020, The ExoTETHyS package: Tools for Exoplanetary Transits around Host Stars, AJ, 159, 75
(Pivotal paper for the SAIL and TRIP subpackages)

Morello, G., Claret, A., Martin-Lagarde, M., Cossou, C., Tsiaras, A., & Lagage, P.-O. 2020, ExoTETHyS: Tools for Exoplanetary Transits around Host Stars, JOSS, 5, 1834
(First official software release)

Morello, G., Zingales, T., Martin-Lagarde, M., Gastaud, R., & Lagage, P.-O. 2020, Phase-curve pollution of exoplanet transmission spectra, under review
(Pivotal paper for the BOATS subpackage)

Martin-Lagarde, M., Morello, G., Lagage, P.-O., Gastaud, R., & Cossou, C. 2020, Phase-curve pollution of exoplanet transit depths, AJ, 160, 197
(First use of the BOATS subpackage)

If you adopt the built-in stellar model grids, please consider citing the relevant references:


1 Answer 1

Yes! This type of reasoning, called transit photometry, is used frequently in the study of exoplanets. The Kepler mission was designed primarily to identify exoplanets using this method, by identifying stars which exhibit the kind of periodic fluctuations in brightness that can be associated with the periodic occlusion of the star by an orbiting planet.

Calculating the precise amount a star's brightness dims from an occluding planet can be tricky. Stars don't have a perfectly uniform luminosity (thanks to limb darkening) and planets aren't perfectly spherical, so the luminosity will depend on exactly where the transit is occurring relative to the star.

Putting these limitations aside, though, you can get a pretty decent estimate of how much a star's luminosity drops from a fully transiting planet simply by looking at the ratio of the star's surface area that's covered from the perspective of the viewer. Let's model the Sun naively as a 2D circle emitting light directly towards Earth. When 16% of the Sun is covered by a Jupiter transit like you described, only 84% of the light from the Sun would still reach the Earth. This, in turn, means that the luminosity of the sun would be 84% of the pre-transit value.


Clouds and Aerosols

Stanley Q. Kidder , Thomas H. Vonder Haar , in Satellite Meteorology , 1995

8.2.1 Threshold Techniques

The oldest ( Arking, 1964 Koffler et al., 1973 ), simplest, and still most frequently used technique for objectively extracting cloud information from digital satellite images is the threshold technique. Here a visible brightness or infrared temperature threshold is set such that if a pixel is brighter or colder than the threshold, the pixel is assumed to be cloud covered. The fractional area covered with cloud is simply the ratio of the number of cloudy pixels to the total number of pixels. The cloud height can be determined by comparing the infrared temperature of the pixel with a sounding. The simplicity of this technique makes it attractive. Thresholding is one of the means of filtering clouds from data to be used in sea surface temperature (SST) retrievals ( McClain et al. 1985 ). In practice, however, two complications arise: (1) the problem of clouds smaller than the satellite scan spot and (2) the problem of how to set the threshold.

Shenk and Salomonson (1972) investigated the effects of sensor spatial resolution on determination of cloud amount using the threshold technique. Consider an ideal scene in which only a uniform background (radiance Lclr) and uniform cloud (radiance Lcld) appear. Pixels that are partly filled with cloud will have radiances between Lclr y Lcld. If the threshold is set at nearly Lclr, then any cloud in a pixel will cause it to appear 100% cloudy, which will result in an overestimate of cloud amount. Figure 8.3a shows cloud amount retrieved from simulated satellite data as a function of the ratio (R) of the mean cloud area to the area of a satellite scan spot. The line labels are the true cloud amount. For R = 100 (cloud diameter approximately 10 times the diameter of a scan spot) and beyond, there is good agreement between the retrieved and true cloud amounts. For clouds approximately the same size as the scan spot, however, a scene with 40% true cloud amount appears to be completely overcast. Alternately, if the threshold is at nearly Lcld, only completely cloudy pixels will be classified as cloudy, partly cloudy pixels will be classified as clear, and cloud amount will be underestimated.

FIGURE 8.3 . Retrieved cloud amount versus the ratio of mean cloud area to pixel area. The line labels indicate true cloud amount. (a) The threshold is nearly Lclr. (b) Two thresholds, with pixels falling between the thresholds being counted as 50% cloud covered.

[After Shenk and Salomonson (1972) .] Copyright © 1972

A less biased estimate of cloud amount can be obtained by setting two thresholds, one at nearly Lclr and the other at nearly Lcld. Pixels that are between the two thresholds are counted as 50% cloud covered. Figure 8.3b shows the effects of this scheme. The large positive bias in cloud amount has disappeared, and for R greater than about 10 (cloud diameter more than 10 times the scan spot diameter), reasonable cloud amounts are retrieved. Obviously, high-spatial-resolution radiometers are desirable for cloud detection.

A related problem, which has not as yet received adequate treatment in satellite meteorology, concerns the estimation of cloud amount in a field of broken clouds. Because broken clouds radiatively interact with each other, and because for nonnadir viewing the satellite sees the sides as well as the tops of the clouds, effective cloud amount in fields of broken clouds is not necessarily proportional to the fractional area covered with cloud ( Harshvardhan and Weinman, 1982 Weinman and Harshvardhan, 1982 ).

Setting the threshold is the chief difficulty in threshold techniques. The problem is that the threshold is a function of many variables: surface type (land, ocean, ice), surface conditions (snowcover, vegetation, soil moisture), recent weather (which changes surface temperature and reflectance), atmospheric conditions (haze, temperature inversions), season, time of day, and even satellite–Earth–sun geometry (bidirectional reflectance, sun glint). In the past, thresholds have been set manually that is, an analyst views each image to be processed and picks an area that appears clear. Pixels that are a few percent brighter or a few degrees colder than the background are classified as cloud-covered. Manual setting of the threshold is, however, incompatible with automated processing.

Today, thresholds are more likely to be set by examining the temporal or spatial variance of observed radiances. Spatial variance methods will be discussed below. Here we discuss the temporal variance approach.

Determination of clear-sky radiances is critical to the success of the threshold technique because clouds are assumed to perturb the clear-sky radiances. Suppose that images for the last several (

15) days are analyzed to select the minimum visible albedo and maximum infrared radiance during the period. 9 Except in relatively unusual circumstances, such as regions which are cloud-covered for the entire period, regions in which snow has fallen, or regions that experience large day-to-day variations in surface temperature, these extremes come close to clear-sky values. Spatial smoothing of the results will reduce noise caused by choosing extreme values, but care must be taken in high gradient areas such as near coastlines. Minnis and Harrison (1984) have used a sophisticated version of this approach.

It must be noted that in some situations, it is difficult to detect clouds with visible and 11-μm data using thresholding (or other) techniques. Low clouds over ice or snow, for example, present no contrast in either visible imagery, because both ice and snow have similar albedos, or in infrared imagery, because both have similar temperatures (see Chapter 5 ), Cirrus is generally easier to detect with infrared than with visible data, yet cirrus can be thin enough to be warmer than an infrared threshold. Small broken clouds can be widely scattered enough to escape detection. Finally, multiple levels of cloud present problems for all cloud retrieval techniques because of obscuration of the lower clouds by the upper clouds and because some pixels will contain both levels and perhaps the surface as well.

Except in combination with radiative transfer techniques (see below), threshold techniques generally are limited to determining cloud amount (by calculating the fraction of pixels that are cloudy) and to estimating the cloud-top height by comparing the infrared equivalent blackbody temperature with a sounding.


Resumen

In the paper, we calculate the absorbed flux of the mutual irradiation of the components in detached binary systems, and obtain the surface temperature distribution on the components. The maximum temperature difference over the surface is a measure of the deviation between isothermal and equipotential surfaces. For 33 late-type binary systems with known elements, we evaluate this maximum difference. The result shows that the isothermal-equipotential deviation is always larger in the cooler than in the hotter components. This result supports Zhou and Leung's idea that the large difference between “star-spots” and sunspots is due to cyclones and anticyclones. The effect of limb darkening (amounting to over 18% and always larger in the hotter component) is included in the consideration.