Pular para conteúdo

A2. Como as missões fazem vetting

Nível avançado · semanas 3–6 · cerca de 16 horas

Nesta aula você vai aprender

  • O que o Data Validation do Kepler e do TESS calcula para cada sinal (Twicken et al. 2018).
  • Como o Robovetter do Kepler DR25 decide e, principalmente, como mede a própria confiabilidade (Thompson et al. 2018).
  • Como nasce um TOI e quem decide o que ele é (Guerrero et al. 2021).
  • O que é o catálogo de binárias eclipsantes do TESS (Prša et al. 2022) e o bug real que ele causou no PlanetHunter.
  • Como funcionam imagem-diferença e centróides, e o casamento trânsito a trânsito que nasceu do caso HD 23472.

O PlanetHunter não inventou o vetting. Quase todos os testes dele têm um ancestral nos pipelines das missões Kepler e TESS. Estudar esses ancestrais serve a dois propósitos: entender por que cada teste existe e enxergar o que ainda falta no projeto.

1. Data Validation: a bateria de diagnósticos

O pipeline científico do Kepler, e depois o do TESS (operado pelo SPOC, Science Processing Operations Center), tem duas etapas principais. A primeira, a busca, produz TCEs (Threshold Crossing Events): sinais periódicos que passaram de um limite de detecção. A segunda, o Data Validation (DV), ajusta um modelo de trânsito a cada TCE e roda uma bateria de diagnósticos. Twicken et al. (2018), PASP 130, 064502, descrevem a arquitetura do DV do Kepler. O SPOC herdou essa arquitetura para o TESS, e os relatórios DV de cada TCE do TESS estão públicos no MAST e linkados nas páginas de alvo do ExoFOP.

Os principais diagnósticos do DV:

Diagnóstico Pergunta Ancestral de qual teste do PlanetHunter
Profundidade ímpar/par Os trânsitos alternados têm a mesma profundidade? odd_even
Secundário fraco Há uma queda em outra fase? secondary, secondary_scan
Discriminação de binária pelo período Outro TCE da mesma estrela tem período igual ou múltiplo? independence (em parte)
Movimento do centróide O centro de luz da abertura se desloca durante o trânsito? centroid (MOM_CENTR)
Centróide da imagem-diferença Onde está a fonte do que apagou? tpf_difference_image
Fantasma óptico O sinal é mais forte no halo em volta da estrela do que no núcleo da abertura? não tem
Teste de bootstrap Qual a probabilidade de o ruído sozinho produzir esse SNR? parcialmente, pelo piso de ruído em other_sectors
Contaminação por "rolling band" Os trânsitos coincidem com um padrão de ruído eletrônico conhecido do detector? não tem (é específico do Kepler)

O DV não decide. Ele produz números e gráficos para alguém decidir. No Kepler, essa decisão foi primeiro humana e depois automatizada.

2. O Robovetter do Kepler DR25

Thompson et al. (2018), ApJS 235, 38, apresentam o catálogo final do Kepler (DR25), com cerca de 4 000 candidatos a planeta. O coração do artigo é o Robovetter: uma árvore de decisão que lê os diagnósticos de cada TCE e atribui uma de quatro marcas de falso positivo:

  • NT (Not Transit-like): não parece trânsito. Variabilidade, sistemático, forma estranha.
  • SS (Stellar eclipse): eclipse de estrela. Secundário significativo, ímpar/par diferente, formato em V.
  • CO (Centroid Offset): a fonte está deslocada do alvo.
  • EC (Ephemeris match indicates Contamination): o período e a época casam com os de outra estrela conhecida do campo, o que indica contaminação.

Sem nenhuma marca, o TCE vira candidato.

A lição mais importante do Robovetter

