Introduction | Structures planétaires | Observables | Techniques et méthodes | Lieux de vie | Auteurs | Boite à outils |
WASP-80 : Les transits |
Que faut-il faire pour essayer de voir un transit dans ces données ?
Ici, on a la magnitude (ou le flux) du système en fonction du temps. Pour pouvoir voir un transit, et c'est là toute la puissance de cette méthode de détection, il va falloir sommer les différents transits potentiels qu'il y a dans ces données. Pour cela, il faut trouver la bonne période sur laquelle sommer les données, et peut-être qu'alors avec une somme de plusieurs transits, on verra effectivement une courbe de lumière typique avec une baisse de flux quand la planète passe devant son étoile.
On peut essayer par exemple de sommer les signaux sur une période de 2 jours. En python cela donne :
from PyAstronomy.pyasl import foldAt
best_period=2#jours
phases = foldAt(bjd, best_period)
sortIndi = np.argsort(phases)
phases = phases[sortIndi]*best_period
mag = mag[sortIndi]
plt.plot(phases, mag)
On ne voit toujours rien. Idéalement, il faudrait pouvoir faire cela pour un très grand nombre de périodes et visualiser le résultat jusqu'à l'obtention potentielle d'une baisse de flux à un endroit de la courbe (i.e. voir le transit). C'est la méthode que l'on va utiliser, mais bien sûr, il est impossible de visualiser des millions de courbes à l'oeil et il faut trouver un bon indicateur que l'ordinateur puisse tester lui-même pour nous dire quand il y a effectivement une baisse de flux visible et donc un transit.
La méthode la plus couramment utilisée dans le domaine de la recherche est la méthode BLS (pour Box Least Square, développée par Kovacs et al. 2002). L'idée est de dire qu'un transit peut être en première approximation modélisé par une fonction porte (fonction rectangulaire). Un transit est en effet bien plus proche d'une fonction porte que d'un sinus ou cosinus car les variations lors de l'entrée ou de la sortie du transit qui peuvent être non rectangulaires ne représentent qu'une petite partie du signal et le reste du transit est plutôt plat. La décomposition en série de Fourier ne fournirait pas une fréquence donnée dominante mais plutôt un ensemble de fréquences alors que la fonction porte ne requiert qu'un terme pour bien modéliser le signal, d'où l'avantage.
On crée alors un modèle simple de fonction porte avec trois paramètres : sa profondeur, sa longueur (durée du transit) et sa phase (la date où le transit a lieu). On fait ensuite tourner le modèle sur un très grand nombre de périodes. Pour chaque période testée, l'algorithme BLS essaye de trouver les meilleurs paramètres (profondeur, longueur, phase) du modèle pour expliquer les observations. L'algorithme compare le meilleur modèle aux données et estime alors la vraisemblance (en log) du modèle en question (par exemple par une méthode des moindres carrés) et crée un périodogramme qui donne la vraisemblance du modèle en fonction de la période. On peut alors voir si certaines périodes paraissent plus vraisemblables que d'autres. Les pics dans le périodogramme indiquent la présence de planètes en transit ou du bruit non pris en compte dans le pré-traitement (detrending). Il faut faire attention aux faux-positifs avec cette méthode et les repérer est un champ actif de recherche dans lequel nous ne rentrerons pas en détails.
Trouvez la période du transit et sa profondeur dans les données de WASP-80.
Vérifiez ces valeurs en sommant les données initiales sur la période trouvée et en affichant le flux en fonction de la phase (vous pouvez utiliser le code de la question 1 ci-dessus pour sommer les différents transits sur une période donnée). Vous produirez aussi une deuxième courbe où vous moyennerez le signal dans des bins temporels d'environ 15 minutes pour avoir une courbe de transit plus lisse.
En faisant ce travail , on trouve le diagramme de la figure ci-jointe. :
Maintenant, on reconnaît une courbe de transit typique. On peut même zoomer sur la phase de transit pour obtenir la figure ci-jointe.
On voit alors que la durée du transit totale est inférieure à 0.1 jours, i.e. <2.4h. Pour obtenir la courbe rouge rebinnée en python, on peut écrire un code ad hoc ou procéder ainsi :
from scipy.stats import binned_statistic
bin_means = binned_statistic(phases, mag, bins=300)
bin_means2 = binned_statistic(phases, phases, bins=300)
plt.plot(bin_means2[0], bin_means[0],color='red',linewidth=5)