Target molecule#

In this section you can set up molecules subject to calculation. This setting is exclusive to the target periodic system setting.

Geometry#

You can specify a molecular structure to be calculated in either Cartesian coordinates or in Z-matrix notation. An error occurs if not specified.

Atoms#

Enter a list of nuclei that make up the molecule.

Coordinates#

Specify a molecular structure with a list of coordinates of the nuclei in the same order as in the list of nuclei atoms. The coordinates of the molecule should be specified in Å units.

Geometry format#

Specify notation of the coordinates of each atom from the following options. If no input is given, CARTESIAN is the default.

  • CARTESIAN (Default)

  • Z_MATRIX

Basis set#

You can set up basis functions, which are supported by PySCF. An error occurs if not specified. This field cannot be set if atom_specific_basis is set.

Charge#

Charge of molecular system (Default: 0)

Multiplicity#

Value of the spin multiplicity \(2S+1\) of the target state. An error occurs if not specified or found to be inconsistent with the given number of electrons.

HF charge#

Charge for Hartree-Fock calculation (Default: same with charge)

HF multiplicity#

Value of the spin multiplicity \(2S+1\) for Hartree-Fock calculation (Default: same with multiplicity)

initial HF molecular orbital#

Initial guess of molecular orbital coefficients for HF calculation (inner list: coefficients of the basis function for each molecular orbital, outer list: molecular orbitals)

\(S_z\)#

Value of the \(z\) directional spin \(S_z\) of the target state (Default: the same value as \(S\) in the specified multiplicity \(2S+1\))

Number of excited states#

Number of excited states subject to calculation (Default: 0)

Complete active space#

You can specify a complete active space cas by setting number of orbitals and number of electrons in the active space.

  • active_orb: Number of orbitals in the active space.

  • active_ele: Number of electrons in the active space.

  • cas_list: Ordered list of orbtal indices (0-origin) in the active space. If no input is given, the active orbitals will be chosen from around HOMO, LUMO.

Density fitting#

With a default setting, calculation may not work (or terminate in error) depending on the size of the basis function, in which case you may be able to make the calculation work by enabling density fitting approximation. In calculation of two-electron integrals with density fitting, products of two atomic orbitals are expanded by an auxiliary basis function and its coefficients are determined so as to minimize the self-repelling integration of the error. The auxiliary basis function is automatically selected as the best one corresponding to the input basis function (basis). The program uses the third-order tensor \(((ij|kl)=V_{ij,x}V_{kl,x})\) of the Cholesky-decomposed atomic orbital integrals to convert them into molecular orbital integrals. You can enable density fitting by setting the following option to true.

  • density_fitting

Molecular orbital format#

Output format of the molecular orbital data obtained by the Hartree-Fork calculation can be selected from the following options. In VQE calculation with orbital optimization or CASSCF calculation, the optimized orbital will also be outputed in same format. By default, molecular orbital data are not exported to the output file.

  • MOLDEN

Cartesian basis functions#

The basis functions used by PySCF can be specified in Cartesian coordinates for the d and f orbitals (6d, 10f), rather than the irreducible representation of \(S_z\) eigenstates (5d, 7f).

  • cart_basis: set to true to use Cartesian basis functions (Default: false)

Effective core potentials#

The effective core potentials passed to PySCF can be specified as a list of dicts.

  • ecp: a list of dicts, each corresponding to one atom. For each atom set the atom field and the basis fields.

  • atom: atomic species, i.e. "Na", "Cu", etc.

  • basis: basis to represent it in, i.e. "crenbs", "lanl2dz", etc.

Atom specific basis#

The basis set used by PySCF can be specified for each atom as a list of dicts (similar to effective core potentials). This field cannot be set if basis is set.

  • atom_specific_basis: a list of dicts, each corresponding to one atom. For each atom set the atom field and the basis fields.

  • atom: atomic species, i.e. "Na", "Cu", etc.

  • basis: basis to represent it in, i.e. "sto-3g", "6311++g**", etc.

FCIDUMP#

Note: This is an experimental feature and may be subject to destructive changes.

Electron integrals of molecular orbitals in FCIDUMP format (string) can be given to generate Hamiltonian for VQE calculation. Note when you use this option to generate Hamiltonian, molecular properties can not be calculated.

  • fcidump

Input example#

"target_molecule": {
  "geometry": {
    "atoms": ["Na", "H"],
    "coordinates": [
      [0, 0, 0], [0, 0, 0.7]
    ],
    "geometry_format": "CARTESIAN",
  },
  "basis": "sto-3g",
  "charge": 0,
  "multiplicity": 1,
  "hf_charge": 0,
  "hf_multiplicity": 1,
  "initial_hf_molecular_orbital":
    "mo_coeff": [
     [
       0.5445586947820809,
       1.2620659398031695
     ],
     [
       0.5445586947820809,
       -1.2620659398031695
     ],
  "sz_number": 0,
  "num_excited_states": 0,
  "cas": {
    "active_ele": 2,
    "active_orb": 2,
    "cas_list": [0, 1]
  },
  "density_fitting": true,
  "molecular_orbital_format": "MOLDEN",
  "fcidump": "&FCI NORB=   2,NELEC= 2,MS2=0,\n ORBSYM=1,1,\n ISYM=1,\n&END\n0.6823895331520424    1    1    1    1\n0.6707327783087587    1    1    2    2\n0.1790005760614067    2    1    2    1\n0.6707327783087588    2    2    1    1\n0.7051056321727837    2    2    2    2\n-1.277853006156875    1    1  0  0\n-0.4482996961016371    2    2  0  0\n0.7559674441714287  0  0  0  0",
  "cart_basis": false
  "ecp": [
    {
      "atom": "Na",
      "basis": "lanl2dz",
    },
  ]
}