chemtools.toolbox.conceptualglobal.GeneralGlobalTool¶

class
chemtools.toolbox.conceptualglobal.
GeneralGlobalTool
(expr, n0, n_energies, n_symbol=None, n0_symbol=None, guess=None, opts=None)[source]¶ Class of global conceptual DFT reactivity descriptors based on the userspecified energy model.
The energy model is approximated as a symbolic function of the number of electrons, and the unknown parameters are obtained by interpolating to the given values of energy; i.e. the number of parameters in the model should equal the number of given energy values and the corresponding number of electrons.
The \(n^{\text{th}}\)order derivative of the symbolic energy model with respect to the number of electrons at fixed external potential is calculated symbolically.
Initialize class.
Parameters:  expr (sp.Exp) – The energy expression representing the dependence of energy on the number of electrons.
 n0 (float) – Reference number of electrons, i.e. \(N_0\).
 n_energies (dict) – The energy values of expr at different electronnumbers. The dict has int (electronnumber) keys, float (energy) values.
 n_symbol (sp.Symbol, default=sp.symbols('N')) – The symbol in expr that represents the number of electrons.
 n0_symbol (sp.Symbol, optional) – The symbol in expr that represents the electronnumber at which to evaluate expr. If not specified, assume that it is already expressed numerically in expr.
 guess (dict, optional) – Guesses at the values of the parameters of expr. The dict has sp.Symbol keys, float values.
 opts (dict, optional) – Optional keyword arguments to pass to the
scipy.optimize.root()
solver that is used to solve for the parameters in the model.

params
¶ Parameter dictionary of energy model.

n_symbol
¶ Symbol used to denote the number of electrons.

expression
¶ Energy expression as a function of number of electrons, \(E(N)\).

energy
(n_elec)[source]¶ Return the energy model \(E(N)\) evaluated for the specified number of electrons.
Parameters: n_elec (float) – Number of electrons, \(N_{\text{elec}}\).

energy_derivative
(n_elec, order=1)[source]¶ Return the \(n^{\text{th}}\)order derivative of energy w.r.t. the number of electrons.
This returns the \(n^{\text{th}}\)order derivative of energy model \(E(N)\) w.r.t. to the number of electrons, at fixed chemical potential, evaluated for the specified number of electrons.
\[\left. \left(\frac{\partial^n E}{\partial N^n} \right)_{v(\mathbf{r})}\right_{N = N_{\text{elec}}}\]Parameters:  n_elec (float) – Number of electrons, \(N_{\text{elec}}\).
 order (int, default=1) – The order of derivative denoted by \(n\) in the formula.
Note
For \(N_{\text{elec}} = N_0\) the first, second and higher order derivatives are equal to the
BaseGlobalTool.chemical_potential
,BaseGlobalTool.chemical_hardness
andBaseGlobalTool.hyper_hardness
, respectively.