basis ===== This option defines the basis functions used for quantum chemistry calculations. You can define basis sets in several flexible ways. .. contents:: :local: Using Built-in Basis Sets ------------------------- A lot of important basis sets have been provided in a directory ``basis`` in the same path of Qbics. The files are named after their names well-known in computational chemistry community. For example, ``basis/cc-pvdz`` contains the cc-pVDZ basis. All files are named in small cases. To use them, simple write down the basis set name. It is case-insensitive. For example, to use def2-TZVP for all atoms: .. code-block:: bash :linenos: basis def2-TZVP end Qbics will extract basis set information from ``basis/def2-tzvp``. Explicit Basis Set Definitions ------------------------------ You can also explicitly define your own basis sets. For example, your system contains two atoms, H and Li, then their basis sets can be defined in this way: .. code-block:: bash :linenos: basis H 0 S 3 1.00 13.0107010 0.19682158E-01 1.9622572 0.13796524 0.4445379 0.47831935 S 1 1.00 0.12194962 1.0000000 P 1 1.00 0.8000000 1.0000000 **** Li 0 S 5 1.00 266.27785516 0.64920150325E-02 40.069783447 0.47747863215E-01 9.0559944389 0.20268796111 2.4503009051 0.48606574817 0.72209571855 0.43626977955 S 1 1.00 0.52810884721E-01 1.0000000 S 1 1.00 0.20960948798E-01 1.0000000 P 2 1.00 1.4500000 0.2586000 0.3000000 1.0000000 P 1 1.00 0.0820000 1.0000000 **** end The basis set definition is of standard Gaussian94 format: - The definition of the basis set for each atom ends with 4 asterisks, i.e. ``****``. - The definition starts with the element name like ``Li`` and a ``0``. Currently ``0`` has no meaning. - Then, each GTO shell is defined. The shell definition starts with three parameters: * Angular momentum. It can be any nonnegative numbers like ``0``, ``5``, or one of ``S``, ``P``, ``D``, ``F``, ``G``, ``H``, and ``I``. * Contraction degree. It must be a positive integer. * A real number. Currently it has no meaning. * Then, each line defines the exponent and contraction coefficient of the primitive GTO to be contracted. They are 2 real numbers. .. hint:: Note that many basis sets in Gaussian94 format can be obtained from https://www.basissetexchange.org/. But, remember to replace ``D`` to ``E`` since the former is not recognized by Qbics. Using Self-defined Basis Set Files ---------------------------------- You can also put your explicit basis set definitions into some files, say ``/home/zhang/userdef/my-own-basis``. Qbics will automatically read it if you give explicit file name including path. .. code-block:: bash :linenos: basis /home/zhang/userdef/my-own-basis end Define Different Basis Sets for Different Elements --------------------------------------------------- If you want to use different basis set s for different elements, then you can write ``element`` in the first line, then write element and basis set file name line by line. For example: .. code-block:: bash :linenos: basis element # This indicates that Qbics will assign basis set element by element. O aug-cc-pvtz C cc-pvdz N /home/zhang/userdef/my-own-basis end