We
present a versatile new code released for open community use,
the nonadiabatic excited state molecular dynamics (NEXMD) package.
This software aims to simulate nonadiabatic excited state molecular
dynamics using several semiempirical Hamiltonian models. To model
such dynamics of a molecular system, the NEXMD uses the fewest-switches
surface hopping algorithm, where the probability of transition from
one state to another depends on the strength of the derivative nonadiabatic
coupling. In addition, there are a number of algorithmic improvements
such as empirical decoherence corrections and tracking trivial crossings
of electronic states. While the primary intent behind the NEXMD was
to simulate nonadiabatic molecular dynamics, the code can also perform
geometry optimizations, adiabatic excited state dynamics, and single-point
calculations all in vacuum or in a simulated solvent. In this report,
first, we lay out the basic theoretical framework underlying the code.
Then we present the code’s structure and workflow. To demonstrate
the functionality of NEXMD in detail, we analyze the photoexcited
dynamics of a polyphenylene ethynylene dendrimer (PPE, C30H18) in vacuum and in a continuum solvent. Furthermore,
the PPE molecule example serves to highlight the utility of the getexcited.py helper script to form a streamlined workflow.
This script, provided with the package, can both set up NEXMD calculations
and analyze the results, including, but not limited to, collecting
populations, generating an average optical spectrum, and restarting
unfinished calculations.