Skip to content

Latest commit

 

History

History
117 lines (90 loc) · 3.59 KB

gto.rst

File metadata and controls

117 lines (90 loc) · 3.59 KB

:mod:`gto` --- Molecular structure and GTO basis

.. module:: gto
   :synopsis: Molecular structure and GTO basis

The :mod:`gto` module provides the functions to parse the command line options, the molecular geometry and format the basic functions for libcint integral library. In :mod:`gto.mole`, a basic class :class:`Mole` is defined to hold the global parameters, which will be used throughout the package.

Examples

Program reference

Mole class

The :class:`Mole` class handles three layers: input, internal format, libcint arguments. The relationship of the three layers are:

.atom (input)  <=>  ._atom (for python) <=> ._atm (for libcint)
.basis (input) <=> ._basis (for python) <=> ._bas (for libcint)

input layer does not talk to libcint directly. Data are held in python internal fomrat layer. Most of methods defined in this class only operates on the internal format. Exceptions are make_env, make_atm_env, make_bas_env, :func:`set_common_orig_`, :func:`set_rinv_orig_` which are used to manipulate the libcint arguments.

.. automodule:: pyscf.gto.mole
   :members:

.. autoclass:: pyscf.gto.Mole
   :members:


AO integration

.. automodule:: pyscf.gto.moleintor
   :members:


Basis set

Internal format

This module loads basis set and ECP data from basis database and parse the basis (mostly in NWChem format) and finally convert to internal format. The internal format of basis set is:

basis = {atom_type1:[[angular_momentum
                      (GTO-exp1, contract-coeff11, contract-coeff12),
                      (GTO-exp2, contract-coeff21, contract-coeff22),
                      (GTO-exp3, contract-coeff31, contract-coeff32),
                      ...],
                     [angular_momentum
                      (GTO-exp1, contract-coeff11, contract-coeff12),
                      ...],
                     ...],
         atom_type2:[[angular_momentum, (...),],
                     ...],

For example:

mol.basis = {'H': [[0,
                    (19.2406000, 0.0328280),
                    (2.8992000, 0.2312080),
                    (0.6534000, 0.8172380),],
                   [0,
                    (0.1776000, 1.0000000),],
                   [1,
                    (1.0000000, 1.0000000),]],
            }

Some basis sets, e.g., :source:`pyscf/gto/basis/dzp_dunning.py`, are saved in the internal format.

.. automodule:: pyscf.gto.basis
   :members: