The Hamiltonian

We assume a quantum mechanical system that can be described by the Hamiltonian

\begin{displaymath}
\hat \mathcal H=\sum_{n=1}^N \hat \mathcal H(n) -\frac{1}...
..._n) \hat \mathcal I_{\alpha}^n \hat \mathcal I_{\beta}^{n'}.
\end{displaymath} (1)

The first term $\hat \mathcal H(n)$ denotes the Hamiltonian of a subsystem $n$ (e.g. an ion, or cluster of ions). The second term describes a bilinear interaction between different subsystems through the operators $\hat \mathcal I_{\alpha}^n$, with $\alpha = 1,2,...,m$. The operators $\hat \mathcal H(n)$ and $\hat \mathcal I_{\alpha}^n$ act in the subspace $n$ of the Hilbert space, i.e. $[\hat \mathcal I_{\alpha}^n,\hat \mathcal I_{\alpha}^{n'}]=0$, $[\hat \mathcal H(n),\hat \mathcal I_{\alpha}^{n'}]=0$ and $[\hat \mathcal H(n),\hat \mathcal H(n')]=0$ for $n \neq n'$10. For example, in the case of a Heisenberg exchange between magnetic ions we would identify the set of operators with $\alpha=1,2,3$ with the three components of the spin: $\hat \mathcal I_1 \leftrightarrow \hat S_x, \hat \mathcal I_2 %
\leftrightarrow \hat S_y, \hat \mathcal I_3 \leftrightarrow \hat S_z$. The beauty of the analysis which follows is that it can be applied to almost any Hamiltonian of the form (1). The analysis of complex magnetic systems can thus be attempted by starting from a simple form such as the Heisenberg model and by introducing, step-by-step, more complexity into the model. For example, anisotropy and interactions with extended range can be introduced by modifying ${\mathcal J}_{\alpha\beta}(\mathbf R_n - \mathbf R_{n'})$, higher order operators can be introduced by extending the index range for $\alpha$, and a complex single-ion term $\hat \mathcal H(n)$ may be added. Another example for a Hamiltonian (1) is the problem of lattice dynamics, which can be treated in the framework of this formalism by identifying the operators $\hat \mathcal I^n_{\alpha}$ with the atomic displacements $u^{n}$. Here the index $\alpha$ is not necessary and $n$ refers to both, the atomic position index and the spatial coordinate of the displacement, $n=(1,x),(1,y),(1,z),(2,x),(2,y),(2,z), ...$. Note that this can be done, because the three spatial components of the displacement operators commute with each other (in contrast to the components of the spin) and each displacement component acts in its own subspace of the Hilbert space. The kinetic energy will be part of the single ion term $\hat \mathcal H(n)$. Allowing more complexity to the system, both the spin and lattice degrees of freedom can be introduced and spin-phonon interactions can be handled by the theory.

The main limitation of the approach is that it neglects fluctuations associated with phase transitions and quantum disorder. We are primarily concerned, therefore, with excitations associated with a well-ordered ground state.

Two special forms of the Hamiltonian (1), which have been implemented are given in the following. Some other forms are also available, by programming a single ion module the user may treat any type single ion Hamiltonian $\hat \mathcal H(n)$.



Subsections