************* QM interfaces ************* This section describes the options in common to most QM interfaces. In addition to these options, each QM interface may contain options specific to that code. For details please see the individual interface manual pages: .. toctree:: :titlesonly: castep cp2k dftbplus fhi-aims gamess-uk gaussian lsdalton mndo molpro nwchem orca pyscf turbomole General options =============== .. py:attribute:: basis (default: ``'3-21g'``) Basis set name or a filename (e.g., ``'my_basis.txt'``) of plain text containing basis set parameters. In the latter case, a basis set file can be generated from the `Basis Set Exchange `_. Py-ChemShell also supports the BSE (Basis Set Exchange) plugin. For installation please see :ref:`Installing ChemShell `. In this case, the :py:attr:`basis` keyword argument can take a ChemShell :py:class:`BSE` instance as the value. For example, to simply specify a basis set name for all atoms:: my_basis = addons.BSE('3-21g') my_qm = NWChem(frag=my_frag, method='dft', basis=my_basis) Or to use a hybrid basis set for various elements by a :py:class:`dict` (both element symbol and atomic number are accepted):: my_basis = addons.BSE({1:'3-21g', 'O':'6-31g*'}) Or a hybrid basis set for various atom names (especially useful for calculating the :ref:`finite cluster model `):: my_basis = addons.BSE({'Mg1':'cc-pvdz','O1':'aug-cc-pVDZ'}) with a :py:class:`dict` specifying hybrid basis sets for various atom names. Or:: .. py:attribute:: charge (default: ``0``) Charge to be used in the QM calculation Allowed types of value: * A Python `int `_ for an integer charge * A Python `float `_ what will be rounded to the nearest integer charge * A Python `str `_ being ``'automatic'`` or ``'dl_field'`` makes ChemShell determine the charge by summing up the formal charges (typically useful when charges are not initially available but assigned later by DL_FIELD in a QM/MM calculation) .. py:attribute:: ecp :noindex: (default: ``''``) A filename (e.g., ``'my_ecp.txt'``) of plain text containing effective core potential (ECP) parameters. .. py:attribute:: functional (default: ``'blyp'``) Choice of exchange-correlation functional in DFT calculations .. py:attribute:: method Allowed values: * ``'dft'``: (default) Density functional theory (DFT) for quantum chemical method * ``'hf'``: Hartree-Fock method .. py:attribute:: mult (default: ``1``) Spin multiplicity to be used in the QM calculation .. py:attribute:: scftype Allowed values: * ``'rhf'``: (default) restricted HF (or DFT) for singlet systems of molecular orbital calculation * ``'uhf'``: unrestricted HF for higher spins * ``'rohf'``: restricted open-shell * ``'rks'``, ``'uks'``, or ``'roks'``: may also be specified, with identical behaviour SCF options =========== .. py:attribute:: damping Allowed values: * ``True``: (default) Use damping during SCF iterations * ``False``: Do not use damping .. py:attribute:: diis Allowed values: * ``True``: (default) Use DIIS during SCF iterations * ``False``: Do not use DIIS .. py:attribute:: direct :noindex: Allowed values: * ``False``: (default) Switch off :py:attr:`direct` * ``True``: Request direct evaluation for a given wavefunction. .. py:attribute:: guess :noindex: (default: ``''``) Free text input for initial guess: can be either Python multi-line string (such as ``'''...'''``) or a filename (e.g., ``'my_guess.txt'``) of plain text containing multi-line string. .. py:attribute:: maxiter (default: ``100``) Maximum number of SCF cycles allowed .. py:attribute:: path (default: ``''``) Path to the executable file for a system call .. py:attribute:: pseudopotential (default: ``''``) Pseudopotential Allowed types of value: * A Python `str `_ for pseudopotential name * A Python `dict `_ of element---to---pseudopotential mapping .. py:attribute:: restart Allowed values: * ``False``: (default) Not to restart from a saved wavefunction guess * ``True``: Restart from a saved wavefunction guess .. py:attribute:: scf (default: ``1.0E-5``) Threshold for SCF convergence