diff --git a/doc/basicnotions/images/structure.png b/doc/basicnotions/images/structure.png
index ff3fce61..240a20ea 100644
Binary files a/doc/basicnotions/images/structure.png and b/doc/basicnotions/images/structure.png differ
diff --git a/doc/basicnotions/images/structure.svg b/doc/basicnotions/images/structure.svg
index 10196757..c334c5d3 100644
--- a/doc/basicnotions/images/structure.svg
+++ b/doc/basicnotions/images/structure.svg
@@ -1,950 +1,224 @@
-
-
+
+
+
\ No newline at end of file
diff --git a/doc/basicnotions/images/structure_post.png b/doc/basicnotions/images/structure_post.png
new file mode 100644
index 00000000..7e51fb5b
Binary files /dev/null and b/doc/basicnotions/images/structure_post.png differ
diff --git a/doc/basicnotions/images/structure_post.svg b/doc/basicnotions/images/structure_post.svg
new file mode 100644
index 00000000..f49ca62b
--- /dev/null
+++ b/doc/basicnotions/images/structure_post.svg
@@ -0,0 +1,234 @@
+
+
\ No newline at end of file
diff --git a/doc/basicnotions/structure.rst b/doc/basicnotions/structure.rst
index d2563dd6..78010126 100644
--- a/doc/basicnotions/structure.rst
+++ b/doc/basicnotions/structure.rst
@@ -7,22 +7,34 @@ Data flow
---------
**DCore** contains a set of programs which perform dynamical mean-field theory (DMFT) calculations for models and materials.
-The structure of programs and data flow is summarized below.
+The structure of programs and data flow for the DMFT calculation is summarized below.
.. image:: images/structure.png
:width: 700
:align: center
+The DMFT calculation includes two **DCore** programs: (i) ``dcore_pre`` and (ii) ``dcore`` as described later.
+
+After the DMFT loop is finished, one can compute dynamical physical quantities such as the density of states and the momentum-resolved spectrum functions using the post-processing tool.
+The structure of the post-processing is shown below.
+
+.. image:: images/structure_post.png
+ :width: 700
+ :align: center
+
+The post-processing tool consists of two **DCore** programs: (iii) ``dcore_anacont`` and (iv) ``dcore_spectrum``.
+
..
**DCore** is a set of DMFT (Dynamical Mean Field Theory) programs which works together with other first-principles calculation packages.
**DCore** supports input hopping parameters in the wannier90 format.
Simple preset models such as a tight-binding model on the Bethe lattice are also available.
After the DMFT loop is finished, one can compute physical quantities such as the density of states and the momentum-resolved spectrum functions using the post-processing tool.
-**DCore** consists of three layers: (i) interface layer, (ii) DMFT loop, and (iii) post-processing.
-Those are respectively performed by the executables ``dcore_pre``, ``dcore``, and ``dcore_post``.
-Input parameters are provided by a single text file, which is read by all the three programs.
-Data generated by ``dcore_pre`` and ``dcore`` are severally stored in a file with HDF5 format and passed to the next process.
+..
+ **DCore** consists of three layers: (i) interface layer, (ii) DMFT loop, and (iii) post-processing.
+ Those are respectively performed by the executables ``dcore_pre``, ``dcore``, and ``dcore_anacont`` and ``dcore_spectrum``.
+ Input parameters are provided by a single text file, which is read by all the three programs.
+ Data generated by ``dcore_pre`` and ``dcore`` are severally stored in a file with HDF5 format and passed to the next process.
(i) The interface layer ``dcore_pre``
@@ -64,10 +76,18 @@ The hopping parameters are given either for **preset models** (e.g., square latt
The effective impurity problem is solved repeatedly to fulfill the self-consistency condition of the DMFT.
For solving the impurity problem, ``dcore`` calls an external program such as the continuous-time quantum Monte Carlo method and the Hubbard-I approximation.
-(iii) Post-processing ``dcore_post``
-------------------------------------
+(iii) Analytical continuation ``dcore_anacont``
+---------------------------------------------------
+
+The DMFT loop provides the self-energy in the Matsubara frequency domain.
+To obtain physical quantities in the real frequency domain, we need to perform the analytical continuation (AC).
+``dcore_anacont`` performs the analytical continuation using the Pade approximation or the SpM method.
+Note that users can perform AC by using an external program.
+
+(iv) Spectrum calculation ``dcore_spectrum``
+---------------------------------------------------
-``dcore_post`` computes some physical quantities from the converged solution of the DMFT loop.
+``dcore_spectrum`` computes some physical quantities from the converged solution of the DMFT loop.
Currently, the following quantities can be calculated:
* (projected) density of states
diff --git a/doc/conf.py b/doc/conf.py
index 80f2112e..7701d95b 100644
--- a/doc/conf.py
+++ b/doc/conf.py
@@ -53,3 +53,31 @@
# overwrite css of html_theme
def setup(app):
app.add_css_file('dcore.css')
+
+
+
+latex_elements = {
+ # The paper size ('letterpaper' or 'a4paper').
+ #
+ # 'papersize': 'letterpaper',
+
+ # The font size ('10pt', '11pt' or '12pt').
+ #
+ # 'pointsize': '10pt',
+
+ # Additional stuff for the LaTeX preamble.
+ #
+ # 'preamble': '',
+
+ # Latex figure (float) alignment
+ #
+ # 'figure_align': 'htbp',
+}
+
+# Grouping the document tree into LaTeX files. List of tuples
+# (source start file, target name, title,
+# author, documentclass [howto, manual, or own class]).
+latex_documents = [
+ ('index', 'dcore.tex', u'DCore Documentation',
+ u'DCore developers', 'manual', 'True'),
+]
diff --git a/doc/impuritysolvers/null.rst b/doc/impuritysolvers/null.rst
index 558cd931..96a270c6 100644
--- a/doc/impuritysolvers/null.rst
+++ b/doc/impuritysolvers/null.rst
@@ -15,5 +15,5 @@ Note that, since self-energy is zero, one should introduce an artificial broaden
::
- [tool]
+ [post.spectrum]
broadening = 0.001
diff --git a/doc/impuritysolvers/pomerol/dmft_square_pomerol.ini b/doc/impuritysolvers/pomerol/dmft_square_pomerol.ini
index 85428fa5..23399e78 100644
--- a/doc/impuritysolvers/pomerol/dmft_square_pomerol.ini
+++ b/doc/impuritysolvers/pomerol/dmft_square_pomerol.ini
@@ -25,10 +25,12 @@ sigma_mix = 0.5
time_reversal = True
converge_tol = 1e-5
-[tool]
+[post.spectrum]
broadening = 0.4
knode = [(G,0.0,0.0,0.0),(X,0.5,0.0,0.0),(M,0.5,0.5,0.0),(G,0.0,0.0,0.0)]
nk_line = 100
+
+[post.anacont]
omega_max =6.0
omega_min =-5.0
Nomega = 400
diff --git a/doc/impuritysolvers/triqs_cthyb/cthyb.rst b/doc/impuritysolvers/triqs_cthyb/cthyb.rst
index 40b91e75..f1879475 100644
--- a/doc/impuritysolvers/triqs_cthyb/cthyb.rst
+++ b/doc/impuritysolvers/triqs_cthyb/cthyb.rst
@@ -161,7 +161,7 @@ The original input file (without tail-fit) is as follows (dmft.ini):
[control]
max_step = 1
- [tool]
+ [post.check]
omega_check = 30.0
We first execute the ordinary DMFT calculation:
@@ -221,10 +221,10 @@ Pade approximation for DOS and spectrum function
To obtain spectral functions, we need to perform analytical continuation from Matsubara frequency to real frequency.
Currently, the Pade approximation is the only choice for the analytical continuation.
-There is one control parameter for Pade approximation, ``omega_pade`` in the ``[tool]`` block. It specifies an energy cutoff for Matsubara frequency.
-A reasonable choice of ``omega_pade`` is the maximum frequency
+There is one control parameter for Pade approximation, ``iomega_max`` in the ``[post.anacont.pade]`` block. It specifies an energy cutoff for Matsubara frequency.
+A reasonable choice of ``iomega_max`` is the maximum frequency
before the self energy becomes noisy.
-For example, in the case of figure (a) above, we can find that ``omega_pade=4.0`` is reasonable.
+For example, in the case of figure (a) above, we can find that ``iomega_max=4.0`` is reasonable.
Legendre filter
---------------