Hello. I have used libint2 for some years, but one question is always confusing me.
It seems to me that each shell has only one Contraction. Then why is there a std::vector<Contraction> in each shell. And further, why is Contraction designed in the first place? If there had been no Contraction, to find the angular momentum I would have just called someshell.l, which is more convenient and direct, instead of someshell.contr[0].l.
Hello. I have used libint2 for some years, but one question is always confusing me.
It seems to me that each shell has only one
Contraction
. Then why is there astd::vector<Contraction>
in each shell. And further, why isContraction
designed in the first place? If there had been noContraction
, to find the angular momentum I would have just calledsomeshell.l
, which is more convenient and direct, instead ofsomeshell.contr[0].l
.