Não são os testes. É a medição. A equipe do Kepler mediu duas coisas que todo sistema de vetting deveria medir:

  1. Completude do vetting: injetaram trânsitos sintéticos nos pixels, rodaram o pipeline inteiro e contaram quantos o Robovetter aprovou.
  2. Confiabilidade: criaram alarmes falsos de propósito, invertendo as curvas de luz (quedas viram subidas e vice-versa) e embaralhando a ordem dos dados no tempo. Qualquer "trânsito" achado nessas curvas é, por construção, falso. A fração deles que o Robovetter aprova estima quantos falsos ainda contaminam o catálogo.

Com isso, cada candidato ganhou um score de disposição: a fração de vezes que ele passou quando os limites do Robovetter foram perturbados. É uma ideia parecida com o score do PlanetHunter, mas medida, não apenas definida.

Curvas invertidas como benchmark

O PlanetHunter mede o vetting em falsos positivos reais (FP/FA do TFOPWG). Curvas invertidas seriam complementares: milhares de alarmes falsos sem precisar de rótulo. Boa ideia para um projeto seu na aula A5.

3. O catálogo de TOIs

Guerrero et al. (2021), ApJS 254, 39, descrevem como nascem os TOIs (TESS Objects of Interest) na missão principal (setores 1 a 26), com mais de 2 200 objetos. O fluxo, simplificado:

flowchart LR
    A[SPOC: TCEs dos alvos de 2 min] --> C[Triagem e vetting pela equipe de TOIs]
    B[QLP: sinais das imagens completas] --> C
    C -->|aprovado| D[TOI com disposição TESS]
    E[CTOI da comunidade] -->|promoção| D
    D --> F[TFOPWG: acompanhamento]
    F --> G[Disposição TFOPWG: CP, KP, PC, APC, FP, FA]

Dois detalhes importam para você:

  • Há duas disposições diferentes. A TESS Disposition é dada pela equipe que cria o TOI (por exemplo, PC para candidato, EB para binária). A TFOPWG Disposition é dada pelo grupo de acompanhamento depois de observações em solo: CP (planeta confirmado), KP (planeta já conhecido), PC (ainda candidato), APC (candidato ambíguo), FP (falso positivo), FA (alarme falso). O benchmark do projeto usa a do TFOPWG quando existe (benchmark.py, função build).
  • Os CTOIs entram no mesmo fluxo. A equipe pode promovê-los a TOI. É o caminho que você vai preparar na aula A6.

4. O catálogo de binárias do TESS e o bug dos hot Jupiters

Prša et al. (2022), ApJS 258, 16, publicaram o catálogo de binárias eclipsantes do TESS para os setores 1 a 26: cerca de 4 600 sistemas, com período, época e um parâmetro de morfologia (quão "destacadas" ou "em contato" são as estrelas). O PlanetHunter espelha esse catálogo para o crossmatch.

O bug real: na primeira calibração no setor 69, 9 sinais casaram com o catálogo de binárias e foram classificados como KNOWN_FP. Quando alguém olhou um por um, eram WASP-18 b, WASP-100 b, HATS-16 b e outros planetas confirmados, todos hot Jupiters. Planetas gigantes muito próximos da estrela produzem trânsitos profundos e, às vezes, ocultações visíveis. Um catálogo construído para achar eclipses, com critérios automáticos e revisão visual, inevitavelmente pega alguns deles.

A correção (em crossmatch/core.py, função _priority) define uma ordem de evidência quando vários objetos casam na mesma estrela:

  1. Planeta confirmado (Exoplanet Archive, exoplanet.eu, ou TFOPWG CP/KP).
  2. Disposição FP/FA do TFOPWG.
  3. TOI.
  4. CTOI.
  5. Catálogo de binárias.

A lição vai além do catálogo: nenhum catálogo é verdade. Cada um foi feito com um objetivo, por um método, com uma taxa de erro. Quando dois catálogos discordam, a regra de prioridade precisa refletir qual evidência é mais forte. Uma confirmação por velocidade radial pesa mais que uma classificação automática de forma.

5. Lado a lado

