Add LogVal to MCState
Created by: gcarleo
In order to have a complete interface in MCState (and also to easily implement some missing features in 3.0, such as #556 (closed) ) it is important to add a (differentiable) method to MCState that return the logarithm of the variational state in a given basis.
I would like to discuss here about the signature of this. I had in mind something like
def LogVal(x,R=None):
"""Returns Log <x|R|Psi>, where R is an optional rotation operator"""
Alternatively, a more general interface would be something like that
def LogInnerProduct(phi):
"""Returns Log <Phi|Psi>"""
however I guess the issue is implementing the latter to be aware of cases where Phi is just a state of the computational basis and (or a linear combination of a small number of those) and not a generic VariationalState