FretLab is a high-performance computational tool designed to compute electronic energy transfer (EET) rates. It supports three general use cases:
- Donor to acceptor chromophore EET
- Plasmonic substrate to acceptor chromophore EET
- Donor to acceptor chromophore EET mediated by a plasmonic substrate
FretLab is designed for speed and scalability using parallel processing with OpenMP and efficient linear algebra routines.
All quantities in FretLab are expressed in atomic units. The EET rate is calculated using Fermi’s Golden Rule:
Where:
- V is the total coupling potential between donor and acceptor
- J is the spectral overlap integral
In the presence of a plasmonic substrate (modeled via induced charges
Where:
-
$\rho_A$ and$\rho_D$ are the acceptor and donor charge densities -
$\omega_0$ is the incident frequency -
$q_k^\omega(\mathbf{r}_k; \rho_D)$ are the frequency-dependent induced charges at positions$\mathbf{r}_k$ -
$\mu_k^\omega(\mathbf{r}_k; \rho_D)$ are the frequency-dependent induced dipoles at positions$\mathbf{r}_k$
FretLab requires the following dependencies:
- CMake 3.14 or higher
- Python 3.8+
- Fortran compiler (gfortran 9.3.0 or higher recommended)
- LAPACK/BLAS libraries (MKL suggested)
- Python
runtestmodule (pip install runtest) - OpenMP support
If using MKL (recommended), set the following environment variable:
export MATH_ROOT=/opt/intel/mkl/lib/intel64_lin
To build FretLab, run:
./setup.sh -omp -fc <fort-path>
cd build/
make
This will generate an executable named FretLab inside the build/ directory.
-omp: Enables OpenMP (recommended)-fc <fort-path>: Path to the Fortran compiler (optional)
After building, you can run the test suite with:
cd build/
ctest
To execute a simulation, run:
./FretLab input_file.inp
To see example input files and different configuration options, refer to the files located in:
tests/
FretLab has been used in the following research paper(s):
- Grobas Illobre, P.; Sodomaco, S.; Lafiosca, P.; Giovannini, T.; Cappelli, C. The Role of Atomistic Tip Morphology in Tip-Enhanced Electronic Energy Transfer. Nano Lett. 2026. https://doi.org/10.1021/acs.nanolett.6c03248
FretLab is licensed under the GNU General Public License v3.0.
This project has been supported by the FARE 2020 program — "Framework per l’attrazione e il rafforzamento delle eccellenze per la ricerca in Italia."
FretLab has been developed as part of a collaborative scientific effort involving Tommaso Giovannini, Piero Lafiosca, Sveva Sodomaco, and Chiara Cappelli.
For issues or contributions:
- Email: pgrobasillobre@gmail.com
- Github issues: https://github.com/pgrobasillobre/FretLab/issues