Teste DV / Robovetter Equipe de TOIs PlanetHunter
Força do sinal Limite de SNR na busca (TPS) Limite de SNR sde ≥ 9, snr ≥ 7,1 (veto)
Número de trânsitos ≥ 2 na busca ≥ 2 (monotrânsitos à parte) n_transits ≥ 2 (veto)
Ímpar/par DV, Robovetter SS Sim odd_even (falha a 3σ, veto a 5σ)
Secundário DV, Robovetter SS Sim secondary (veto só se ≥ 10 % do primário), secondary_scan
Formato em V Robovetter SS Visual shape (v_shape_max 0,35, falha leve)
Raio implausível Sim Sim radius (falha 22,4 R⊕, veto 33,6 R⊕)
Duração × densidade Parcial Visual duration (0,15 a 1,3 × previsto)
Centróide DV, Robovetter CO Sim centroid offline, tpf_difference_image
Vizinhos e diluição Parcial Gaia gaia_neighbors
Contaminação por efeméride Robovetter EC Sim crossmatch NEARBY_KNOWN (até 2′) e trânsito a trânsito
Sistemáticos do instrumento Rolling band, fantasma Visual edges_dumps
Outros setores / trimestres Consistência entre trimestres Multi-setor other_sectors, com busca às cegas
Probabilidade de FP Validação estatística à parte Acompanhamento fpp_triceratops
Confiabilidade medida Curvas invertidas e embaralhadas Acompanhamento em solo FPs do TFOPWG no setor 69

O que salta da tabela: o PlanetHunter cobre a maioria dos testes clássicos, mas não tem fantasma óptico, teste de bootstrap formal, nem medição de confiabilidade com alarmes falsos sintéticos. São candidatos naturais para melhorias, e a autoavaliação vai pedir que você proponha uma.

6. Imagem-diferença e centróides

O pixel do TESS tem 21″. Dentro da abertura de um alvo cabem várias estrelas. A pergunta "de qual estrela vem a queda?" é, em muitos casos, a mais importante do vetting.

Movimento do centróide (offline)

O SPOC grava, para cada cadência, o centróide (centro de luz ponderado) da abertura, nas colunas MOM_CENTR. Se a queda vem do alvo, o centróide quase não se mexe. Se vem de um vizinho, o centro de luz se desloca em direção oposta ao vizinho durante o trânsito.

O deslocamento sozinho engana: uma queda profunda num vizinho fraco e uma queda rasa num vizinho brilhante podem dar o mesmo movimento. O projeto usa a distância implícita da fonte:

\[ d_\text{fonte} \approx \frac{\Delta x}{\delta} , \]

o deslocamento dividido pela profundidade fracionária. O teste centroid só falha se o deslocamento for maior que 3σ e a fonte implícita estiver a mais de 1 pixel (centroid_max_offset_px). Essa regra nasceu de uma medição: com o critério só de significância, 11 de 41 planetas confirmados falhavam, e todos tinham fonte implícita até 0,88 px.

Imagem-diferença (com rede, por candidato)

O teste tpf_difference_image baixa o arquivo de pixels (TPF) do alvo e faz:

  1. Média das imagens fora do trânsito (entre 1 e 3 durações do centro).
  2. Média das imagens dentro do trânsito (até 0,4 duração do centro).
  3. Diferença = fora − dentro. O que apagou aparece brilhante.
  4. Centróide da diferença comparado com o centróide fora do trânsito.
  5. Incerteza: a dispersão dos centróides calculados trânsito a trânsito, dividida pela raiz do número de trânsitos (precisa de pelo menos 3).

Falha se o deslocamento passa de 1 pixel e é significativo. No dossiê, o x vermelho (centróide da diferença) deve cair sobre a + branca (centróide fora do trânsito). Na primeira fatia real de 2 164 estrelas, o sinal 1528 foi reprovado exatamente aqui.

O método profissional (Bryson et al. 2013) ajusta à imagem-diferença o modelo da resposta do instrumento a uma estrela pontual (a PRF), mais preciso com vizinhos próximos. O centróide ponderado do projeto é uma aproximação deliberadamente simples.

Do centróide aos vizinhos Gaia

