It has been primarily used for simulations of ultrafast processes (femtosecond to picosecond time scale) in photoexcited molecules.
Newton-X uses the trajectory surface hopping method, a semi-classical approximation in which the nuclei are treated classically by Newtonian dynamics, while the electrons are treated as a quantum subsystem via a local approximation of the Time-dependent Schrödinger Equation.
Newton-X is designed as a platform to perform all steps of the nonadiabatic dynamics simulations, from the initial conditions generation, through trajectories computation, to the statistical analysis of the results.
It works interfaced to a number of electronic structure programs available for computational chemistry, including Gaussian, Turbomole, Gamess, and Columbus.
When computed by Newton-X, it is done with a numerical approximation based on overlap of electronic wavefunctions obtained in sequential time steps.
A local diabatization method is also available to provide couplings in the case of weak nonadiabatic interactions.
As part of the initial conditions module, Newton-X can simulate absorption, emission, and photoelectron spectra, using the Nuclear Ensemble approach,[4] which provides full spectral widths and absolute intensities.
Newton-X can simulate surface-hopping dynamics with the following programs and quantum-chemical methods: The surface hopping probability depends on the values of the nonadiabatic couplings between electronic states.
Newton-X can either compute nonadiabatic couplings during the dynamics or read them from an interfaced third-party program.
[5] In this approach, the key quantity for computation of the surface hopping probability, the inner product between the nonadiabatic couplings (τLM) and the nuclear velocities (v) at time t, is given by
In Newton-X, it is used with a number of quantum-chemical methods, including MCSCF (Multiconfigurational Self-Consistent Field), MRCI (Multi-Reference Configuration Interaction), CC2 (Coupled Cluster to Approximated Second Order), ADC(2) (Algebraic Diagrammatic Construction to Second Order), TDDFT (Time-Dependent Density Functional Theory), and TDA (Tamm-Dankov Approximation).
In the case of MCSCF and MRCI, the configuration interaction coefficients are directly used for computation of couplings.
For the other methods, the linear-response amplitudes are used as the coefficients of a configuration interaction wavefunction with single excitations.
, where e is the elementary charge, ħ is the reduced Planck constant, m is the electron mass, c is the speed of light, ε0 is the vacuum permittivity, and nr is the refractive index of the medium.
In both absorption and emission, the nuclear ensemble can be sampled either from a dynamics simulation or from a Wigner distribution.
Starting from version 2.0, it is possible to use the nuclear ensemble approach to simulate steady and time-resolved photoelectron spectra.
The original code used and expanded routines written by Giovanni Granucci and Maurizio Persico from the University of Pisa.
[2] A modulus for computation of nonadiabatic couplings based on finite differences of either MCSCF or MRCI wavefunctions was implemented by Jiri Pittner (J. Heyrovsky Institute)[6] and later adapted to work with TDDFT.
[8] Felix Plasser implemented the local diabatization method and dynamics based on CC2 and ADC(2).
[3] An interface to Gamess was added by Aaron West and Theresa Windus (Iowa State University).
[9] Mario Barbatti coordinates new program developments, their integration into the official version, and the Newton-X distribution.
The original paper[2] describing the program had been cited 190 times by December 22, 2014, according to Google Scholar.
A number of workshops on nonadiabatic simulations using Newton-X have been organized in Vienna (2008), Rio de Janeiro (2009), Sao Carlos (2011), Chiang Mai (2011, 2015), and Jeddah (2014).
[10] A main concept guiding the Newton-X development is that the program should be simple to use, but still providing as many options as possible to customize the jobs.
This is achieved by a series of input tools that guide the user through the program options, providing context-dependent variable values always that possible.
The coordinated execution of these programs is done by drivers written in Perl, while the programs dealing with integration of the dynamics and other mathematical aspects are written in Fortran 90 and C. Memory is dynamically allocated and there are no formal limits for most of variables, such as number of atoms or states.
Complete sets of input files are redundantly written to allow each trajectory to be executed independently.
Based on a series of initial instructions provided by the user, new codes are automatically written and executed on-the-fly.
When dynamics is based on ab initio methods, this is normally not a problem, as the time bottleneck is in the electronic structure calculation.
Other problems with the current implementation are the lack of parallelization of the code, especially of the couplings computation, and the restriction of the program to Linux systems.