Etat d'avancement
=================

== __ 2020/05/27__ Etat d'avancement

=== Acquisition des données L0

Librairie python pour accéder au serveur EDDS

* récupération TM en temps réel (streaming) sur serveur EDDS pour les opérations de commissioning

* récupération TM/TC en batch ultérieurement pour récupérer une journée complète

Voir link:page=edds-tools[EDDS tools]

NOTE: On peut aussi récupérer les données LO sur le serveur SFTP du MSSL.

=== Production CDF L1

Le logiciel de traitement est opérationnel, il a été testé en temps réel pendant le commissioning,
et de manière intense depuis plusieurs mois.

Ecrit en langage C, fonctionnel et rapide (quelques secondes < 5s, par générer CDF L1 pour une journée)

Voir link:/tests/L1[PAS CDF L1 data]

Nombreux outils ajoutés pour vérifier la cohérence des données :

- statistiques (TM/TC)
- log exécution des TC 
- erreurs (FDIR)
- etc...

Serveur WEB : http://solarorbiter.irap.omp.eu

Mise à jour automatisée du serveur WEB (toutes les 2 min) pendant les opérations en temps réel.

Permet de visualiser, pour chaque journée ou SWA est opérationnel (ou en test) :

- statistiques et logs précédents
- plots housekeeping
- plots scientifiques
- plots inflight calibrations (Lubomir)

Voir link:/tests/run=view[PAS plots and logs...]

=== Production CDF L2

Un prototype a été écrit cette semaine pour intégrer les codes de traitement d'Andrei :
- correction des données 3D (nettoyage Ghost, calibrations...)
- création des données 3D et moments sol

J'ai ajouté la création des CDF L2 swa-pas-3d-fdist et swa-pas-mom et le remplissage des données
à partir des données d'Andrei.

Voir link:/tests/L2[PAS CDF L2 data]

Le logicile est écrit en Python, pour utiliser les algorithmes d'Andrei, qu'il envisage de modifier
dans les semaines à venir pour affiner les données.

==== Avantages

* utilisation librairies python (pycdf, numpy..)
* facilité de modification 

==== Inconvénients 

* lenteur. 
* génération d'à peu près 10 records/s, pouvant aller jusqu'à 20 min par jour.

==== Amélioriations possibles 

* calculer les moments depuis les 3D permettrait de gagner du temps (éviter deux nettoyages des données)
* une fois que les algos seront stabilisées, on pourra les recoder en C pour optimiser

==== Reste à faire

* prise en compte spice kernels pour corriger datation (peut-être fait rapidement)
* vérifier/compléter les métadonnées des CDF L1 et L2
* coordination avec autres équipes SWA (SolO) pour cohérence des métadonnées

void link:page=spice[]

=== Calibrations

Un répertoire de calibration a été créé, avec un catalogue des fichiers de calibration.

Voir link:/tests/CALIB[Calibration directory]

Chaque fichier est identifié par un code :

* AZS ou AZF F: azimuths simplifiés ou full résolution
* ELS ou ELF : elevation simplifiées ou full résouluton
* EVS ou EVF : energie simplifiées ou full résolution, 
* GFF : facters de géométrie
* CNN : coefficient calcul moments
* etc...

On peut ainsi ajouter de nouveaux fichiers, pour corriger un type de calibration à partir d'une date donnée.

Cela permettra par exemple de prendre en comptre une dégradation ultérieure des performanes de l'instrument.

Une librairie en C se charge de la lecture de ces calibrations pour le logiciel de niveau L1.

Une surcouche en Python est en cours d'écruture pour intégrer les calibrations aux algorithmes d'Andrei

Une surcouche en IDL pourra éventuellement être écrite pour les besoins du logiciel d'Emmanuel.