-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #38 from MasakiYama/master
日本語版マニュアルの誤植の修正
- Loading branch information
Showing
9 changed files
with
453 additions
and
7 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,226 @@ | ||
Definition of models and lattices of antiferromagnetic Heisenberg dimers by standard mode of DSQSS/DLA | ||
=============================================================== | ||
|
||
In this tutorial, we will consider a system in which an external magnetic field is applied to a :math:`S=1/2` antiferromagnetic Heisenberg dimer :math:`\mathcal{H}= \sum_{\langle i,j \rangle}-J_z S^z_i S^z_j -\frac{J_{xy}}{2}(S^+_i S^-_j +S^-_i S^+_j)-h\sum_i S^z_i ,~J_z<0, J_xy<0, h>0` | ||
by calculating the approximate form of the lattice, | ||
you learn how to use the standard mode of DSQSS/DLA. | ||
|
||
The calculations in the standard mode of DSQSS/DLA are as follows | ||
|
||
1. prepare an input file for simple mode, | ||
2. create an input file for standard mode, | ||
3. run the calculation. | ||
|
||
|
||
|
||
Preparing the input file for simple mode | ||
******************** | ||
|
||
To run DSQSS/DLA, you will need the simple mode file std.toml in TOML format with the following information | ||
|
||
#. Hamiltonian Information, | ||
#. Information on lattices, | ||
#. Information on parameters such as inverse temperature and number of Monte Carlo steps. | ||
|
||
Thus, the first step is to prepare this input file. | ||
The file of antiferromagnetic Heisenberg dimer is available in the following location | ||
(sample/dla/01_spindimer/std.toml) | ||
:: | ||
|
||
[hamiltonian] | ||
model = "spin" | ||
M = 1 # S=1/2 | ||
Jz = -1.0 # coupling constant, negative for AF | ||
Jxy = -1.0 # coupling constant, negative for AF | ||
h = 0.0 # magnetic field | ||
[lattice] | ||
lattice = "hypercubic" # hypercubic, periodic | ||
dim = 1 # dimension | ||
L = 2 # number of sites along each direction | ||
bc = false # open boundary | ||
[parameter] | ||
beta = 100 # inverse temperature | ||
nset = 5 # set of Monte Carlo sweeps | ||
npre = 10 # MCSteps to estimate hyperparameter | ||
ntherm = 10 # MCSweeps for thermalization | ||
nmcs = 100 # MCSweeps for measurement | ||
seed = 31415 # seed of RNG | ||
|
||
To this file, we add the effect of applying an external magnetic field in the z direction, | ||
and set the lattice dimension and the number of sites to 2 and 4, respectively | ||
:: | ||
|
||
[hamiltonian] | ||
model = "spin" | ||
M = 1 # S=1/2 | ||
Jz = -1.0 # coupling constant, negative for AF | ||
Jxy = -1.0 # coupling constant, negative for AF | ||
h = 0.5 # magnetic field | ||
[lattice] | ||
lattice = "hypercubic" # hypercubic, periodic | ||
dim = 2 # dimension | ||
L = 4 # number of sites along each direction | ||
bc = false # open boundary | ||
[parameter] | ||
beta = 100 # inverse temperature | ||
nset = 5 # set of Monte Carlo sweeps | ||
npre = 10 # MCSteps to estimate hyperparameter | ||
ntherm = 10 # MCSweeps for thermalization | ||
nmcs = 100 # MCSweeps for measurement | ||
seed = 31415 # seed of RNG | ||
|
||
|
||
Writing an input file for standard mode | ||
********** | ||
|
||
This file is given to dla_hamgen | ||
:: | ||
|
||
$ dla_hamgen std.toml | ||
|
||
As a result, a text file in TOML format, hamiltonian.toml, | ||
is generated to describe the information of the site Hamiltonian and the many-body interaction. | ||
|
||
|
||
Next, you give std.toml to dla_latgen | ||
:: | ||
|
||
$ dla_latgen -t lattice.toml std.toml | ||
|
||
|
||
As a result, a text file in TOML format, lattice.toml, | ||
is generated to describe the information of the space using unit cells and basic translation vectors. | ||
|
||
|
||
Running the calculation | ||
**************** | ||
|
||
With lattice.toml as input file, you can create a gnuplot file lattice.plt:: | ||
:: | ||
|
||
$ dla_latgen -g lattice.plt lattice.toml | ||
|
||
Giving lattce.plt to gnuplot will produce a two-dimensional schematic of the lattice:: | ||
|
||
|
||
.. figure:: ../../../image/dla/tutorial/2Dlattice.png | ||
:name: fig_2Dlattice | ||
:alt: Two-dimensional lattice | ||
|
||
Schematic of the lattice of an antiferromagnetic Heisenberg spin chain in an external magnetic field in the z direction. | ||
|
||
|
||
|
||
Writing lattice.dat and kpoints.dat | ||
******************** | ||
|
||
The lattice.toml file defines the lattice information using unit cells and fundamental translation vectors, | ||
while the lattice.dat file defines the lattice information using the number of sites and interactions between sites. | ||
The lattice.dat file also can be generated using the simple mode file std.toml in TOML format. | ||
You give std.toml to dla_latgen, which contains the effect of applying an external magnetic field in the z direction as used earlier | ||
:: | ||
|
||
$ dla_latgen -o lattice.dat std.toml | ||
|
||
As a result, you will get the lattice.dat file as follows | ||
:: | ||
|
||
name | ||
hypercubic | ||
|
||
lattice | ||
2 # dim | ||
4 4 # size | ||
0 0 # 0:open boundary, 1:periodic boundary | ||
0 1.0 0.0 # latvec_0 | ||
1 0.0 1.0 # latvec_1 | ||
|
||
directions | ||
2 # ndirections | ||
# id, coords... | ||
0 1.0 0.0 | ||
1 0.0 1.0 | ||
|
||
sites | ||
16 # nsites | ||
# id, type, coord... | ||
0 0 0.0 0.0 | ||
1 0 1.0 0.0 | ||
2 0 2.0 0.0 | ||
3 0 3.0 0.0 | ||
4 0 0.0 1.0 | ||
5 0 1.0 1.0 | ||
6 0 2.0 1.0 | ||
7 0 3.0 1.0 | ||
8 0 0.0 2.0 | ||
9 0 1.0 2.0 | ||
10 0 2.0 2.0 | ||
11 0 3.0 2.0 | ||
12 0 0.0 3.0 | ||
13 0 1.0 3.0 | ||
14 0 2.0 3.0 | ||
15 0 3.0 3.0 | ||
|
||
interactions | ||
24 # nints | ||
# id, type, nbody, sites..., edge_flag, direction | ||
0 0 2 0 1 0 0 | ||
1 0 2 0 4 0 1 | ||
2 1 2 1 2 0 0 | ||
3 2 2 1 5 0 1 | ||
4 3 2 2 3 0 0 | ||
5 2 2 2 6 0 1 | ||
6 0 2 3 7 0 1 | ||
7 2 2 4 5 0 0 | ||
8 1 2 4 8 0 1 | ||
9 4 2 5 6 0 0 | ||
10 4 2 5 9 0 1 | ||
11 5 2 6 7 0 0 | ||
12 4 2 6 10 0 1 | ||
13 1 2 7 11 0 1 | ||
14 2 2 8 9 0 0 | ||
15 3 2 8 12 0 1 | ||
16 4 2 9 10 0 0 | ||
17 5 2 9 13 0 1 | ||
18 5 2 10 11 0 0 | ||
19 5 2 10 14 0 1 | ||
20 3 2 11 15 0 1 | ||
21 0 2 12 13 0 0 | ||
22 1 2 13 14 0 0 | ||
23 3 2 14 15 0 0 | ||
|
||
|
||
Next, you can create kpoints.dat, | ||
which is a text file that specifies the coefficients of the reciprocal grid vector expansion of the wavenumber vector. | ||
You can specify the size by using -s. Please give the std.toml file to dla_wvgen -s :: | ||
|
||
$ dla_wvgen -s "8 8" std.toml | ||
|
||
As a result, you will get the following kpoints.dat file | ||
:: | ||
|
||
dim | ||
2 | ||
|
||
kpoints | ||
4 | ||
0 0 0 | ||
1 0 4 | ||
2 4 0 | ||
3 4 4 | ||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.