• R/O
  • HTTP
  • SSH
  • HTTPS

fermisurfer: Commit

fermisurfer Git


Commit MetaInfo

Revisionc15cbe15b4445c4e297ef8abdef97439e07fa5fd (tree)
Zeit2017-01-13 13:45:25
Autormitsuaki1987 <kawamitsuaki@gmai...>
Commitermitsuaki1987

Log Message

Delete old html

Ändern Zusammenfassung

Diff

--- a/doc/en/fermisf_input_en.rst
+++ b/doc/en/fermisf_input_en.rst
@@ -78,13 +78,13 @@ The input file is as follows (``mgb2_vfz.fs``):
7878
7979 #. Reciprocal lattice vector 3
8080
81-#. Energy
81+#. Energy (The order of component is written in :ref:`format` )
8282
8383 ``fermisurfer`` assume that the Fermi energy is ``0.0`` in the
8484 default. You can shift the Fermi energy by using
8585 ``Shift Fermi Energy`` menu described at the section 6.5.
8686
87-#. Matrix elements
87+#. Matrix elements (The order of component is written in :ref:`format` )
8888
8989 If you have no quantity to plot on Fermi surfaces, please use
9090 ``Unicolor`` switch in ``Color scale mode`` menu described at section
@@ -128,6 +128,8 @@ For Windows
128128 Click mouse right button on the input file. Choose "Open With ..." menu,
129129 then choose ``bxsf2frmsf.exe``.
130130
131+.. _format:
132+
131133 How to produce the input file in C and fortran programs
132134 -------------------------------------------------------
133135
--- a/doc/index.html.en
+++ b/doc/index.html.en
@@ -28,8 +28,8 @@
2828 </p>
2929
3030 <p><a href="http://osdn.jp/projects/fermisurfer/releases/">Download</a></p>
31- <p><a href="./manual_ja.html">日本語マニュアル</a></p>
32- <p><a href="./manual_en.html">Manual in English</a></p>
31+ <p>日本語マニュアル(<a href="./ja/index.html">HTML</a>/<a href="./ja/fermisurfer.pdf">PDF</a>)</p>
32+ <p>Manual in English(<a href="./en/index.html">HTML</a>/<a href="./en/fermisurfer.pdf">PDF</a>)</p>
3333 <p><a href="http://osdn.jp/projects/fermisurfer/ticket/">Report Bugs</a></p>
3434 <p><a href="http://osdn.jp/projects/fermisurfer/forums/">Forum</a></p>
3535 <p><a href="http://osdn.jp/projects/fermisurfer/lists/">Mailing list</a></p>
--- a/doc/index.html.ja
+++ b/doc/index.html.ja
@@ -28,8 +28,8 @@
2828 </p>
2929
3030 <p><a href="http://osdn.jp/projects/fermisurfer/releases/">ダウンロード</a></p>
31- <p><a href="./manual_ja.html">日本語マニュアル</a></p>
32- <p><a href="./manual_en.html">Manual in English</a></p>
31+ <p>日本語マニュアル(<a href="./ja/index.html">HTML</a>/<a href="./ja/fermisurfer.pdf">PDF</a>)</p>
32+ <p>Manual in English(<a href="./en/index.html">HTML</a>/<a href="./en/fermisurfer.pdf">PDF</a>)</p>
3333 <p><a href="http://osdn.jp/projects/fermisurfer/ticket/">バグ報告</a></p>
3434 <p><a href="http://osdn.jp/projects/fermisurfer/forums/">フォーラム</a></p>
3535 <p><a href="http://osdn.jp/projects/fermisurfer/lists/">メーリングリスト</a></p>
--- a/doc/ja/fermisf_input_ja.rst
+++ b/doc/ja/fermisf_input_ja.rst
@@ -83,14 +83,14 @@ input fileの書式
8383
8484 #. 逆格子ベクトル3
8585
86-#. エネルギー (並び順は5.3節参照)
86+#. エネルギー (並び順は :ref:`format` 参照)
8787
8888 ``fermisurfer`` はデフォルトではFermiエネルギーを
8989 ``0.0`` としています. ただし,
9090 後述の ``Shift Fermi Energy`` メニューを用いて
9191 Fermiエネルギーを ``0.0`` 以外の値に変更することも可能です.
9292
93-#. 物理量 (並び順は5.3節参照)
93+#. 物理量 (並び順は :ref:`format` 参照)
9494
9595 特にカラープロットをしたい量が無く,
9696 Fermi面の描画のみを行いたい場合には,
@@ -139,6 +139,8 @@ Windowsの場合
139139 メニューから「プログラムから開く」を選択し,
140140 実行ファイルを ``bxsf2frmsf.exe`` に設定してください.
141141
142+.. _format:
143+
142144 C/fortranでの入力ファイルの書き出し方
143145 -------------------------------------
144146
--- a/doc/manual_en.html
+++ /dev/null
@@ -1,24 +0,0 @@
1-<html>
2- <head>
3- <meta http-equiv="Content-Type"
4- content="text/html; charset=utf-8">
5- <script type="text/x-mathjax-config">
6- MathJax.Hub.Config({ tex2jax: { inlineMath: [['$','$'], ["\\(","\\)"]] } });
7- </script>
8- <script type="text/javascript"
9- src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML">
10- </script>
11- <meta http-equiv="X-UA-Compatible" CONTENT="IE=EmulateIE7" />
12-
13- <title>Manual for FermiSurfer</title>
14-
15- <meta name="description" content="Manual for FermiSurfer">
16-
17- </head>
18-
19- <frameset cols="300,*">
20- <frame name="left" src="./manual_left_en.html">
21- <frame name="right" src="./manual_right_en.html">
22- </frameset>
23-
24-</html>
--- a/doc/manual_ja.html
+++ /dev/null
@@ -1,23 +0,0 @@
1-<html>
2- <head>
3- <meta http-equiv="Content-Type"
4- content="text/html; charset=utf-8">
5- <script type="text/x-mathjax-config">
6- MathJax.Hub.Config({ tex2jax: { inlineMath: [['$','$'], ["\\(","\\)"]] } });
7- </script>
8- <script type="text/javascript"
9- src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML">
10- </script>
11- <meta http-equiv="X-UA-Compatible" CONTENT="IE=EmulateIE7" />
12-
13- <title>FermiSurfer日本語マニュアル</title>
14-
15- <meta name="description" content="FermiSurfer日本語マニュアル">
16-
17- </head>
18-
19- <frameset cols="300,*">
20- <frame name="left" src="./manual_left_ja.html">
21- <frame name="right" src="./manual_right_ja.html">
22- </frameset>
23-</html>
--- a/doc/manual_left_en.html
+++ /dev/null
@@ -1,43 +0,0 @@
1-<html>
2- <head>
3- <meta http-equiv="Content-Type"
4- content="text/html; charset=utf-8">
5- <script type="text/x-mathjax-config">
6- MathJax.Hub.Config({ tex2jax: { inlineMath: [['$','$'], ["\\(","\\)"]] } });
7- </script>
8- <script type="text/javascript"
9- src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML">
10- </script>
11- <meta http-equiv="X-UA-Compatible" CONTENT="IE=EmulateIE7" />
12-
13- <title>Manual for FermiSurfer</title>
14-
15- <meta name="description" content="Manual for FermiSurfer">
16-
17- </head>
18- <body bgcolor="CCFFCC">
19-
20- <h1>Contents</h1>
21- <p><a href="./manual_right_en.html#introduction" target="right">1, Introduction</a></p>
22- <p><a href="./manual_right_en.html#mit-license" target="right">2, MIT License</a></p>
23- <p><a href="./manual_right_en.html#files-in-this-package" target="right">3, Files in this package</a></p>
24- <p><a href="./manual_right_en.html#install" target="right">4, Install</a></p>
25- <p><a href="./manual_right_en.html#input-file" target="right">5, Input file</a></p>
26- <p><a href="./manual_right_en.html#control-fermisurfer" target="right">6, Control FermiSurfer</a></p>
27- <p><a href="./manual_right_en.html#gallery" target="right">7, Gallery</a></p>
28- <p><a href="./manual_right_en.html#acknowledgment" target="right">8, Acknowledgment</a></p>
29- <p><a href="./manual_right_en.html#contact" target="right">9, Contact</a></p>
30-
31- <hr>
32-
33- <h1>Goto</h1>
34- <p><a href="./index.html.en" target="_top">Home</a></p>
35- <p><a href="http://osdn.jp/projects/fermisurfer/releases/" target="_top">Download</a></p>
36- <p><a href="./manual_ja.html" target="_top">日本語マニュアル</a></p>
37- <p><a href="http://osdn.jp/projects/fermisurfer/ticket/" target="_top">Report Bugs</a></p>
38- <p><a href="http://osdn.jp/projects/fermisurfer/forums/" target="_top">Forum</a></p>
39- <p><a href="http://osdn.jp/projects/fermisurfer/lists/" target="_top">Mailing list</a></p>
40-
41-
42- </body>
43-</html>
--- a/doc/manual_left_ja.html
+++ /dev/null
@@ -1,42 +0,0 @@
1-<html>
2- <head>
3- <meta http-equiv="Content-Type"
4- content="text/html; charset=utf-8">
5- <script type="text/x-mathjax-config">
6- MathJax.Hub.Config({ tex2jax: { inlineMath: [['$','$'], ["\\(","\\)"]] } });
7- </script>
8- <script type="text/javascript"
9- src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML">
10- </script>
11- <meta http-equiv="X-UA-Compatible" CONTENT="IE=EmulateIE7" />
12-
13- <title>FermiSurfer日本語マニュアル</title>
14-
15- <meta name="description" content="FermiSurfer日本語マニュアル">
16-
17- </head>
18- <body bgcolor="CCFFCC">
19-
20- <h1>目次</h1>
21- <p><a href="./manual_right_ja.html#hajimeni" target="right">1, はじめに</a></p>
22- <p><a href="./manual_right_ja.html#mitlicense" target="right">2, MIT ライセンス</a></p>
23- <p><a href="./manual_right_ja.html#filesinthispackage" target="right">
24- 3, このパッケージに含まれているファイル</a></p>
25- <p><a href="./manual_right_ja.html#instlation" target="right">4, インストール手順</a></p>
26- <p><a href="./manual_right_ja.html#inputfile" target="right">5, Input file</a></p>
27- <p><a href="./manual_right_ja.html#controlling" target="right">6, 操作方法</a></p>
28- <p><a href="./manual_right_ja.html#garally" target="right">7, ギャラリー</a></p>
29- <p><a href="./manual_right_ja.html#acknoledge" target="right">8, 謝辞</a></p>
30- <p><a href="./manual_right_ja.html#contacts" target="right">9, 問い合わせ先</a></p>
31- <hr>
32-
33- <h1>移動</h1>
34- <p><a href="./index.html.ja" target="_top">ホーム</a></p>
35- <p><a href="http://osdn.jp/projects/fermisurfer/releases/" target="_top">ダウンロード</a></p>
36- <p><a href="./manual_en.html" target="_top">Manual in English</a></p>
37- <p><a href="http://osdn.jp/projects/fermisurfer/ticket/" target="_top">バグ報告</a></p>
38- <p><a href="http://osdn.jp/projects/fermisurfer/forums/" target="_top">フォーラム</a></p>
39- <p><a href="http://osdn.jp/projects/fermisurfer/lists/" target="_top">メーリングリスト</a></p>
40-
41- </body>
42-</html>
--- a/doc/manual_right_en.html
+++ /dev/null
@@ -1,547 +0,0 @@
1-<html>
2- <head>
3- <meta http-equiv="Content-Type"
4- content="text/html; charset=utf-8">
5- <script type="text/x-mathjax-config">
6- MathJax.Hub.Config({ tex2jax: { inlineMath: [['$','$'], ["\\(","\\)"]] } });
7- </script>
8- <script type="text/javascript"
9- src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML">
10- </script>
11- <meta http-equiv="X-UA-Compatible" CONTENT="IE=EmulateIE7" />
12-
13- <title>Manual for FermiSurfer</title>
14-
15- <meta name="description" content="Manual for FermiSurfer">
16-
17- </head>
18- <body bgcolor="CCFFCC">
19-
20- <center><h1>Manual for FermiSurfer</h1></center>
21- <center><h2>Version 1.7.1</h2></center>
22- <center><h2>Mitsuaki Kawamura</h2></center>
23-
24- <hr>
25-
26- <h1><a name="introduction">1, Introduction</a></h1>
27-
28- <p>This document is a manual for the Fermi surface drawing program &quot;FermiSurfer&quot;.
29- FermiSurfer has been developed since 2012 by Mitsuaki Kawamura
30- (ISSP, The University of Tokyo); it is opened on web at November, 2014.
31- It draws Fermi surfaces, and plot $k$-depend matrix elements such as
32- the superconducting gap and orbital character with colors.</p>
33-
34- <hr><h1><a name="mit-license">2, MIT License</a></h1>
35-
36- <p>Copyright (c) 2014 Mitsuaki Kawamura</p>
37- <p>Permission is hereby granted, free of charge,
38- to any person obtaining a copy of this software and associated documentation files
39- (the "Software"), to deal in the Software without restriction,
40- including without limitation the rights to use, copy, modify, merge, publish,
41- distribute, sublicense, and/or sell copies of the Software,
42- and to permit persons to whom the Software is furnished to do so,
43- subject to the following conditions:</p>
44- <p>The above copyright notice and this permission notice shall be included
45- in all copies or substantial portions of the Software.</p>
46- <p>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
47- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
48- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS
49- OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
50- IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
51- ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
52- OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</p>
53-
54- <hr><h1><a name="files-in-this-package">3, Files in this package</a></h1>
55-
56- <dl>
57- <p><code>bin/fermisurfer.exe</code> : Executable for Windows (Main program)</p>
58- <p><code>bin/bxsf2frmsf.exe</code> : Executable for Windows (Utility to convert file)</p>
59- <p><code>doc/manual_en.pdf</code> : Manual (English)</p>
60- <p><code>doc/manual_ja.pdf</code> : Manual (Japanese)</p>
61- <p><code>examples/mgb2_vfz.frmsf</code> : Sample input file for <code>fermisurfer</code></p>
62- <p><code>examples/pb.bxsf</code> : Sample input file for <code>bxsf2frmsf</code></p>
63- <p><code>src/fermisurfer.c</code> : Source file (Main program)</p>
64- <p><code>src/bxsf2frmsf.c</code> : Source file (Utility to convert file)</p>
65- <p><code>src/Makefile</code> : Makefile for Linux & Mac OSX</p>
66- </dl>
67-
68- <hr><h1><a name="install">4, Install</a></h1>
69-
70- <hr><h2 id="installation-in-linux">4.1, Installation in Linux</h2>
71-
72- <ol>
73- <li><p>Install the required package</p>
74- <ul>
75- <li><p>For Debian/Ubuntu</p>
76- <pre><code> $ sudo aptitude install freeglut3-dev
77- </code></pre></li>
78- <li><p>For Red Hat Enterprise Linux/CentOS</p>
79- <pre><code> $ sudo yum install freeglut-devel.x86_64
80- </code></pre></li>
81- </ul></li>
82- <li><p>Make</p>
83- <pre><code>
84-$ cd ./src
85-$ make fermisurfer
86-$ make install
87- </code></pre>
88- </li>
89- </ol>
90- <p>Then a binary file <code>fermisurfer</code> is generated and put
91- in <code>/usr/local/bin/</code>.</p>
92-
93- <hr><h2 id="For mac-osx">4.2, For Mac OSX</h2>
94-
95- <ol>
96- <li><p>Install Xcode.</p></li>
97- <li><p>Open <code>Makefile</code> with an editor, and delete <code>#</code>
98- below <code>#mac</code>.</p>
99- <pre><code>
100-$ cd ./src
101-$ emacs Makefile
102- </code></pre>
103- </li>
104- <li><p>Make.</p>
105- <pre><code>
106-$ make fermisurfer
107-$ make install
108- </code></pre>
109- <p>Then a binary file <code>fermisurfer</code> is generated and put
110- in <code>/usr/local/bin/</code>.</p></li>
111- </ol>
112-
113- <hr><h2 id="installation-in-windows">4.3, Installation in Windows</h2>
114-
115- <p>Use an executable <code>bin/fermisurfer.exe</code> .
116- You can also compile <code>fermisurfer</code> manually
117- by using freeglut library.</p>
118-
119- <hr><h1><a name="input-file">5, Input file</a></h1>
120-
121- <hr><h2 id="input-file-format">5.1, input-file format</h2>
122-
123- <p>You have to prepare following data:</p>
124- <ul>
125- <li><p>The number of $k$ grid (three direction)</p></li>
126- <li><p>Reciprocal lattice vectors</p></li>
127- <li><p>The number of bands</p></li>
128- <li><p>The orbital energy at each band and $k$ (We call it "energy") .</p></li>
129- <li><p>Variables that you want to plot with color (We call it "matrix elements").</p></li>
130- </ul>
131- <p>The input file is as follows (<code>mgb2_vfz.fs</code>):</p>
132- <pre><code>
133-40 40 36 (1)
134-0 (2)
135-3 (3)
136-1.0000000 0.57735026 -0.0000000 (4)
137-0.0000000 1.1547005 0.0000000 (5)
138-0.0000000 -0.0000000 0.87206507 (6)
139-2.91340202E-02 (7)
140-2.93242838E-02
141-2.98905596E-02
142-3.08193434E-02
143-:
144-:
145-0.14393796
146-0.12800488
147-0.0000000 (8)
148-0.36269817
149-0.71675694
150-1.0535113
151-1.3644149
152-:
153-:
154--26.409407
155--19.318560
156--10.315671
157- </code></pre>
158- <ol>
159- <li><p>The number of $k$ in each direction</p></li>
160- <li><p>Switch to specify type of $k$ grid (Choose from <code>0, 1, 2</code>)</p>
161- <p>$k$ grid is represented as follows:<p>
162- <p>$$\begin{aligned}
163- {\boldsymbol k}_{i,j,k} =
164- x_i {\boldsymbol b}_1
165- +y_j {\boldsymbol b}_2
166- +z_k {\boldsymbol b}_3,
167- \end{aligned}$$</p>
168- where $i, j, k = 1 \cdots N_1, 1 \cdots N_2, 1 \cdots N_3$,
169- and $N_1, N_2, N_3$ are the number of $k$ in each direction.
170- </p>$x_i, y_j,z_k$ can be chosen from below:</p>
171- <ul>
172- <li><p><code>0</code> (Monkhorst-Pack grid) :
173- $x_i = \frac{2 i - 1 - N_1}{2 N_1}$</p>
174- </li>
175- <li><p><code>1</code> :
176- $x_i = \frac{i - 1}{N_1}$</p>
177- </li>
178- <li><p><code>2</code> :
179- $x_i = \frac{2 i - 1}{2 N_1}$</p>
180- </li>
181- </ul>
182- </li>
183- <li><p>The number of bands</p></li>
184- <li><p>Reciprocal lattice vector 1 (arbitrary unit)</p></li>
185- <li><p>Reciprocal lattice vector 2</p></li>
186- <li><p>Reciprocal lattice vector 3</p></li>
187- <li><p>Energy</p>
188- <p><code>fermisurfer</code> assume that the Fermi energy is <code>0.0</code>
189- in the default.
190- You can shift the Fermi energy by using
191- <code>Shift Fermi Energy</code> menu described at the section 6.5.</p></li>
192- <li><p>Matrix elements</p>
193- <p>If you have no quantity to plot on Fermi surfaces,
194- please use <code>Unicolor</code> switch in
195- <code>Color scale mode</code> menu described at section 6.7.
196- In that case, although this &quot;Matrix elements&quot;
197- is not used by <code>fermisurfer</code>,
198- please fill them with arbitrary numbers.</p>
199- </li>
200- </ol>
201-
202- <hr><h2>5.2, Converting bxsf file</h2>
203-
204- <p>
205- You can generate input files for <code>fermisurfer</code> from
206- an input file for XCrysDen (the bxsf format)
207- by using the utility program <code>bxsf2frmsf</code>.
208- </p>
209- <p>The usage is as follow (we use <code>examples/pb.bxsf</code> as an example.):</p>
210-
211- <h3>5.2.1, For Linux</h2>
212-
213- <p>You can launch generated executable as follows:</p>
214- <pre><code>
215-$ bxsf2frmsf pb.bxsf
216- </code></pre>
217- <p>You need a space between the command and input-file name.
218- After it finishes, the following files are generated:</p>
219- <ul>
220- <li><code>pb_vf.frmsf</code>: Absolute value of the Fermi velocity</li>
221- <li><code>pb_vfx.frmsf</code>: $x$ component of the Fermi velocity</li>
222- <li><code>pb_vfy.frmsf</code>: $y$ component of the Fermi velocity</li>
223- <li><code>pb_vfz.frmsf</code>: $z$ component of the Fermi velocity</li>
224- <li><code>pb_vfa1.frmsf</code>: Component of the Fermi velocity (along ${a_1}$)</li>
225- <li><code>pb_vfa2.frmsf</code>: Component of the Fermi velocity (along ${a_2}$)</li>
226- <li><code>pb_vfa3.frmsf</code>: Component of the Fermi velocity (along ${a_3}$)</li>
227- </ul>
228-
229- <h3>5.2.2, For Windows</h3>
230-
231- <p>Click mouse right button on the input file.
232- Choose "Open With ..." menu, then choose <code>bxsf2frmsf.exe</code>.</p>
233-
234- <hr><h2 id="how-to-produce-the-input-file-in-c-and-fortran-programs">
235- 5.3, How to produce the input file in C and fortran programs</h2>
236-
237- <p>fortran</p>
238- <pre><code>
239- real(4) :: bvec1(3), bvec2(3), bvec3(3) ! Resiplocal lattice vector
240- integer :: nk1, nk2, nk3 ! k-grid of each direction
241- integer :: ishift ! 1 for shifted grid, 0 for unshifted grid.
242- integer :: nbnd ! The number of bands
243- real(4) :: eig(nk3,nk2,nk1,nbnd) ! energy
244- real(4) :: x(nk3,nk2,nk1,nbnd) ! matrix element
245-
246- integer :: ik1, ik2, ik3, ibnd, fo
247-
248- open(fo, file = &quot;sample.fs&quot;)
249- write(fo,*) nk1, nk2, nk3
250- write(fo,*) ishift
251- write(fo,*) nbnd
252- write(fo,*) real(bvec1(1:3))
253- write(fo,*) real(bvec2(1:3))
254- write(fo,*) real(bvec3(1:3))
255- do ibnd = 1, nbnd
256- do ik1 = 1, nk1
257- do ik2 = 1, nk2
258- do ik3 = 1, nk3
259- write(fo,*) real(eig(ik3,ik2,ik1,ibnd))
260- end do
261- end do
262- end do
263- end do
264- do ibnd = 1, nbnd
265- do ik1 = 1, nk1
266- do ik2 = 1, nk2
267- do ik3 = 1, nk3
268- write(fo,*) real(x(ik3,ik2,ik1,ibnd))
269- end do
270- end do
271- end do
272- end do
273- close(fo)
274- </code></pre>
275- <p>C</p>
276- <pre><code>
277- float bvec1[3], bvec2[3], bvec3[3]; /*Resiplocal lattice vector*/
278- int nk1, nk2, nk3; /*k-grid of each direction*/
279- int ishift; /*1 for shifted grid, 0 for unshifted grid.*/
280- int nbnd; /*The number of bands*/
281- float eig[nbnd][nk1][nk2][nk3]; /*Energy*/
282- float x[nbnd][nk1][nk2][nk3]; /*Matrix element*/
283-
284- FILE* fo;
285- int ibnd, ik1, ik2, ik3;
286-
287- fo = fopen("sample.frmsf", "w");
288- ierr = fprintf(fo, &quot;%d %d %d\n&quot;, nk1, nk2, nk3);
289- ierr = fprintf(fo, &quot;%d\n&quot;, iswitch);
290- ierr = fprintf(fo, &quot;%d\n&quot;, nbnd);
291- ierr = fprintf(fo, &quot;%e %e %e\n&quot;, bvec1[0], bvec1[1], bvec1[2]);
292- ierr = fprintf(fo, &quot;%e %e %e\n&quot;, bvec2[0], bvec2[1], bvec2[2]);
293- ierr = fprintf(fo, &quot;%e %e %e\n&quot;, bvec3[0], bvec3[1], bvec3[2]);
294- for (ibnd = 0; ibnd &lt; nbnd; ++ibnd) {
295- for (ik1 = 0; ik1 &lt; nk1; ++ik1) {
296- for (ik2 = 0; ik2 &lt; nk2; ++ik2) {
297- for (ik3 = 0; ik3 &lt; nk3; ++ik3) {
298- ierr = fprintf(fo, &quot;%e\n&quot;, eig[ibnd][ik1][ik2][ik3]);
299- }
300- }
301- }
302- }
303- for (ibnd = 0; ibnd &lt; nbnd; ++ibnd) {
304- for (ik1 = 0; ik1 &lt; nk1; ++ik1) {
305- for (ik2 = 0; ik2 &lt; nk2; ++ik2) {
306- for (ik3 = 0; ik3 &lt; nk3; ++ik3) {
307- ierr = fprintf(fo, &quot;%e\n&quot;, x[ibnd][ik1][ik2][ik3]);
308- }
309- }
310- }
311- }
312- fclose(fo);
313- </code></pre>
314-
315- <hr><h1><a name="control-fermisurfer">6, Control FermiSurfer</a></h1>
316-
317- <hr><h2 id="for-linux">6.1, For Linux</h2>
318-
319- <p>You can launch generated executable as follows:</p>
320- <pre><code>
321-$ ./fermisurfer mgb2_vfz.fs
322- </code></pre>
323- <p>You need a space between the command and input-file name.
324- (The sample input file <code>mgb2_vfz.fs</code> contains $z$ element
325- of the Fermi velocity in MgB$_2$.)</p>
326-
327- <hr><h2 id="for-windows">6.2, For Windows</h2>
328-
329- <p>Click mouse right button on the input file.
330- Choose "Open With ..." menu, then choose <code>fermisurfer.exe</code>.</p>
331- <p>After that, <code>fermisurfer</code> runs as the same whether you use Linux or Windows.
332- The information from the input file is printed.</p>
333- <pre><code>
334-##### Brillouin zone informations #####
335-
336-k point grid : 40 40 36
337-k point grid is not shifted
338-# of bands : 3
339-bvec 1 : 1.000000 0.577350 -0.000000
340-bvec 2 : 0.000000 1.154701 0.000000
341-bvec 3 : 0.000000 -0.000000 0.872065
342-
343-# of lines for BZ : 84 (1)
344-
345-##### Max. and Min. of each bands #####
346-
347-Band Eig_Min. Eig_Max Mat_Min Mat_Max
348-1 -0.428153 0.056262 -24.048639 24.048639 (2)
349-2 -0.289572 0.121181 -23.320309 23.320309 (2)
350-3 -0.133566 0.497620 -43.651634 43.651634 (2)
351-
352-##### First Brillouin zone mode #####
353-
354-band # of patchs
355-1 8824 (3)
356-2 29469 (3)
357-3 28315 (3)
358-
359-band # of nodeline
360-1 632 (4)
361-2 1524 (4)
362-3 2268 (4)
363-
364-##### Full color scale #####
365-
366-Max. value : 22.283419 (5)
367-Min. value : -22.283419 (5)
368- </code></pre>
369- <ol>
370- <li><p>The number of lines on the edge of the Brillouin zone.</p></li>
371- <li><p>The maximum/minimum value of energies and matrix elements in each bands.</p></li>
372- <li><p>The number of patches (planes that makes Fermi surfaces) in each bands.</p></li>
373- <li><p>The number of node lines in each band.</p></li>
374- <li><p>The maximum and the minimum of matrix elements on Fermi surface.
375- These correspond to the red and the blue; in this case,
376- the matrix element is -22.283419 in the blue region, and that is 22.283419
377- in the red region.
378- [(2) is Max./Min. in whole Brillouin zone.]</p></li>
379- </ol>
380- <p>Then, Operations are printed, and Fermi surfaces are drawn (Fig. 1).</p>
381- <p><img src="figs/start.jpg" align="middle" width="800" alt="" />
382- Fig. 1: Main view.</p>
383- <p>The following operations are available:</p>
384- <ul>
385- <li><p>Rotation of objects with mouse drag</p></li>
386- <li><p>Expand and shrink with mouse wheel</p></li>
387- <li><p>Window re-sizing</p></li>
388- <li><p>Moving objects with cursor keys</p></li>
389- <li><p>Opening the menu with mouse right button</p></li>
390- </ul>
391- <p>Here, I will explain all menus.</p>
392-
393- <hr><h2 id="band">6.3, Band</h2>
394-
395- <p>It makes each band enable/disable (Fig. 2).</p>
396- <p><img src="figs/band.jpg" align="middle" width="800" alt="" />
397- Fig. 2: You make each band enable/disable with <code>Band</code> menu.</p>
398-
399- <hr><h2 id="mouse-drag">6.4, Mouse Drag</h2>
400-
401- <p>It turns the event of the mouse-left-drag.</p>
402- <dl>
403- <p>Rotate(default) : Rotate the figure along the mouse drag.</p>
404- <p>Scale : Expand/shrink the figure in upward/downward drag.</p>
405- <p>Translate : Translate the figure along the mouse drag.</p>
406- </dl>
407-
408- <hr><h2 id="shift-fermi-energy">6.5, Shift Fermi energy</h2>
409-
410- <p>It shifts the Fermi energy (= 0 in default) to arbitrary value.
411- When you use this menu, first, it displays minimum and maximum energy
412- in the input file and the current Fermi energy;</p>
413- <pre><code>
414-Min Max E_F
415--0.428153 0.497620 0.000000
416-Fermi energy shift :
417- </code></pre>
418- <p>Then, you should type the new Fermi energy; finally,
419- the new Fermi surfaces are depicted (Fig. 3).</p>
420- <p><img src="figs/shift.jpg" align="middle" width="800" alt="" />
421- Fig. 3: The Fermi energy is set from 0 Ry to 0.1 Ry
422- with <code>Shift Fermi energy</code> menu</p>
423-
424- <hr><h2 id="setview">6.6, Set view</h2>
425-
426- <p>Changing the view point.</p>
427- <dl>
428- <dt>Scale</dt>
429- <dd><p>Change the size of the figure.</p>
430- </dd>
431- <dt>Position</dt>
432- <dd><p>Change the xy position of the figure.</p>
433- </dd>
434- <dt>Rotation</dt>
435- <dd><p>Change angles at x-, y-, z- axis.
436- Rotations are performed as z-y-x axis.</p>
437- </dd>
438- </dl>
439- <p>In each menu, first the current value is printed.
440- then a prompt to input the new value appears (Fig. 4).</p>
441-
442- <p><img src="figs/setview.jpg" align="middle" width="800" alt="" />
443- Fig. 4: Modify the view point by using <code>Set view</code> menu</p>
444-
445- <hr><h2 id="background-color">6.7, Background color</h2>
446-
447- <p>The background color is toggled between black and white;
448- the edge of the Brillouin Zone is also toggled between white and black
449- (Fig. 5).</p>
450- <p><img src="figs/background.jpg" align="middle" width="800" alt="" />
451- Fig. 5: The background color is toggled with <code>Background color</code> menu.</p>
452-
453- <hr><h2 id="color-scale-mode">6.8, Color scale mode</h2>
454-
455- <p>It turns color pattern on Fermi surfaces (Fig. 6).</p>
456- <dl>
457- <p>Auto(default) : It makes blue as the minimum on Fermi surfaces
458- and red as the maximum on them.</p>
459- <p>Manual : You can set manually (from standard input)
460- values corresponding to blue and red.</p>
461- <p>Uni-color : Fermi surfaces of each band are depicted
462- with uni-color without relation to the matrix element.</p>
463- <p>Periodic : It makes periodic color plot enable. When the matrix element varies as
464- $0$ $\rightarrow$ $\pi/ 3$ $\rightarrow$ $2\pi/ 3$ $\rightarrow$ $\pi$
465- $\rightarrow$ $4\pi/ 3$ $\rightarrow$ $5\pi/ 3$ $\rightarrow$ $2\pi$,
466- the color varies as red $\rightarrow$ yellow $\rightarrow$ green
467- $\rightarrow$ cyan $\rightarrow$ blue $\rightarrow$ magenta $\rightarrow$ red.</p>
468- </dl>
469- <p><img src="figs/colorscale.jpg" align="middle" width="800" alt="" />
470- Fig. 6: <code>Color scale mode</code> menu.</p>
471-
472- <hr><h2 id="brillouin-zone">6.9, Brillouin zone</h2>
473-
474- <p>You choose Brillouin-zone type as follows (Fig. 7):</p>
475- <dl>
476- <p>First Brillouin Zone : The region surrounded by Bragg's planes
477- the nearest to ${\rm \Gamma}$ point.</p>
478- <p>Primitive Brillouin Zone : A hexahedron whose corner is the reciprocal lattice point.</p>
479- </dl>
480- <p><img src="figs/brillouinzone.jpg" align="middle" width="800" alt="" />
481- Fig. 7: You can change the type of the Brillouin zone
482- with <code>Brillouin zone</code> menu.</p>
483-
484- <hr><h2 id="node-line">6.10, Node line</h2>
485-
486- <p>The line on which the matrix element becomes 0 (we call it node line)
487- becomes enable/disable (Fig. 8).</p>
488- <p><img src="figs/nodeline.jpg" align="middle" width="800" alt="" />
489- Fig. 8: Toggling the node line with <code>Node line</code> menu.</p>
490-
491- <hr><h2 id="color-bar-onoff">6.11, Color bar On/Off</h2>
492-
493- <p>The color bar becomes enable/disable (Fig. 9).</p>
494- <p><img src="figs/colorbar.jpg" align="middle" width="800" alt="" />
495- Fig. 9: Toggling the color bar with <code>Color bar On/Off</code> menu.</p>
496-
497- <hr><h2 id="stereogram">6.12, Stereogram</h2>
498-
499- <p>The stereogram (parallel eyes and cross eyes) becomes enabled/disabled
500- (Fig. 10).</p>
501- <dl>
502- <p>None (Default)</p>
503- <p>Parallel : Parallel-eyes stereogram</p>
504- <p>Cross : Cross-eyes stereogram</p>
505- </dl>
506- <p><img src="figs/stereogram.jpg" align="middle" width="800" alt="" />
507- Fig. 10: The stereogram becomes enabled/disabled with <code>Stereogram</code> menu.</p>
508-
509- <hr><h2 id="tetrahedron">6.13, Tetrahedron</h2>
510-
511- <p>You change the scheme to divide into tetrahedra (<code>tetra # 1</code> as default).
512- It is experimental.</p>
513-
514- <hr><h2 id="exit">6.14, Exit</h2>
515-
516- <p>This finishes <code>fermisurfer</code>.</p>
517-
518- <hr><h2>6.15, Saving images</h2>
519-
520- <p><code>fermisurfer</code> does not have any functions to
521- save images to a file.
522- Please use the screenshot on your PC.</p>
523-
524- <hr><h1><a name="gallery">7, Gallery</a></h1>
525-
526- <p>Contributions of each Fermi surfaces to the Hall effect in IrO$_2$
527- (Fig. 11. Provided by Mr. Wataru Sano in Arita group, RIKEN)</p>
528- <p><img src="figs/iro2.jpg" align="middle" width="800" alt="" />
529- Fig. 11: Contributions of each Fermi surfaces to the Hall effect</p>
530-
531- <hr><h1><a name="acknowledgment">8, Acknowledgment</a></h1>
532-
533- <p>I thank Dr. Yusuke Konishi in ISSP; he performed a test in Mac OSX,
534- and proposed Makefiles and a patch.</p>
535-
536- <hr><h1><a name="contact">9, Contact</a></h1>
537-
538- <p>Please post bag reports and questions to the forum</p>
539- <pre><code>
540-http://sourceforge.jp/projects/fermisurfer/forums/
541- </code></pre>
542- <p>When you want to join us, please contact me as follows.</p>
543- <p>The Institute of Solid State Physics</p>
544- <p>Mitsuaki Kawamura</p>
545- <p><code>mkawamura__at__issp.u-tokyo.ac.jp</code></p>
546- </body>
547-</html>
--- a/doc/manual_right_ja.html
+++ /dev/null
@@ -1,581 +0,0 @@
1-<html>
2- <head>
3- <meta http-equiv="Content-Type"
4- content="text/html; charset=utf-8">
5- <script type="text/x-mathjax-config">
6- MathJax.Hub.Config({ tex2jax: { inlineMath: [['$','$'], ["\\(","\\)"]] } });
7- </script>
8- <script type="text/javascript"
9- src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML">
10- </script>
11- <meta http-equiv="X-UA-Compatible" CONTENT="IE=EmulateIE7" />
12-
13- <title>FermiSurfer日本語マニュアル</title>
14-
15- <meta name="description" content="FermiSurfer日本語マニュアル">
16-
17- </head>
18- <body bgcolor="CCFFCC">
19-
20- <center><h1>FermiSurferマニュアル</h1></center>
21- <center><h2>バージョン1.7.1</h2></center>
22- <center><h2>河村光晶</h2></center>
23-
24- <hr><a name="hajimeni"><h1>1, はじめに</h1></a>
25-
26- <p>この文書ではFermi面描画ソフト「Fermi Surfer」についての解説を行っています.
27- Fermi Surferは東京大学の河村光晶 が2012年頃から開発を行っていたもので,
28- 2014年11月に公開されました.
29- Fermi面を描画しその上に各種物理量(超伝導ギャップ関数や軌道キャラクターなど)
30- をカラープロットするソフトウェアです.</p>
31-
32- <hr>
33- <a name="mitlicense"><h1>2, MIT ライセンス</h1></a>
34-
35- <p>Copyright (c) 2014 Mitsuaki Kawamura</p>
36- <p>以下に定める条件に従い, 本ソフトウェアおよび関連文書のファイル(以下「ソフトウェア」)
37- の複製を取得するすべての人に対し, ソフトウェアを無制限に扱うことを無償で許可します.
38- これには, ソフトウェアの複製を使用, 複写, 変更, 結合, 掲載, 頒布, サブライセンス,
39- および/または販売する権利,
40- およびソフトウェアを提供する相手に同じことを許可する権利も無制限に含まれます. </p>
41- <p>上記の著作権表示および本許諾表示を,
42- ソフトウェアのすべての複製または重要な部分に記載するものとします. </p>
43- <p>ソフトウェアは「現状のまま」で, 明示であるか暗黙であるかを問わず,
44- 何らの保証もなく提供されます.
45- ここでいう保証とは, 商品性, 特定の目的への適合性,
46- および権利非侵害についての保証も含みますが, それに限定されるものではありません.
47- 作者または著作権者は, 契約行為, 不法行為, またはそれ以外であろうと,
48- ソフトウェアに起因または関連し,
49- あるいはソフトウェアの使用またはその他の扱いによって生じる一切の請求, 損害,
50- その他の義務について何らの責任も負わないものとします. </p>
51-
52- <hr>
53- <a name="filesinthispackage"><h1>3, このパッケージに含まれているファイル</h1></a>
54-
55- <dl>
56- <p><code>bin/fermisurfer.exe</code> : Windows用実行ファイル(本体)</p>
57- <p><code>bin/bxsf2frmsf.exe</code> : Windows用実行ファイル(ファイル変換用ユーティリティ)</p>
58- <p><code>doc/manual_en.pdf</code> : マニュアル(英語)</p>
59- <p><code>doc/manual_ja.pdf</code> : マニュアル(日本語)</p>
60- <p><code>examples/mgb2_vfz.frmsf</code> : サンプル入力ファイル</p>
61- <p><code>examples/pb.bxsf</code> : サンプル入力ファイル</p>
62- <p><code>src/fermisurfer.c</code> : ソースファイル(本体)</p>
63- <p><code>src/bxsf2frmsf.c</code> : ソースファイル(ファイル変換用ユーティリティ)</p>
64- <p><code>src/Makefile</code> : Makefile</p>
65- </dl>
66-
67- <hr><a name="instlation"><h1>4, インストール手順</h1></a>
68-
69- <hr><h2>4.1, Linuxの場合</h2>
70-
71- <ol>
72- <li><p>必要なパッケージをインストール(既にパッケージが入っている場合は何も起こりません. )</p>
73- <ul>
74- <li><p>Debian/Ubuntu 等</p>
75- <pre><code>
76-$ sudo aptitude install freeglut3-dev
77- </code></pre>
78- </li>
79- <li><p>Red Hat Enterprise Linux/CentOS 等</p>
80- <pre><code>
81-$ sudo yum install freeglut-devel.x86_64
82- </code></pre>
83- </li>
84- </ul></li>
85- <li><p>メイク</p>
86- <pre><code>
87-$ cd ./src
88-$ make all
89-$ make install
90- </code></pre>
91- </li>
92- </ol>
93- <p>以上で実行可能ファイル <code>fermisurfer</code>および
94- <code>bxsf2frmsf</code> が作られ,
95- <code>/usr/local/bin/</code>にコピーされます.</p>
96-
97- <hr><h2>4.2, Mac OSX の場合</h2>
98-
99- <ol>
100- <li><p>Xcodeをあらかじめインストールしておく</p></li>
101- <li><p>Makefileを適当なエディタで開いて#macの下の行の#を消す.</p>
102- <pre><code>
103-$ cd ./src
104-$ emacs Makefile
105- </code></pre>
106- </li>
107- <li><p>メイク</p>
108- <pre><code>
109-$ make fermisurfer
110-$ make install
111- </code></pre>
112- </li>
113- </ol>
114- <p>以上で実行可能ファイル <code>fermisurfer</code> および
115- <code>bxsf2frmsf</code>が作られ,
116- <code>/usr/local/bin/</code>にコピーされます.</p>
117-
118- <hr><h2>4.3, Windowsの場合</h2>
119-
120- <p>実行可能ファイル<code>bin/fermisurfer.exe</code>を直接実行します.
121- freeglutライブラリをダウンロードして自分でコンパイルすることも可能です.</p>
122-
123- <hr><a name="inputfile"><h1>5, Input file</h1></a>
124-
125- <hr><h2>5.1, input fileの書式</h2>
126-
127- <p>用意するデータは,</p>
128- <ul>
129- <li><p>Brillouin領域分割数(3方向)</p></li>
130- <li><p>逆格子ベクトル</p></li>
131- <li><p>バンド本数</p></li>
132- <li><p>軌道固有値(以下エネルギーと呼びます)の各バンド,
133- $k$グリッド点での値</p></li>
134- <li><p>カラープロットしたい物理量(以下物理量と呼びます)の各バンド,
135- $k$グリッド点での値</p></li>
136- </ul>
137- <p>です.</p>
138- <p>上記データを次のとおりの書式で並べます(サンプルファイル
139- <code>mgb2_vfz.frmsf</code>の中身).</p>
140- <pre><code>
141-40 40 36 (1)
142-0 (2)
143-3 (3)
144-1.0000000 0.57735026 -0.0000000 (4)
145-0.0000000 1.1547005 0.0000000 (5)
146-0.0000000 -0.0000000 0.87206507 (6)
147-2.91340202E-02 (7)
148-2.93242838E-02
149-2.98905596E-02
150-3.08193434E-02
151-:
152-:
153-0.14393796
154-0.12800488
155-0.0000000 (8)
156-0.36269817
157-0.71675694
158-1.0535113
159-1.3644149
160-:
161-:
162--26.409407
163--19.318560
164--10.315671
165- </code></pre>
166- <ol>
167- <li><p>$k$グリッド数</p></li>
168- <li><p>$k$グリッドの指定方法(<code>0, 1, 2</code>のいずれか)</p>
169- <p>$k$グリッドを次のように表します.<p>
170- <p>$$\begin{aligned}
171- {\boldsymbol k}_{i,j,k} =
172- x_i {\boldsymbol b}_1
173- +y_j {\boldsymbol b}_2
174- +z_k {\boldsymbol b}_3
175- \end{aligned}$$</p>
176- ただし$i, j, k$は$1$から各逆格子ベクトル方向の分割数$N_1, N_2, N_3$
177- (上で読み取ったもの)とする
178- </p>$x_i, y_j,z_k$は次の3つのとり方が可能です.</p>
179- <ul>
180- <li><p><code>0</code>の場合(Monkhorst-Packグリッド) :
181- $x_i = \frac{2 i - 1 - N_1}{2 N_1}$</p>
182- </li>
183- <li><p><code>1</code>の場合 :
184- $x_i = \frac{i - 1}{N_1}$</p>
185- </li>
186- <li><p><code>2</code>の場合 :
187- $x_i = \frac{2 i - 1}{2 N_1}$</p>
188- </li>
189- </ul>
190- </li>
191- <li><p>バンド本数</p></li>
192- <li><p>逆格子ベクトル1 (任意単位)</p></li>
193- <li><p>逆格子ベクトル2</p></li>
194- <li><p>逆格子ベクトル3</p></li>
195- <li><p>エネルギー (並び順は5.3節参照)</p>
196- <p><code>fermisurfer</code>はデフォルトではFermiエネルギーを
197- <code>0.0</code>としています.
198- ただし, 後述の<code>Shift Fermi Energy</code>メニューを用いて
199- Fermiエネルギーを<code>0.0</code>以外の値に変更することも可能です.</p></li>
200- <li><p>物理量 (並び順は5.3節参照)</p>
201- <p>特にカラープロットをしたい量が無く, Fermi面の描画のみを行いたい場合には,
202- 後述の<code>Color scale mode</code>メニューから
203- <code>Unicolor</code>を選択してください.
204- その際, この&quot;物理量&quot;は利用されることはありませんが,
205- ファイルの読み込みを完了させるために何らかの数字で埋めてください
206- (すべて<code>1.0</code>とするなど).</p>
207- </li>
208- </ol>
209-
210- <hr><h2>5.2, BXSF形式からの変換</h2>
211-
212- <p>
213- 付属のユーティリティー<code>bxsf2frmsf</code>を使うと
214- XCrysDen用の入力ファイルから<code>fermisurfer</code>で読み取り可能な入力ファイルが
215- 作られます.
216- また, そのときにFermi面上にカラープロットされるFermi速度が,
217- エネルギーバンドから計算されます.
218- </p>
219- <p>使い方は次のとおりです.<code>examples/</code>ディレクトリにある<code>pb.bxsf</code>
220- ファイルを例として使います.</p>
221-
222- <h3>5.2.1, Linuxの場合</h2>
223-
224- <p>作成した実行可能ファイル<code>bxsf2frmsf</code>にパスが通っている状態で</p>
225- <pre><code>
226-$ bxsf2frmsf pb.bxsf
227- </code></pre>
228- <p>とコマンド, スペース, 入力ファイル名とタイプします.
229- その後, 次のファイルが生成されます.</p>
230- <ul>
231- <li><code>pb_vf.frmsf</code>: Fermi速度の絶対値</li>
232- <li><code>pb_vfx.frmsf</code>: Fermi速度の$x$成分</li>
233- <li><code>pb_vfy.frmsf</code>: Fermi速度の$y$成分</li>
234- <li><code>pb_vfz.frmsf</code>: Fermi速度の$z$成分</li>
235- <li><code>pb_vfa1.frmsf</code>: Fermi速度の, 格子ベクトル${a_1}$に平行な成分</li>
236- <li><code>pb_vfa2.frmsf</code>: Fermi速度の, 格子ベクトル${a_2}$に平行な成分</li>
237- <li><code>pb_vfa3.frmsf</code>: Fermi速度の, 格子ベクトル${a_3}$に平行な成分</li>
238- </ul>
239-
240- <h3>5.2.2, Windowsの場合</h3>
241-
242- <p>入力ファイル(この場合は<code>pb.bxsf</code>)を右クリックし,
243- メニューから「プログラムから開く」を選択し,
244- 実行ファイルを<code>bxsf2frmsf.exe</code>に設定してください.</p>
245-
246- <hr><h2>5.3, C/fortranでの入力ファイルの書き出し方</h2>
247-
248- <p>・fortran</p>
249- <pre><code>
250- real(4) :: bvec1(3), bvec2(3), bvec3(3) !逆格子ベクトル
251- integer :: nk1, nk2, nk3 !各逆格子ベクトルの方向の分割数
252- integer :: ishift !グリットをシフトさせるか(=1)否か(=0)
253- integer :: nbnd !バンド数
254- real(4) :: eig(nk3,nk2,nk1,nbnd) !エネルギー
255- real(4) :: x(nk3,nk2,nk1,nbnd) !物理量
256-
257- integer :: ik1, ik2, ik3, ibnd, fo
258-
259- open(fo, file = “sample.frmsf”)
260- write(fo,*) nk1, nk2, nk3
261- write(fo,*) ishift
262- write(fo,*) nbnd
263- write(fo,*) real(bvec1(1:3))
264- write(fo,*) real(bvec2(1:3))
265- write(fo,*) real(bvec3(1:3))
266- do ibnd = 1, nbnd
267- do ik1 = 1, nk1
268- do ik2 = 1, nk2
269- do ik3 = 1, nk3
270- write(fo,*) real(eig(ik3,ik2,ik1,ibnd))
271- end do
272- end do
273- end do
274- end do
275- do ibnd = 1, nbnd
276- do ik1 = 1, nk1
277- do ik2 = 1, nk2
278- do ik3 = 1, nk3
279- write(fo,*) real(x(ik3,ik2,ik1,ibnd))
280- end do
281- end do
282- end do
283- end do
284- close(fo)
285- </code></pre>
286- <p>・C言語</p>
287- <pre><code>
288- float bvec1[3], bvec2[3], bvec3[3]; /*逆格子ベクトル*/
289- int nk1, nk2, nk3; /*各逆格子ベクトルの方向の分割数*/
290- int ishift; /*グリットをシフトさせるか(=1)否か(=0)*/
291- int nbnd; /*バンド数*/
292- float eig[nbnd][nk1][nk2][nk3]; /*エネルギー*/
293- float x[nbnd][nk1][nk2][nk3]; /*物理量*/
294-
295- FILE* fo;
296- int ibnd, ik1, ik2, ik3;
297-
298- fo = fopen(“sample.frmsf”, “w”);
299- ierr = fprintf(fo, &quot;%d %d %d\n&quot;, nk1, nk2, nk3);
300- ierr = fprintf(fo, &quot;%d\n&quot;, iswitch);
301- ierr = fprintf(fo, &quot;%d\n&quot;, nbnd);
302- ierr = fprintf(fo, &quot;%e %e %e\n&quot;, bvec1[0], bvec1[1], bvec1[2]);
303- ierr = fprintf(fo, &quot;%e %e %e\n&quot;, bvec2[0], bvec2[1], bvec2[2]);
304- ierr = fprintf(fo, &quot;%e %e %e\n&quot;, bvec3[0], bvec3[1], bvec3[2]);
305- for (ibnd = 0; ibnd &lt; nbnd; ++ibnd) {
306- for (ik1 = 0; ik1 &lt; nk1; ++ik1) {
307- for (ik2 = 0; ik2 &lt; nk2; ++ik2) {
308- for (ik3 = 0; ik3 &lt; nk3; ++ik3) {
309- ierr = fprintf(fo, &quot;%e\n&quot;, eig[ibnd][ik1][ik2][ik3]);
310- }
311- }
312- }
313- }
314- for (ibnd = 0; ibnd &lt; nbnd; ++ibnd) {
315- for (ik1 = 0; ik1 &lt; nk1; ++ik1) {
316- for (ik2 = 0; ik2 &lt; nk2; ++ik2) {
317- for (ik3 = 0; ik3 &lt; nk3; ++ik3) {
318- ierr = fprintf(fo, &quot;%e\n&quot;, x[ibnd][ik1][ik2][ik3]);
319- }
320- }
321- }
322- }
323- fclose(fo);
324- </code></pre>
325-
326- <hr><a name="controlling"><h1>6, 操作方法</h1></a>
327-
328- <hr><h2>6.1, Linuxの場合</h2>
329-
330- <p>作成した実行可能ファイル<code>fermisurfer</code>にパスが通っている状態で</p>
331- <pre><code>
332-$ fermisurfer mgb2_vfz.frmsf
333- </code></pre>
334- <p>とコマンド, スペース, 入力ファイル名とタイプします.
335- (サンプルファイルの中身はMgB$_2$
336- のFermi速度の$z$方向成分です. )</p>
337-
338- <hr><h2>6.2, Windowsの場合</h2>
339-
340- <p>入力ファイル(この場合は<code>mgb2_vfz.frmsf</code>)を右クリックし,
341- メニューから「プログラムから開く」を選択し,
342- 実行ファイルを<code>fermisurfer.exe</code>に設定してください.</p>
343- <p>このあとはLinux, Windows共通です. <code>fermisurfer</code>が起動すると,
344- まずファイルから読み取った情報が出力されます.</p>
345- <pre><code>
346-##### Brillouin zone informations #####
347-
348-k point grid : 40 40 36
349-k point grid is not shifted
350-# of bands : 3
351-bvec 1 : 1.000000 0.577350 -0.000000
352-bvec 2 : 0.000000 1.154701 0.000000
353-bvec 3 : 0.000000 -0.000000 0.872065
354-
355-# of lines for BZ : 84 (1)
356-
357-##### Max. and Min. of each bands #####
358-
359-Band Eig_Min. Eig_Max Mat_Min Mat_Max
360-1 -0.428153 0.056262 -24.048639 24.048639 (2)
361-2 -0.289572 0.121181 -23.320309 23.320309 (2)
362-3 -0.133566 0.497620 -43.651634 43.651634 (2)
363-
364-##### First Brillouin zone mode #####
365-
366-band # of patchs
367-1 8824 (3)
368-2 29469 (3)
369-3 28315 (3)
370-
371-band # of nodeline
372-1 632 (4)
373-2 1524 (4)
374-3 2268 (4)
375-
376-##### Full color scale #####
377-
378-Max. value : 22.283419 (5)
379-Min. value : -22.283419 (5)
380- </code></pre>
381- <ol>
382- <li><p>Brillouin領域の境界を表示する線の数.</p></li>
383- <li><p>それぞれのバンドにおけるエネルギーと物理量の最小値・最大値.</p></li>
384- <li><p>それぞれのバンドにおけるパッチ(Fermi面を構成する平面)の数.</p></li>
385- <li><p>それぞれのバンドにおけるnode line (後述)の本数.</p></li>
386- <li><p>物理量のFermi面における最大値と最小値. この数字がカラーバーの最大・最小に対応します.
387- 下の例では一番青いところが-22.283419, 一番赤いところが22.283419となります.
388- (2)で表示されているのはBrillouin領域全体のものです.</p></li>
389- </ol>
390- <p>次に操作方法が出力され, Fermi面が描画されます(図1).</p>
391- <p><img src="figs/start.jpg" align="middle" width="800" alt="初期画面"/>
392- 図1: Fermisurferを起動した直後の画面.</p>
393- <ul>
394- <li><p>マウスのドラッグによる回転が出来ます.</p></li>
395- <li><p>マウスのホイールを使っての拡大・縮小が出来ます.</p></li>
396- <li><p>ウィンドウの大きさを変えることもできます.</p></li>
397- <li><p>カーソルキーを使ってウィンドウ内で上下左右に図を動かせます.</p></li>
398- <li><p>ウィンドウ内でマウスの右クリックをするとメニューが表示されます.</p></li>
399- </ul>
400- <p>次から右クリックで表示されるメニューを説明します.</p>
401-
402- <hr><h2>6.3, Band</h2>
403-
404- <p>バンド毎の表示on/offを切り替えます(図2).</p>
405- <p><img src="figs/band.jpg" align="middle" width="800" alt="" />
406- 図2: <code>Band</code>メニューで3番目のバンドの表示/非表示を切り替える.</p>
407-
408- <hr><h2>6.4, Mouse Drag</h2>
409-
410- <p>マウスの左ボタンドラッグを行った時の動作を変更します.</p>
411- <dl>
412- <dt>Rotate(デフォルト)</dt>
413- <dd><p>ドラッグをした方向に図形を回転させます.</p>
414- </dd>
415- <dt>Scale</dt>
416- <dd><p>上方にドラッグすると図形を拡大, 下方にドラッグすると図形を縮小します.</p>
417- </dd>
418- <dt>Translate</dt>
419- <dd><p>ドラッグした方向に図形を動かします.</p>
420- </dd>
421- </dl>
422-
423- <hr><h2>6.5, Shift Fermi energy</h2>
424-
425- <p>Fermiエネルギー(デフォルトでは0)を任意の値にずらします.
426- このメニューを選択すると次のようにインプット中の最小のエネルギー,
427- 最大のエネルギー, 現在のFermiエネルギーが標準出力として表示されます.</p>
428- <pre><code>
429-Min Max E_F
430--0.428153 0.497620 0.000000
431-Fermi energy shift :
432- </code></pre>
433- <p>次に新しいFermiエネルギーを入力すると,
434- Fermi面が再描画されます (図3).</p>
435- <p><img src="figs/shift.jpg" align="middle" width="800" alt="" />
436- 図3: <code>Shift Fermi energy</code>メニューで
437- Fermi エネルギーを0 Ryから0.1 Ryに変える.</p>
438-
439- <hr><h2>6.6, Set view</h2>
440-
441- <p>視点を変更します.</p>
442- <dl>
443- <dt>Scale</dt>
444- <dd><p>図形のサイズを指定します.</p>
445- </dd>
446- <dt>Position</dt>
447- <dd><p>図形の上下位置を指定します.</p>
448- </dd>
449- <dt>Rotation</dt>
450- <dd><p>x,y,z軸周りの回転角を指定します.回転操作はz軸-y軸-x軸の順で行われます</p>
451- </dd>
452- </dl>
453- <p>それぞれのメニューを選択すると, はじめに現在の値が表示され,
454- その後変更後の値を入れるプロンプトが現れます(図4).</p>
455- <p><img src="figs/setview.jpg" align="middle" width="800" alt="" />
456- 図4: <code>Set view</code>メニューで
457- 視点を変更する.</p>
458-
459- <hr><h2>6.7, Background color</h2>
460-
461- <p>背景色を黒または白に切り替えます.
462- Brillouin Zoneの枠線も白/黒と切り替わります (図5).</p>
463- <p><img src="figs/background.jpg" align="middle" width="800" alt="" />
464- 図5: <code>Background color</code>メニューで背景色を白/黒に切り替える.</p>
465-
466- <hr><h2>6.8, Color scale mode</h2>
467-
468- <p>Fermi面の色表示のさせ方を変更します(図6).</p>
469- <dl>
470- <dt>Auto(デフォルト)</dt>
471- <dd><p>カラースケールの範囲をFermi面上での物理量の最小値から最大値までとします.</p>
472- </dd>
473- <dt>Manual</dt>
474- <dd><p>カラースケールの範囲を標準入力から設定します.</p>
475- </dd>
476- <dt>Unicolor</dt>
477- <dd><p>物理量に関係なく, 各バンド毎に単色でFermi面を塗ります.</p>
478- </dd>
479- <dt>Periodic</dt>
480- <dd><p>周期的な量のプロットに用います.
481- 物理量が 0 $\rightarrow$
482- $\pi/3$ $\rightarrow$
483- $2\pi/3$ $\rightarrow$
484- $\pi$ $\rightarrow$
485- $4\pi/3$ $\rightarrow$
486- $5\pi/3$ $\rightarrow$
487- $2\pi$ と変化するに連れて
488- 色が赤$\rightarrow$黄$\rightarrow$
489- 緑$\rightarrow$シアン$\rightarrow$
490- 青$\rightarrow$ マゼンタ$\rightarrow$
491- 赤と変わります.</p>
492- </dd>
493- </dl>
494- <p><img src="figs/colorscale.jpg" align="middle" width="800" alt="" />
495- 図6: <code>Color scale mode</code>メニュー.</p>
496-
497- <hr><h2>6.9, Brillouin zone</h2>
498-
499- <p>描画範囲をFirst Brillouin Zone/Primitive Brillouin Zoneと
500- 切り替える事が出来ます (図7).</p>
501- <dl>
502- <dt>Fisrst Brillouin Zone</dt>
503- <dd><p><span class="math">${\rm \Gamma}$</span>
504- 点から一番近いBragg面で囲まれた領域</p>
505- </dd>
506- <dt>Primitive Brillouine Zone</dt>
507- <dd><p>逆格子ベクトルを辺とする平行6面体領域</p>
508- </dd>
509- </dl>
510- <p><img src="figs/brillouinzone.jpg" align="middle" width="800" alt="" />
511- 図7: <code>Brillouin zone</code>メニューでBrillouin領域のとり方を変更する.</p>
512-
513- <hr><h2>6.10, Node line</h2>
514-
515- <p>物理量が0となるところに引く線(node line)のOn/Offを切り替えます(図8).</p>
516- <p><img src="figs/nodeline.jpg" align="middle" width="800" alt="" />
517- 図8: <code>Node line</code>メニューでnode lineの表示/非表示を切り替える.</p>
518-
519- <hr><h2>6.11, Color bar On/Off</h2>
520-
521- <p>カラーバーの表示/非表示を切り替えます(図9).</p>
522- <p><img src="figs/colorbar.jpg" align="middle" width="800" alt="" />
523- 図9: <code>Color bar On/Off</code>メニューでカラーバーの表示/非表示を切り替える.</p>
524-
525- <hr><h2>6.12, Stereogram</h2>
526-
527- <p>裸眼立体視用の図の表示/非表示を切り替えます(図10).</p>
528- <dl>
529- <dt>None (デフォルト)</dt>
530- <dd><p>立体視を無効にします.</p>
531- </dd>
532- <dt>Parallel</dt>
533- <dd><p>平行法用の図を表示します.</p>
534- </dd>
535- <dt>Cross</dt>
536- <dd><p>交差法用の図を表示します.</p>
537- </dd>
538- </dl>
539- <p><img src="figs/stereogram.jpg" align="middle" width="800" alt="" />
540- 図10: <code>Stereogram</code>メニューで立体視用画像を表示する.</p>
541-
542- <hr><h2>6.13, Tetrahedron</h2>
543-
544- <p>四面体の切り方を変えます(デフォルトは<code>tetra # 1</code>).
545- 図が綺麗になる可能性がありますが,
546- 多くの場合は逆に図がギザギザして汚くなるようです.</p>
547-
548- <hr><h2>6.14, Exit</h2>
549-
550- <p>Fermi Surferを終了します.</p>
551-
552- <hr><h2>6.15, 画像の保存方法</h2>
553-
554- <p><code>fermisurfer</code>には画像をファイル出力する機能はありません.
555- お使いのPCにあった方法でスクリーンショットを取得して
556- (<code>Printscreen</code>キーを押すなど)
557- ペイントブラシやgimpで編集して画像を作成してください.</p>
558-
559- <hr><a name="garally"><h1>7, ギャラリー</h1></a>
560-
561- <p>IrO$_2$のHall係数に対するFermi面上の各軌道からの寄与 (図11).
562- 理化学研究所 有田グループ 佐野航氏提供).</p>
563- <p><img src="figs/iro2.jpg" align="middle" width="800" alt="" />
564- 図11: IrO$_2$のHall係数に対するFermi面上の各軌道からの寄与.</p>
565-
566- <hr><a name="acknoledge"><h1>8, 謝辞</h1></a>
567-
568- <p>東京大学物性研究所 小西優祐氏には,
569- Mac OSXでの動作チェックおよびMakefile,
570- パッチの提供をしていただいたことに感謝する.</p>
571-
572- <hr><a name="contacts"><h1>9, 問い合わせ先</h1></a>
573-
574- <p>プログラムのバグや質問は以下のフォーラムへご投稿ください.</p>
575- <pre><code>http://sourceforge.jp/projects/fermisurfer/forums/</code></pre>
576- <p>開発に参加したい方は以下の連絡先にて受け付けております.</p>
577- <p>東京大学物性研究所</p>
578- <p>河村光晶</p>
579- <p><code>mkawamura__at__issp.u-tokyo.ac.jp</code></p>
580- </body>
581-</html>
Show on old repository browser