Ce topic à pour objectif de définir l'expression du besoin pour le nouveau projet logiciel de visualisateur/editeur de fichiers OIFITS.
N'hesitez pas à modifier le contenu de ce topic ou simplement laisser un message
Cahier des charges pour un OI-FITS viewer
Intro
OlivierChesneau : Il existe déjà beaucoup de fits viewer comme
fv qui est très satisfaisant. Le développement d'un OI-FITS viewer doit répondre à des besoins spécifiques en interférométrie.
Ci dessous une liste de 'v½ux au père Noel'. Elle regroupe des besoins variés. Il ne faut pas cacher le fait que l'intérêt du viewer est d'autant plus grand qu'il a des fonctions de trie des données élaborées. Ce type de fonctions ne sont pas simples, loin de là…
Fonctions
Fonctions communes à tout Fits viewer
- Importer, exporter,
- Manipuler les données et les headers,
- Visualiser les données de chaque champ (plot ou image)
Fonctions spécifiques à l'interférométrie
Manipulation de fichier(s)
- Pouvoir séparer ou joindre des OI-FITS sur les critères suivants
- Séparer / sélectionner / binner des données: filtres sur les dates/heures, les fréquences spatiales, les longueurs d'onde, les angles horaires, les barres d'erreur.
- Binner des données avec positions similaires dans l'espace des fréquences spatiales (implique un bon traitement statistique avec prise en compte des erreurs),
- Binner des données dispersées ou possibilité d'extraire des données dans un filtre de bande spectrale de largeur donnée,
- Binner des données prises à des moments similaires ou séparer des données qui ont été prises à des moments éloignés. Possibilité de faire des comparatifs temporels.
- Possibilité de faire des sélections/bin différents pour les V2 et les CP.
Visualisation
-
- Visualisation systématique après modification des jeux de données donc basée sur mêmes critères, en y ajoutant un code couleur ou symbole pour des oifits provenant d'instruments différents (voire, pour un même instrument, pour les oifits obtenus avec des modes spectraux et instrumentaux différents)
- Visualisation visibilité versus fréquence spatiale avec code couleur pour la direction de la base projetée
- Visualisation visibilité versus angle de position de la base, avec code couleur pour la fréquence spatiale,
- Idem pour les clôtures de phase.
- Visualisation des couvertures uv avec code couleur pour la longueur d'onde ou pour le temps, ou pour la valeur (ou intervalles?) de l'erreur sur la mesure, ou pour la valeur de la CP, ou de la visibilité …
- Visualisation de points de visibilités similaires au cours du temps pour détecter des variations temporelles ou des problèmes instrumentaux,
- Pouvoir zoomer sur les graphs avec la souris
- Pouvoir superposer des courbes continues de modèles
Priorité viewer simple
- plot des visibilités carrées / visibilités différentielles en fonction de la base projetée.
- plot des visibilités carrées / visibilités différentielles en fonction de la fréquence spatiale projetée.
- plot des visibilités carrées / visibilités différentielles en fonction de l'angle de position de la base.
- plot des visibilités carrées / visibilités différentielles en fonction de la longueur d'onde.
- plot des visibilités carrées / visibilités différentielles en fonction de l'angle horaire.
- plot des clotures de phase en fonction de la base projetée maximale du triangle.
- plot des clotures de phase en fonction de la fréquence spatiale projetée maximale du triangle.
- plot des clotures de phase en fonction de la longueur d'onde.
- plot des clotures de phase en fonction de l'angle horaire.
- plot des phases différentielles en fonction de la longueur d'onde.
Avec d'office, l'ordonnée des visibilités entre 0 et 1 (pour les clôtures et les phases différentielles entre min/max) et l'abscisse entre le max et le min de la valeur, mais avec possibilité de zoomer et de-zoomer.
Interaction avec les plots
- Pouvoir isoler ('flagger') et supprimer facilement (en cliquant?) tout point aberrant (sur les critères mentionnés ci dessus (date/heure, erreur, etc) mais aussi avoir la possibilité de le faire en sélectionnant une base en particulier).
- Pouvoir créer en sortie un nouveau fichier nettoyé (manuellement ou sous critère basé sur la barre d'erreur),
- Pouvoir générer un fichier OI-FITS calibré à partir de plusieurs fichiers OI-FITS 'bruts' d'une source de science et d'un ou plusieurs calibrateurs.
- Pouvoir visualiser une selection de point de plots dans une table ou sur un plot lié a ces points de mesure (plan UV inclut)
Validation
- Valider vis a vis de la norme : mode simple / detaillé (en evitant les répétitions inutiles)
- Indiquer l'impact que peuvent avoir les erreurs du fichier
- Proposer de corriger les erreurs simples (a priori difficile a realiser)
Fonctions générales
- Pouvoir exporter les graphes en PDF.
- Pouvoir exporter les graphes sous format ascii pour réutilisation dans un autre outil de plot.
- Afficher les infos pertinentes permettant de caracteriser un fits a premiere vue ( nbr bases, nbr longueurs d'onde, nbr vis vis2 t3, tbd... ) probablement en lien avec la reflexion portail Oifits.
Produits existants sur lesquel s'inspirer, avoir des specifications de codage:
+ commentaires ci-dessous
Commentaires
From
Aspro2 OIFits viewer specs
"
This component is a generic OIFits file viewer to plot visibilities that must be interoperable with Aspro 2, LITpro ...
A new JMMC module named OITools is in development.
Main functionalities are :
- load completely an OIFits file : done
- validate an OIFits file (OIValidator like) or an object model (before saving the file) : done
- save an OIFits file : done
- text summary : provide a textual description of an OIFits file (xml / xslt) with baseline, target, wavelength band, min-max(data) and error_min/error_max(data) for few data columns (VIS, VIS2, T3) - see what is pertinent to users
- plot VIS, VIS2, T3 like Aspro OIFits Explorer (pdf export)
- feature to investigate : reuse and compute the theoretical model to plot on the uv coverage and visibility and phase plots
- uv coverage plot
- GUI must support handling multiple OIFits files to provide a comparison tools (plots, uv coverage)
- display data tables and header information (meta data) with widgets (readonly and later editable)
- provide a data selection tool to flag data as invalid
It uses the nom.tam fits library from HEASARC instead of eso JFits library to support both reading and writing Fits files.
"
--
LaurentBourges - 04 May 2012