The field of nanotechnology transformed virtually every aspect of our lives during the last few decades. As researchers gradually understood the structural basis of complex biological processes, the need arose to rationally design artificial structures on the nanoscale that can mimic some of such processes, or interfere with them at the molecular/supramolecular level.
The present proposal aims to create new models of colloidal building blocks that can self-assemble into functional structures at this length scale. We will modify a coarse-grained model of charged rigid particles, having only ionic and excluded volume repulsive interactions, originally developed in my group for self-assembling tetravalent Goldberg hollow shells. By exploiting the observation that large-scale cooperative rearrangements between competing structures in model hollow shells have in fact very simple energetic profiles, novel colloidal motor designs will be developed, which will be able to transform external energy input into directional rotational motion. The second model to be created is for colloidal building blocks that form two-dimensional quasicrystals. Such structures are predicted to have very interesting optical properties, and can be exploited for many photonic applications. It is extremely difficult to experimentally create motors or quasicrystals from colloidal building blocks. The computational models developed in this project can guide experiments by specifying the minimal conditions for building blocks in order to be able to spontaneously form functional structures on the colloidal length scale.
For the technically savy readers, we have set up three Docker environments in this stage:
1. The molecular dynamics environment:
This mainly consists of the HOOMD-Blue library and some custom scripts which will be used to automatise the workflow of guessing and perfecting the simulation parameters, also a basic database which will record all the data, written in Pandas. This container can be accessed trough the built in Jupyter notebook, which is an interactive Python scripting environment.
2. The structure optimization environment:
This Docker image is built on the Python 2.7 image, with Pele and some other Python packages installed, like NumPy and SciPy for performing the required calculations and Pandas to manage data. The main role of this container is to optimise simple molecular structures, to produce input for the machine learning environment and to study the energy landscapes of molecules.
3. The machine learning environment:
This container is based on the official Tensorflow-Jupyter image, with some extra packages to support the creation of 3D representations of molecular structures. The purpose of this container is to create a neural network, which takes as input a randomly generated molecular structure and predicts a starting structure for energy minimisation, with the aim of guessing a structure that is close to a local potential energy minimum.
A draft progress report can be downloaded from here.