20
$\begingroup$

There is an ever-growing list of freeware and open-source software for solid-state physics and quantum chemistry.

But many commercial programs still thrive, even in 2020, and their cost can be in the thousands of pounds/dollars.

I am curious to know what mainstream calculations still cannot be done for free?

For each answer, please list one method that is implemented in commercial software but not any freeware, and a reference to a paper that used this commercial method, where the authors of the paper are not involved in any way with the commercial software.

$\endgroup$
  • 3
    $\begingroup$ The correct answer to this question would assume a total knowledge of the existing software and all their applications. I'm not sure any one could claim such. $\endgroup$ – SalvaCardona May 14 '20 at 11:44
  • 6
    $\begingroup$ We can have multiple answers focusing on different features $\endgroup$ – Thomas May 14 '20 at 12:31
  • 3
    $\begingroup$ @SalvaCardona When a group invents a new method, it is often implemented in only one software. $\endgroup$ – Nike Dattani May 14 '20 at 13:01
  • 3
    $\begingroup$ @SalvaCardona I agree in general that this type of question would be too open ended in the long run. However, I expect it is of pretty wide interest to the users of the site, so it would be good to have as a saved resource for future users. I imagine in the future we could lock the question and mark it as not typical of how the site works, similar to Chem SEs Resource Request $\endgroup$ – Tyberius May 14 '20 at 16:59
  • 1
    $\begingroup$ Its not a method, but one big difference is about the documentation/help/tutorials. I'm aware that free software is only possible due to the efforts of the community and it is just hard to compete with commercial companies. $\endgroup$ – Camps May 15 '20 at 14:10
12
+50
$\begingroup$

I think the way this question is asked is a little too simplistic. In order to execute a computational project, there is always more than one calculation required. Even if you are happy with the lowest level of theory (say, B3LYP/6-31G*), it does not mean that any package that lists B3LYP in the list of the available features would be useful.

Possible caveats:

  • The method is implemented, but the convergence is not robust. So your jobs fail because of poor underlying algorithms of SCF solvers;

  • The method is implemented, but the code is ineffective. You need to spend more compute resources, wait longer, and increase your carbon footprint (not a joke! Calculations use lots of electricity);

  • The package claims the method exists, but the implementation is buggy and gives wrong numbers;

  • You can compute energy, but there are no analytic gradients or frequencies;

  • You can compute energies and optimize structures, but there are no other features -- like various properties calculations that are needed for answering a research question. To give a few examples: Solvent effects, QM/MM capabilities, spin-orbit couplings, multipole moments, wave-function analysis, NMR, IR/Raman intensities. The list can go on forever.

It takes many years to build and maintain a software package that is mature enough to be considered an adequate research tool. You may lose a lot of time and money by going after "free stuff".

$\endgroup$
8
$\begingroup$

One can also pose the opposite question, which may be more interesting: what significant matter modelling methods are implemented in open source software, for which there is no commercial alternative? Anna's answer above had a lot of important considerations, but also this reverse question is important to keep in mind; commercial software is not always free of shortcomings, either!

The thing about modern open source development is that new features may spread very easily from one code to another. The KISS (keep it simple, stupid!) principle familiar for a long time in computer science and UNIX systems is gaining traction in science, too: code development is moving to small, modular projects focused on solving a defined problem as well as possible. When the implementation is separated from the interface, the pieces are easy to interface to various codes, and the improvements made within the module spread quickly to all the programs interfaced with the module.

But, many of these open source projects have also been interfaced by big commercial programs; this is only possible if the license is permissive enough. Some examples of are libxc (Mozilla Public License) and libecpint (MIT license), which despite being open source are bundled with major commercial programs to offer core functionalities.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.