O teste não consegue separar fontes mais próximas que a própria incerteza. O projeto define um raio de exclusão igual a 3 vezes o menor erro de centróide (mínimo de 0,3 px). Depois, o teste gaia_neighbors lista as estrelas Gaia DR3 até 2,5 pixels e, para cada uma, calcula a profundidade que ela precisaria ter para produzir o sinal sozinha:

\[ \delta_\text{necessária} = \delta_\text{obs} \times \frac{F_\text{total}}{F_\text{vizinho}}, \qquad \frac{F_\text{vizinho}}{F_\text{alvo}} = 10^{-0,4\,(G_\text{viz} - G_\text{alvo})} . \]

Acima de 100 %, é impossível. Um vizinho possível dentro do raio de exclusão continua plausível, e o teste termina com "requer imagem": só imagem de alta resolução resolve.

7. Casamento trânsito a trânsito: o caso HD 23472

HD 23472 tem cinco planetas conhecidos. Num único setor, o TLS viu um trânsito do planeta b e um do planeta c e "achou" um planeta de 10,29 dias. O crossmatch por período não pegou: 10,29 dias não é o período de nenhum planeta conhecido, nem alias. O sinal chegou a P1. O mesmo aconteceu com TOI-703 (.01 + .02 virando 11,40 d) e GJ 143 (8,80 d).

A correção, em crossmatch/core.py (função explain_transits), pergunta para cada trânsito observado: algum objeto conhecido da estrela prevê um evento aqui?

  • Para cada objeto, propaga a efeméride até a época do trânsito: \(n = \text{round}[(t - T_0)/P]\), previsto \(= T_0 + nP\).
  • Tolerância: o maior entre a duração e 0,1 dia, mais 3 vezes a incerteza propagada, \(3\,|n|\,\sigma_P\).
  • Objetos com incerteza propagada acima de 1 dia são ignorados: a efeméride já não serve.
  • Testa também fase 0,5, porque muitos TOIs e CTOIs são binárias e o "trânsito" pode ser o eclipse secundário.

Se pelo menos 50 % dos trânsitos são explicados por objetos conhecidos, o sinal é classificado como conhecido, com match_type = transit_times. Depois dessa correção, os 3 candidatos NEW que passavam o funil no benchmark caíram para 0. Todos eram falsos.

Na ferramenta

  • Os testes básicos estão em src/planethunter/vetting/basic.py; os aprofundados (imagem-diferença, vizinhos Gaia, outros setores, SIMBAD, binárias do Gaia, FPP), em src/planethunter/vetting/deep.py.
  • A prioridade entre catálogos e o casamento trânsito a trânsito estão em src/planethunter/crossmatch/core.py.
  • No dossiê: seção 7 (imagem-diferença) e seção 9 (crossmatch, com o tipo de casamento e a idade de cada espelho).
  • Rode uv run planethunter vet-deep <run_id> para ver a imagem-diferença e os vizinhos de candidatos reais.

Exercício 1. Qual vizinho pode ser a fonte?

Um candidato tem profundidade de 2 000 ppm. O alvo tem \(G = 10{,}0\). Há dois vizinhos Gaia na abertura: A com \(G = 14{,}0\) e B com \(G = 18{,}0\). Qual deles poderia produzir o sinal sozinho?

Ver resposta
  1. Fluxo relativo de A: \(10^{-0,4 \times 4} = 10^{-1,6} \approx 0{,}0251\). De B: \(10^{-0,4 \times 8} = 10^{-3,2} \approx 0{,}000631\).
  2. Fluxo total relativo ao alvo: \(1 + 0{,}0251 + 0{,}000631 \approx 1{,}0257\).
  3. A precisaria de \(0{,}002 \times 1{,}0257 / 0{,}0251 \approx 0{,}082\), ou seja, 8,2 %. Uma binária eclipsante faz isso com facilidade. A é possível.
  4. B precisaria de \(0{,}002 \times 1{,}0257 / 0{,}000631 \approx 3{,}25\), ou seja, 325 %. Impossível: uma estrela não pode perder mais que todo o seu brilho. B está descartado.
  5. Se A estiver dentro do raio de exclusão do centróide, o teste termina com "requer imagem".

