forte2.integrals.libcint_utils ============================== .. py:module:: forte2.integrals.libcint_utils Module Contents --------------- .. py:data:: c_double_p .. py:data:: c_int_p .. py:data:: c_null_ptr .. py:data:: PLAIN :value: 0 .. py:data:: HERMITIAN :value: 1 .. py:data:: ANTIHERMI :value: 2 .. py:data:: SYMMETRIC :value: 3 .. py:data:: CHARGE_OF :value: 0 .. py:data:: PTR_COORD :value: 1 .. py:data:: NUC_MOD_OF :value: 2 .. py:data:: PTR_ZETA :value: 3 .. py:data:: PTR_FRAC_CHARGE :value: 4 .. py:data:: PTR_RADIUS :value: 5 .. py:data:: ATM_SLOTS :value: 6 .. py:data:: ATOM_OF :value: 0 .. py:data:: ANG_OF :value: 1 .. py:data:: NPRIM_OF :value: 2 .. py:data:: NCTR_OF :value: 3 .. py:data:: RADI_POWER :value: 3 .. py:data:: KAPPA_OF :value: 4 .. py:data:: SO_TYPE_OF :value: 4 .. py:data:: PTR_EXP :value: 5 .. py:data:: PTR_COEFF :value: 6 .. py:data:: BAS_SLOTS :value: 8 .. py:data:: PTR_EXPCUTOFF :value: 0 .. py:data:: PTR_COMMON_ORIG :value: 1 .. py:data:: PTR_RINV_ORIG :value: 4 .. py:data:: PTR_RINV_ZETA :value: 7 .. py:data:: PTR_RANGE_OMEGA :value: 8 .. py:data:: PTR_F12_ZETA :value: 9 .. py:data:: PTR_GTG_ZETA :value: 10 .. py:data:: NGRIDS :value: 11 .. py:data:: PTR_GRIDS :value: 12 .. py:data:: AS_RINV_ORIG_ATOM :value: 17 .. py:data:: AS_ECPBAS_OFFSET :value: 18 .. py:data:: AS_NECPBAS :value: 19 .. py:data:: PTR_ENV_START :value: 20 .. py:data:: NUC_POINT :value: 1 .. py:data:: NUC_GAUSS :value: 2 .. py:data:: NUC_FRAC_CHARGE :value: 3 .. py:data:: NUC_ECP :value: 4 .. py:data:: NORMALIZE_GTO :value: True .. py:function:: make_env(atoms, basis, pre_env=[], nucmod={}) Generate the input arguments for ``libcint`` library based on internal format :attr:`Mole._atom` and :attr:`Mole._basis` .. !! processed by numpydoc !! .. py:function:: make_atm_env(atom, ptr=0, nuclear_model=NUC_POINT, nucprop={}) Convert the internal format :attr:`Mole._atom` to the format required by ``libcint`` integrals .. !! processed by numpydoc !! .. py:function:: make_bas_env(basis_add, atom_id=0, ptr=0) Convert :attr:`Mole.basis` to the argument ``bas`` for ``libcint`` integrals .. !! processed by numpydoc !! .. py:function:: gaussian_int(n, alpha) int_0^inf x^n exp(-alpha x^2) dx .. !! processed by numpydoc !! .. py:function:: dyall_nuc_mod(nuc_charge, nucprop={}) Generate the nuclear charge distribution parameter zeta rho(r) = nuc_charge * Norm * exp(-zeta * r^2) Ref. L. Visscher and K. Dyall, At. Data Nucl. Data Tables, 67, 207 (1997) .. !! processed by numpydoc !! .. py:function:: gto_norm(l, expnt) Normalized factor for GTO radial part :math:`g=r^l e^{-\alpha r^2}` .. math:: \frac{1}{\sqrt{\int g^2 r^2 dr}} = \sqrt{\frac{2^{2l+3} (l+1)! (2a)^{l+1.5}}{(2l+2)!\sqrt{\pi}}} Ref: H. B. Schlegel and M. J. Frisch, Int. J. Quant. Chem., 54(1995), 83-87. Args: l (int): angular momentum expnt : exponent :math:`\alpha` Returns: normalization factor Examples: >>> print(gto_norm(0, 1)) 2.5264751109842591 .. !! processed by numpydoc !! .. py:function:: len_spinor(l, kappa) The number of spinor associated with given angular momentum and kappa. If kappa is 0, return 4l+2 .. !! processed by numpydoc !! .. py:function:: flatten(lst) flatten nested lists x[0] + x[1] + x[2] + ... Examples: >>> flatten([[0, 2], [1], [[9, 8, 7]]]) [0, 2, 1, [9, 8, 7]] .. !! processed by numpydoc !! .. py:function:: conc_env(atm1, bas1, env1, atm2, bas2, env2) Concatenate two sets of libcint input arguments for cross integrals .. !! processed by numpydoc !! .. py:function:: basis_to_cint_envs(system, basis, common_origin=None) Convert a Forte2 Basis object to libcint atm, bas, env objects. :Parameters: **system** : forte2.System The system object containing the geometry and basis set. **basis** : forte2.Basis The basis object to be converted. .. !! processed by numpydoc !!