Skip to main content

Master Thesis at the Culham Centre for Fusion Energy, UK
Reported by Michele Marin. Powered by FuseNet.

My name is Michele Marin and I’m 24 years old. I studied in Padova, Italy and I was given the opportunity to do my master thesis at CCFE. I graduated on the 7th December of 2016.

Simulating Scrape Off Layer Physics using SOLPS.

My interest in nuclear fusion began when I learned about the ITER project. I really like the fact that it is very international and I believe that it can be really important for our future. However, I do also think that it will be hard to replace fossil fuels if nuclear fusion does not become economically feasible.

One of the most challenging obstacles that still needs to be tackled is to learn how to deal with the hot plasma when it inevitably interacts with solid surfaces. In the newest fusion reactors the plasma interacts with the wall in a designated area called the divertor. The physics in the divertor region is particularly complex due to the presence of neutrals. Studied by the field of plasma-edge physics, the small layer close to the reactor wall is commonly called the Scrape Off Layer (or SOL), and the most complete code to simulate the behaviour of the particles in this area is called SOLPS. However, the problem with SOLPS is that it is slow, so strategies are needed to speed it up.

The Parareal Algorithm: making SOLPS significantly faster

The Parareal Algorithm, is a new candidate to speed up the simulations. It splits the time domain in slices and computes each of them with a different processor. Being the simulation initial-values problems, this algorithm may seem counter-intuitive as it appears to violate causality. However, it is a predictorcorrector approach, and if applied correctly, it can greatly reduce computation time. This makes complex simulations of the plasma edge in ITER-like machines feasible.

Based in Oxford, I started my experience at CCFE in March, working on the Parareal. The first part of my project consisted of running SOLPS-5.0, customising it and restarting runs, while plotting the numerous variables that are included in the code. Secondly, the already existing Parareal version was applied to a DIII-D case, as training, and to an ASDEX case in order to explore the correlation between the predictor, the number of processors and its gain.

SOLPS for ITER

Then SOLPS-ITER was installed which is a rather new code that has the purpose of recombining different versions of SOLPS in one solid code that can be use for ITER operations. Firstly, I tested SOLPS-ITER in a non-steady state case, because the Parareal also needs to be able to deal with more complex situations. Subsequently, the Parareal was adapted to SOLPS-ITER and tested on other cases: an ASDEX case and an ITER case, in particular. The predictor of the Parareal is a faster solver that only describes some of the physics of the problem, which is commonly called a ’coarse solution’. Choosing a coarse code is fundamental in order to achieve the required speed gains, of which increasing the time step is the most simple example. However, this approach has its own internal limitations: the CFL-condition prevents the time step from becoming too large without changing the grid as well.

SOLPS-ITER uses a bi-dimensional grid which can be devided in multiple smaller sub-grids. By using these different grids, it is possible to use bigger time steps (20 or 30 times larger), while greatly increasing the speed of the coarse solver. SOLPS-ITER, as well as SOLPS-5.0, are basically made out of two different codes, B2.5 and Eirene. B2.5 is a fluid model that solves the Braginskii’s equations, while Eirene is a kinetic model and it simulates the behaviour of the neutrals. Eirene uses a Montecarlo method and is therefore very computationally expensive. Using the fluid model separately without coupling it to Eirene can speed up the code significantly. Therefore, its a candidate for a coarse solution. However, the main problem with this is that the neutrals are important in computing the heat flux to the divertor region, which is the quantity that the Parareal uses to check convergence. It is also possible to combine the two adjustments that are explained above, to make the code even more course (and therefore faster).

Sometimes, it can't go faster

The Parareal algorithm only works for a subset of physical variables related to the charged particles inside the plasma. An ASDEX case was used to test whether the inclusion of neutrals in the Parareal algorithm would results in an even faster code. Afterwards, SOLPS-ITER was used explored to explore a typical ITER scenario, however, it was not possible to obtain a gain in this situation. The combination of bigger time steps and a stand-alone version of code was used as a coarse, while a calibration process was introduced to adjust the neutral density near the walls. More work on this code is needed, starting with adapting the Parareal for the last version of the code, increasing its stability.

Doing my master thesis at Culham Centre for Fusion Energy has been a very positive experience for me. I learned how to write scripts in FORTRAN and phyton, and also how to use SOLPS. I had the opportunity to meet and work with a lot of great people from different cultures. Oxford is a very multicultural town, which makes it a great place to study. Finally, I would like to thank my supervisor for helping me solve the problems that I encountered and I would like to thank FuseNet for their support which has helped me a lot during this adventure.