Exposure Time Calculator (ETC) and radial velocity precision estimator for the Near InfraRed Planet Searcher (NIRPS) spectrograph

Overview

NIRPS-ETC

Exposure Time Calculator (ETC) and radial velocity precision estimator for the Near InfraRed Planet Searcher (NIRPS) spectrograph

February 2022 - Before NIRPS on sky

Original NIRPS ETC code by Bruno L. Canto Martins 2018-2019

Additional edits by Nolan Grieves (University of Geneva) 2020-2022

Overview

  • The NIRPS ETC uses spectra from the NASA Infrared Telescope Facility (IRTF) as SEDs to get estimated flux values for different spectral types: http://irtfweb.ifa.hawaii.edu/~spex/IRTF_Spectral_Library/
  • The ETC calculates efficiency at different wavelengths using seeing, atmospheric efficiency from TAPAS (http://cds-espri.ipsl.fr/tapas/), and the measured global efficiency of the instrument
  • The signal to noise ratio (SNR) at each pixel or bin is calculated from the fiber diameter, sampling, readout noise, resolution, efficiency, and flux in the pixel or bin from the IRTF template (flux=(10.**(0.4*(Ho-H)))*flux_st)
  • RV precisions are calculated using, dRV=c/(Q*sqrt(Ne-)), equation 12 of Bouchy et al. (2001: https://ui.adsabs.harvard.edu/abs/2001A%26A...374..733B/abstract). The quality factors Q for spectra are calculated with ENIRIC from Phoenix simulated spectra or from spectral templates from the Spirou spectrograph
    • -> see: NIRPS-ETC/intermediate_preparation/update_RV_estimates/README_update_RV_estimates

Use

$ python NIRPS_ETC.py

  • change observing options within the code at the top
    • Observation Mode (HA/HE)
    • Seeing, in arcsec (range 0.7-1.2)
    • Airmass (range 1.0-2.0)
    • Object magnitude (H band)
    • Exposure time (in sec)
    • Spectral type (F0V/F5V/G0V/G5V/G8V/K0V/K3V/K7V/M0V/M1V/M2V/M3V/M4V/M5V/M6V/M7V/M8V/M9V/L1V/L2V/L3V/L4V/L5V/L6V/L8V/T2V)
    • bandpass ('CFHT' or 'Eniric') #YJH bandpasses that will affect the range of the spectra used to calculate RV precision
  • outputs mean SNR, in YJH, and each order, and RV precisisons for certain spectral types

OR use script version:

$ python NIRPS_ETC_script.py

  • change inputs for each target in a space separated text file with columns:
    • target st obs_mode seeing airmass H t_exp bandpass
  • change input and output text files within code to desired option
  • outputs to file the mean SNR, YJH SNRs, and RV precisions

Contents

  • inputs/
    • NIRPS_STAR_templates.txt
      • SEDs from IRTF (update with intermediate_preparation/update_effs/update_effs.py)
    • NIRPS_effs.txt
      • global efficiency of instrument (update with intermediate_preparation/update_effs/update_effs.py)
    • NIRPS_tapas.txt
      • atmospheric efficiency from TAPAS (update with intermediate_preparation/update_effs/update_effs.py)
    • NIRPS_wave_range.txt
      • wavelength range of echelle orders (update with intermediate_preparation/update_effs/update_effs.py)
    • phoenix_Q_conversions_CFHT-bandpass.txt
      • Q factor conversions for different resolutions in CFHT defined YJH bandpasses (update with intermediate_preparation/update_RV_estimates/phoenix_qfactor_resolution_conversion.py)
    • phoenix_Q_conversions_eniric-bandpass.txt
      • Q factor conversions for different resolutions in Eniric defined YJH bandpasses (update with intermediate_preparation/update_RV_estimates/phoenix_qfactor_resolution_conversion.py)
    • phoenix_eniric_Qfactors_CFHT-bandpass.csv
      • Q factors from Eniric in CFHT defined YJH bandpasses (update with eniric using command in intermediate_preparation/update_RV_estimates/README_update_RV_estimates)
    • phoenix_eniric_Qfactors_eniric-bandpass.csv
      • Q factors from Eniric in Eniric defined YJH bandpasses (update with eniric using command in intermediate_preparation/update_RV_estimates/README_update_RV_estimates)
    • spirou_fit_Qvalues_CFHT-bandpass.txt
      • Q factors from Spirou templates in CFHT defined YJH bandpasses (update with intermediate_preparation/update_RV_estimates/fit_spirou_qfactors.py)
    • spirou_fit_Qvalues_eniric-bandpass.txt.
      • Q factors from Spirou templates in Eniric defined YJH bandpasses (update with intermediate_preparation/update_RV_estimates/fit_spirou_qfactors.py)
  • intermediate_preparation/
    • ETC_v3.0_CantoMartins/
      • original ETC by Bruno Canto Martins
    • add_stellar_templates/
      • add and update stellar templates
    • update_RV_estimates/
      • update RV estimates and Q values
    • update_effs/
      • update efficiency files and resample wavelength grid for tapas, effs, and star_templates
  • outputs/
    • outputs SNR for each order and wavelength vs SNR plot from NIRPS_ETC.py
  • NIRPS_ETC.py
    • main ETC code for a single star
  • NIRPS_ETC_script.py
    • script that runs ETC for stars in etc_targets_input.txt and outputs to etc_targets_output.txt
  • etc_targets_input.txt
    • example input file for NIRPS_ETC_script.py
  • etc_targets_output.txt
    • example ouput file for NIRPS_ETC_script.py
  • nirps_etc_lib.py
    • definitions for fucntions in ETC code
Owner
Nolan Grieves
Postdoctoral Research Scientist [email protected]
Nolan Grieves
Practical tutorials and labs for TensorFlow used by Nvidia, FFN, CNN, RNN, Kaggle, AE

TensorFlow Tutorial - used by Nvidia Learn TensorFlow from scratch by examples and visualizations with interactive jupyter notebooks. Learn to compete

Alexander R Johansen 1.9k Dec 19, 2022
Self-supervised learning optimally robust representations for domain generalization.

OptDom: Learning Optimal Representations for Domain Generalization This repository contains the official implementation for Optimal Representations fo

Yangjun Ruan 18 Aug 25, 2022
Translation-equivariant Image Quantizer for Bi-directional Image-Text Generation

Translation-equivariant Image Quantizer for Bi-directional Image-Text Generation Woncheol Shin1, Gyubok Lee1, Jiyoung Lee1, Joonseok Lee2,3, Edward Ch

Woncheol Shin 7 Sep 26, 2022
Supervised forecasting of sequential data in Python.

Supervised forecasting of sequential data in Python. Intro Supervised forecasting is the machine learning task of making predictions for sequential da

The Alan Turing Institute 54 Nov 15, 2022
Fine-grained Control of Image Caption Generation with Abstract Scene Graphs

Faster R-CNN pretrained on VisualGenome This repository modifies maskrcnn-benchmark for object detection and attribute prediction on VisualGenome data

Shizhe Chen 7 Apr 20, 2021
Suite of 500 procedurally-generated NLP tasks to study language model adaptability

TaskBench500 The TaskBench500 dataset and code for generating tasks. Data The TaskBench dataset is available under wget http://web.mit.edu/bzl/www/Tas

Belinda Li 20 May 17, 2022
Spectral Tensor Train Parameterization of Deep Learning Layers

Spectral Tensor Train Parameterization of Deep Learning Layers This repository is the official implementation of our AISTATS 2021 paper titled "Spectr

Anton Obukhov 12 Oct 23, 2022
A Machine Teaching Framework for Scalable Recognition

MEMORABLE This repository contains the source code accompanying our ICCV 2021 paper. A Machine Teaching Framework for Scalable Recognition Pei Wang, N

2 Dec 08, 2021
A generalist algorithm for cell and nucleus segmentation.

Cellpose | A generalist algorithm for cell and nucleus segmentation. Cellpose was written by Carsen Stringer and Marius Pachitariu. To learn about Cel

MouseLand 733 Dec 29, 2022
Skyformer: Remodel Self-Attention with Gaussian Kernel and Nystr\"om Method (NeurIPS 2021)

Skyformer This repository is the official implementation of Skyformer: Remodel Self-Attention with Gaussian Kernel and Nystr"om Method (NeurIPS 2021).

Qi Zeng 46 Sep 20, 2022
Implementation of ICLR 2020 paper "Revisiting Self-Training for Neural Sequence Generation"

Self-Training for Neural Sequence Generation This repo includes instructions for running noisy self-training algorithms from the following paper: Revi

Junxian He 45 Dec 31, 2022
Official Repo for Ground-aware Monocular 3D Object Detection for Autonomous Driving

Visual 3D Detection Package: This repo aims to provide flexible and reproducible visual 3D detection on KITTI dataset. We expect scripts starting from

Yuxuan Liu 305 Dec 19, 2022
Uses Open AI Gym environment to create autonomous cryptocurrency bot to trade cryptocurrencies.

Crypto_Bot Uses Open AI Gym environment to create autonomous cryptocurrency bot to trade cryptocurrencies. Steps to get started using the bot: Sign up

21 Oct 03, 2022
PyTorch implementation of the ideas presented in the paper Interaction Grounded Learning (IGL)

Interaction Grounded Learning This repository contains a simple PyTorch implementation of the ideas presented in the paper Interaction Grounded Learni

Arthur Juliani 4 Aug 31, 2022
Pmapper is a super-resolution and deconvolution toolkit for python 3.6+

pmapper pmapper is a super-resolution and deconvolution toolkit for python 3.6+. PMAP stands for Poisson Maximum A-Posteriori, a highly flexible and a

NASA Jet Propulsion Laboratory 8 Nov 06, 2022
[ACM MM 2019 Oral] Cycle In Cycle Generative Adversarial Networks for Keypoint-Guided Image Generation

Contents Cycle-In-Cycle GANs Installation Dataset Preparation Generating Images Using Pretrained Model Train and Test New Models Acknowledgments Relat

Hao Tang 67 Dec 14, 2022
Official implementation of Deep Reparametrization of Multi-Frame Super-Resolution and Denoising

Deep-Rep-MFIR Official implementation of Deep Reparametrization of Multi-Frame Super-Resolution and Denoising Publication: Deep Reparametrization of M

Goutam Bhat 39 Jan 04, 2023
Code for the ICASSP-2021 paper: Continuous Speech Separation with Conformer.

Continuous Speech Separation with Conformer Introduction We examine the use of the Conformer architecture for continuous speech separation. Conformer

Sanyuan Chen (陈三元) 81 Nov 28, 2022
Solving Zero-Shot Learning in Named Entity Recognition with Common Sense Knowledge

Zero-Shot Learning in Named Entity Recognition with Common Sense Knowledge Associated code for the paper Zero-Shot Learning in Named Entity Recognitio

Søren Hougaard Mulvad 13 Dec 25, 2022
Solutions and questions for AoC2021. Merry christmas!

Advent of Code 2021 Merry christmas! 🎄 🎅 To get solutions and approximate execution times for implementations, please execute the run.py script in t

Wilhelm Ågren 5 Dec 29, 2022