Project

General

Profile

SciQlop Status » History » Version 20

Anonymous, 06/09/2016 04:39 PM

1 1 Anonymous
h1. SciQlop Status
2
3 5 Anonymous
"Priorities : Google doc link":https://docs.google.com/spreadsheets/d/1fIQDHRDhKJtTxnRRDlmInM25QFDaEuZ8gctZ523m6wU/edit#gid=0
4 1 Anonymous
5 6 Anonymous
h2. Scientific Objectives and Performances
6
7
|_.Functionnality |_.Status(% done)|
8
|SciQLOP should be portable, and an executable/setup should be available for Linux, Mac, Windows||
9
|Installing SciQLOP must be easy, must not require to read a documentation or install dependencies||
10
|When opened SciQLOP should by default reload the previous state (data products, plots, plugins, etc.)||
11
|SciQLOP comes with good user documentation, including galleries, examples and  tutorials including video tutorials.||
12
|SciQLOP should propose the same functionalities on all platforms.||
13
|SciQLOP should propose the same performances on all platforms.||
14
|SciQLOP's GUI should remain light, beautiful and intuitive||
15
|Exploring databases, browsing data should be easier/faster than with other existing softwares||
16
|SciQLOP should provide efficient and transparent data browsing, access to user python routines, collaborative cataloging features with and without machine learning||
17
|SciQLOP should remain responsive when plotting 10 millions of points on a standard machine.||
18
|SciQLOP should have a limited list of data type it can handle and group them by common traits (scalars, vectors, image...).||
19
|SciQLOP may be able to provide features depending on the data type, source, unit or any condition/property the user may define or program.||
20
|Each modification of the data between the source (server) and the plot should be documented||
21
|SciQLOP should be used by students as a formation tool : provide users with knowledge toolkits associated to used quantities||
22
|SciQLOP should provide users with easy access to documentations on data, missions, instruments, etc.||
23
|SciQLOP should allow users to access wikipedia plasma/mission-related articles and suggest users to edit/add content.||
24
|SciQLOP should allow users to save and restore sessions.||
25
|SciQLOP user session should contain all data to restore its previous state.||
26
27 8 Anonymous
28
h2. Code redistribution
29 10 Anonymous
30 1 Anonymous
|_.Functionnality |_.Status(% done)|
31 17 Anonymous
|SciQLOP source code will be  GPLv2.|{background:green;color:white}. 100|
32 8 Anonymous
|SciQLOP source folder should contain the files:README, INSTALL, COPYING, CHANGELOG.||
33 17 Anonymous
|All SciQLOP source files should contain GPLv2 header.|{background:green;color:white}. 100|
34 8 Anonymous
|All SciQLOP dependencies should be compatible with GPLv2.||
35
36 1 Anonymous
37 10 Anonymous
h2. Code versioning
38
39
|_.Functionnality |_.Status(% done)|
40
|SciQLOP source code modifications should have a link between features or bug corrections and code revisions||
41
|SciQLOP source code should be hosted on the laboratory server hephaistos1 with the mercurial version system.||
42
43
44
h2.Code Writing
45
46
|_.Functionnality |_.Status(% done)|
47
|SciQLOP developer's documentation, roadmap, issues, etc. will be done on the Redmine application : https://hephaistos.lpp.polytechnique.fr/redmine/projects/sciqlop||
48
|Unit test are developed for all modules and performed after each important merge||
49
|SciQLOP's code is homogeneous in its syntax and philosophy to guarantee easy maintainability.||
50
|SciQLOP's code is self-explanatory, comments are used to explain goals, methods rather than instructions. Comments record development flow (hacks, todos, etc.)||
51
|SciQLOP's code is based on the Qt framework and plotting capabilities use the QcustomPlot1 API.||
52
53
54 6 Anonymous
h2. SciQLop Modules
55 1 Anonymous
56 11 Anonymous
|_.Functionnality |_.Status(% done)|
57 17 Anonymous
|{background:grey;color:white}. Core      |{background:grey}. |
58 19 Anonymous
|{background:#ddd;color:grey}.Database     |{background:#ddd}. |
59 20 Anonymous
|||
60
|||
61
|||
62
|||
63
|||
64
|||
65
|||
66
|||
67
|||
68
|||
69
|||
70
|||
71
|||
72
|||
73
|||
74
|||
75
|||
76
|||
77
|||
78 19 Anonymous
|{background:#ddd;color:grey}.Data Downloader     |{background:#ddd}. |
79 17 Anonymous
|{background:grey;color:white}.Plot      |{background:grey}. |
80 19 Anonymous
|{background:#ddd;color:grey}.General      |{background:#ddd}. |
81 10 Anonymous
|SciQLOP should be able to plot all kinds of data relevant to space plasma missions(scalar, vector, tensor, spectrogram||
82
|Each plot element (context : colorbars, ticks, titles, labels etc. ; data : lines, style, dots, etc.) should be clickable and customizable||
83
|Controls on figure items should be identical in all kinds of plots (e.g. changing title, labels etc. is done identically for all kinds of plots).||
84
|A plot “style” (context and data style) can be copy/pasted onto another plot ||
85
|Users may define custom plot styles and save/reload them as desired||
86
|Plots should provide visualization of available metadata (instrument modes, etc.)||
87
|Each plot/view should provide the context menu associated to the data type.||
88
|Each plot/view should allow the user to select a portion of data and perform specific operations on it, such as labelling it, building new plots or applying data analysis methods on it (e.g. get statistical quantities such as mean/std, etc.).||
89
|Data can be selected by dragging a zone onto the plot: Time interval as rectangle for time series for example. A box in 3d plot/view for example.||
90
|For time dependent data the plot/view may ask for more data when the user scrolls to the borders of the plot/view. ||
91
|Users should experience no significant lag related to downloading data associated with scrolling windows||
92
|Each plot/view should allow the integration of custom controls (user defined gui widgets) provided by the current plotted data. The control may be provided as a QWidget.||
93
|Each plot/view should be easily duplicable.||
94 17 Anonymous
|Figures/plots can be linked together or not.|{background:green;color:white}. 100|
95
|Linked plots will zoom/unzoom, scroll together (horizontally)|{background:green;color:white}. 100|
96 10 Anonymous
|A Lens effect enables the user to zoom on a part of the data without changing the plot range (like a lens effect on Gimp-like software). This can be made by adding a plot window overlapped onto the plot.||
97
|Any plot should come with a default legend, customizable by the user||
98
|Any plot can be dragged to a folder and exported as an image (eps, png, jpg)||
99
|User can select multiple plots holding shift key and drag them onto a folder to export images. SciQLOP ask the user whether multiple images or a summary plot should be done.||
100
|Mouse wheel can be used to scroll in time when the figure is selected.||
101
|Plot adjustments controls appear on specific locations on mouse hover. This keeps the interface clear but still customizable.||
102 19 Anonymous
|{background:#ddd;color:grey}.Scalar Time series      |{background:#ddd}. |
103 20 Anonymous
|Contextual menu should give users rapid access to statistical functionalities such as mean(), std().||
104
|Data holes are handled in line style mode as a line segment.||
105
|Line width can be adjusting by clicking+mouse wheel||
106 19 Anonymous
|{background:#ddd;color:grey}.Vector Time series      |{background:#ddd}. |
107 20 Anonymous
|SciQLOP can plot one or more components of a vector as a function of time||
108
|SciQLOP is aware the quantity is part of a vector. If Bx is plotted it knows which products represent By and Bz and can easily add them on the plot.||
109
|The contextual menu on a vector plot should allow users to easily transform their vector into another basis, user-provided and generic basis such as GSE, GSM, etc. or MVA.||
110
|Vectors displayed on linked plots will be represented in the same basis dynamically (one change of basis on one of the linked plot will change all of them)||
111
|Vectors can be plotted in 3D or 2D-projection as 3D vectors as a function of time. This representation will be useful for visualizing aspects specific to vectors such as change of direction (e.g. waves & discontinuities) not easily viewable in the time series format.||
112 19 Anonymous
|{background:#ddd;color:grey}.Spectrograms      |{background:#ddd}. |
113 20 Anonymous
|SciQLOP should enable the same plot/context functionalities for all spectrograms, no matter the nature of the data (particles or waves), this include color range, colormaps, etc.||
114
|Characteristic frequencies should be overplottable as time series.||
115
|Using WAMP for theoretical wave frequencies and damping should be possible||
116
|Plasma eigenmodes visualization toolkit can be called from the spectrograms contextual menu||
117
|Data holes are handled by showing the background color/texture||
118
|Colormap by clicking on the colorbar, color range can easily be adjusted from cursors appearing on the colorbar on mouse hover||
119 19 Anonymous
|{background:#ddd;color:grey}.Orbits    |{background:#ddd}. |
120 20 Anonymous
|SciQLOP provides the user with three 2D projections of the magnetosphere/heliosphere and its key regions||
121
|Heliosphere/Magnetospheric plot use different models (Tsyganenko, shue, Parker Spiral, etc.) easily interchangeable by the user.||
122
|Orbits of the satellites from which data is currently being viewed appears overplotted on the three 2D magnetospheric/heliosphere projections||
123
|The position of the spacecraft for the considered intervals must be clearly visible on the trajectory with a colored portion of the orbit, the color being associated to a particular plot (or set of linked plots).||
124
|Changing the interval range of a spacecraft on its orbit must change the plot time range accordingly and dynamically.||
125
|SciQLOP should offer an interoperability with CDPP/3DView to view orbits in 3D||
126 17 Anonymous
|{background:grey;color:white}.SpaceData      |{background:grey}. |
127
|{background:grey;color:white}.App      |{background:grey}. |