Exercício 2. O trânsito é de quem?

Uma estrela tem um planeta conhecido com \(P = 17{,}667\) d, \(T_0 = 1400{,}000\) BTJD, \(\sigma_P = 0{,}0005\) d (efeméride hipotética). O sistema detectou um trânsito de 3,6 h (0,15 d) em 3184,400 BTJD. Esse trânsito é explicado pelo planeta conhecido?

Ver resposta
  1. \(n = \text{round}[(3184{,}400 - 1400{,}000)/17{,}667] = \text{round}(101{,}0) = 101\).
  2. Previsto: \(1400{,}000 + 101 \times 17{,}667 = 3184{,}367\) BTJD. Diferença: \(0{,}033\) d.
  3. Incerteza propagada: \(3 \times 101 \times 0{,}0005 = 0{,}152\) d. Abaixo de 1 dia, a efeméride vale.
  4. Tolerância: \(\max(0{,}15;\ 0{,}1) + 0{,}152 = 0{,}302\) d.
  5. \(0{,}033 < 0{,}302\): sim, o trânsito é explicado. Se metade ou mais dos trânsitos do sinal forem explicados assim, ele é classificado como conhecido.

Exercício 3. Centróide significativo, mas inocente

O centróide do alvo se desloca \(0{,}0020\) px durante um trânsito de profundidade \(0{,}005\) (5 000 ppm), com significância de 6σ. Outro sinal: deslocamento de \(0{,}010\) px, profundidade \(0{,}002\), significância 4σ. Qual falha no teste centroid?

Ver resposta
  1. Primeiro sinal: fonte implícita \(0{,}0020 / 0{,}005 = 0{,}4\) px. Significativo, mas abaixo de 1 px. Passa. É o comportamento típico de planeta real numa estrela com vizinhos fracos.
  2. Segundo: \(0{,}010 / 0{,}002 = 5\) px, ou cerca de 105″. Significativo (4σ > 3σ) e acima de 1 px. Falha.
  3. Moral: significância diz se o movimento é real; a distância implícita diz se ele importa.

Checklist da aula

  • Li Twicken et al. (2018) e sei listar cinco diagnósticos do DV.
  • Li Thompson et al. (2018) e sei explicar as marcas NT, SS, CO, EC e o uso de curvas invertidas e embaralhadas.
  • Li Guerrero et al. (2021) e sei a diferença entre TESS Disposition e TFOPWG Disposition.
  • Sei contar o bug dos hot Jupiters no catálogo de binárias e justificar a ordem de prioridade do crossmatch.
  • Sei calcular a distância implícita da fonte e a profundidade necessária num vizinho.
  • Sei explicar o casamento trânsito a trânsito com o caso HD 23472.

Para ir além

  • Twicken et al. (2018), Publications of the Astronomical Society of the Pacific 130, 064502. A arquitetura do Data Validation; leia a seção dos diagnósticos com os relatórios DV de um TOI real abertos ao lado.
  • Thompson et al. (2018), The Astrophysical Journal Supplement Series 235, 38. O DR25 e o Robovetter; a parte sobre confiabilidade medida é a mais importante para quem constrói sistemas.
  • Guerrero et al. (2021), The Astrophysical Journal Supplement Series 254, 39. O processo que transforma sinais em TOIs e o papel dos CTOIs.
  • Prša et al. (2022), The Astrophysical Journal Supplement Series 258, 16. O catálogo de binárias do TESS; útil para entender o parâmetro de morfologia e os limites de uma classificação automática.
  • Bryson et al. (2013), Publications of the Astronomical Society of the Pacific 125, 889. Como identificar falsos positivos de fundo com imagens-diferença e ajuste de PRF.
  • Coughlin et al. (2014), The Astronomical Journal 147, 119. Casamento de efemérides no campo do Kepler: centenas de candidatos eram contaminação de outras estrelas. A base da marca EC e do NEARBY_KNOWN.