<div dir="ltr">Hello everybody,<br><br>for my Ph.D. in theoretical quantum mechanics, I am currently trying to integrate the Schroedinger equation (a linear partial differential equation). In my field, we are working with so called local spin chains, which mathematically speaking are described by tensor products of small vector spaces over several systems (let's say 20). The matrix corresponding to the differential equation is called Hamiltonian and can for typical systems be written as a sum over tensor products where it acts as the identity on most systems. It normally has the form<br>
<br><div style="text-align:left"><i>\sum Id \otimes Id ... Id \otimes M \otimes Id \otimes ...</i><br></div><br>where M takes different positions.I know how to explicitly construct the full matrix and insert it into Petsc, but for the interesting applications it is too large to be stored in the RAM. I would therefore like to implement it as a matrix free version. <br>
This should be possible using MatCreateMAIJ() and VecGetArray(), as the following very useful post points out <a href="http://lists.mcs.anl.gov/pipermail/petsc-users/2011-September/009992.html">http://lists.mcs.anl.gov/pipermail/petsc-users/2011-September/009992.html</a>. I was wondering whether anybody already made progress with this, as I am still a bit lost on how to precisely proceed. These systems really are ubiquitous in theoretical quantum mechanics and I am sure it would be helpful to quite a lot of people who still shy away a bit from Petsc.<br>
<br>Thanks already for your help and all the best, Mathis<br></div>