4.2.11. Exchange file

This file determines the values of Exchange couplings \(J_{ij}^{\rm Ex}\) (for \(S=1/2\) system). For the fermion electronic system, the exchange terms are given as

(4.13)\[\mathcal H+=\sum_{i,j}J_{ij}^{\rm Ex} (c_ {i \uparrow}^{\dagger}c_{j\uparrow}c_{j \downarrow}^{\dagger}c_{i \downarrow}+c_ {i \downarrow}^{\dagger}c_{j\downarrow}c_{j \uparrow}^{\dagger}c_{i \uparrow}),\]

while for the spin system, they are given as

(4.14)\[\mathcal H+=\sum_{i,j}J_{ij}^{\rm Ex} (S_ {i}^{+}S_{j}^{-} + S_ {i}^{-}S_{j}^{+}).\]

We note that \((S_i^{+}S_j^{-} + S_i^{-}S_j^{+})\) in the spin system is written by the operators for electrons as \(-(c_ {i \uparrow}^{\dagger}c_{j\uparrow}c_{j \downarrow}^{\dagger}c_{i \downarrow} +c_ {i \downarrow}^{\dagger}c_{j\downarrow}c_{j \uparrow}^{\dagger}c_{i \uparrow})\). An example of the file format is as follows.

======================
NExchange 6
======================
========Exchange ======
======================
   0     1  0.50000
   1     2  0.50000
   2     3  0.50000
   3     4  0.50000
   4     5  0.50000
   5     0  0.50000

File format

  • Line 1: Header

  • Line 2: [string01] [int01]

  • Lines 3-5: Header

  • Lines 6-: [int02] [int03] [double01].

Parameters

  • [string01]

    Type : String (a blank parameter is not allowed)

    Description : A keyword for the total number of Exchange couplings. You can freely give a name to the keyword.

  • [int01]

    Type : Int (a blank parameter is not allowed)

    Description : An integer giving the total number of Exchange couplings.

  • [int02], [int03]

    Type : Int (a blank parameter is not allowed)

    Description : An integer giving a site index (\(0<=\) [int02], [int03] \(<\) Nsite).

  • [double01]

    Type : Double (a blank parameter is not allowed)

    Description : A value for \(J_{ij}^{\rm Ex}\).

Use rules

  • Headers cannot be omitted.

  • A program is terminated when the components of the exchange couplings are double counted.

  • A program is terminated when [int01] is different from the total number of exchange couplings defined in this file.

  • A program is terminated when either [int02] or [int03] is outside the range of the defined values.