Methods

Rowan currently supports neural-network-potential, semiempirical, density-functional-theory (DFT), and Hartree–Fock (HF) calculations. In incorporating density functionals, we have attempted to balance including useful functionals with a desire to avoid overwhelming end users with unnecessary options. If a certain functional that's not included is exceedingly important to your work, please let us know!

Rowan supports all commonly used classes of functional, including meta-GGA functionals and range-separated hybrids, although not every engine supports every functional. For advice on which method to choose for a given task, see our recommendations below. You can find benchmarks for many of these methods on our dedicated benchmarks site.

For instructions on how to select methods when submitting calculations using the Python API, see the API documentation.


Hartree–Fock

Rowan supports Hartree–Fock calculations. For open-shell systems, Rowan uses the unrestricted Hartree–Fock formalism.

Sure and Grimme's HF-3c method is supported as well.

Keywords
hf
hf_3c

Density-Functional Theory

Rowan supports a variety of density functionals.

For a variety of historical reasons, there are many competing implementations of several popular density functionals, like B3LYP and PBE, which can lead to slight differences when comparing outputs of one program to another. (See this excellent overview by Susi Lehtola and Miguel Marques, the authors of Libxc.)

Here's a quick overview of all the functionals that Rowan supports:

NameClassHybridicity%HF exchangeDouble-hybrid Nature
PBEGGA
BP86GGA
B97-3cGGA
B97-D3BJGGA
r2SCANmGGA
r2SCAN-3cmGGA
TPSSmGGA
M06-LmGGA
PBE0GGAGlobal25%
B3LYPGGAGlobal20%
TPSShmGGAGlobal10%
M06mGGAGlobal27%
M06-2XmGGAGlobal54%
CAM-B3LYPGGARange-separated19-65%
ωB97X-D3GGARange-separated20-100%
ωB97X-VGGARange-separated17-100%
ωB97X-3cGGARange-separated17-100%
ωB97M-VmGGARange-separated15-100%
ωB97M-D3BJmGGARange-separated15-100%
DSD-BLYP-D3BJGGADouble-hybrid69%Spin-component-scaled
SkalamGGANeural network

For a more in-depth look at the differences between these methods, see our article about the "Charlotte's Web" of DFT.

Pure Functionals

Generalized Gradient Approximation

PBE

The 1996 Perdew–Burke–Ernzerhof functional.

Keyword
pbe

BP86

Becke's 1988 exchange functional with Perdew's 1988 correlation functional.

Keyword
bp86

B97-3c

Brandenburg, Bannwarth, Hansen, and Grimme's 2018 revised composite variant of Becke's 1997 power-series ansatz, using the D3 dispersion correction and a modified version of the def2-TZVP basis set, called "mTZVP".

Keyword
b97_3c

B97-D3BJ

Grimme's 2011 reparameterization of Becke's 1997 power-series ansatz, using the D3 dispersion correction and Becke and Johnson (BJ) damping function.

Keyword
b97_d3bj

Meta-Generalized Gradient Approximation

r2SCAN

Furness and Sun's 2020 improvement over the numerically unstable SCAN functional. r2SCAN still struggles with numerical instability, as shown by Lehtola and Marques recently.

Keyword
r2scan

r2SCAN-3c

Grimme's 2021 composite variant of Furness and Sun's r2SCAN, using a new mTZVPP basis set.

Keyword
r2scan_3c

TPSS

Scuseria and Perdew's 2003 mGGA functional, with no empirical parameters.

Keyword
tpss

M06-L

Zhao and Truhlar's 2006 local mGGA functional.

Keyword
m06l

Hybrid Functionals

Global Hybrid Functionals

PBE0

Adamo and Barone's hybrid functional derived from PBE (also evaluated by Ernzerhof and Scuseria).

Keyword
pbe0

B3LYP

The famous 1994 functional of Stephens, Devlin, Chabalowski, and Frisch. (We follow the original Gaussian implementation here in employing the VWN(RPA) correlation functional rather than the VWN5 correlation functional.)

Keyword
b3lyp

TPSSh

Scuseria and Perdew's 2003 one-paramter global hybrid version of their TPSS mGGA functional.

Keyword
tpssh

M06

Zhao and Truhlar's 2007 hybrid functional, based on their 2006 M06-L local functional.

