11 October 2019
CERN
Europe/Zurich timezone

SWAN for operational radiation protection and possible improvements

11 Oct 2019, 15:50
15m
31/3-004 - IT Amphitheatre (CERN)

31/3-004 - IT Amphitheatre

CERN

105
Show room on map

Speaker

Alajos Makovec (CERN)

Description

The SWAN web interface for Jupyter notebooks provides several advantages compared to the commonly used offline data analysis tools (Root, Matlab, Python etc.). A SWAN project is practically a directory in the user's CERNBox folder. It can contain input data (e.g. a radionuclide inventory in txt format), Jupyter notebooks with Python scripts for data analysis, step-to-step documentation using lightweight markup language, and live visualization of data. This creates a self-consistent and self-explaining documentation, which can be easily shared with and understood by colleagues.

In operational radiation protection, the benefits offered by SWAN have been employed for data analysis and post-processing of, e.g., radionuclide inventories, calibration data of radiation monitoring devices and benchmark of Monte Carlo simulations with experimental data. The notebooks are then shared with colleagues for integration, checks and validation. The SWAN projects constitute a solid base for editing technical notes and, in addition, they conserve the logic and make the radiological assessments easily reproducible.

However, sharing a SWAN project has some limitations. When it is shared, the recipient creates a copy of the original project into his/her own CERNBox folder. After editing, he/she shares the modified project creating additional copies. This is rather inefficient and can easily lead to a hard-to-track and ever growing bunch of project copies.

A combined use of SWAN and GitLab overcomes this aspect. The CERNBox client makes the created SWAN project locally available on the user's machine. Then, the folder can be set as local repository for a GitLab project. This technique allows the contributors to work on projects using the SWAN service and, at the same time, gives them access to the branching and sharing capabilities of GitLab. As a result, version controlling of the SWAN project becomes more transparent.

To increase the efficiency of using SWAN combined with GitLab, a committing interface could be integrated in the SWAN service. This interface would provide a direct link between the two and would also be useful for those who are not so familiar with the use of GitLab.

Although GitLab has already a viewer for Jupyter notebooks, this feature has currently some limitations:
- Live codes of the notebook are shown as static text in GitLab.
- Although plots from Python scripts are supported in GitLab, the use of Markdown syntaxes for inserting pictures is not supported.
- Aligning texts in the columns of tables to the left, right, or center is useful for scientific documentation. However, Markdown header syntaxes (:---, :---: or ---:) are not recognized either by SWAN nor by Gitlab. Moreover, text in tables are aligned to the left using GitLab, but to the right in case of SWAN.

Primary authors

Alajos Makovec (CERN) Robert Froeschl (CERN) Fabio Pozzi (CERN)

Presentation materials