Option to not clear the output memory before computing functionals
I'm using LibXC and sometimes I need to compute a combination of multiple functionals. As far as I understand, current API suggest calling LibXC functions each time for every functional, saving the results in temporary memory storage. The LibXC function xc_mix_func
uses same approach. I found this way not very convenient and I suggest to give users an alternative.
I have a patch which allows to compute a combination of XC functionals using same memory storage and avoiding allocations of temporary memory inside xc_mix_func
.
It implements the following:
- Add variants of
xc_*_new
functions which don't clean memory - Different way to use mixing coefficients, which does not require extra memory allocations inside LibXC
- Some handy utilities to modify functional weights
Do you think it can be useful to you?