• R/O
  • HTTP
  • SSH
  • HTTPS

fermisurfer: Commit

fermisurfer Git


Commit MetaInfo

Revisionf2ce7c121c49dd842de00b7ebb9030542ebe4f8e (tree)
Zeit2017-01-11 14:19:17
Autormitsuaki1987 <kawamitsuaki@gmai...>
Commitermitsuaki1987

Log Message

Add sphinx

Ändern Zusammenfassung

Diff

--- a/.gitignore
+++ b/.gitignore
@@ -26,3 +26,5 @@ src/bxsf2frmsf
2626 *.rc
2727 *.dll
2828 src/resource.h
29+doc/ja/_build/
30+doc/en/_build/
--- /dev/null
+++ b/doc/en/Makefile
@@ -0,0 +1,177 @@
1+# Makefile for Sphinx documentation
2+#
3+
4+# You can set these variables from the command line.
5+SPHINXOPTS =
6+SPHINXBUILD = sphinx-build
7+PAPER =
8+BUILDDIR = _build
9+
10+# User-friendly check for sphinx-build
11+ifeq ($(shell which $(SPHINXBUILD) >/dev/null 2>&1; echo $$?), 1)
12+$(error The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the executable to your PATH. If you don't have Sphinx installed, grab it from http://sphinx-doc.org/)
13+endif
14+
15+# Internal variables.
16+PAPEROPT_a4 = -D latex_paper_size=a4
17+PAPEROPT_letter = -D latex_paper_size=letter
18+ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
19+# the i18n builder cannot share the environment and doctrees with the others
20+I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
21+
22+.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext
23+
24+help:
25+ @echo "Please use \`make <target>' where <target> is one of"
26+ @echo " html to make standalone HTML files"
27+ @echo " dirhtml to make HTML files named index.html in directories"
28+ @echo " singlehtml to make a single large HTML file"
29+ @echo " pickle to make pickle files"
30+ @echo " json to make JSON files"
31+ @echo " htmlhelp to make HTML files and a HTML help project"
32+ @echo " qthelp to make HTML files and a qthelp project"
33+ @echo " devhelp to make HTML files and a Devhelp project"
34+ @echo " epub to make an epub"
35+ @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
36+ @echo " latexpdf to make LaTeX files and run them through pdflatex"
37+ @echo " latexpdfja to make LaTeX files and run them through platex/dvipdfmx"
38+ @echo " text to make text files"
39+ @echo " man to make manual pages"
40+ @echo " texinfo to make Texinfo files"
41+ @echo " info to make Texinfo files and run them through makeinfo"
42+ @echo " gettext to make PO message catalogs"
43+ @echo " changes to make an overview of all changed/added/deprecated items"
44+ @echo " xml to make Docutils-native XML files"
45+ @echo " pseudoxml to make pseudoxml-XML files for display purposes"
46+ @echo " linkcheck to check all external links for integrity"
47+ @echo " doctest to run all doctests embedded in the documentation (if enabled)"
48+
49+clean:
50+ rm -rf $(BUILDDIR)/*
51+
52+html:
53+ $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
54+ @echo
55+ @echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
56+
57+dirhtml:
58+ $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
59+ @echo
60+ @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
61+
62+singlehtml:
63+ $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
64+ @echo
65+ @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
66+
67+pickle:
68+ $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
69+ @echo
70+ @echo "Build finished; now you can process the pickle files."
71+
72+json:
73+ $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
74+ @echo
75+ @echo "Build finished; now you can process the JSON files."
76+
77+htmlhelp:
78+ $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
79+ @echo
80+ @echo "Build finished; now you can run HTML Help Workshop with the" \
81+ ".hhp project file in $(BUILDDIR)/htmlhelp."
82+
83+qthelp:
84+ $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
85+ @echo
86+ @echo "Build finished; now you can run "qcollectiongenerator" with the" \
87+ ".qhcp project file in $(BUILDDIR)/qthelp, like this:"
88+ @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/fermisurfer.qhcp"
89+ @echo "To view the help file:"
90+ @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/fermisurfer.qhc"
91+
92+devhelp:
93+ $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
94+ @echo
95+ @echo "Build finished."
96+ @echo "To view the help file:"
97+ @echo "# mkdir -p $$HOME/.local/share/devhelp/fermisurfer"
98+ @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/fermisurfer"
99+ @echo "# devhelp"
100+
101+epub:
102+ $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
103+ @echo
104+ @echo "Build finished. The epub file is in $(BUILDDIR)/epub."
105+
106+latex:
107+ $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
108+ @echo
109+ @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
110+ @echo "Run \`make' in that directory to run these through (pdf)latex" \
111+ "(use \`make latexpdf' here to do that automatically)."
112+
113+latexpdf:
114+ $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
115+ @echo "Running LaTeX files through pdflatex..."
116+ $(MAKE) -C $(BUILDDIR)/latex all-pdf
117+ @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
118+
119+latexpdfja:
120+ $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
121+ @echo "Running LaTeX files through platex and dvipdfmx..."
122+ $(MAKE) -C $(BUILDDIR)/latex all-pdf-ja
123+ @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
124+
125+text:
126+ $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
127+ @echo
128+ @echo "Build finished. The text files are in $(BUILDDIR)/text."
129+
130+man:
131+ $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
132+ @echo
133+ @echo "Build finished. The manual pages are in $(BUILDDIR)/man."
134+
135+texinfo:
136+ $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
137+ @echo
138+ @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo."
139+ @echo "Run \`make' in that directory to run these through makeinfo" \
140+ "(use \`make info' here to do that automatically)."
141+
142+info:
143+ $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
144+ @echo "Running Texinfo files through makeinfo..."
145+ make -C $(BUILDDIR)/texinfo info
146+ @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo."
147+
148+gettext:
149+ $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale
150+ @echo
151+ @echo "Build finished. The message catalogs are in $(BUILDDIR)/locale."
152+
153+changes:
154+ $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
155+ @echo
156+ @echo "The overview file is in $(BUILDDIR)/changes."
157+
158+linkcheck:
159+ $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
160+ @echo
161+ @echo "Link check complete; look for any errors in the above output " \
162+ "or in $(BUILDDIR)/linkcheck/output.txt."
163+
164+doctest:
165+ $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
166+ @echo "Testing of doctests in the sources finished, look at the " \
167+ "results in $(BUILDDIR)/doctest/output.txt."
168+
169+xml:
170+ $(SPHINXBUILD) -b xml $(ALLSPHINXOPTS) $(BUILDDIR)/xml
171+ @echo
172+ @echo "Build finished. The XML files are in $(BUILDDIR)/xml."
173+
174+pseudoxml:
175+ $(SPHINXBUILD) -b pseudoxml $(ALLSPHINXOPTS) $(BUILDDIR)/pseudoxml
176+ @echo
177+ @echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml."
--- /dev/null
+++ b/doc/en/conf.py
@@ -0,0 +1,262 @@
1+# -*- coding: utf-8 -*-
2+#
3+# Fermisurfer documentation build configuration file, created by
4+# sphinx-quickstart on Sat Jan 7 22:10:04 2017.
5+#
6+# This file is execfile()d with the current directory set to its
7+# containing dir.
8+#
9+# Note that not all possible configuration values are present in this
10+# autogenerated file.
11+#
12+# All configuration values have a default; values that are commented out
13+# serve to show the default.
14+
15+import sys
16+import os
17+
18+# If extensions (or modules to document with autodoc) are in another directory,
19+# add these directories to sys.path here. If the directory is relative to the
20+# documentation root, use os.path.abspath to make it absolute, like shown here.
21+#sys.path.insert(0, os.path.abspath('.'))
22+
23+# -- General configuration ------------------------------------------------
24+
25+# If your documentation needs a minimal Sphinx version, state it here.
26+#needs_sphinx = '1.0'
27+
28+# Add any Sphinx extension module names here, as strings. They can be
29+# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
30+# ones.
31+extensions = [
32+ 'sphinx.ext.mathjax',
33+ 'sphinx_numfig'
34+]
35+
36+# Add any paths that contain templates here, relative to this directory.
37+templates_path = ['_templates']
38+
39+# The suffix of source filenames.
40+source_suffix = '.rst'
41+
42+# The encoding of source files.
43+#source_encoding = 'utf-8-sig'
44+
45+# The master toctree document.
46+master_doc = 'index'
47+
48+# General information about the project.
49+project = u'fermisurfer'
50+copyright = u'2017, kawamura'
51+
52+# The version info for the project you're documenting, acts as replacement for
53+# |version| and |release|, also used in various other places throughout the
54+# built documents.
55+#
56+# The short X.Y version.
57+version = '1.7'
58+# The full version, including alpha/beta/rc tags.
59+release = '1.7.1'
60+
61+# The language for content autogenerated by Sphinx. Refer to documentation
62+# for a list of supported languages.
63+language = 'en'
64+
65+# There are two options for replacing |today|: either, you set today to some
66+# non-false value, then it is used:
67+#today = ''
68+# Else, today_fmt is used as the format for a strftime call.
69+#today_fmt = '%B %d, %Y'
70+
71+# List of patterns, relative to source directory, that match files and
72+# directories to ignore when looking for source files.
73+exclude_patterns = ['_build']
74+
75+# The reST default role (used for this markup: `text`) to use for all
76+# documents.
77+#default_role = None
78+
79+# If true, '()' will be appended to :func: etc. cross-reference text.
80+#add_function_parentheses = True
81+
82+# If true, the current module name will be prepended to all description
83+# unit titles (such as .. function::).
84+#add_module_names = True
85+
86+# If true, sectionauthor and moduleauthor directives will be shown in the
87+# output. They are ignored by default.
88+#show_authors = False
89+
90+# The name of the Pygments (syntax highlighting) style to use.
91+pygments_style = 'sphinx'
92+
93+# A list of ignored prefixes for module index sorting.
94+#modindex_common_prefix = []
95+
96+# If true, keep warnings as "system message" paragraphs in the built documents.
97+#keep_warnings = False
98+
99+
100+# -- Options for HTML output ----------------------------------------------
101+
102+# The theme to use for HTML and HTML Help pages. See the documentation for
103+# a list of builtin themes.
104+html_theme = 'default'
105+
106+# Theme options are theme-specific and customize the look and feel of a theme
107+# further. For a list of options available for each theme, see the
108+# documentation.
109+#html_theme_options = {}
110+
111+# Add any paths that contain custom themes here, relative to this directory.
112+#html_theme_path = []
113+
114+# The name for this set of Sphinx documents. If None, it defaults to
115+# "<project> v<release> documentation".
116+#html_title = None
117+
118+# A shorter title for the navigation bar. Default is the same as html_title.
119+#html_short_title = None
120+
121+# The name of an image file (relative to this directory) to place at the top
122+# of the sidebar.
123+#html_logo = None
124+
125+# The name of an image file (within the static path) to use as favicon of the
126+# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32
127+# pixels large.
128+#html_favicon = None
129+
130+# Add any paths that contain custom static files (such as style sheets) here,
131+# relative to this directory. They are copied after the builtin static files,
132+# so a file named "default.css" will overwrite the builtin "default.css".
133+html_static_path = ['_static']
134+
135+# Add any extra paths that contain custom files (such as robots.txt or
136+# .htaccess) here, relative to this directory. These files are copied
137+# directly to the root of the documentation.
138+#html_extra_path = []
139+
140+# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
141+# using the given strftime format.
142+#html_last_updated_fmt = '%b %d, %Y'
143+
144+# If true, SmartyPants will be used to convert quotes and dashes to
145+# typographically correct entities.
146+#html_use_smartypants = True
147+
148+# Custom sidebar templates, maps document names to template names.
149+#html_sidebars = {}
150+
151+# Additional templates that should be rendered to pages, maps page names to
152+# template names.
153+#html_additional_pages = {}
154+
155+# If false, no module index is generated.
156+#html_domain_indices = True
157+
158+# If false, no index is generated.
159+#html_use_index = True
160+
161+# If true, the index is split into individual pages for each letter.
162+#html_split_index = False
163+
164+# If true, links to the reST sources are added to the pages.
165+#html_show_sourcelink = True
166+
167+# If true, "Created using Sphinx" is shown in the HTML footer. Default is True.
168+#html_show_sphinx = True
169+
170+# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
171+#html_show_copyright = True
172+
173+# If true, an OpenSearch description file will be output, and all pages will
174+# contain a <link> tag referring to it. The value of this option must be the
175+# base URL from which the finished HTML is served.
176+#html_use_opensearch = ''
177+
178+# This is the file name suffix for HTML files (e.g. ".xhtml").
179+#html_file_suffix = None
180+
181+# Output file base name for HTML help builder.
182+htmlhelp_basename = 'testdoc'
183+
184+
185+# -- Options for LaTeX output ---------------------------------------------
186+
187+latex_elements = {
188+# The paper size ('letterpaper' or 'a4paper').
189+#'papersize': 'letterpaper',
190+
191+# The font size ('10pt', '11pt' or '12pt').
192+#'pointsize': '10pt',
193+
194+# Additional stuff for the LaTeX preamble.
195+#'preamble': '\usepackage{pxjahyper}',
196+ 'classoptions': ',dvipdfmx,openany'
197+}
198+
199+# Grouping the document tree into LaTeX files. List of tuples
200+# (source start file, target name, title,
201+# author, documentclass [howto, manual, or own class]).
202+latex_documents = [
203+ ('index', 'fermisurfer.tex', u'Fermisurfer Documentation',
204+ u'kawamura', 'manual'),
205+]
206+
207+# The name of an image file (relative to this directory) to place at the top of
208+# the title page.
209+#latex_logo = None
210+
211+# For "manual" documents, if this is true, then toplevel headings are parts,
212+# not chapters.
213+#latex_use_parts = False
214+
215+# If true, show page references after internal links.
216+#latex_show_pagerefs = False
217+
218+# If true, show URL addresses after external links.
219+#latex_show_urls = False
220+
221+# Documents to append as an appendix to all manuals.
222+#latex_appendices = []
223+
224+# If false, no module index is generated.
225+#latex_domain_indices = True
226+
227+
228+# -- Options for manual page output ---------------------------------------
229+
230+# One entry per manual page. List of tuples
231+# (source start file, name, description, authors, manual section).
232+man_pages = [
233+ ('index', 'fermisurfer', u'fermisurfer Documentation',
234+ [u'kawamura'], 1)
235+]
236+
237+# If true, show URL addresses after external links.
238+#man_show_urls = False
239+
240+
241+# -- Options for Texinfo output -------------------------------------------
242+
243+# Grouping the document tree into Texinfo files. List of tuples
244+# (source start file, target name, title, author,
245+# dir menu entry, description, category)
246+texinfo_documents = [
247+ ('index', 'fermisurfer', u'Fermisurfer Documentation',
248+ u'kawamura', 'fermisurfer', 'One line description of project.',
249+ 'Miscellaneous'),
250+]
251+
252+# Documents to append as an appendix to all manuals.
253+#texinfo_appendices = []
254+
255+# If false, no module index is generated.
256+#texinfo_domain_indices = True
257+
258+# How to display URL addresses: 'footnote', 'no', or 'inline'.
259+#texinfo_show_urls = 'footnote'
260+
261+# If true, do not generate a @detailmenu in the "Top" node's menu.
262+#texinfo_no_detailmenu = False
--- /dev/null
+++ b/doc/en/fermisf_ack_en.rst
@@ -0,0 +1,5 @@
1+Acknowledgment
2+==============
3+
4+I thank Dr. Yusuke Konishi in ISSP; he performed a test in Mac OSX, and
5+proposed Makefiles and a patch.
--- /dev/null
+++ b/doc/en/fermisf_contact_en.rst
@@ -0,0 +1,14 @@
1+Contact
2+=======
3+
4+Please post bag reports and questions to the forum
5+
6+http://sourceforge.jp/projects/fermisurfer/forums/
7+
8+When you want to join us, please contact me as follows.
9+
10+The Institute of Solid State Physics
11+
12+Mitsuaki Kawamura
13+
14+``mkawamura__at__issp.u-tokyo.ac.jp``
--- /dev/null
+++ b/doc/en/fermisf_copy_en.rst
@@ -0,0 +1,23 @@
1+MIT License
2+===========
3+
4+| Copyright (c) 2014 Mitsuaki Kawamura
5+|
6+| Permission is hereby granted, free of charge, to any person obtaining a
7+| copy of this software and associated documentation files (the
8+| "Software"), to deal in the Software without restriction, including
9+| without limitation the rights to use, copy, modify, merge, publish,
10+| distribute, sublicense, and/or sell copies of the Software, and to
11+| permit persons to whom the Software is furnished to do so, subject to
12+| the following conditions:
13+|
14+| The above copyright notice and this permission notice shall be included
15+| in all copies or substantial portions of the Software.
16+|
17+| THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
18+| OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
19+| MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
20+| IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
21+| CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
22+| TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
23+| SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
--- /dev/null
+++ b/doc/en/fermisf_file_en.rst
@@ -0,0 +1,20 @@
1+Files in this package
2+=====================
3+
4+``bin/fermisurfer.exe`` : Executable for Windows (Main program)
5+
6+``bin/bxsf2frmsf.exe`` : Executable for Windows (Utility to convert file)
7+
8+``doc/manual_en.pdf`` : Manual (English)
9+
10+``doc/manual_ja.pdf`` : Manual (Japanese)
11+
12+``examples/mgb2_vfz.frmsf`` : Sample input file for ``fermisurfer``
13+
14+``examples/pb.bxsf`` : Sample input file for ``bxsf2frmsf``
15+
16+``src/fermisurfer.c`` : Source file (Main program)
17+
18+``src/bxsf2frmsf.c`` : Source file (Utility to convert file)
19+
20+``src/Makefile`` : Makefile for Linux & Mac OSX
--- /dev/null
+++ b/doc/en/fermisf_input_en.rst
@@ -0,0 +1,214 @@
1+Input file
2+==========
3+
4+input-file format
5+-----------------
6+
7+You have to prepare following data:
8+
9+- The number of :math:`k` grid (three direction)
10+
11+- Reciprocal lattice vectors
12+
13+- The number of bands
14+
15+- The orbital energy at each band and :math:`k` (We call it "energy") .
16+
17+- Variables that you want to plot with color (We call it "matrix
18+ elements").
19+
20+The input file is as follows (``mgb2_vfz.fs``):
21+
22+::
23+
24+ 40 40 36 (1)
25+ 0 (2)
26+ 3 (3)
27+ 1.0000000 0.57735026 -0.0000000 (4)
28+ 0.0000000 1.1547005 0.0000000 (5)
29+ 0.0000000 -0.0000000 0.87206507 (6)
30+ 2.91340202E-02 (7)
31+ 2.93242838E-02
32+ 2.98905596E-02
33+ 3.08193434E-02
34+ :
35+ :
36+ 0.14393796
37+ 0.12800488
38+ 0.0000000 (8)
39+ 0.36269817
40+ 0.71675694
41+ 1.0535113
42+ 1.3644149
43+ :
44+ :
45+ -26.409407
46+ -19.318560
47+ -10.315671
48+
49+
50+#. The number of :math:`k` in each direction
51+
52+#. Switch to specify type of :math:`k` grid (Choose from ``0, 1, 2``)
53+
54+ :math:`k` grid is represented as follows:
55+
56+ .. math::
57+
58+ \begin{align} {\boldsymbol k}_{i,j,k} =
59+ x_i {\boldsymbol b}_1 + y_j {\boldsymbol b}_2 + z_k {\boldsymbol b}_3,
60+ \end{align}
61+
62+ where :math:`i, j, k = 1 \cdots N_1, 1 \cdots N_2, 1 \cdots N_3` , and
63+ :math:`N_1, N_2, N_3` are the number of :math:`k` in each direction.
64+
65+ :math:`x_i, y_j,z_k` can be chosen from below:
66+
67+ - ``0`` (Monkhorst-Pack grid) : :math:`x_i = \frac{2 i - 1 - N_1}{2 N_1}`
68+
69+ - ``1`` : :math:`x_i = \frac{i - 1}{N_1}`
70+
71+ - ``2`` : :math:`x_i = \frac{2 i - 1}{2 N_1}`
72+
73+#. The number of bands
74+
75+#. Reciprocal lattice vector 1 (arbitrary unit)
76+
77+#. Reciprocal lattice vector 2
78+
79+#. Reciprocal lattice vector 3
80+
81+#. Energy
82+
83+ ``fermisurfer`` assume that the Fermi energy is ``0.0`` in the
84+ default. You can shift the Fermi energy by using
85+ ``Shift Fermi Energy`` menu described at the section 6.5.
86+
87+#. Matrix elements
88+
89+ If you have no quantity to plot on Fermi surfaces, please use
90+ ``Unicolor`` switch in ``Color scale mode`` menu described at section
91+ 6.7. In that case, although this "Matrix elements" is not used by
92+ ``fermisurfer``, please fill them with arbitrary numbers.
93+
94+--------------
95+
96+Converting bxsf file
97+--------------------
98+
99+You can generate input files for ``fermisurfer`` from an input file for
100+XCrysDen (the bxsf format) by using the utility program ``bxsf2frmsf``.
101+
102+The usage is as follow (we use ``examples/pb.bxsf`` as an example.):
103+
104+For Linux
105+~~~~~~~~~
106+
107+You can launch generated executable as follows:
108+
109+.. code-block:: bash
110+
111+ $ bxsf2frmsf pb.bxsf
112+
113+
114+You need a space between the command and input-file name. After it
115+finishes, the following files are generated:
116+
117+- ``pb_vf.frmsf``: Absolute value of the Fermi velocity
118+- ``pb_vfx.frmsf``: :math:`x` component of the Fermi velocity
119+- ``pb_vfy.frmsf``: :math:`y` component of the Fermi velocity
120+- ``pb_vfz.frmsf``: :math:`z` component of the Fermi velocity
121+- ``pb_vfa1.frmsf``: Component of the Fermi velocity (along :math:`{\bf a}_1`)
122+- ``pb_vfa2.frmsf``: Component of the Fermi velocity (along :math:`{\bf a}_2`)
123+- ``pb_vfa3.frmsf``: Component of the Fermi velocity (along :math:`{\bf a}_3`)
124+
125+For Windows
126+~~~~~~~~~~~
127+
128+Click mouse right button on the input file. Choose "Open With ..." menu,
129+then choose ``bxsf2frmsf.exe``.
130+
131+How to produce the input file in C and fortran programs
132+-------------------------------------------------------
133+
134+fortran
135+
136+.. code-block:: fortran
137+
138+ real(4) :: bvec1(3), bvec2(3), bvec3(3) ! Resiplocal lattice vector
139+ integer :: nk1, nk2, nk3 ! k-grid of each direction
140+ integer :: ishift ! 1 for shifted grid, 0 for unshifted grid.
141+ integer :: nbnd ! The number of bands
142+ real(4) :: eig(nk3,nk2,nk1,nbnd) ! energy
143+ real(4) :: x(nk3,nk2,nk1,nbnd) ! matrix element
144+
145+ integer :: ik1, ik2, ik3, ibnd, fo
146+
147+ open(fo, file = "sample.fs")
148+ write(fo,*) nk1, nk2, nk3
149+ write(fo,*) ishift
150+ write(fo,*) nbnd
151+ write(fo,*) real(bvec1(1:3))
152+ write(fo,*) real(bvec2(1:3))
153+ write(fo,*) real(bvec3(1:3))
154+ do ibnd = 1, nbnd
155+ do ik1 = 1, nk1
156+ do ik2 = 1, nk2
157+ do ik3 = 1, nk3
158+ write(fo,*) real(eig(ik3,ik2,ik1,ibnd))
159+ end do
160+ end do
161+ end do
162+ end do
163+ do ibnd = 1, nbnd
164+ do ik1 = 1, nk1
165+ do ik2 = 1, nk2
166+ do ik3 = 1, nk3
167+ write(fo,*) real(x(ik3,ik2,ik1,ibnd))
168+ end do
169+ end do
170+ end do
171+ end do
172+ close(fo)
173+
174+C
175+
176+.. code-block:: c
177+
178+ float bvec1[3], bvec2[3], bvec3[3]; /*Resiplocal lattice vector*/
179+ int nk1, nk2, nk3; /*k-grid of each direction*/
180+ int ishift; /*1 for shifted grid, 0 for unshifted grid.*/
181+ int nbnd; /*The number of bands*/
182+ float eig[nbnd][nk1][nk2][nk3]; /*Energy*/
183+ float x[nbnd][nk1][nk2][nk3]; /*Matrix element*/
184+
185+ FILE* fo;
186+ int ibnd, ik1, ik2, ik3;
187+
188+ fo = fopen("sample.frmsf", "w");
189+ ierr = fprintf(fo, "%d %d %d\n", nk1, nk2, nk3);
190+ ierr = fprintf(fo, "%d\n", iswitch);
191+ ierr = fprintf(fo, "%d\n", nbnd);
192+ ierr = fprintf(fo, "%e %e %e\n", bvec1[0], bvec1[1], bvec1[2]);
193+ ierr = fprintf(fo, "%e %e %e\n", bvec2[0], bvec2[1], bvec2[2]);
194+ ierr = fprintf(fo, "%e %e %e\n", bvec3[0], bvec3[1], bvec3[2]);
195+ for (ibnd = 0; ibnd < nbnd; ++ibnd) {
196+ for (ik1 = 0; ik1 < nk1; ++ik1) {
197+ for (ik2 = 0; ik2 < nk2; ++ik2) {
198+ for (ik3 = 0; ik3 < nk3; ++ik3) {
199+ ierr = fprintf(fo, "%e\n", eig[ibnd][ik1][ik2][ik3]);
200+ }
201+ }
202+ }
203+ }
204+ for (ibnd = 0; ibnd < nbnd; ++ibnd) {
205+ for (ik1 = 0; ik1 < nk1; ++ik1) {
206+ for (ik2 = 0; ik2 < nk2; ++ik2) {
207+ for (ik3 = 0; ik3 < nk3; ++ik3) {
208+ ierr = fprintf(fo, "%e\n", x[ibnd][ik1][ik2][ik3]);
209+ }
210+ }
211+ }
212+ }
213+ fclose(fo);
214+
--- /dev/null
+++ b/doc/en/fermisf_install_en.rst
@@ -0,0 +1,64 @@
1+Install
2+=======
3+
4+Installation in Linux
5+---------------------
6+
7+#. Install the required package
8+
9+ - For Debian/Ubuntu
10+
11+ .. code-block:: bash
12+
13+ $ sudo aptitude install freeglut3-dev
14+
15+
16+ - For Red Hat Enterprise Linux/CentOS
17+
18+ .. code-block:: bash
19+
20+ $ sudo yum install freeglut-devel.x86_64
21+
22+
23+#. Make
24+
25+ .. code-block:: bash
26+
27+ $ cd ./src
28+ $ make fermisurfer
29+ $ make install
30+
31+
32+Then a binary file ``fermisurfer`` is generated and put in
33+``/usr/local/bin/``.
34+
35+For Mac OSX
36+-----------
37+
38+#. Install Xcode.
39+
40+#. Open ``Makefile`` with an editor, and delete ``#`` below ``#mac``.
41+
42+ .. code-block:: bash
43+
44+ $ cd ./src
45+ $ emacs Makefile
46+
47+
48+#. Make.
49+
50+ .. code-block:: bash
51+
52+ $ make fermisurfer
53+ $ make install
54+
55+
56+ Then a binary file ``fermisurfer`` is generated and put in
57+ ``/usr/local/bin/``.
58+
59+Installation in Windows
60+-----------------------
61+
62+Use an executable ``bin/fermisurfer.exe`` . You can also compile
63+``fermisurfer`` manually by using freeglut library.
64+
--- /dev/null
+++ b/doc/en/fermisf_ops_en.rst
@@ -0,0 +1,291 @@
1+Control FermiSurfer
2+===================
3+
4+Launch
5+------
6+
7+For Linux
8+~~~~~~~~~
9+
10+You can launch generated executable as follows:
11+
12+.. code-block:: bash
13+
14+ $ ./fermisurfer mgb2_vfz.fs
15+
16+You need a space between the command and input-file name.
17+(The sample input file ``mgb2_vfz.fs`` contains :math:`z` element of
18+the Fermi velocity in MgB\ :math:`_2`.)
19+
20+For Windows
21+~~~~~~~~~~~
22+
23+Click mouse right button on the input file. Choose "Open With ..." menu,
24+then choose ``fermisurfer.exe``.
25+
26+After that, ``fermisurfer`` runs as the same whether you use Linux or
27+Windows. The information from the input file is printed.
28+
29+::
30+
31+ ##### Brillouin zone informations #####
32+
33+ k point grid : 40 40 36
34+ k point grid is not shifted
35+ # of bands : 3
36+ bvec 1 : 1.000000 0.577350 -0.000000
37+ bvec 2 : 0.000000 1.154701 0.000000
38+ bvec 3 : 0.000000 -0.000000 0.872065
39+
40+ # of lines for BZ : 84 (1)
41+
42+ ##### Max. and Min. of each bands #####
43+
44+ Band Eig_Min. Eig_Max Mat_Min Mat_Max
45+ 1 -0.428153 0.056262 -24.048639 24.048639 (2)
46+ 2 -0.289572 0.121181 -23.320309 23.320309 (2)
47+ 3 -0.133566 0.497620 -43.651634 43.651634 (2)
48+
49+ ##### First Brillouin zone mode #####
50+
51+ band # of patchs
52+ 1 8824 (3)
53+ 2 29469 (3)
54+ 3 28315 (3)
55+
56+ band # of nodeline
57+ 1 632 (4)
58+ 2 1524 (4)
59+ 3 2268 (4)
60+
61+ ##### Full color scale #####
62+
63+ Max. value : 22.283419 (5)
64+ Min. value : -22.283419 (5)
65+
66+
67+#. The number of lines on the edge of the Brillouin zone.
68+
69+#. The maximum/minimum value of energies and matrix elements in each
70+ bands.
71+
72+#. The number of patches (planes that makes Fermi surfaces) in each
73+ bands.
74+
75+#. The number of node lines in each band.
76+
77+#. The maximum and the minimum of matrix elements on Fermi surface.
78+ These correspond to the red and the blue; in this case, the matrix
79+ element is -22.283419 in the blue region, and that is 22.283419 in
80+ the red region. [(2) is Max./Min. in whole Brillouin zone.]
81+
82+Then, Operations are printed, and Fermi surfaces are drawn (Fig. :num:`start`).
83+
84+.. _start:
85+
86+.. figure:: ../figs/start.png
87+
88+ Main view.
89+
90+The following operations are available:
91+
92+- Rotation of objects with mouse drag
93+
94+- Expand and shrink with mouse wheel
95+
96+- Window re-sizing
97+
98+- Moving objects with cursor keys
99+
100+- Opening the menu with mouse right button
101+
102+Here, I will explain all menus.
103+
104+Band
105+----
106+
107+It makes each band enable/disable (Fig. :num:`bandpng`).
108+
109+.. _bandpng:
110+
111+.. figure:: ../figs/band.png
112+
113+ You make each band enable/disable with "Band" menu.
114+
115+Mouse Drag
116+----------
117+
118+It turns the event of the mouse-left-drag.
119+
120+Rotate(default) : Rotate the figure along the mouse drag.
121+
122+Scale : Expand/shrink the figure in upward/downward drag.
123+
124+Translate : Translate the figure along the mouse drag.
125+
126+Shift Fermi energy
127+------------------
128+
129+It shifts the Fermi energy (= 0 in default) to arbitrary value. When you
130+use this menu, first, it displays minimum and maximum energy in the
131+input file and the current Fermi energy;
132+
133+::
134+
135+ Min Max E_F
136+ -0.428153 0.497620 0.000000
137+ Fermi energy shift :
138+
139+
140+Then, you should type the new Fermi energy; finally, the new Fermi
141+surfaces are depicted (Fig. :num:`shift`).
142+
143+.. _shift:
144+
145+.. figure:: ../figs/shift.png
146+
147+ The Fermi energy is set from 0 Ry to 0.1 Ry with
148+ "Shift Fermi energy" menu
149+
150+Set view
151+--------
152+
153+Changing the view point.
154+
155+Scale
156+ Change the size of the figure.
157+
158+Position
159+ Change the xy position of the figure.
160+
161+Rotation
162+ Change angles at x-, y-, z- axis. Rotations are performed as z-y-x
163+ axis.
164+
165+In each menu, first the current value is printed. then a prompt to input
166+the new value appears (Fig. :num:`setview`).
167+
168+.. _setview:
169+
170+.. figure:: ../figs/setview.png
171+
172+ Modify the view point by using "Set view" menu
173+
174+Background color
175+----------------
176+
177+The background color is toggled between black and white; the edge of the
178+Brillouin Zone is also toggled between white and black (Fig. :num:`background`).
179+
180+.. _background:
181+
182+.. figure:: ../figs/background.png
183+
184+ The background color is toggled with
185+ "Background color" menu.
186+
187+Color scale mode
188+----------------
189+
190+It turns color pattern on Fermi surfaces (Fig. :num:`colorscale`).
191+
192+Auto(default) : It makes blue as the minimum on Fermi surfaces and red
193+as the maximum on them.
194+
195+Manual : You can set manually (from standard input) values corresponding
196+to blue and red.
197+
198+Uni-color : Fermi surfaces of each band are depicted with uni-color
199+without relation to the matrix element.
200+
201+Periodic : It makes periodic color plot enable. When the matrix element
202+varies as :math:`0` :math:`\rightarrow` :math:`\pi/ 3` :math:`\rightarrow` :math:`2\pi/ 3`
203+:math:`\rightarrow` :math:`\pi` :math:`\rightarrow` :math:`4\pi/ 3` :math:`\rightarrow`
204+:math:`5\pi/3` :math:`\rightarrow` :math:`2\pi`,
205+the color varies as red :math:`\rightarrow` yellow
206+:math:`\rightarrow` green :math:`\rightarrow` cyan :math:`\rightarrow` blue
207+:math:`\rightarrow` magenta :math:`\rightarrow` red.
208+
209+.. _colorscale:
210+
211+.. figure:: ../figs/colorscale.png
212+
213+ "Color scale mode" menu.
214+
215+Brillouin zone
216+--------------
217+
218+You choose Brillouin-zone type as follows (Fig. :num:`brillouinzone`):
219+
220+First Brillouin Zone : The region surrounded by Bragg's planes the
221+nearest to :math:`{\rm \Gamma}` point.
222+
223+Primitive Brillouin Zone : A hexahedron whose corner is the reciprocal
224+lattice point.
225+
226+.. _brillouinzone:
227+
228+.. figure:: ../figs/brillouinzone.png
229+
230+ You can change the type of the Brillouin zone with
231+ "Brillouin zone" menu.
232+
233+Node line
234+---------
235+
236+The line on which the matrix element becomes 0 (we call it node line)
237+becomes enable/disable (Fig. :num:`nodeline`).
238+
239+.. _nodeline:
240+
241+.. figure:: ../figs/nodeline.png
242+
243+ Toggling the node line with "Node line" menu.
244+
245+Color bar On/Off
246+----------------
247+
248+The color bar becomes enable/disable (Fig. :num:`colorbar`).
249+
250+.. _colorbar:
251+
252+.. figure:: ../figs/colorbar.png
253+
254+ Toggling the color bar with "Color bar On/Off" menu.
255+
256+Stereogram
257+----------
258+
259+The stereogram (parallel eyes and cross eyes) becomes enabled/disabled
260+(Fig. :num:`stereogram`).
261+
262+None (Default)
263+
264+Parallel : Parallel-eyes stereogram
265+
266+Cross : Cross-eyes stereogram
267+
268+.. _stereogram:
269+
270+.. figure:: ../figs/stereogram.png
271+
272+ The stereogram becomes enabled/disabled with
273+ "Stereogram" menu.
274+
275+Tetrahedron
276+-----------
277+
278+You change the scheme to divide into tetrahedra (``tetra # 1`` as default).
279+It is experimental.
280+
281+Exit
282+----
283+
284+This finishes ``fermisurfer``.
285+
286+Saving images
287+-------------
288+
289+``fermisurfer`` does not have any functions to save images to a file.
290+Please use the screenshot on your PC.
291+
--- /dev/null
+++ b/doc/en/fermisf_overview_en.rst
@@ -0,0 +1,9 @@
1+Introduction
2+============
3+
4+This document is a manual for the Fermi surface drawing program
5+"FermiSurfer". FermiSurfer has been developed since 2012 by Mitsuaki
6+Kawamura (ISSP, The University of Tokyo); it is opened on web at
7+November, 2014. It draws Fermi surfaces, and plot :math:`k`\ -depend matrix
8+elements such as the superconducting gap and orbital character with
9+colors.
--- /dev/null
+++ b/doc/en/index.rst
@@ -0,0 +1,30 @@
1+.. test documentation master file, created by
2+ sphinx-quickstart on Sat Jan 7 22:10:04 2017.
3+ You can adapt this file completely to your liking, but it should at least
4+ contain the root `toctree` directive.
5+
6+Welcome to FermiSurfer's documentation!
7+=======================================
8+
9+Contents:
10+
11+.. toctree::
12+ :maxdepth: 3
13+
14+ fermisf_overview_en
15+ fermisf_copy_en
16+ fermisf_file_en
17+ fermisf_install_en
18+ fermisf_input_en
19+ fermisf_ops_en
20+ fermisf_gallery_en
21+ fermisf_ack_en
22+ fermisf_contact_en
23+
24+.. Indices and tables
25+.. ==================
26+
27+.. * :ref:`genindex`
28+.. * :ref:`modindex`
29+.. * :ref:`search`
30+
Binary files /dev/null and b/doc/figs/background.png differ
Binary files /dev/null and b/doc/figs/band.png differ
Binary files /dev/null and b/doc/figs/brillouinzone.png differ
Binary files /dev/null and b/doc/figs/colorbar.png differ
Binary files /dev/null and b/doc/figs/colorscale.png differ
Binary files /dev/null and b/doc/figs/iro2.png differ
Binary files /dev/null and b/doc/figs/nodeline.png differ
Binary files /dev/null and b/doc/figs/setview.png differ
Binary files /dev/null and b/doc/figs/shift.png differ
Binary files /dev/null and b/doc/figs/start.png differ
Binary files /dev/null and b/doc/figs/stereogram.png differ
--- /dev/null
+++ b/doc/ja/Makefile
@@ -0,0 +1,177 @@
1+# Makefile for Sphinx documentation
2+#
3+
4+# You can set these variables from the command line.
5+SPHINXOPTS =
6+SPHINXBUILD = sphinx-build
7+PAPER =
8+BUILDDIR = _build
9+
10+# User-friendly check for sphinx-build
11+ifeq ($(shell which $(SPHINXBUILD) >/dev/null 2>&1; echo $$?), 1)
12+$(error The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the executable to your PATH. If you don't have Sphinx installed, grab it from http://sphinx-doc.org/)
13+endif
14+
15+# Internal variables.
16+PAPEROPT_a4 = -D latex_paper_size=a4
17+PAPEROPT_letter = -D latex_paper_size=letter
18+ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
19+# the i18n builder cannot share the environment and doctrees with the others
20+I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
21+
22+.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext
23+
24+help:
25+ @echo "Please use \`make <target>' where <target> is one of"
26+ @echo " html to make standalone HTML files"
27+ @echo " dirhtml to make HTML files named index.html in directories"
28+ @echo " singlehtml to make a single large HTML file"
29+ @echo " pickle to make pickle files"
30+ @echo " json to make JSON files"
31+ @echo " htmlhelp to make HTML files and a HTML help project"
32+ @echo " qthelp to make HTML files and a qthelp project"
33+ @echo " devhelp to make HTML files and a Devhelp project"
34+ @echo " epub to make an epub"
35+ @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
36+ @echo " latexpdf to make LaTeX files and run them through pdflatex"
37+ @echo " latexpdfja to make LaTeX files and run them through platex/dvipdfmx"
38+ @echo " text to make text files"
39+ @echo " man to make manual pages"
40+ @echo " texinfo to make Texinfo files"
41+ @echo " info to make Texinfo files and run them through makeinfo"
42+ @echo " gettext to make PO message catalogs"
43+ @echo " changes to make an overview of all changed/added/deprecated items"
44+ @echo " xml to make Docutils-native XML files"
45+ @echo " pseudoxml to make pseudoxml-XML files for display purposes"
46+ @echo " linkcheck to check all external links for integrity"
47+ @echo " doctest to run all doctests embedded in the documentation (if enabled)"
48+
49+clean:
50+ rm -rf $(BUILDDIR)/*
51+
52+html:
53+ $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
54+ @echo
55+ @echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
56+
57+dirhtml:
58+ $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
59+ @echo
60+ @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
61+
62+singlehtml:
63+ $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
64+ @echo
65+ @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
66+
67+pickle:
68+ $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
69+ @echo
70+ @echo "Build finished; now you can process the pickle files."
71+
72+json:
73+ $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
74+ @echo
75+ @echo "Build finished; now you can process the JSON files."
76+
77+htmlhelp:
78+ $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
79+ @echo
80+ @echo "Build finished; now you can run HTML Help Workshop with the" \
81+ ".hhp project file in $(BUILDDIR)/htmlhelp."
82+
83+qthelp:
84+ $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
85+ @echo
86+ @echo "Build finished; now you can run "qcollectiongenerator" with the" \
87+ ".qhcp project file in $(BUILDDIR)/qthelp, like this:"
88+ @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/fermisurfer.qhcp"
89+ @echo "To view the help file:"
90+ @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/fermisurfer.qhc"
91+
92+devhelp:
93+ $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
94+ @echo
95+ @echo "Build finished."
96+ @echo "To view the help file:"
97+ @echo "# mkdir -p $$HOME/.local/share/devhelp/fermisurfer"
98+ @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/fermisurfer"
99+ @echo "# devhelp"
100+
101+epub:
102+ $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
103+ @echo
104+ @echo "Build finished. The epub file is in $(BUILDDIR)/epub."
105+
106+latex:
107+ $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
108+ @echo
109+ @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
110+ @echo "Run \`make' in that directory to run these through (pdf)latex" \
111+ "(use \`make latexpdf' here to do that automatically)."
112+
113+latexpdf:
114+ $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
115+ @echo "Running LaTeX files through pdflatex..."
116+ $(MAKE) -C $(BUILDDIR)/latex all-pdf
117+ @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
118+
119+latexpdfja:
120+ $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
121+ @echo "Running LaTeX files through platex and dvipdfmx..."
122+ $(MAKE) -C $(BUILDDIR)/latex all-pdf-ja
123+ @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
124+
125+text:
126+ $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
127+ @echo
128+ @echo "Build finished. The text files are in $(BUILDDIR)/text."
129+
130+man:
131+ $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
132+ @echo
133+ @echo "Build finished. The manual pages are in $(BUILDDIR)/man."
134+
135+texinfo:
136+ $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
137+ @echo
138+ @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo."
139+ @echo "Run \`make' in that directory to run these through makeinfo" \
140+ "(use \`make info' here to do that automatically)."
141+
142+info:
143+ $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
144+ @echo "Running Texinfo files through makeinfo..."
145+ make -C $(BUILDDIR)/texinfo info
146+ @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo."
147+
148+gettext:
149+ $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale
150+ @echo
151+ @echo "Build finished. The message catalogs are in $(BUILDDIR)/locale."
152+
153+changes:
154+ $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
155+ @echo
156+ @echo "The overview file is in $(BUILDDIR)/changes."
157+
158+linkcheck:
159+ $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
160+ @echo
161+ @echo "Link check complete; look for any errors in the above output " \
162+ "or in $(BUILDDIR)/linkcheck/output.txt."
163+
164+doctest:
165+ $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
166+ @echo "Testing of doctests in the sources finished, look at the " \
167+ "results in $(BUILDDIR)/doctest/output.txt."
168+
169+xml:
170+ $(SPHINXBUILD) -b xml $(ALLSPHINXOPTS) $(BUILDDIR)/xml
171+ @echo
172+ @echo "Build finished. The XML files are in $(BUILDDIR)/xml."
173+
174+pseudoxml:
175+ $(SPHINXBUILD) -b pseudoxml $(ALLSPHINXOPTS) $(BUILDDIR)/pseudoxml
176+ @echo
177+ @echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml."
--- /dev/null
+++ b/doc/ja/conf.py
@@ -0,0 +1,262 @@
1+# -*- coding: utf-8 -*-
2+#
3+# Fermisurfer documentation build configuration file, created by
4+# sphinx-quickstart on Sat Jan 7 22:10:04 2017.
5+#
6+# This file is execfile()d with the current directory set to its
7+# containing dir.
8+#
9+# Note that not all possible configuration values are present in this
10+# autogenerated file.
11+#
12+# All configuration values have a default; values that are commented out
13+# serve to show the default.
14+
15+import sys
16+import os
17+
18+# If extensions (or modules to document with autodoc) are in another directory,
19+# add these directories to sys.path here. If the directory is relative to the
20+# documentation root, use os.path.abspath to make it absolute, like shown here.
21+#sys.path.insert(0, os.path.abspath('.'))
22+
23+# -- General configuration ------------------------------------------------
24+
25+# If your documentation needs a minimal Sphinx version, state it here.
26+#needs_sphinx = '1.0'
27+
28+# Add any Sphinx extension module names here, as strings. They can be
29+# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
30+# ones.
31+extensions = [
32+ 'sphinx.ext.mathjax',
33+ 'sphinx_numfig'
34+]
35+
36+# Add any paths that contain templates here, relative to this directory.
37+templates_path = ['_templates']
38+
39+# The suffix of source filenames.
40+source_suffix = '.rst'
41+
42+# The encoding of source files.
43+#source_encoding = 'utf-8-sig'
44+
45+# The master toctree document.
46+master_doc = 'index'
47+
48+# General information about the project.
49+project = u'fermisurfer'
50+copyright = u'2017, kawamura'
51+
52+# The version info for the project you're documenting, acts as replacement for
53+# |version| and |release|, also used in various other places throughout the
54+# built documents.
55+#
56+# The short X.Y version.
57+version = '1.7'
58+# The full version, including alpha/beta/rc tags.
59+release = '1.7.1'
60+
61+# The language for content autogenerated by Sphinx. Refer to documentation
62+# for a list of supported languages.
63+language = 'ja'
64+
65+# There are two options for replacing |today|: either, you set today to some
66+# non-false value, then it is used:
67+#today = ''
68+# Else, today_fmt is used as the format for a strftime call.
69+#today_fmt = '%B %d, %Y'
70+
71+# List of patterns, relative to source directory, that match files and
72+# directories to ignore when looking for source files.
73+exclude_patterns = ['_build']
74+
75+# The reST default role (used for this markup: `text`) to use for all
76+# documents.
77+#default_role = None
78+
79+# If true, '()' will be appended to :func: etc. cross-reference text.
80+#add_function_parentheses = True
81+
82+# If true, the current module name will be prepended to all description
83+# unit titles (such as .. function::).
84+#add_module_names = True
85+
86+# If true, sectionauthor and moduleauthor directives will be shown in the
87+# output. They are ignored by default.
88+#show_authors = False
89+
90+# The name of the Pygments (syntax highlighting) style to use.
91+pygments_style = 'sphinx'
92+
93+# A list of ignored prefixes for module index sorting.
94+#modindex_common_prefix = []
95+
96+# If true, keep warnings as "system message" paragraphs in the built documents.
97+#keep_warnings = False
98+
99+
100+# -- Options for HTML output ----------------------------------------------
101+
102+# The theme to use for HTML and HTML Help pages. See the documentation for
103+# a list of builtin themes.
104+html_theme = 'default'
105+
106+# Theme options are theme-specific and customize the look and feel of a theme
107+# further. For a list of options available for each theme, see the
108+# documentation.
109+#html_theme_options = {}
110+
111+# Add any paths that contain custom themes here, relative to this directory.
112+#html_theme_path = []
113+
114+# The name for this set of Sphinx documents. If None, it defaults to
115+# "<project> v<release> documentation".
116+#html_title = None
117+
118+# A shorter title for the navigation bar. Default is the same as html_title.
119+#html_short_title = None
120+
121+# The name of an image file (relative to this directory) to place at the top
122+# of the sidebar.
123+#html_logo = None
124+
125+# The name of an image file (within the static path) to use as favicon of the
126+# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32
127+# pixels large.
128+#html_favicon = None
129+
130+# Add any paths that contain custom static files (such as style sheets) here,
131+# relative to this directory. They are copied after the builtin static files,
132+# so a file named "default.css" will overwrite the builtin "default.css".
133+html_static_path = ['_static']
134+
135+# Add any extra paths that contain custom files (such as robots.txt or
136+# .htaccess) here, relative to this directory. These files are copied
137+# directly to the root of the documentation.
138+#html_extra_path = []
139+
140+# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
141+# using the given strftime format.
142+#html_last_updated_fmt = '%b %d, %Y'
143+
144+# If true, SmartyPants will be used to convert quotes and dashes to
145+# typographically correct entities.
146+#html_use_smartypants = True
147+
148+# Custom sidebar templates, maps document names to template names.
149+#html_sidebars = {}
150+
151+# Additional templates that should be rendered to pages, maps page names to
152+# template names.
153+#html_additional_pages = {}
154+
155+# If false, no module index is generated.
156+#html_domain_indices = True
157+
158+# If false, no index is generated.
159+#html_use_index = True
160+
161+# If true, the index is split into individual pages for each letter.
162+#html_split_index = False
163+
164+# If true, links to the reST sources are added to the pages.
165+#html_show_sourcelink = True
166+
167+# If true, "Created using Sphinx" is shown in the HTML footer. Default is True.
168+#html_show_sphinx = True
169+
170+# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
171+#html_show_copyright = True
172+
173+# If true, an OpenSearch description file will be output, and all pages will
174+# contain a <link> tag referring to it. The value of this option must be the
175+# base URL from which the finished HTML is served.
176+#html_use_opensearch = ''
177+
178+# This is the file name suffix for HTML files (e.g. ".xhtml").
179+#html_file_suffix = None
180+
181+# Output file base name for HTML help builder.
182+htmlhelp_basename = 'testdoc'
183+
184+
185+# -- Options for LaTeX output ---------------------------------------------
186+
187+latex_elements = {
188+# The paper size ('letterpaper' or 'a4paper').
189+#'papersize': 'letterpaper',
190+
191+# The font size ('10pt', '11pt' or '12pt').
192+#'pointsize': '10pt',
193+
194+# Additional stuff for the LaTeX preamble.
195+'preamble': '\usepackage{pxjahyper}',
196+ 'classoptions': ',dvipdfmx,openany'
197+}
198+
199+# Grouping the document tree into LaTeX files. List of tuples
200+# (source start file, target name, title,
201+# author, documentclass [howto, manual, or own class]).
202+latex_documents = [
203+ ('index', 'fermisurfer.tex', u'Fermisurfer Documentation',
204+ u'kawamura', 'manual'),
205+]
206+
207+# The name of an image file (relative to this directory) to place at the top of
208+# the title page.
209+#latex_logo = None
210+
211+# For "manual" documents, if this is true, then toplevel headings are parts,
212+# not chapters.
213+#latex_use_parts = False
214+
215+# If true, show page references after internal links.
216+#latex_show_pagerefs = False
217+
218+# If true, show URL addresses after external links.
219+#latex_show_urls = False
220+
221+# Documents to append as an appendix to all manuals.
222+#latex_appendices = []
223+
224+# If false, no module index is generated.
225+#latex_domain_indices = True
226+
227+
228+# -- Options for manual page output ---------------------------------------
229+
230+# One entry per manual page. List of tuples
231+# (source start file, name, description, authors, manual section).
232+man_pages = [
233+ ('index', 'fermisurfer', u'fermisurfer Documentation',
234+ [u'kawamura'], 1)
235+]
236+
237+# If true, show URL addresses after external links.
238+#man_show_urls = False
239+
240+
241+# -- Options for Texinfo output -------------------------------------------
242+
243+# Grouping the document tree into Texinfo files. List of tuples
244+# (source start file, target name, title, author,
245+# dir menu entry, description, category)
246+texinfo_documents = [
247+ ('index', 'fermisurfer', u'Fermisurfer Documentation',
248+ u'kawamura', 'fermisurfer', 'One line description of project.',
249+ 'Miscellaneous'),
250+]
251+
252+# Documents to append as an appendix to all manuals.
253+#texinfo_appendices = []
254+
255+# If false, no module index is generated.
256+#texinfo_domain_indices = True
257+
258+# How to display URL addresses: 'footnote', 'no', or 'inline'.
259+#texinfo_show_urls = 'footnote'
260+
261+# If true, do not generate a @detailmenu in the "Top" node's menu.
262+#texinfo_no_detailmenu = False
--- /dev/null
+++ b/doc/ja/fermisf_ack_ja.rst
@@ -0,0 +1,6 @@
1+謝辞
2+====
3+
4+東京大学物性研究所 小西優祐氏には, Mac
5+OSXでの動作チェックおよびMakefile,
6+パッチの提供をしていただいたことに感謝する.
--- /dev/null
+++ b/doc/ja/fermisf_contact_ja.rst
@@ -0,0 +1,15 @@
1+問い合わせ先
2+============
3+
4+プログラムのバグや質問は以下のフォーラムへご投稿ください.
5+
6+http://sourceforge.jp/projects/fermisurfer/forums/
7+
8+開発に参加したい方は以下の連絡先にて受け付けております.
9+
10+東京大学物性研究所
11+
12+河村光晶
13+
14+``mkawamura__at__issp.u-tokyo.ac.jp``
15+
--- /dev/null
+++ b/doc/ja/fermisf_copy_ja.rst
@@ -0,0 +1,23 @@
1+MIT ライセンス
2+==============
3+
4+| Copyright (c) 2014 Mitsuaki Kawamura
5+|
6+| 以下に定める条件に従い,
7+| 本ソフトウェアおよび関連文書のファイル(以下「ソフトウェア」)
8+| の複製を取得するすべての人に対し,
9+| ソフトウェアを無制限に扱うことを無償で許可します. これには,
10+| ソフトウェアの複製を使用, 複写, 変更, 結合, 掲載, 頒布, サブライセンス,
11+| および/または販売する権利,
12+| およびソフトウェアを提供する相手に同じことを許可する権利も無制限に含まれます.
13+|
14+| 上記の著作権表示および本許諾表示を,
15+| ソフトウェアのすべての複製または重要な部分に記載するものとします.
16+|
17+| ソフトウェアは「現状のまま」で, 明示であるか暗黙であるかを問わず,
18+| 何らの保証もなく提供されます. ここでいう保証とは, 商品性,
19+| 特定の目的への適合性, および権利非侵害についての保証も含みますが,
20+| それに限定されるものではありません. 作者または著作権者は, 契約行為,
21+| 不法行為, またはそれ以外であろうと, ソフトウェアに起因または関連し,
22+| あるいはソフトウェアの使用またはその他の扱いによって生じる一切の請求,
23+| 損害, その他の義務について何らの責任も負わないものとします.
--- /dev/null
+++ b/doc/ja/fermisf_file_ja.rst
@@ -0,0 +1,21 @@
1+このパッケージに含まれているファイル
2+====================================
3+
4+``bin/fermisurfer.exe`` : Windows用実行ファイル(本体)
5+
6+``bin/bxsf2frmsf.exe`` :
7+Windows用実行ファイル(ファイル変換用ユーティリティ)
8+
9+``doc/manual_en.pdf`` : マニュアル(英語)
10+
11+``doc/manual_ja.pdf`` : マニュアル(日本語)
12+
13+``examples/mgb2_vfz.frmsf`` : サンプル入力ファイル
14+
15+``examples/pb.bxsf`` : サンプル入力ファイル
16+
17+``src/fermisurfer.c`` : ソースファイル(本体)
18+
19+``src/bxsf2frmsf.c`` : ソースファイル(ファイル変換用ユーティリティ)
20+
21+``src/Makefile`` : Makefile
--- /dev/null
+++ b/doc/ja/fermisf_input_ja.rst
@@ -0,0 +1,226 @@
1+Input file
2+==========
3+
4+input fileの書式
5+----------------
6+
7+用意するデータは,
8+
9+- Brillouin領域分割数(3方向)
10+
11+- 逆格子ベクトル
12+
13+- バンド本数
14+
15+- 軌道固有値(以下エネルギーと呼びます)の各バンド, :math:`k` グリッド点での値
16+
17+- カラープロットしたい物理量(以下物理量と呼びます)の各バンド,
18+ :math:`k` グリッド点での値
19+
20+です.
21+
22+上記データを次のとおりの書式で並べます(サンプルファイル
23+``mgb2_vfz.frmsf`` の中身).
24+
25+::
26+
27+ 40 40 36 (1)
28+ 0 (2)
29+ 3 (3)
30+ 1.0000000 0.57735026 -0.0000000 (4)
31+ 0.0000000 1.1547005 0.0000000 (5)
32+ 0.0000000 -0.0000000 0.87206507 (6)
33+ 2.91340202E-02 (7)
34+ 2.93242838E-02
35+ 2.98905596E-02
36+ 3.08193434E-02
37+ :
38+ :
39+ 0.14393796
40+ 0.12800488
41+ 0.0000000 (8)
42+ 0.36269817
43+ 0.71675694
44+ 1.0535113
45+ 1.3644149
46+ :
47+ :
48+ -26.409407
49+ -19.318560
50+ -10.315671
51+
52+
53+#. :math:`k` グリッド数
54+
55+#. :math:`k` グリッドの指定方法( ``0, 1, 2`` のいずれか)
56+
57+ :math:`k` グリッドを次のように表します.
58+
59+ .. math::
60+
61+ \begin{align}
62+ {\boldsymbol k}_{i,j,k} =
63+ x_i {\boldsymbol b}_1 + y_j {\boldsymbol b}_2 + z_k {\boldsymbol b}_3
64+ \end{align}
65+
66+ ただし:math:`i, j, k` は :math:`1` から各逆格子ベクトル方向の分割数
67+ :math:`N_1, N_2, N_3` (上で読み取ったもの)とする
68+
69+ :math:`x_i, y_j,z_k` は次の3つのとり方が可能です.
70+
71+ - ``0`` の場合(Monkhorst-Packグリッド) :
72+ :math:`x_i = \frac{2 i - 1 - N_1}{2 N_1}`
73+
74+ - ``1`` の場合 : :math:`x_i = \frac{i - 1}{N_1}`
75+
76+ - ``2`` の場合 : :math:`x_i = \frac{2 i - 1}{2 N_1}`
77+
78+#. バンド本数
79+
80+#. 逆格子ベクトル1 (任意単位)
81+
82+#. 逆格子ベクトル2
83+
84+#. 逆格子ベクトル3
85+
86+#. エネルギー (並び順は5.3節参照)
87+
88+ ``fermisurfer`` はデフォルトではFermiエネルギーを
89+ ``0.0`` としています. ただし,
90+ 後述の ``Shift Fermi Energy`` メニューを用いて
91+ Fermiエネルギーを ``0.0`` 以外の値に変更することも可能です.
92+
93+#. 物理量 (並び順は5.3節参照)
94+
95+ 特にカラープロットをしたい量が無く,
96+ Fermi面の描画のみを行いたい場合には,
97+ 後述の ``Color scale mode`` メニューから
98+ ``Unicolor`` を選択してください. その際,
99+ この"物理量"は利用されることはありませんが,
100+ ファイルの読み込みを完了させるために何らかの数字で埋めてください
101+ (すべて ``1.0`` とするなど).
102+
103+BXSF形式からの変換
104+------------------
105+
106+付属のユーティリティー ``bxsf2frmsf`` を使うと
107+XCrysDen用の入力ファイルから ``fermisurfer`` で読み取り可能な入力ファイルが
108+作られます. また, そのときにFermi面上にカラープロットされるFermi速度が,
109+エネルギーバンドから計算されます.
110+
111+使い方は次のとおりです. ``examples/`` ディレクトリにある ``pb.bxsf``
112+ファイルを例として使います.
113+
114+Linuxの場合
115+~~~~~~~~~~~
116+
117+作成した実行可能ファイル ``bxsf2frmsf`` にパスが通っている状態で
118+
119+.. code-block:: bash
120+
121+ $ bxsf2frmsf pb.bxsf
122+
123+
124+とコマンド, スペース, 入力ファイル名とタイプします. その後,
125+次のファイルが生成されます.
126+
127+- ``pb_vf.frmsf``: Fermi速度の絶対値
128+- ``pb_vfx.frmsf``: Fermi速度の :math:`x` 成分
129+- ``pb_vfy.frmsf``: Fermi速度の :math:`y` 成分
130+- ``pb_vfz.frmsf``: Fermi速度の :math:`z` 成分
131+- ``pb_vfa1.frmsf``: Fermi速度の, 格子ベクトル :math:`{\bf a}_1` に平行な成分
132+- ``pb_vfa2.frmsf``: Fermi速度の, 格子ベクトル :math:`{\bf a}_2` に平行な成分
133+- ``pb_vfa3.frmsf``: Fermi速度の, 格子ベクトル :math:`{\bf a}_3` に平行な成分
134+
135+Windowsの場合
136+~~~~~~~~~~~~~
137+
138+入力ファイル(この場合は ``pb.bxsf``)を右クリックし,
139+メニューから「プログラムから開く」を選択し,
140+実行ファイルを ``bxsf2frmsf.exe`` に設定してください.
141+
142+C/fortranでの入力ファイルの書き出し方
143+-------------------------------------
144+
145+fortran
146+
147+.. code-block:: fortran
148+
149+ real(4) :: bvec1(3), bvec2(3), bvec3(3) !逆格子ベクトル
150+ INTEGER :: nk1, nk2, nk3 !各逆格子ベクトルの方向の分割数
151+ integer :: ishift !グリットをシフトさせるか(=1)否か(=0)
152+ integer :: nbnd !バンド数
153+ real(4) :: eig(nk3,nk2,nk1,nbnd) !エネルギー
154+ real(4) :: x(nk3,nk2,nk1,nbnd) !物理量
155+
156+ integer :: ik1, ik2, ik3, ibnd, fo
157+
158+ open(fo, file = "sample.frmsf")
159+ write(fo,*) nk1, nk2, nk3
160+ write(fo,*) ishift
161+ write(fo,*) nbnd
162+ write(fo,*) real(bvec1(1:3))
163+ write(fo,*) real(bvec2(1:3))
164+ write(fo,*) real(bvec3(1:3))
165+ do ibnd = 1, nbnd
166+ do ik1 = 1, nk1
167+ do ik2 = 1, nk2
168+ do ik3 = 1, nk3
169+ write(fo,*) real(eig(ik3,ik2,ik1,ibnd))
170+ end do
171+ end do
172+ end do
173+ end do
174+ do ibnd = 1, nbnd
175+ do ik1 = 1, nk1
176+ do ik2 = 1, nk2
177+ do ik3 = 1, nk3
178+ write(fo,*) real(x(ik3,ik2,ik1,ibnd))
179+ end do
180+ end do
181+ end do
182+ end do
183+ close(fo)
184+
185+C言語
186+
187+.. code-block:: c
188+
189+ float bvec1[3], bvec2[3], bvec3[3]; /*逆格子ベクトル*/
190+ int nk1, nk2, nk3; /*各逆格子ベクトルの方向の分割数*/
191+ int ishift; /*グリットをシフトさせるか(=1)否か(=0)*/
192+ int nbnd; /*バンド数*/
193+ float eig[nbnd][nk1][nk2][nk3]; /*エネルギー*/
194+ float x[nbnd][nk1][nk2][nk3]; /*物理量*/
195+
196+ FILE* fo;
197+ int ibnd, ik1, ik2, ik3;
198+
199+ fo = fopen("sample.frmsf", "w");
200+ ierr = fprintf(fo, "%d %d %d\n", nk1, nk2, nk3);
201+ ierr = fprintf(fo, "%d\n", iswitch);
202+ ierr = fprintf(fo, "%d\n", nbnd);
203+ ierr = fprintf(fo, "%e %e %e\n", bvec1[0], bvec1[1], bvec1[2]);
204+ ierr = fprintf(fo, "%e %e %e\n", bvec2[0], bvec2[1], bvec2[2]);
205+ ierr = fprintf(fo, "%e %e %e\n", bvec3[0], bvec3[1], bvec3[2]);
206+ for (ibnd = 0; ibnd < nbnd; ++ibnd) {
207+ for (ik1 = 0; ik1 < nk1; ++ik1) {
208+ for (ik2 = 0; ik2 < nk2; ++ik2) {
209+ for (ik3 = 0; ik3 < nk3; ++ik3) {
210+ ierr = fprintf(fo, "%e\n", eig[ibnd][ik1][ik2][ik3]);
211+ }
212+ }
213+ }
214+ }
215+ for (ibnd = 0; ibnd < nbnd; ++ibnd) {
216+ for (ik1 = 0; ik1 < nk1; ++ik1) {
217+ for (ik2 = 0; ik2 < nk2; ++ik2) {
218+ for (ik3 = 0; ik3 < nk3; ++ik3) {
219+ ierr = fprintf(fo, "%e\n", x[ibnd][ik1][ik2][ik3]);
220+ }
221+ }
222+ }
223+ }
224+ fclose(fo);
225+
226+
--- /dev/null
+++ b/doc/ja/fermisf_install_ja.rst
@@ -0,0 +1,64 @@
1+インストール手順
2+================
3+
4+Linuxの場合
5+-----------
6+
7+#. 必要なパッケージをインストール(既にパッケージが入っている場合は何も起こりません.)
8+
9+ - Debian/Ubuntu 等
10+
11+ .. code-block:: bash
12+
13+ $ sudo aptitude install freeglut3-dev
14+
15+
16+ - Red Hat Enterprise Linux/CentOS 等
17+
18+ .. code-block:: bash
19+
20+ $ sudo yum install freeglut-devel.x86_64
21+
22+
23+#. メイク
24+
25+ .. code-block:: bash
26+
27+ $ cd ./src
28+ $ make all
29+ $ make install
30+
31+
32+以上で実行可能ファイル ``fermisurfer`` および ``bxsf2frmsf`` が作られ,
33+``/usr/local/bin/`` にコピーされます.
34+
35+Mac OSX の場合
36+--------------
37+
38+#. Xcodeをあらかじめインストールしておく
39+
40+#. Makefileを適当なエディタで開いて#macの下の行の#を消す.
41+
42+ .. code-block:: bash
43+
44+ $ cd ./src
45+ $ emacs Makefile
46+
47+
48+#. メイク
49+
50+ .. code-block:: bash
51+
52+ $ make fermisurfer
53+ $ make install
54+
55+
56+以上で実行可能ファイル ``fermisurfer`` および ``bxsf2frmsf`` が作られ,
57+``/usr/local/bin/`` にコピーされます.
58+
59+Windowsの場合
60+-------------
61+
62+実行可能ファイル ``bin/fermisurfer.exe`` を直接実行します.
63+freeglutライブラリをダウンロードして自分でコンパイルすることも可能です.
64+
--- /dev/null
+++ b/doc/ja/fermisf_ops_ja.rst
@@ -0,0 +1,293 @@
1+操作方法
2+========
3+
4+起動
5+----
6+
7+Linuxの場合
8+~~~~~~~~~~~
9+
10+作成した実行可能ファイル ``fermisurfer`` にパスが通っている状態で
11+
12+.. code-block:: bash
13+
14+ $ fermisurfer mgb2_vfz.frmsf
15+
16+
17+とコマンド, スペース, 入力ファイル名とタイプします.
18+(サンプルファイルの中身はMgB\ :math:`_2`\ のFermi速度の :math:`z` 方向成分です. )
19+
20+Windowsの場合
21+~~~~~~~~~~~~~
22+
23+入力ファイル(この場合は ``mgb2_vfz.frmsf``)を右クリックし,
24+メニューから「プログラムから開く」を選択し,
25+実行ファイルを ``fermisurfer.exe`` に設定してください.
26+
27+このあとはLinux, Windows共通です. ``fermisurfer`` が起動すると,
28+まずファイルから読み取った情報が出力されます.
29+
30+::
31+
32+ ##### Brillouin zone informations #####
33+
34+ k point grid : 40 40 36
35+ k point grid is not shifted
36+ # of bands : 3
37+ bvec 1 : 1.000000 0.577350 -0.000000
38+ bvec 2 : 0.000000 1.154701 0.000000
39+ bvec 3 : 0.000000 -0.000000 0.872065
40+
41+ # of lines for BZ : 84 (1)
42+
43+ ##### Max. and Min. of each bands #####
44+
45+ Band Eig_Min. Eig_Max Mat_Min Mat_Max
46+ 1 -0.428153 0.056262 -24.048639 24.048639 (2)
47+ 2 -0.289572 0.121181 -23.320309 23.320309 (2)
48+ 3 -0.133566 0.497620 -43.651634 43.651634 (2)
49+
50+ ##### First Brillouin zone mode #####
51+
52+ band # of patchs
53+ 1 8824 (3)
54+ 2 29469 (3)
55+ 3 28315 (3)
56+
57+ band # of nodeline
58+ 1 632 (4)
59+ 2 1524 (4)
60+ 3 2268 (4)
61+
62+ ##### Full color scale #####
63+
64+ Max. value : 22.283419 (5)
65+ Min. value : -22.283419 (5)
66+
67+
68+#. Brillouin領域の境界を表示する線の数.
69+
70+#. それぞれのバンドにおけるエネルギーと物理量の最小値・最大値.
71+
72+#. それぞれのバンドにおけるパッチ(Fermi面を構成する平面)の数.
73+
74+#. それぞれのバンドにおけるnode line (後述)の本数.
75+
76+#. 物理量のFermi面における最大値と最小値.
77+ この数字がカラーバーの最大・最小に対応します.
78+ 下の例では一番青いところが-22.283419,
79+ 一番赤いところが22.283419となります.
80+ (2)で表示されているのはBrillouin領域全体のものです.
81+
82+次に操作方法が出力され, Fermi面が描画されます(図 :num:`start` ).
83+
84+.. _start:
85+
86+.. figure:: ../figs/start.png
87+
88+ Fermisurferを起動した直後の画面.
89+
90+- マウスのドラッグによる回転が出来ます.
91+
92+- マウスのホイールを使っての拡大・縮小が出来ます.
93+
94+- ウィンドウの大きさを変えることもできます.
95+
96+- カーソルキーを使ってウィンドウ内で上下左右に図を動かせます.
97+
98+- ウィンドウ内でマウスの右クリックをするとメニューが表示されます.
99+
100+次から右クリックで表示されるメニューを説明します.
101+
102+Band
103+----
104+
105+バンド毎の表示on/offを切り替えます(図 :num:`bandpng`).
106+
107+.. _bandpng:
108+
109+.. figure:: ../figs/band.png
110+
111+ "Band" メニューで3番目のバンドの表示/非表示を切り替える.
112+
113+Mouse Drag
114+----------
115+
116+マウスの左ボタンドラッグを行った時の動作を変更します.
117+
118+Rotate(デフォルト)
119+ ドラッグをした方向に図形を回転させます.
120+
121+Scale
122+ 上方にドラッグすると図形を拡大,
123+ 下方にドラッグすると図形を縮小します.
124+
125+Translate
126+ ドラッグした方向に図形を動かします.
127+
128+Shift Fermi energy
129+------------------
130+
131+Fermiエネルギー(デフォルトでは0)を任意の値にずらします.
132+このメニューを選択すると次のようにインプット中の最小のエネルギー,
133+最大のエネルギー, 現在のFermiエネルギーが標準出力として表示されます.
134+
135+::
136+
137+ Min Max E_F
138+ -0.428153 0.497620 0.000000
139+ Fermi energy shift :
140+
141+
142+次に新しいFermiエネルギーを入力すると, Fermi面が再描画されます (図 :num:`shift`).
143+
144+.. _shift:
145+
146+.. figure:: ../figs/shift.png
147+
148+ "Shift Fermi energy"メニューで Fermi エネルギーを0.0 Ryから0.1 Ryに変える.
149+
150+Set view
151+--------
152+
153+視点を変更します.
154+
155+Scale
156+ 図形のサイズを指定します.
157+
158+Position
159+ 図形の上下位置を指定します.
160+
161+Rotation
162+ x,y,z軸周りの回転角を指定します.回転操作はz軸-y軸-x軸の順で行われます
163+
164+それぞれのメニューを選択すると, はじめに現在の値が表示され,
165+その後変更後の値を入れるプロンプトが現れます(図 :num:`setview`).
166+
167+.. _setview:
168+
169+.. figure:: ../figs/setview.png
170+
171+ "Set view"メニューで 視点を変更する.
172+
173+Background color
174+----------------
175+
176+背景色を黒または白に切り替えます. Brillouin
177+Zoneの枠線も白/黒と切り替わります (図 :num:`background`).
178+
179+.. _background:
180+
181+.. figure:: ../figs/background.png
182+
183+ "Background color"メニューで背景色を白/黒に切り替える.
184+
185+Color scale mode
186+----------------
187+
188+Fermi面の色表示のさせ方を変更します(図 :num:`colorscale`).
189+
190+Auto(デフォルト)
191+ カラースケールの範囲をFermi面上での物理量の最小値から最大値までとします.
192+
193+Manual
194+ カラースケールの範囲を標準入力から設定します.
195+
196+Unicolor
197+ 物理量に関係なく, 各バンド毎に単色でFermi面を塗ります.
198+
199+Periodic
200+ 周期的な量のプロットに用います.
201+ 物理量が 0 :math:`\rightarrow` :math:`\pi/3`
202+ :math:`\rightarrow` :math:`2\pi/3` :math:`\rightarrow` :math:`\pi` :math:`\rightarrow`
203+ :math:`4\pi/3` :math:`\rightarrow` :math:`5\pi/3` :math:`\rightarrow` :math:`2\pi`
204+ と変化するに連れて 色が赤 :math:`\rightarrow` 黄 :math:`\rightarrow`
205+ 緑 :math:`\rightarrow` シアン :math:`\rightarrow` 青:math:`\rightarrow`
206+ マゼンタ :math:`\rightarrow` 赤と変わります.
207+
208+.. _colorscale:
209+
210+.. figure:: ../figs/colorscale.png
211+
212+ "Color scale mode" メニュー.
213+
214+Brillouin zone
215+--------------
216+
217+描画範囲をFirst Brillouin Zone/Primitive Brillouin Zoneと
218+切り替える事が出来ます (図 :num:`brillouinzone`).
219+
220+Fisrst Brillouin Zone
221+ :math:`{\rm \Gamma}` 点から一番近いBragg面で囲まれた領域
222+
223+Primitive Brillouine Zone
224+ 逆格子ベクトルを辺とする平行6面体領域
225+
226+.. _brillouinzone:
227+
228+.. figure:: ../figs/brillouinzone.png
229+
230+ "Brillouin zone" メニューでBrillouin領域のとり方を変更する.
231+
232+Node line
233+---------
234+
235+物理量が0となるところに引く線(node line)のOn/Offを切り替えます(図 :num:`nodeline`).
236+
237+.. _nodeline:
238+
239+.. figure:: ../figs/nodeline.png
240+
241+ "Node line" メニューでnode lineの表示/非表示を切り替える.
242+
243+Color bar On/Off
244+----------------
245+
246+カラーバーの表示/非表示を切り替えます(図 :num:`colorbar`).
247+
248+.. _colorbar:
249+
250+.. figure:: ../figs/colorbar.png
251+
252+ "Color bar On/Off" メニューでカラーバーの表示/非表示を切り替える.
253+
254+Stereogram
255+----------
256+
257+裸眼立体視用の図の表示/非表示を切り替えます(図 :num:`stereogram`).
258+
259+None (デフォルト)
260+ 立体視を無効にします.
261+
262+Parallel
263+ 平行法用の図を表示します.
264+
265+Cross
266+ 交差法用の図を表示します.
267+
268+.. _stereogram:
269+
270+.. figure:: ../figs/stereogram.png
271+
272+ "Stereogram" メニューで立体視用画像を表示する.
273+
274+Tetrahedron
275+-----------
276+
277+四面体の切り方を変えます(デフォルトは ``tetra # 1``).
278+図が綺麗になる可能性がありますが,
279+多くの場合は逆に図がギザギザして汚くなるようです.
280+
281+Exit
282+----
283+
284+Fermi Surferを終了します.
285+
286+画像の保存方法
287+--------------
288+
289+``fermisurfer`` には画像をファイル出力する機能はありません.
290+お使いのPCにあった方法でスクリーンショットを取得して
291+(``Printscreen`` キーを押すなど)
292+ペイントブラシやgimpで編集して画像を作成してください.
293+
--- /dev/null
+++ b/doc/ja/fermisf_overview_ja.rst
@@ -0,0 +1,8 @@
1+はじめに
2+========
3+
4+この文書ではFermi面描画ソフト「Fermi Surfer」についての解説を行っています.
5+Fermi Surferは東京大学の河村光晶が2012年頃から開発を行っていたもので,
6+2014年11月に公開されました.
7+Fermi面を描画しその上に各種物理量(超伝導ギャップ関数や軌道キャラクターなど)
8+をカラープロットするソフトウェアです.
--- /dev/null
+++ b/doc/ja/index.rst
@@ -0,0 +1,30 @@
1+.. test documentation master file, created by
2+ sphinx-quickstart on Sat Jan 7 22:10:04 2017.
3+ You can adapt this file completely to your liking, but it should at least
4+ contain the root `toctree` directive.
5+
6+Welcome to FermiSurfer's documentation!
7+=============================================
8+
9+Contents:
10+
11+.. toctree::
12+ :maxdepth: 3
13+
14+ fermisf_overview_ja
15+ fermisf_copy_ja
16+ fermisf_file_ja
17+ fermisf_install_ja
18+ fermisf_input_ja
19+ fermisf_ops_ja
20+ fermisf_gallery_ja
21+ fermisf_ack_ja
22+ fermisf_contact_ja
23+
24+.. Indices and tables
25+.. ==================
26+
27+.. * :ref:`genindex`
28+.. * :ref:`modindex`
29+.. * :ref:`search`
30+
Show on old repository browser