2
$\begingroup$

This is another question about my molecule; as I'm not doing this as an academical affiliate(I'm currently majoring in mathematics), I have only NWChem and my personal laptop on the mix, and thus need to save time and/or CPU usage.

I noticed, already on the WebMO demo server, that DFT calculations on elements no larger than Ar often fail at the 45-second CPU time limit (de jure 30, de facto 45) on said server if they contain f functions in their basis sets.

WebMO Basic and NWChem are both free without any official CPU time limits- the problem is that I use my laptop to code things (that are completely irrelevant to computational chemistry) already and thus do not want to "torture" my laptop unnecessarily more.

I mentioned f (polarisation) functions on both the title and the body of the question- the desired question and its reasons are now clear.

UPDATE: My question was originally about freezing f-functions from the TZ basis set ONLY in the MP2 part of the calculations; i.e. doing a full TZ H-F calculation AND THEN freezing the virtual f-functions in the forecoming MP2 calculation(See MP2 page in the NWChem manual to see what I'm talking about). The question somehow got changed to something entirely different so I'm adding this here for more clarity.

$\endgroup$
5
  • 6
    $\begingroup$ I would say that 45 seconds is an unnecessarily short time limit for computational chemistry, even on a laptop; countless people who do not have access to computer clusters run computational jobs on their laptops for days. And as long as you use only one core (or one thread) during your calculations, and you don't run out of physical memory, you won't torture your laptop more than e.g. if you play an average computer game on it. $\endgroup$
    – wzkchem5
    Commented Oct 29, 2022 at 6:34
  • $\begingroup$ @wzkchem5 Aha. 😮 $\endgroup$ Commented Oct 29, 2022 at 8:44
  • 1
    $\begingroup$ You can move the calculations from DFT to semiempirical method (using MOPAC, xTB, for example). $\endgroup$
    – Camps
    Commented Oct 29, 2022 at 12:22
  • 1
    $\begingroup$ Email me at [email protected] if you need better computer resources. $\endgroup$ Commented Oct 29, 2022 at 21:17
  • $\begingroup$ Whether you freeze before or during MP2 makes no difference to my answer: Don't freeze if you have enough computer power, do freeze if you don't have enough computer power and don't mind a loss of accuracy (and test the effect of freezing by comparing the difference between frozen and unfrozen for a smaller system for which you can do both calculations). This title is extremely specific: you're asking specifically about f-type functions, a TZ basis set (without specifying which atoms, which affects whether f are the last or second-last functions), and MP2. A more general title is advisable. $\endgroup$ Commented Oct 30, 2022 at 17:00

3 Answers 3

2
$\begingroup$

It depends on what you're intending to do:

  • If you are comparing to benchmark results with this basis set, then likely no.
  • If accuracy is very important to you, then likely no.
  • If you are intending to do a basis set extrapolation, then it might compromise the quality of your extrapolation, although Jacek Koput took the k-type functions out of the aug-cc-pCV7Z basis set before doing extrapolations, and those extrapolations still gave excellent results.
  • If you don't care too much about accuracy, then sure, remove the f-type functions.

It all depends on the level of accuracy you want, and what price you're willing to pay to achieve that level of accuracy. You can remove some f-type functions, and you'll most likely get slightly less accurate results because your basis set is smaller and offers less variety, but your results will still likely be far more accurate than what you would get by reducing the basis set by an entire zeta value.

If you have enough computer power and you care about accuracy, it would be best to include the f-type functions. If you don't have enough computer power, there's nothing wrong with removing the f-type functions as long as you do it for all energies involved in the energy-difference calculations, so that you get "parallel errors".

It may also be a good idea to do some tests to find out how much of an impact those f-type functions are making. Perhaps find a similar molecule that's a bit smaller, so that you can do calculations with and without the f-type functions, and see how big of an impact this has on the final energies. The difference in those energies can be incorporated into your analysis of the uncertainty for your final calculations in the system in which you're truly interested.

$\endgroup$
2
  • $\begingroup$ My original question was about removing f-functions from the mix ONLY in the MP2 part of the calculations. $\endgroup$ Commented Oct 30, 2022 at 5:40
  • 1
    $\begingroup$ @KanghunKim the answer remains exactly the same. $\endgroup$ Commented Oct 30, 2022 at 12:31
2
$\begingroup$

The answer is no. Post-Hartree-Fock methods are famously slow to converge to the complete basis set limit due to their dependence on the unoccupied orbitals. Modern basis sets, such as the Dunning cc-pVXZ series and the Karlsruhe def2 series are designed to achieve the best compromise of accuracy and performance. By freezing the $f$ orbitals, you compromise this accuracy, especially since the $f$ orbitals are more important at the MP2 level than the HF level!

I would also like to point out that while NWChem is not known to be competitive on single-node performance; its focus is on massively parallel calculations. As we have recently discussed in our open access review in Wiley Interdiscip. Rev. Comput. Mol. Sci. 12, e1610 (2022), there is a wide variety of free and open source codes that can be easily installed on personal hardware and be used for realistic computational chemistry.

Psi4 and PySCF are two personal favorites of mine: Psi4 is easy to use while PySCF offers a powerful toolbox for designing new methods. Psi4 is especially attractive for its focus on choosing fast algorithms by default: it makes using density fitting methods easy, which can significantly speed up MP2 calculations, for instance. Psi4 also implements frozen natural orbital methods, which are a safe way to economize coupled-cluster calculations by freezing out natural orbitals that have small occupations at the MP2 level of theory. Psi4 also has built-in support for basis set extrapolation, which likewise offer an easy way to economize on the cost of calculations.

$\endgroup$
2
  • $\begingroup$ I would rather use a TZ basis set with its f-type functions removed though, than a DZ basis set, if I were working on a large enough molecule such that doing a full TZ calculation was not possible. $\endgroup$ Commented Nov 2, 2022 at 12:46
  • $\begingroup$ As for PySCF... hmmm.... a mathematics major-data science minor might think of a way but honestly can't be bothered to atm $\endgroup$ Commented Nov 19, 2022 at 13:03
1
$\begingroup$

I'm not sure if freezing at the basis set level makes sense... However, you can make an MP2 calculation easier, by doing an active space approximation (freezing certain orbitals). You will need to have manual control going from the atomic orbitals to molecular orbitals.

All you need to do is after the Hartree-Fock calculation, when you convert the atomic orbitals to molecular orbitals, you then need to make an active space approximation (find the core constant energy, arising from the occupied frozen orbs then remove them).

I don't use NWChem, but PySCF will do let you do this. See (subsection Frozen orbitals):

https://pyscf.org/user/mp.html

I'd just use this, as you won't have to reinvent the wheel then :)

