At the moment, the cached functions _olp and _olp_deriv are stored in the _cache_fns attribute. This attribute is created in the __init__ of the class of wavefunctions that will be caching the overlaps (and its derivative). This approach seems to be quite ugly and I think can be cleaned up a bit.
Maybe it'll be better to give the option of caching the overlaps to all wavefunctions and let the user decide accordingly. This would suggest that the _cache_fns be moved to the load_cache method.
At the moment, the cached functions
_olp
and_olp_deriv
are stored in the_cache_fns
attribute. This attribute is created in the__init__
of the class of wavefunctions that will be caching the overlaps (and its derivative). This approach seems to be quite ugly and I think can be cleaned up a bit.Maybe it'll be better to give the option of caching the overlaps to all wavefunctions and let the user decide accordingly. This would suggest that the
_cache_fns
be moved to theload_cache
method.