evaleev / libint

Libint: high-performance library for computing Gaussian integrals in quantum mechanics
Other
225 stars 95 forks source link

c++ interface questions #152

Closed loriab closed 4 years ago

loriab commented 4 years ago

Hi, we're gathered to work on Libint2 and Psi4 again and have some questions.

Thanks for any guidance.

evaleev commented 4 years ago
  • With --enable-eri3-pure-sh one can only use sph aux basis sets. `Without that flag, can one only use cart or can one use sph or cart?

can do either without.

  • The C++11 interface isn't using vectorization now. Is that planned for the future?

"planned" in a loose sense. It would have to be Libint v3.

  • Is it essential to use the templated compute2 fns if you want to pass ShellPair objects in?

It's the only place where shell-pair data can be fed at the moment, so yes. The amount of metaprogramming sans c++17 in the variadic compute() method would be difficult to justify (assuming for the moment that the usual c++ rules governing where variadic param pack do not apply ... I'm not even sure where the defaultable ShellPair args would go). What's the use case where the templated method is not convenient?

loriab commented 4 years ago

Thanks for the guidance -- I think Andy got passed the ShellPair/compute2 difficulty.