KINEBEC
The project - Master internship - News - Publications & Communications
The project : Kinetic equations and simulations for Bose-Einstein condensation
The main topic of the KINEBEC project is to solve numerically the Boltzmann-Nordheim equation thanks to spectral methods based on the use of fast Fourier transforms.
In this equation, f is the distribution function that depends on the time t, the position variable x ∈ ℝ³ and the velocity variable v ∈ ℝ³, and the collision operator Q(f) is trilinear in f in order to consider quantum effects of the collisions (see [1] for complementary details about the definition of the model).
The collision operator Q(f) induces a fastly increasing computational cost as the velocity grid is refined because of the trilinearity. Hence specific HPC techniques must be considered in order to produce accurate numerical simulation within a reasonable walltime.
In addition, the specific definition of Q(f) may induce quantum degeneracy when a specific criterion based on the rescaled Planck constant ℏ, the mass density ρ and the internal energy e is broken. Such physical phenomenon has already been observed in physics experiments but is not so well known from a mathematical point of view: indeed, at this point, only 3D Bose-Einstein condensation has been completely identified as a combination of a singular quantum maxwellian and a Dirac measure (see [2]). However, the mathematical investigation about the quantum degeneracy for fermions is not as rich as for bosons.
F. Filbet, J. Hu, S. Jin : A numerical scheme for the quantum Boltzmann equation with stiff collision terms, ESAIM Math. Model. Method. Numer. Anal 46-2 (2012), 443-463.
M. Briant, A. Einav : On the Cauchy Problem for the Homogeneous Boltzmann–Nordheim Equation for Bosons: Local Existence, Uniqueness and Creation of Moments, J. Stat. Phys. 163-5 (2016), 1108-1156.
Main goals
Our goal is to build a highly parallelized code that uses spectral methods for solving Boltzmann-Nordheim equation. This code must embed:
A spectral accuracy of the collision operator computation
A good classification of relaxing/degenerating test cases, i.e. if the distribution function is predicted to relax towards a quantum maxwellian, the code should be able to simulate it up to a sufficiently fine mesh.
In a first part, this code will be developed for solving the homogeneous Boltzmann-Nordheim equation and will be used to investigate the quantum degenerative limit states that may reached by the distribution function in the case of Fermi-Dirac particles and that are not known as well as those for Bose-Einstein particles.
In a second part, we will make this code evolve in order to tackle the non-homogeneous case and its hydrodynamics limit.
About the code
At present time, the code is mainly written in C and several parallelizations techniques have been implemented for computing the collision term: more precisely, we have implemented versions in MPI, OpenMP and Cuda.
Along with this kernel code, we also use Cmake scripts for managing the compilation on the computing cluster we are using in Université de Lille and Laboratoire Paul Painlevé.
We also use many Python scripts for handling the pre-processing (configuration of the compilation, preparation of run sequences...) and the post-processing (visualization and diagnostics).
Even if the code is still under development, the version 1.0 has been released on HAL repository.