Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Reference states

VeloxChem supports several types of SCF reference states for DFT calculations, allowing users to select the electronic description best suited to the system’s spin and symmetry: restricted closed‑shell DFT for singlet ground states with paired electrons, RODFT (restricted open‑shell DFT) for high‑spin systems that preserve a common spatial orbital set for paired electrons, and UDFT (unrestricted DFT) for general open‑shell situations where the α and β electrons occupy independently optimized orbitals.

Restricted closed-shell

Python script

import veloxchem as vlx

molecule = vlx.Molecule.read_name("water")
basis = vlx.MolecularBasis.read(molecule, "def2-svp")

scf_drv = vlx.ScfRestrictedDriver()

scf_drv.xcfun = "b3lyp"
scf_results = scf_drv.compute(molecule, basis)
Orbital occupation α,β-spin: [1. 1. 1. 1. 1. 0. 0. 0. 0. 0.]
Orbital energies α,β-spin (a.u.):
 [-19.12219351  -0.96878733  -0.50551377  -0.36345166  -0.2895069
   0.0397504    0.11770565   0.54491518   0.59493537   0.91642722]

Text file

@jobs
task: scf
@end

@method settings
basis: def2-svp
xcfun: b3lyp
@end

@molecule
charge: 0
multiplicity: 1
xyz:
...
@end

Restricted open-shell

Python script

import veloxchem as vlx

molecule = vlx.Molecule.read_smiles("[N]=O")
molecule.set_multiplicity(2)

basis = vlx.MolecularBasis.read(molecule, "def2-svp")

scf_drv = vlx.ScfRestrictedOpenDriver()

scf_drv.xcfun = "b3lyp"
scf_results = scf_drv.compute(molecule, basis)
Orbital occupation α-spin: [1. 1. 1. 1. 1. 1. 1. 1. 0. 0.]
Orbital occupation β-spin: [1. 1. 1. 1. 1. 1. 1. 0. 0. 0.]
Orbital energies α,β-spin (a.u.):
 [-19.27368892 -14.47080255  -1.20607409  -0.68041446  -0.52387878
  -0.49584857  -0.48049371  -0.23231923  -0.12129919   0.30145246]

Text file

@jobs
task: roscf
@end

@method settings
basis: 6-31+G*
xcfun: b3lyp
@end

@molecule
charge: 1
multiplicity: 2
xyz:
...
@end

Unrestricted open-shell

Python script

import veloxchem as vlx

molecule = vlx.Molecule.read_smiles("[N]=O")
molecule.set_multiplicity(2)

basis = vlx.MolecularBasis.read(molecule, "def2-svp")

scfdrv = vlx.ScfUnrestrictedDriver()

scfdrv.xcfun = "b3lyp"
scf_results = scfdrv.compute(molecule, basis)
Orbital occupation α-spin: [1. 1. 1. 1. 1. 1. 1. 1. 0. 0.]
Orbital occupation β-spin: [1. 1. 1. 1. 1. 1. 1. 0. 0. 0.]
Orbital energies α-spin (a.u.):
 [-19.27368892 -14.47080255  -1.20607409  -0.68041446  -0.52387878
  -0.49584857  -0.48049371  -0.23231923  -0.12129919   0.30145246]
Orbital energies β-spin (a.u.):
 [-19.26364681 -14.45472904  -1.18448121  -0.64354186  -0.48583559
  -0.45693795  -0.44908194  -0.1046368   -0.06134444   0.3185291 ]

Text file

@jobs
task: uscf
@end

@method settings
basis: def2-svp
xcfun: pbe0
@end

@molecule
charge: 1
multiplicity: 2
xyz:
...
@end