Keyword
m06

M06-2x

Zhao and Truhlar's 2007 hybrid functional with double the HF exchange of M06, based on their 2006 M06-L local functional.

Keyword
m062x

Range-Separated Hybrid Functionals

CAM-B3LYP

Yanai, Tew, and Handy's 2004 range-separated hybrid based on B3LYP.

Keyword
camb3lyp

ωB97X-D3

Chai's reparameterization of ωB97X-D with the D3 dispersion correction.

Keyword
wb97x_d3

ωB97X-V

Mardirossian and Head-Gordon's 2014 10-parameter combinatorially optimized GGA functional, with the VV10 nonlocal dispersion correction.

Keyword
wb97x_v

ωB97X-3c

Müller, Hansen, and Grimme's composite modification of ωB97X-V using a vDZP basis set, a specially adapted D4 dispersion correction, and large-core effective core potentials.

Keyword
wb97x_3c

ωB97M-V

Mardirossian and Head-Gordon's 2016 12-parameter combinatorially optimized mGGA functional, with the VV10 nonlocal dispersion correction. Consistently one of the most accurate non-double hybrid functionals out there: see e.g. this benchmark and this one.

Keyword
wb97m_v

ωB97M-D3BJ

Najibi and Goerigk's reparameterization of ωB97M-V for use with the D3 dispersion correction and Becke and Johnson (BJ) damping function.

Keyword
wb97m_d3bj

Double hybrid functionals

DSD-BLYP-D3BJ

Kozuch, Gruzman, and Martin's 2010 general-purpose GGA-based double hybrid with spin-component-scaled MP2 correlation and empirical dispersion.

Keyword
dsd_blyp_d3bj

Machine-Learned Functionals

Skala

Luise et al.'s 2026 machine-learned exchange-correlation functional with no Hartree–Fock exchange.

Keyword
skala

Low-Cost Methods

Semiempirical Methods

GFN-FF

Spicher and Grimme's 2020 geometry-based forcefield method, using a simplified D4 dispersion model and the extended tight-binding (xTB) framework.

Keyword
gfn_ff

GFN0-xTB

Pracht, Caldeweyher, Ehlert, and Grimme's 2019 non-self-consistent tight-binding method, using a simplified D4 dispersion model and the xTB framework.

Keyword
gfn0_xtb

GFN1-xTB

Grimme, Bannwarth, and Shushkov's 2017 self-consistent tight-binding method, D3 dispersion model, Becke and Johnson (BJ) damping function, and the xTB framework.

Keyword
gfn1_xtb

GFN2-xTB

Pracht, Caldeweyher, Ehlert, and Grimme's 2019 self-consistent tight-binding method, using the D4 dispersion model and the xTB framework.

Keyword
gfn2_xtb

g-xTB

Froitzheim, Müller, Hansen, and Grimme's 2025 general-purpose semiempirical electronic structure method, using the xTB framework.

Keyword
g_xtb

PM6

Stewart's 2007 semiempirical method based on the neglect of diatomic differential overlap (NDDO) approximation to Hartree–Fock theory and parameterized for use with 70 elements.

Keyword
pm6

PM6-D3H4X

Hostaš, Řezáč, and Hobza's 2013 modified version of PM6 with additional post-SCF corrections.

Keyword
pm6_d3h4x

PM6-ORG

Stewart and Stewart's 2023 modified version of PM6 optimized for modeling proteins.

Keyword
pm6_org

PM7

Stewart's 2012 semiempirical method based on the neglect of diatomic differential overlap (NDDO) approximation to Hartree–Fock theory, with more rigorous reparameterization than its predecessor and built-in corrections for dispersion and hydrogen-bonding.

Keyword
pm7

Neural Network Potentials

See this page for more information on methods based on neural network potentials.


Recommendations

Choosing the appropriate level of theory can be challenging! An extensive 2011 Grimme benchmark suggests that B97-D3 performs best among conventional "pure" density functionals, while higher accuracy can be achieved using any of the hybrid functionals included in Rowan. This recent paper from Grimme and co-workers offers many useful recommendations depending on the task at hand. The best guide, however, is to find a paper which reports benchmark results for systems like those you wish to study and follow those recommendations.

Methods | Rowan Documentation