This repository contains the implementation of the uncertainty-controlled genetic algorithm (ucGA) for the design of singlet fission materials presented in the paper (TODO:Link).
-
Clone the repository:
git clone https://github.com/lcmd-epfl/ucGA.git cd ucGA
-
Create and activate the Conda environment:
conda env create -f env.yml conda activate ucGA
-
Further Installations: Install NaviCatGA, theodore and QML by following the instructions on the respective project websites.
-
SCScore: Install the SCScore to utils/.
-
Configure the parameters: Edit
config.py
to set the appropriate paths for input data, models, and output directories. -
Run the main optimization:
python main.py <output_folder>
- config.py: Configuration file for setting paths and parameters for the genetic optimization. Edit this file to specify paths for input data, models, and output directories according to your system's directory structure.
- main.py: Main script for launching the uncertainty-aware optimization.
- assembler/: Automatically assembling molecules from the reFORMED database.
- fitness_evaluation/: Uncertainty-aware fitness function determination.
- model_predictors/: Prediction of properties using SLATM models.
- objective_scores/: Calculate scores to assess singlet fission propensity.
- quantum_calculations/: Scripts for performing xTB and TD-DFT calculations.
- utils/: Utility scripts and functions.
If you use this code, please cite the following paper:
Luca Schaufelberger, TODO
For questions, please contact `schaluca@ethz.ch'