Self-gravity and Contact detection Optimisation in LMGC90
University of Colorado Boulder

This project concerns that parallelisation and optimisation of LMGC90.  LMGC90 is an open-source, multi-purpose Physics code developed at the University of Montpellier (UofM).  In the last few years, we have used this code to simulate self-gravitating granular systems, which in turn have been used as proxies for small asteroids and other small Solar System bodies [1][2].  To do this, the code uses an external, open-source python library (pykdgrav) to calculate self-gravity between the simulated particles.  This library uses and kd-tree and has been parallelised by its authors.

LMGC90 [3] has a contact detection algorithm of its own, but this is neither parallelised nor coupled to pykdgrav [4].  So, at the moment, when the code is used to simulate self-gravitating systems, distances are calculated twice.

The objective of the project is to fully integrate pykdgrav withing LMGC90, possibly use it as or as part of the contact detection algorithm and so have this part of the code completely parallelised and optimised to simulate self-gravitating granular systems.  If the self-gravity and contact detection algorithm are kept separated, the former should still be fully integrated into LMGC90 and the latter should be parallelised.

At the moment, there are only a handful of simulation codes that can handle self-gravitating granular systems that can be used by the scientific community at large and not all of them are as mature as LMGC90.  Additionally, NASA's latest space missions to asteroids and their space exploration and Planetary Sciences objectives require this kind of simulation to be reached.  We expect this code to be used to be used as a tool in this endeavour.

The student working with us will be mentored by the developers of the code (UofM) and users of the code who work in the project at UofM and the University of Colorado Boulder.

ACCESS resources that would be needed are unknown at the moment.

Status: In Review
Study of Phase Transition in Two-Photon Dicke Model
Purdue University

I am not familiar with exchanging credits for hours on machine and any guidance as which cluster and how many hours needed on it would be great. I am experienced in python coding and would like to work on a python friendly interface and i need to parallelize my code to run for lots of different parameter values and it also involves large matrix so quite some memory overhead.

Status: Declined