Code Monkey home page Code Monkey logo

nemo's Introduction

NEMO - Photophysics with the Nuclear Ensemble Method

made-with-python license down maint commit CodeFactor

Version 1.1.0

Fluorescence, phosphorescence and intersystem crossing (ISC) rate calculations. Absorption, fluorescence and phosphorescence spectrum simulations. Förster radius and singlet exciton diffusion length estimates. Interfaces with the QChem package.

Alt Text

Table of Contents

New in This Version:

1 - During ensemble generation, NEMO now computes the adjacency matrix of the optimized molecule and compares it with the adjacency matrix of each geometry sampled in the ensemble. If the matrices do not match, i.e. if one or more bonds are broken, the sampled geometry is rejected. This helps reduce issues with unphysical geometries and negative transition energies.

2 - Bug fixes.

Cite as:

1- de Sousa, Leonardo Evaristo, and Piotr de Silva. "Unified framework for photophysical rate calculations in tadf molecules." Journal of Chemical Theory and Computation 17.9 (2021): 5816-5824

2 - de Sousa, Leonardo Evaristo, and Piotr de Silva. "Photophysics of Solvated Molecules: Computational Protocol Combining Nuclear Ensemble and Nonequilibrium State-Specific Solvation Methods." The Journal of Physical Chemistry A (2023).

What does this program do?

  1. Photophysics with TD(A)-DFT:
    • Calculates fluorescence and phosphorescence rates from an excited state.
    • Calculates ISC rates from a given singlet state to several triplet states and vice-versa.
    • Absorption, Fluorescence and Phosphorescence spectrum simulations.
    • Rate calculations and spectra include vibrational contributions and state specific solvation effects.
  2. Exciton properties:
    • Calculates the Förster radius for transfers between two molecules of equal or different type.
    • Estimates singlet exciton diffusion lengths.

What is necessary to use it?

  • The program requires that the QChem quantum chemistry software be installed, since it interfaces with it.

  • The first step for running spectrum calculations is providing either a QChem or Gaussian log file for a frequency calculation in the $S_0$, $S_n$ or $T_n$ state, if the goal is computing an absorption, fluorescence or phosphorescence spectrum, respectively. All frequencies must be real.

  • For calculating ISC rates from the $S_n$ state to different triplet states, a QChem or Gaussian frequency calculation at the $S_n$ state must be provided.

  • Similarly, for reverse ISC rates from the $T_n$ state to different singlet states, a QChem or Gaussian frequency calculation at the $T_n$ state must be provided.

  • To obtain the estimates of Förster radius, fluorescence lifetimes and singlet exciton diffusion lengths, it is necessary to first perform both absorption and fluorescence spectra calculations for the molecule of interest.

How to install it?

Run:

pip install nemophoto

To get the latest commit, run:

pip install git+https://github.com/LeonardoESousa/NEMO

Alternatively, clone the repository to your computer. Inside the NEMO folder, run:

pip install .

Once installed, you should be able to run the program from any folder by just using the nemo command.

How to use it?

Here is a quick guide on how to use the software. For a detailed tutorial, click here.

  1. Initial steps:

    • Create a folder for your project. Add the log file for the frequency calculation to your folder. You must also provide a QChem input file containing the $rem section with the settings you wish to apply in the ensemble calculations (e.g. functional, basis set, omega value etc). An example of such file (template.in) is provided here.
    • A frequency calculation in the $S_0$ state is suitable for computing an absorption spectrum. For fluorescence spectra and/or ISC rates calculations from $S_n$ states to triplet states, a $S_n$ frequency calculation is expected. Finally, for phosphorescence spectra and/or rISC rates calculations from $T_n$ states to singlet states, a $T_n$ frequency calculation is expected.
    • Run the nemo command. Choose option 1 and follow the instructions to select the parameters of the calculation. This includes the dielectric constant and refractive index of the medium. This information will be used to obtain state-specific solvent corrections to the TD(A)-DFT energies.
    • Add a bash script file to the folder named batch.sh. This file depends on which batch system you use. Examples of this file for users of slurm or task spooler (ts) are presented here.
    • Run the nemo command again, choose option 2 and follow the instructions. Alternatively, just run all calculations created in the Geometries folder. Once the calculations are running, you may use option 3 to check the progress or option 4 to abort.
  2. For absorption spectrum simulations:

    • Once all calculations from step 1 are done, run the nemo command and choose option 5. Follow the instructions to set the parameters and the spectrum will be generated.
  3. For photophysical rates:

    • Once all calculations from step 1 are done, run the nemo command and choose option 6. Follow the instructions to set the parameters. Three files will be generated: an Ensemble file, with data from the ensemble of geometries; a differential_rate file, with the emission spectrum; a rates file, with all available rates (-> denote radiative transitions and ~> denote ISC transitions).
  4. IMPORTANT:

    • You may choose to calculate spectra and rates with different solvent dielectric constant and refractive index than the ones selected as input in Option 1. To do so, NEMO will resort to the extrapolation procedure described in this paper to adjust the results to the new solvent.
  5. For exciton properties:

For better visualization of results, consider using NEMOview.

nemo's People

Contributors

leonardoesousa avatar lauredethieulloy avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.