$\endgroup$
8
  • $\begingroup$ Why are you not sure if freezing at the basis set level makes sense! $\endgroup$ Commented Nov 6, 2022 at 16:34
  • $\begingroup$ "However, you can make an MP2 calculation easier, by doing an active space approximation (freezing certain orbitals)" this is what I intended. $\endgroup$ Commented Nov 7, 2022 at 11:44
  • $\begingroup$ @NikeDattani: My take on why freezing the basis set doesn't make sense is removing elements of from the set is basically just defining a new basis set that has fewer elements (and you are solving a SCF problem now in this reduced subspace). Also doing HF in the full basis and then removing elements for the MP2 calculation isn't possible (as you are in different sized Hilbert Spaces - I guess you could do a projection, but I'm not sure what this would mean, as you may no longer have a ground state). KanghunKim: I'm glad that was what you were after! $\endgroup$
    – lex2763
    Commented Nov 10, 2022 at 10:15
  • $\begingroup$ No one is suggesting to remove elements. Just orbitals. It's perfectly fine. I do it all the time. Jacek Koput removed k-orbitals in a paper that I mentioned in this thread. There's a reason why NWChem allows you to do this. $\endgroup$ Commented Nov 10, 2022 at 13:12
  • $\begingroup$ @NikeDattani Interesting... However, in the J. Chem paper Koput states: "Because the MOLPRO package cannot handle k functions, these func- tions were omitted in the calculations with the aug-cc-pCV7Z basis set" . Isn't that just removing them from the basis set? This isn't removing orbitals. $\endgroup$
    – lex2763
    Commented Nov 10, 2022 at 16:52

You must log in to answer this question.