Hi, dear developers
Recently I use Itensor to calculate the ground state energy and ground state of a one-dimensional antiferromagnetic Heisenberg chain. I would like to further obtain its dynamical spin Green’s functions. It can be defined as: \langle \Phi_{0}| S_{-\mathbf{q}}^z \frac{1}{\mathcal{H}-\omega-\omega_{0}+i\eta}S_{\mathbf{q}}^z |\Phi_{0}\rangle=\langle \Phi^{\prime}|\frac{1}{\mathcal{H}-\omega-\omega_{0}+i\eta} |\Phi^{\prime} \rangle. Here |\Phi_{0}\rangle is the ground state, which can be obtained from DMRG. |\Phi^{\prime}\rangle =S_{\mathbf{q}}^z |\Phi_{0}\rangle=\sum_{\mathbf{R}} S_{\mathbf{R}}^z e^{i \mathbf{k} \cdot \mathbf{R}}|\Phi_{0}\rangle, which can be calculated by using MPO S_{\mathbf{R}}^{z} times the ground state MPS. \mathcal{H} is the Hamiltonian of system, which is written as MPO in Itensor. \omega, \omega_{0}, and \eta are real numbers time a diagITensor. i is the square root of -1. The tricky part is how we get the inverse of MPO \mathcal{H} and apply it to |\Phi^{\prime}\rangle. So I would like to ask the developers if there is a built-in algorithm in ITensor to calculate the inverse of MPO or other suggestions?
Thank you for your patience, and I am looking to to hearing from you.
Regards,
Y.D.Shen.