SOLPS-ITER Dashboard · 2016. 12. 22. · SOLPS-ITER Dashboard Leon Kos 1, Ivan Lupelli 2, Xavier...

10
SOLPS-ITER Dashboard Leon Kos 1 , Ivan Lupelli 2 , Xavier Bonnin 3 and EUROfusion-IM Team * 1 Faculty of Mechanical Engineering, University of Ljubljana skerˇ ceva 6, 1000 Ljubljana, Slovenia [email protected] 2 CCFE, Culham Science Centre OX14 3DB Abingdon, United Kingdom [email protected] 3 ITER Organization Route de Vinon-sur-Verdon - CS 90 046 - 13067 St Paul Lez Durance Cedex - France [email protected] ABSTRACT The design of the ITER divertor and estimates of the required fuelling throughput have relied for many years on simulations performed by the Scrape-Off Layer Plasma (SOLPS) plasma edge mod- elling tool. The newly developed SOLPS GUI is a framework tailored specifically for the SOLPS- ITER code suite in a sense that the code specifics are built into the interface. Its design allows users to extend functionality by coupling custom widgets prepared for the SOLPS GUI. These custom wid- gets are in similar environments called actors as they do act on some data, depending on the received input and then they pass the results further in a scientific workflow. The custom widgets for SOLPS are operating in a similar fashion. They receive and send the signals to other widgets for further operations. In principle, no programming is needed by users to create their own “Dashboard” for analysing and controlling the SOLPS simulations. The presented graphical programming does not just make adding the functionality easier, also allows simplification/removal of the unwanted custom widgets and further extension to other simulation code suites. 1 INTRODUCTION The ITER Integrated Modelling & Analysis Suite (IMAS) [1] and the European Integrated Mod- elling (EU-IM) effort [2], in the frame of EUROfusion Code Development WPCD project, orches- trate computation of fusion codes with Kepler [3] scientfic workflow engine. Complex integrated modelling (IM) workflows developed by the EU-IM Team [4, 5, 6, 7] on top of the Kepler frame- work integrate several physics codes involving different time and space scales. The IMAS and EU-IM frameworks are based on an underlying Physics Data Model (PDM) that allows the coupling of codes via standardized data structures - respectively named IDS (Interface Data Structures) or CPO (Con- sistent Physical Objects), wich is the main advantage in contrast to eg. One Modeling Framework for Integrated Tasks (OMFIT [8]) framework that interfaces physics modules without any data model prescription that allows coupling of codes with prescribed data structures named IDS (Interface Data Structures) or CPO (Consistent Physical Objects). Data structures that are served within personal or global databases are accessible with several programming languages (Fortran, C++, Java, Python, * See http://www.euro-fusionscipub.org/eu-im 901.1

Transcript of SOLPS-ITER Dashboard · 2016. 12. 22. · SOLPS-ITER Dashboard Leon Kos 1, Ivan Lupelli 2, Xavier...

Page 1: SOLPS-ITER Dashboard · 2016. 12. 22. · SOLPS-ITER Dashboard Leon Kos 1, Ivan Lupelli 2, Xavier Bonnin 3 and EUROfusion-IM Team * 1 Faculty of Mechanical Engineering, University

SOLPS-ITER Dashboard

Leon Kos 1, Ivan Lupelli 2, Xavier Bonnin 3 and EUROfusion-IM Team *

1 Faculty of Mechanical Engineering, University of LjubljanaAskerceva 6, 1000 Ljubljana, Slovenia

[email protected] CCFE, Culham Science Centre

OX14 3DB Abingdon, United [email protected] ITER Organization

Route de Vinon-sur-Verdon - CS 90 046 - 13067 St Paul Lez Durance Cedex - [email protected]

ABSTRACT

The design of the ITER divertor and estimates of the required fuelling throughput have relied formany years on simulations performed by the Scrape-Off Layer Plasma (SOLPS) plasma edge mod-elling tool. The newly developed SOLPS GUI is a framework tailored specifically for the SOLPS-ITER code suite in a sense that the code specifics are built into the interface. Its design allows usersto extend functionality by coupling custom widgets prepared for the SOLPS GUI. These custom wid-gets are in similar environments called actors as they do act on some data, depending on the receivedinput and then they pass the results further in a scientific workflow. The custom widgets for SOLPSare operating in a similar fashion. They receive and send the signals to other widgets for furtheroperations. In principle, no programming is needed by users to create their own “Dashboard” foranalysing and controlling the SOLPS simulations. The presented graphical programming does notjust make adding the functionality easier, also allows simplification/removal of the unwanted customwidgets and further extension to other simulation code suites.

1 INTRODUCTION

The ITER Integrated Modelling & Analysis Suite (IMAS) [1] and the European Integrated Mod-elling (EU-IM) effort [2], in the frame of EUROfusion Code Development WPCD project, orches-trate computation of fusion codes with Kepler [3] scientfic workflow engine. Complex integratedmodelling (IM) workflows developed by the EU-IM Team [4, 5, 6, 7] on top of the Kepler frame-work integrate several physics codes involving different time and space scales. The IMAS and EU-IMframeworks are based on an underlying Physics Data Model (PDM) that allows the coupling of codesvia standardized data structures - respectively named IDS (Interface Data Structures) or CPO (Con-sistent Physical Objects), wich is the main advantage in contrast to eg. One Modeling Frameworkfor Integrated Tasks (OMFIT [8]) framework that interfaces physics modules without any data modelprescription that allows coupling of codes with prescribed data structures named IDS (Interface DataStructures) or CPO (Consistent Physical Objects). Data structures that are served within personalor global databases are accessible with several programming languages (Fortran, C++, Java, Python,

*See http://www.euro-fusionscipub.org/eu-im

901.1

Page 2: SOLPS-ITER Dashboard · 2016. 12. 22. · SOLPS-ITER Dashboard Leon Kos 1, Ivan Lupelli 2, Xavier Bonnin 3 and EUROfusion-IM Team * 1 Faculty of Mechanical Engineering, University

901.2

and Matlab) translated from XML Schema Definition (XSD [9]) schema. Kepler workflow engine,written in Java, needs to encapsulate physics codes inside its components called “actors”. For that,component builders were developed that help “classical” code developers to “wrap” their physicscode written in non-Java language by specifying communication ports and run-time environment toget the actor skeleton. From there on, developers are required to adapt the code for PDM and anycode-configurable input-parameters into machine readable translation that is usually in XML [10]language. Many IM workflows are quite straightforward to model in Kepler and are hardly changeddue to their complexity in code-coupling.

It should be noted that the coupling of codes via the standard PDM does not bind the user to de-sign workflow in Kepler but other workflow engines could be used instead. Some of Kepler’s weakpoints in complex IM workflows are: (i) no fault tolerance (recover / divert / restart) capabilities,(ii) remote execution model is part of the workflow, (iii) remote HPC/GRID/cloud submission/datatransfer policy is usually incompatible with external workflows, (iv) variations of actors and com-posite actors are bound to. Scientific workflow systems foster open and reproducible research andtend to abstract computational resources inside web interfaces [11, 12]. Reproducible science shouldbe enabled with workflow exchange through web portals such as myExperiment [13], provenanceand open data. However, the technical details in running the workflows are hindering the exchangefor reuse and are rarely changed once created. Kepler graphical user interface (GUI) for editing andexecution is an application that typically runs in a virtual desktop provided by a compute-clusterlogin-node. While scientific workflow engines cover “task” dependencies well by creating directacyclic graphs they provide little support for interactive tasks in preparing the input data. Physicscode monitoring and visualisation is another aspect that is not covered sufficiently and extensions [14]are required to provide progress evidence to users. Visualisation pipeline that is often neglected inmany workflow systems is primary point of VisTrails [15] workflow system that concentrates in dataexploration where complex 3D visualisations are needed. Building visualisation pipeline on top ofThe Visualization Toolkit (VTK [16]) toolkit is also possible with interactive 3D visualisation toolssuch as ParaView [17] or VisIt [18] that are ubiquitously used among HPC community. Importantaspect for day-to-day users is tailoring of the GUI to preferences while using the physics code(s) sothat they can interactively explore compute progress. For that purpose users usually create customGUI for controlling and monitoring in a dashboard that eases the control over their cases, called“Runs” in the Scrape-Off Layer Plasma Simulation (SOLPS) code as shown in Fig. 1 together withthe standalone ParaView application for in situ instrumentation.

SOLPS is a package of codes developed over many years and was started as an evaluation tool forengineers but then developed into an essential tool that allowed combining the design and modellingprocess of the divertor, with synthesising different pieces of information from the theoretical analysis,experimental studies and engineering intuition. Several versions of SOLPS code exist to date. Thenewly developed SOLPS-ITER [19] suite of codes comprises of a grid generator CARRE [20], a toolfor specifying the material structures and providing inputs to the other codes, DivGeo, the plasmafluid code B2 [21], the kinetic neutrals Monte Carlo code Eirene [22], and in addition to that a bundleof plotting tools and scripts used for post-processing.

The ambition of the SOLPS-ITER effort is to become the new standard used across the ITERParties for modelling not only ITER, but also other tokamaks and linear plasma devices whereverapplicable. In order to facilitate user adoption of SOLPS-ITER and migration from earlier versions,it has therefore been decided to include as part of the SOLPS-ITER package, a more user-friendlyinterface for some of the more tedious and error-prone tasks to ease the transition for users of olderversions and provide additional added value and incentive for those users switching to SOLPS-ITER.At the same time, SOLPS users have, over the years, expressed the desire for some run monitoring

Proceedings of the International Conference Nuclear Energy for New Europe, Portoroz, Slovenia, September 5-8, 2016

Page 3: SOLPS-ITER Dashboard · 2016. 12. 22. · SOLPS-ITER Dashboard Leon Kos 1, Ivan Lupelli 2, Xavier Bonnin 3 and EUROfusion-IM Team * 1 Faculty of Mechanical Engineering, University

901.3

Figure 1: SOLPS-ITER GUI showing Runs view (left) for controlling simulations and ParaViewCatalyst In Situ instrumentation of the SOLPS-ITER code (right).

framework and more powerful graphical post-processing tools.

2 SOLPS-ITER GUI

In addition to the established SOLPS-ITER code suite a new SOLPS-ITER GUI is being devel-oped in support of users that can now easily work with the codes for preparing and controlling theruns on the cluster. SOLPS-ITER GUI aims to provide the users the ability to design custom work-flows in a dashboard-style layout. The principles and the GUI presented in continuation are easilytransformed to other simulation codes. Especially, the communication among the building blocks ofthe dashboard is aimed to provide workflow-like functionality. The workflow of a SOLPS-ITER coderun can be broken down into 6 separate steps, not all of which need to be done for every simulation.The steps consist of:

1. Geometry set-up. The “device description” specifies positions of surfaces bounding the do-main of interest together with the properties of these surfaces such as temperature, materialproperties, transparency, etc... The external tools for design and meshing are launched in aloop to create and Populate baserun that can be then used by a series of runs.

2. Choice of the physics parameters for the run(s). The input files are being simply edited withthe support of the manual or with the help of the input file builder that logically groups theinput parameters described in a structured XML file and then translates them to several placesinside SOLPS code.

3. Choice of the initial state. Because of the complexity of the plasma model to be solved, it isalmost always more efficient to use as the starting point to a new simulation the convergedend-state of some previous run, even if it comes from a different geometry or with differentphysics parameters. Thus the user often renames an end state file to be an initial state in thenew run directory being prepared by the Import button in Fig. 1.

Proceedings of the International Conference Nuclear Energy for New Europe, Portoroz, Slovenia, September 5-8, 2016

Page 4: SOLPS-ITER Dashboard · 2016. 12. 22. · SOLPS-ITER Dashboard Leon Kos 1, Ivan Lupelli 2, Xavier Bonnin 3 and EUROfusion-IM Team * 1 Faculty of Mechanical Engineering, University

901.4

4. Launch of the run(s). The code is typically run on a scientific computing cluster, and usersusually submit multiple runs simultaneously to explore physical dependencies by doing pa-rameter scans. The runs view in Fig. 1 shows the “job” controlling interface. The mon-itoring of the Runs is an important aspect of the GUI that needs to determine: (i) whichruns are doing well but need continuing, (ii) which runs have converged and can be storedfor archival/analysis/post-processing, (iii) which runs have crashed, and (iv) ambiguous runswhich have not crashed, but do not show that they are on the path to convergence according tothe automatic criteria and need some human assessment.

5. In-line analysis and continuation of the run(s) until convergence. For the runs currently beingexecuted, some simple in-line analysis is required to look at a few important physics parametersand assess if the run is doing well and going in the right direction. A rich library of theindividual command-line scripts already exist to perform such an analysis function. Thesescripts are mostly based on a portable command-line driven plotting utility Gnuplot [23] thathas been encapsulated inside the SOLPS-ITER GUI as shown in Fig. 2 on a default Dashboard.Custom widgets were created that communicate and trigger plotting of desired scripts. Thedefault dashboard, that has a resizable layout, is kept minimal in size and complexity to theusers. However, the dashboard is completely user configurable and designed with graphicalprogramming tool in a workflow-style manner, described in Sec. 3.

6. Post-processing analysis. Once runs have been identified as having converged and completed,post-processing and a means to compare results from different runs with each other is required.In the present SOLPS versions, only ad hoc solutions exist, often using proprietary software.For single-run analysis, the existing b2plot program can be employed, used to obtain ASCIIand graphical output from a single run. SOLPS-ITER GUI provides a new complementarytool, as a ParaView plug-in, allowing the same quantity from a series of runs to be plotted,facilitating comparisons, and to enable the plotting of one quantity in the code output dataagainst another. For that purpose data from multiple runs is stored in the IMAS database;allowing also the inclusion of a SOLPS actor in Kepler workflows. The new UAL Edge readerplugin for ParaView delivers essentially the same visualisation and analysis possibilities as theCatalyst instrumentation, shown in Fig. 1, except that it allows post-processing of multipleruns in one window at once and comparative views. The PDM for edge profiles IDS allowscomparison with experimental data and other codes too. The grid and mapped field data ismodelled with General Grid Description [24] (GGD) that is used within EU-IM and ITERcommunity as a common way to describe grids. For the conversion of the results, stored asEdge CPO a utility cpo2ids was written as part of the GUI to allow the transition to SOLPS-ITER and comparison inside IMAS edge profiles IDS.

SOLPS-ITER GUI keeps track of the jobs submitted by acting as a server that accepts status changemessages from the running jobs. The concept of the monitoring interface allows large scale moni-toring of several hundreds jobs submitted in a cluster independent way. At the launch of the GUI,asynchronous scan of the monitored run-trees provides code status derived from the log files insideruns.

Physics codes such as SOLPS, developed over may years, are using specialised plotting scripts(e.g. b2plot) that cannot easily be replaced with “modern” visualisation tools. However, the aim ofthe GUI is to encapsulate those utilities and provide user-friendly interface for new users and attractSOLPS experts to simplify daily use and share dashboards among them. The SOLPS-ITER GUIis written with PyQt5 [25] application programming interface (API) that brings Python portabilityand scripting to advanced users. Applicability of the SOLPS GUI is therefore wide and is proven to

Proceedings of the International Conference Nuclear Energy for New Europe, Portoroz, Slovenia, September 5-8, 2016

Page 5: SOLPS-ITER Dashboard · 2016. 12. 22. · SOLPS-ITER Dashboard Leon Kos 1, Ivan Lupelli 2, Xavier Bonnin 3 and EUROfusion-IM Team * 1 Faculty of Mechanical Engineering, University

901.5

Figure 2: Default SOLPS-ITER dashboard with custom widgets for TCSH shell and Gnuplot.

run on many clusters as well as on standalone Linux machines and can in principle be used by othercodes too.

3 THE DASHBOARD

The SOLPS GUI design allows users to extend the functionality by coupling custom widgetsprepared for the ease of use within the dashboard. These custom widgets are in similar environmentscalled actors as they do act on some data depending on input received and then they pass resultsfurther in a scientific workflow. Custom widgets for SOLPS are operating in a similar fashion in away that they receive and send the signals to other widgets for further operation. In principle, noprogramming is needed by users to create their own Dashboard for analysing and controlling theSOLPS simulations. Graphical workflow “design” is done with Qt designer.

In contrast to the scientific workflow engines such as Kepler we are more oriented to look-and-feel experience than to create a general purpose workflow engine. That is why the widgets in theSOLPS GUI are designed to have “nice” input and output presentation while we don’t care how“nicely” wires are placed. The “wiring” is usually takes up significant amount of space in otherworkflow engines where actors are “small” or have a unified size with separated or neglected displayoutput.

The SOLPS GUI uses the reverse approach with widgets filling up the available Dashboard win-dow completely. There can be many widgets that trigger part of the workflow, whereas there arejust play/pause/stop buttons used in Kepler. The SOLPS GUI signal/slot philosophy provided byQt framework is similar to input/output ports in Kepler, while the triggering is more explicit thanimplicit. This means that usually a single trigger is needed to start the action with the assumptionthat all needed signals describing the action already arrived beforehand.

Users are therefore encouraged to design their own Dashboard by redesigning it to suit theirneeds. As the dashboard is intended to be configured with Qt designer this means that all actionsneeds to be provided within the widgets and connected by signals. “Wiring” can also be graphical.The GUI is then saved in XML files and compiled on-the-fly at the GUI startup. Even when providinga limited set of “custom” widgets, there can exist many different dashboards for running SOLPS

Proceedings of the International Conference Nuclear Energy for New Europe, Portoroz, Slovenia, September 5-8, 2016

Page 6: SOLPS-ITER Dashboard · 2016. 12. 22. · SOLPS-ITER Dashboard Leon Kos 1, Ivan Lupelli 2, Xavier Bonnin 3 and EUROfusion-IM Team * 1 Faculty of Mechanical Engineering, University

901.6

(a)

(b)

(c)

(d)

(e)

(f)

Figure 3: The SOLPS Dashboard designer with custom widgets (a); default user interface (b) andcustomised dashboard in (c). Widget hierarchy (d) can contain custom widgets that have customproperties (e) and custom signal&slots pairs in the Signal/Slot Editor (f).

simulations. They may differ on the analysis, user’s preferences and may be exchanged for to bereused by others. To some extent the whole SOLPS-ITER GUI can be called the dashboard withmost of the widgets freely “removable” from the dashboard.

3.1 The Dashboard Designer

The PyQt5 framework [25] provides Qt designer application that is normally used for graphicallydesigning Qt [26] applications and generate corresponding widget-layout code. PyQt can compileand interpret with Python designed .ui XML files on-the-fly and that means that the whole GUI isread at the application startup. The PyQt5 plugin for Qt designer extends standard set of Qt GUIwidgets with the possibility for developers and users to create “custom” widgets for use inside thedesigner and then within the SOLPS GUI application. The SOLPS custom widgets shown in Fig. 3(a)are scripted in Python and they usually inherit and extend the functionality of some built-in Qt widget.Those “custom” widgets are grouped under the SOLPS toolbox and the available to be dragged anddropped onto the dashboard.

The “extended” tool in Fig. 3 is called SOLPS Dashboard designer and is in principle generaltool for designing Qt GUIs that are shown in two dashboard examples: Fig. 3(b) with the defaultdashboard and Fig. 3(c) showing custom dashboard designed. Although the default dashboard isusually sufficient, the users are encouraged to delete it and create their own in a grid or by usingthe container widget. Their look-and-feel depends on user preferences and available screen how todesign. The dashboard can have statically positioned widgets or can have some responsive re-sizingfunctionality that is built in the Qt framework. It should be noted that the users are not limited just toa single Dashboard view and that additional pages can be created as folders to the default GUI.

The Object Inspector in Fig. 3(d) allows the user to select and manipulate the widgets in a com-plex layouts. For example in Fig. 3(c), the Gnuplot widget is overlaid several times inside the “Tool-Box“ container widget. When the desired widget is selected the object’s properties shown in Fig. 3(e)can then be edited. For custom widgets there exist “custom” properties such as runDir marked pur-

Proceedings of the International Conference Nuclear Energy for New Europe, Portoroz, Slovenia, September 5-8, 2016

Page 7: SOLPS-ITER Dashboard · 2016. 12. 22. · SOLPS-ITER Dashboard Leon Kos 1, Ivan Lupelli 2, Xavier Bonnin 3 and EUROfusion-IM Team * 1 Faculty of Mechanical Engineering, University

901.7

(a) (b)

(c) (d)

Figure 4: Simple workflow design example with Director, Gnuplot and PushButton widgets.

ple on Fig. 3(e) that specifies in which directory the Gnuplot should execute solpsPlotCommandscript written in TCSH shell language that is traditionally used as a standalone SOLPS script; runfrom the command line in desired runDir. Default values for the object properties in Fig. 3(e)come from the widget itself and can be overwritten during the design phase. Furthermore, the prop-erties can be changed from the program or, more interestingly, by signalling appropriate value fromother widgets. The latter approach allows us to create workflows within the SOLPS dashboard de-signer. It should be noted that such graphical-only programming is possible only if the widgets usedon the dashboard are able to exchange compatible signals. The compatibility is assured when samebasic types are signalled to the widget slots. The Signal/Slot Editor [see Fig. 3(f)] allows the creationof such signal – slot pairs. However, for signalling, there is also the possibility to route widget signalsgraphically with a Workflow designer that is part of the Dashboard designer when we switch into the“signal design” mode. Besides the design mode there is also the “run mode” where one can test theGUI behaviour even at the design time provided that the test parameters are setup for the custom wid-gets in the workflow. Ideally, all dashboard could be designed out of the standard and custom widgetsand users could design the dashboard from scratch and use the graphical programming only. SuchGUI design is certainly possible. However, the SOLPS-ITER GUI design was selected to provideSettings, Runs, Archive and Log view as built-in functionality; the rest is fully “redesignable”.

3.2 The Workflow Designer

The Workflow designer is in fact just the combination of widget layout and signal designer. Toallow signals to travel from the Runs view the Director widget is introduced in as similar fashion aswith other workflow systems. The workflow design steps are depicted in Fig. 4 example where weillustrate creation of a simple workflow by deleting default Dashboard view and leaving only the Di-rector before the dashboard is build up. Widgets are positioned with drag and drop in Fig. 4(a). Sig-

Proceedings of the International Conference Nuclear Energy for New Europe, Portoroz, Slovenia, September 5-8, 2016

Page 8: SOLPS-ITER Dashboard · 2016. 12. 22. · SOLPS-ITER Dashboard Leon Kos 1, Ivan Lupelli 2, Xavier Bonnin 3 and EUROfusion-IM Team * 1 Faculty of Mechanical Engineering, University

901.8

Figure 5: Python Scripting workflow example.

nals are directed from one widget to another by drag and drop too as shown in Fig. 4(b). Here manysignals and slots are possible. In Fig. 4(b) Director sends Run-selected rundir passthroughsignal to Gnuplot setRundir slot. In similar fashion PushButton widget directs the clicked sig-nal to executeSolpsPlotCommand slot of the Gnuplot widget. Complete workflow in Fig. 4(c)is then saved as a custom GUI file that is demonstrated live in Fig. 4(d). Complex workflows arealso possible. All that is needed is having custom widgets that pass compatible signals. In caseswhere “special” behaviour is needed and is not provided through default Qt widgets one can alwayscreate derived version of basic widgets with Python scripting and put it under the SOLPS or anothertoolbox. When some signal/slots are missing from the widgets they can be simply added withoutbreaking existing workflow design. It should be noted that for complex workflows, that can extendover several dashboards in the GUI, signal can be passed by using regular Signal/Slot Editor. Userscan also choose to hide some widgets created or put them aside on a separate page.

3.3 Python Scripting

Sooner or later the users are required to express some tasks using scripts instead of using lessconvenient looping “actors” provided by a workflow system. It is also more intuitive to most users tohave simple tasks presented as a building blocks inside the dashboard. If these scripts are commonlyused then they deserve an icon for placement in workflows. The Script widget for SOLPS GUIprovides the scripting support to advanced users that would like to create workflows that will interactwith simulations or do some built-in calculation required for their work.

In the scripting example, shown in Fig. 5, we want to create a series of directories for parameterscanning simulations. The workflow is essentially the same as with Fig. 4 except that now TCSHwidgets receive “working” directory passed from Director at the run selection in Runs view. ThePushButton triggers run slot and the Python script is executed. Evaluation of the script can emit“custom” output signals to TCSH widget that then create a multiple directories in a loop. All otherPython language possibilities can be used inside the script that is entered at the time of design andstored inside the custom GUI file. It may be observed that entering Python scripts with the dashboarddesigner, saving .ui, and the running may be cumbersome in some cases; but one can create Pythonscripts externally and reused them here. Furthermore, the Script widget can update itself in a GUI

Proceedings of the International Conference Nuclear Energy for New Europe, Portoroz, Slovenia, September 5-8, 2016

Page 9: SOLPS-ITER Dashboard · 2016. 12. 22. · SOLPS-ITER Dashboard Leon Kos 1, Ivan Lupelli 2, Xavier Bonnin 3 and EUROfusion-IM Team * 1 Faculty of Mechanical Engineering, University

901.9

file at run time by adding XML update possibilities to the widget.

4 CONCLUSION AND OUTLOOK

We have presented the framework to design the workflows and the dashboard by extending ex-isting Qt tools that are traditionally used only for GUI designs and have programmed actions in thecode. With the SOLPS-ITER GUI, we implemented and demonstrated that the workflow creation ispossible with our Python-based workflow engine. The workflow execution model is independent ofclusters and provided by Runs view. The layout of the widgets is fully configurable and, in contrastto other scientific workflow engines, provides the dashboard as the front end to the users solvingthe workflow monitoring problem in user friendly way. The sharing of a complex dashboard designis possible among users and is more oriented towards monitoring and graphical presentation, withfull visualisation support. Having all these features in mind, we would like to highlight that the pre-sented approach is significantly advanced for users with similar physics codes that need to be putinside a dashboard for easy handling, coupling, monitoring and scientific exploration. Overall, theSOLPS-ITER dashboard also demonstrates workflow capabilities needed for integrated modelling.

ACKNOWLEDGEMENTS

This work has been carried out within the framework of the EUROfusion Consortium and hasreceived funding from the Euratom research and training programme 2014-2018 under grant agree-ment No. 633053 and ITER contract IO/4300001173. The views and opinions expressed herein donot necessarily reflect those of the European Commission nor those of the ITER Organization.

REFERENCES

[1] F. Imbeaux, S.D. Pinches, J.B. Lister, Y. Buravand, T. Casper, B. Duval, B. Guillerminet, M. Hosokawa,W. Houlberg, P. Huynh, S.H. Kim, G. Manduchi, M. Owsiak, B. Palak, M. Plociennik, G. Rouault,O. Sauter, and P. Strand, “Design and first applications of the iter integrated modelling & analysis suite,”Nuclear Fusion 55, 123006, http://stacks.iop.org/0029-5515/55/i=12/a=123006

[2] G.L. Falchetto, D. Coster, R. Coelho, B.D. Scott, L. Figini, D. Kalupin, E. Nardon, S. Nowak, L.L.Alves, J.F. Artaud, V. Basiuk, Joao P.S. Bizarro, C. Boulbe, A. Dinklage, D. Farina, B. Faugeras, J. Fer-reira, A. Figueiredo, Ph. Huynh, F. Imbeaux, I. Ivanova-Stanik, T. Jonsson, H.-J. Klingshirn, C. Konz,A. Kus, N.B. Marushchenko, G. Pereverzev, M. Owsiak, E. Poli, Y. Peysson, R. Reimer, J. Signoret,O. Sauter, R. Stankiewicz, P. Strand, I. Voitsekhovitch, E. Westerhof, T. Zok, W. Zwingmann, ITM-TFContributors, the ASDEX Upgrade Team, and JET-EFDA Contributors, “The European Integrated Toka-mak Modelling (ITM) effort: achievements and first physics results,” Nuclear Fusion 54, 043018 (2014),http://stacks.iop.org/0029-5515/54/i=4/a=043018

[3] Kepler website, http://kepler-project.org

[4] D. Kalupin, I. Ivanova-Stanik, I. Voitsekhovitch, J. Ferreira, D. Coster, L.L. Alves, Th. Aniel, J.F Artaud,V. Basiuk, Joao P.S. Bizarro, R. Coelho, A. Czarnecka, Ph. Huynh, A. Figueiredo, J. Garcia, L. Garzotti,F. Imbeaux, F. Kochl, M.F. Nave, G. Pereverzev, O. Sauter, B.D. Scott, R. Stankiewicz, P. Strand, ITM-TF contributors, and JET-EFDA Contributors, “Numerical analysis of jet discharges with the europeantransport simulator,” Nuclear Fusion 53, 123007, http://stacks.iop.org/0029-5515/53/i=12/a=123007

[5] O. Hoenen, L. Fazendeiro, B.D. Scott, J. Borgdorff, A.G. Hoekstra, P. Strand, and D.P. Coster, “Design-ing and running turbulence transport simulations using a distributed multiscale computing approach,” in

Proceedings of the International Conference Nuclear Energy for New Europe, Portoroz, Slovenia, September 5-8, 2016

Page 10: SOLPS-ITER Dashboard · 2016. 12. 22. · SOLPS-ITER Dashboard Leon Kos 1, Ivan Lupelli 2, Xavier Bonnin 3 and EUROfusion-IM Team * 1 Faculty of Mechanical Engineering, University

901.10

EPS 2013, Europhysics Conference Abstracts, 37D, 40th EPS Conference on Plasma Physics (EuropeanPhysical Society, 2013) http://ocs.ciemat.es/EPS2013PAP/pdf/P4.155.pdf

[6] D. Kalupin, O. Asunta, R. Coelho, D. Coster, J. Ferreira, A. Figueiredo, K.Gal, I. Ivanova-Stanik,T. Jonnson, B. Palak M. Owsiak, M.Schneider, R.Stankiewicz, P.Strand, and the EU-IM team, “Predic-tive simulations of reactor-scale plasmas fuelled with multiple pellets with the european transport simu-lator,” in EPS 2015, Europhysics Conference Abstracts, 39E, 42nd EPS Conference on Plasma Physics(European Physical Society, 2015) http://ocs.ciemat.es/EPS2015PAP/pdf/P2.169.pdf

[7] R. Coelho, B. Faugeras, E. Giovanozzi, P. McCarthy, W.Zwingmann, E.P. Suchkov, F.S. Zaitse,M. Dunne, I. Lupelli, N. Hawkes, G. Szepesi, JET contributors, ASDEX Upgrade Team, and EUROfusion IM Team, “Integrated equilibrium reconstruction and MHD stability analysis of tokamak plasmasin the EU-IM platform,” in EPS 2016, Europhysics Conference Abstracts, 40A, 43rd EPS Conferenceon Plasma Physics (European Physical Society, 2016) http://ocs.ciemat.es/EPS2016PAP/pdf/P1.050.pdf

[8] OMFIT website, http://gafusion.github.io/OMFIT-source/

[9] XSD website, http://www.w3.org/XML/Schema

[10] XML website, http://www.w3.org/XML/

[11] S. Gesing, M. Atkinson, R. Filgueira, I. Taylor, A. Jones, V. Stankovski, C. S. Liew, A. Spinuso, G. Ter-styanszky, and P. Kacsuk, “Workflows in a dashboard: A new generation of usability,” in Workflows inSupport of Large-Scale Science (WORKS), 2014 9th Workshop on (2014) pp. 82–93

[12] E. Deelman, K. Vahi, G. Juve, M. Rynge, S. Callaghan, P. J. Maechling, R. Mayani, W. Chen,R. Ferreira da Silva, M.Livny, and K. Wenger, “Pegasus, a workflow management system for sci-ence automation,” Future Generation Computer Systems 46, 17 – 35 (2015), ISSN 0167-739X, http://www.sciencedirect.com/science/article/pii/S0167739X14002015

[13] MyExperiment website, http://myexperiment.org/

[14] M. Haefele, L. Kos, P. Navaro, and E. Sonnendrucker, “Euforia integrated visualization,” in PDP 2010- The 18th Euromicro International Conference on Parallel, Distributed and Network-Based Processing(Pisa, Italy, 2010) pp. 498–502

[15] VisTrails website, http://www.vistrails.org/

[16] “Visualization toolkit,” http://www.vtk.org/ (2016)

[17] ParaView website, http://paraview.org

[18] VisIt website, http://visit.llnl.gov

[19] X. Bonnin, W. Dekeyser, R. Pitts, D. Coster, S. Voskoboynikov, and S. Wiesen, “Presentation of the newSOLPS-ITER code package for tokamak plasma edge modelling,” Plasma Fusion Research 11 (2016)

[20] R. Marchand and M. Dumberry, “CARRE: a quasi-orthogonal mesh generator for 2D edge plasma,modelling,” Computer Physics Communications 96, 232–246 (1996)

[21] B.J. Braams, A multi-fluid code for simulation of the edge plasma in tokamaks., Tech. Rep. (FOM Insti-tuut voor Plasmafysica, Postbus 1207, The Nederlands, 1987)

[22] D. Reiter, The EIRENE Code User Manual, Forschungszentrum Julich (November 2005)

[23] Gnuplot website, http://www.gnuplot.info

[24] L. Kos, J. Krek, M. Telenta, and EU-IM Team, “Visualisation of fusion related models stored in gen-eral grid description,” in Proceedings of the International Conference Nuclear Energy for New Europe(Portoroz, Slovenia, 2015) pp. 704.1 – 704.6

[25] PyQt5 website, https://pypi.python.org/pypi/PyQt5

[26] Qt website, https://www.qt.io

Proceedings of the International Conference Nuclear Energy for New Europe, Portoroz, Slovenia, September 5-8, 2016