Sorry for my failure to communicate.  My notation was wholly insufficient.

In Latex format, it would be

\begin{equation}
\hat{H}=\sum_{i,j,k,l}M^{i,j}_{k,l}\hat{a}^{\dag}_{i}\hat{a}^{\dag}_{j}\hat{a}_{l}\hat{a}_{k}
\end{equation}

which I attached as a GIF just in case.

In the original equation, the "plus sign" was supposed to represent the dagger of a creation operator, while c(k) was an annihilation operator for site/function/orbital k.

The matrix elements could be broken up into 1- and 2-body terms for my purpose as well.

Jeff


On 12/3/06, Matthias Troyer < troyer@phys.ethz.ch> wrote:
Hi Jeff,


On Dec 3, 2006, at 7:07 PM, Jeff Hammond wrote:

> Dear ALPS friends,
>
> I'm trying to generate Hamiltonian matrix elements for lattice
> models using the kitchen sink of symmetries in ALPS.
> Unfortunately, I can't figure out where I can get them by reading
> the source code.

We can help but I do not understand the Hamiltonian:

>  H = sum(i,j,k,l) M(i,j,k,l) c(i)+ c(j)+ c(l) c(k).

This seems to split trivially into single-site terms c(i) and 2-site
terms c(l) c(k)

Also, what is c?


> I doubt it is ever stored complete in memory, but I just want to
> read it out element-by-element in sparse format into an external
> file.  If no part of this quantity ever exists but can be obtained
> by some modifying the code, that works, too.
>
> If someone can point me to the right place and make a suggestion
> for what to do, that would be fantastic.  If this is not a simple
> request at all, but someone still wants to help me, I can give a
> much more detailed explanation of what I'm trying to do.

We'll first need to understand what yur question above is. I do not
fully understand your H yet?

Matthias





--
Jeff Hammond
The University of Chicago