Commit ca4c627c authored by Jens Jørgen Mortensen's avatar Jens Jørgen Mortensen
Browse files

Fix links

parent a37be742
......@@ -25,6 +25,7 @@ MANIFEST
N.LDA
*.gpw
*.npy
theme.css
# If you run the tests, these may write out files
*.gpw
......
......@@ -116,7 +116,7 @@ ASE interface
=============
The code has been designed to work together with the atomic
simulation environment (:ase:`ASE <>`). ASE provides:
simulation environment (ASE_). ASE provides:
* Structure optimization.
* Molecular dynamics.
......@@ -130,7 +130,7 @@ Open Software
=============
GPAW is released under the `GNU Public License <http://xkcd.com/225>`_
version 3 or any later version. See the file :trac:`COPYING` which
version 3 or any later version. See the file :git:`COPYING` which
accompanies the downloaded files, or see the license at GNU's web
server at http://www.gnu.org/licenses/. Everybody is invited to
participate in using and :ref:`developing the code <devel>`.
......
......@@ -18,7 +18,7 @@ default_role = 'math'
pygments_style = 'sphinx'
autoclass_content = 'both'
imodindex_common_prefix = ['gpaw.']
ntersphinx_mapping = {
intersphinx_mapping = {
'ase': ('http://wiki.fysik.dtu.dk/ase', None),
'numpy': ('http://docs.scipy.org/doc/numpy', None),
'mayavi': ('http://docs.enthought.com/mayavi/mayavi', None)}
......
......@@ -18,11 +18,13 @@ The mailing lists below are of interest for active GPAW developers only:
* gpaw-developers_
* gpaw-svncheckins_
.. _gpaw-developers: https://listserv.fysik.dtu.dk/mailman/listinfo/
gpaw-developers
.. _gpaw-svncheckins: https://listserv.fysik.dtu.dk/mailman/listinfo/
gpaw-svncheckins
.. _gpaw-users: https://listserv.fysik.dtu.dk/mailman/listinfo/gpaw-users
You should consider also subscribing to the ASE :ref:`ase:mail lists`.
For topics before Oct 20 2009 browse gridpaw-developer_.
The list is inactive and serves as an archive only.
Note that you can search the mailing list archives: click on the
mailing list above, then choose the archive, and search from that page.
.. _irc:
......@@ -33,7 +35,19 @@ Internet Relay Chat
We have the IRC channel ``#gpaw`` on FreeNode. Please join us if you
have any questions. For easy access, you can use this webclient_.
.. _webclient: http://webchat.freenode.net/?randomnick=0&channels=gpaw
Note: While IRC is much more interactive than e-mail, there are not as
many people as on the mailing list, and those present are not
continually reading it. Therefore if you don't receive an answer
quickly you can either send an e-mail instead, or simply stay online
till the day after. This is particularly true if you ask your
question at 04:00 at night (in Europe) and/or during the weekend.
Finally, to save time, state your complete question immediately
instead of asking whether someone might be able to answer a question
related to some topic.
Logs from the IRC channel:
* irc-logs_
GitLab
......@@ -41,3 +55,14 @@ GitLab
Feel free to create Merge Requests and Issues on our GitLab page:
https://gitlab.com/gpaw/gpaw
.. _webclient: http://webchat.freenode.net/?randomnick=0&channels=gpaw
.. _irc-logs: http://dcwww.fys.dtu.dk/~jensj/gpaw-stuff
.. _gpaw-developers: https://listserv.fysik.dtu.dk/mailman/listinfo/
gpaw-developers
.. _gpaw-svncheckins: https://listserv.fysik.dtu.dk/mailman/listinfo/
gpaw-svncheckins
.. _gpaw-users: https://listserv.fysik.dtu.dk/mailman/listinfo/gpaw-users
.. _gridpaw-developer: http://listserv.fysik.dtu.dk/mailman/listinfo/
gridpaw-developer
......@@ -30,7 +30,7 @@ and "N/A" denotes an optimization failure.
Only the systems that fail to converge or converge to a
total energy above the threshold are given in the tables.
Calculator used: GPAW mode='lcao' (see :svn:`~doc/devel/ase_optimize/g2_dzp.py`)
Calculator used: GPAW mode='lcao' (see :git:`~doc/devel/ase_optimize/g2_dzp.py`)
Limit of optimizer steps: 100
......@@ -48,7 +48,7 @@ The PBE optimization starts from LDA unit cells.
Description of plots and tables: see the section above.
Calculator used: GPAW mode=PW() (see :svn:`~doc/devel/ase_optimize/htb_pw.py`)
Calculator used: GPAW mode=PW() (see :git:`~doc/devel/ase_optimize/htb_pw.py`)
Limit of optimizer steps: 50
......
......@@ -515,7 +515,7 @@ potential and 2 full SCF steps.
All the stages are timed separately, due to their different scaling.
**Note** that the size of the system can be changed easily by modifying
just one variable in :svn:`~doc/devel/256H2O/b256H2O.py`::
just one variable in :git:`~doc/devel/256H2O/b256H2O.py`::
r = [2, 2, 2]
......@@ -670,7 +670,7 @@ potential and 2 full SCF steps.
All the stages are timed separately, due to their different scaling.
**Note** that the size of the system can be changed easily by modifying
just one variable in :svn:`~doc/devel/Au_cluster/Au_cluster.py`::
just one variable in :git:`~doc/devel/Au_cluster/Au_cluster.py`::
r = [1, 1, 1]
......
......@@ -7,7 +7,8 @@ Coding Conventions
Python Coding Conventions
=========================
Follow :ase:`ASE's rules <development/python_codingstandard.html>`.
Follow ASE's :ref:`ase:coding conventions`.
C-code
======
......
......@@ -20,17 +20,17 @@ This object is the central object for a GPAW calculation::
^ / +-----------+
| ---- +---------------+
| / ---->|InputParameters|
+-----+ +-----+ / +---------------+
|Atoms|<-------------| PAW |-----
+-----+ +-----+ \
+-----+ +-----+ / +---------------+
|Atoms|<-------------| PAW |-----
+-----+ +-----+ \
/ | \ \ +-----------+
+-------------+ / | --- ----------->|Occupations|
|WaveFunctions|<-- v \ +-----------+
+-------------+ +-------+ \ +-------+
|Density| -->|SCFLoop|
+-------------+ +-------+ \ +-------+
|Density| -->|SCFLoop|
+-------+ +-------+
The implementation is in :svn:`gpaw/paw.py`. The
The implementation is in :git:`gpaw/paw.py`. The
:class:`~gpaw.paw.PAW` class doesn't do any part of the actual
calculation - it only handles the logic of parsing the input
parameters and setting up the necessary objects for doing the actual
......@@ -47,12 +47,10 @@ A PAW instance has the following attributes: ``atoms``,
GPAW
====
The :class:`~gpaw.aseinterface.GPAW` class
(:svn:`gpaw/aseinterface.py`), which implements the :ase:`ASE calculator
interface <ase/calculators/calculators.html#calculator-interface>`,
inherits from the PAW class, and does unit conversion between GPAW's
internal atomic units (`\hbar=e=m=1`) and :ase:`ASE's units <ase/units.html>`
(Angstrom and eV)::
The :class:`~gpaw.aseinterface.GPAW` class (:git:`gpaw/aseinterface.py`),
which implements the ASE :ref:`ase:calculator interface`, inherits from the
PAW class, and does unit conversion between GPAW's internal atomic units
(`\hbar=e=m=1`) and ASE's :mod:`~ase.units` (Angstrom and eV)::
gpaw | ase
......@@ -172,10 +170,10 @@ objects.
|BasisFunctions| | +-------+ | +----------+
+--------------+ | |Overlap| | |Projectors|
v +-------+ | +----------+
+------------------+ v
|TwoCenterIntegrals| +---------------------+
+------------------+ |KineticEnergyOperator|
+---------------------+
+------------------+ v
|TwoCenterIntegrals| +---------------------+
+------------------+ |KineticEnergyOperator|
+---------------------+
Attributes of the wave function object: ``gd``, ``nspins``,
``nbands``, ``mynbands``, ``dtype``, ``world``,
......@@ -316,7 +314,7 @@ Naming convention for arrays
A few examples:
=========== =================== ===========================================
name shape
name shape
=========== =================== ===========================================
``spos_c`` ``(3,)`` **S**\ caled **pos**\ ition vector
``nt_sG`` ``(2, 24, 24, 24)`` Pseudo-density array
......@@ -334,21 +332,21 @@ Commonly used indices:
======= ==================================================
``a`` Atom number
``c`` Unit cell axis-index (0, 1, 2)
``v`` *xyz*-index (0, 1, 2)
``v`` *xyz*-index (0, 1, 2)
``k`` **k**-point index
``q`` **k**-point index (local, i.e. it starts at 0 on each processor)
``s`` Spin index (:math:`\sigma`)
``s`` Spin index (:math:`\sigma`)
``u`` Combined spin and **k**-point index (local)
``G`` Three indices into the coarse 3D grid
``g`` Three indices into the fine 3D grid
``G`` Three indices into the coarse 3D grid
``g`` Three indices into the fine 3D grid
``M`` LCAO orbital index (:math:`\mu`)
``n`` Principal quantum number *or* band number
``n`` Principal quantum number *or* band number
``l`` Angular momentum quantum number (s, p, d, ...)
``m`` Magnetic quantum number (0, 1, ..., 2*l - 1)
``L`` ``l`` and ``m`` (``L = l**2 + m``)
``j`` Valence orbital number (``n`` and ``l``)
``i`` Valence orbital number (``n``, ``l`` and ``m``)
``q`` ``j1`` and ``j2`` pair
``m`` Magnetic quantum number (0, 1, ..., 2*l - 1)
``L`` ``l`` and ``m`` (``L = l**2 + m``)
``j`` Valence orbital number (``n`` and ``l``)
``i`` Valence orbital number (``n``, ``l`` and ``m``)
``q`` ``j1`` and ``j2`` pair
``p`` ``i1`` and ``i2`` pair
``r`` CPU-rank
======= ==================================================
......@@ -392,14 +390,14 @@ When using parallelization over spins, **k**-points, bands and domains,
four different :ref:`MPI communicators <communicators>` are used:
* *mpi.world*
Communicator containing all processors.
Communicator containing all processors.
* *domain_comm*
One *domain_comm* communicator contains the whole real space
One *domain_comm* communicator contains the whole real space
domain for a selection of the spin/k-point pairs and bands.
* *kpt_comm*
One *kpt_comm* communicator contains all k-points and spin
* *kpt_comm*
One *kpt_comm* communicator contains all k-points and spin
for a selection of bands over part of the real space domain.
* *band_comm*
* *band_comm*
One *band_comm* communicator contains all bands for a selection
of k-points and spins over part of the real space domain.
......@@ -412,7 +410,7 @@ a *domain_comm* rank of zero signifies that the processor is first in
the group, hence it functions as a domain master.
For an example on how to use an MPI communicator to perform simple
data communication, please refer to :svn:`~doc/devel/parallelization.py`.
data communication, please refer to :git:`~doc/devel/parallelization.py`.
To investigate the way GPAW distributes calculated quantities across the
various MPI groups, simulating an MPI run can be done using ``gpaw-mpisim``::
......@@ -446,7 +444,7 @@ various MPI groups, simulating an MPI run can be done using ``gpaw-mpisim``::
For the case of a :math:`\Gamma`-point calculation without band-parallelization,
all parallel communication is done in the one *domain_comm* communicator,
all parallel communication is done in the one *domain_comm* communicator,
which in this case is equal to *mpi.world*.
.. [1] J J. Mortensen and L. B. Hansen and K. W. Jacobsen,
......
......@@ -21,4 +21,4 @@ Presently and in the future we will expand on this work by considering:
* self-interaction correction methods, e.g., +U, non-Koopman corrections, etc.
Most of the GPAW code related to this project is in
:svn:`~gpaw/gpaw/xc/bee.py` and :svn:`~gpaw/c/ensemble_gga.c`.
:git:`~gpaw/gpaw/xc/bee.py` and :svn:`~gpaw/c/ensemble_gga.c`.
......@@ -6,10 +6,10 @@ Hybrid functionals
Currently we have two implementation of exact exchange:
1) :svn:`~gpaw/xc/hybrid.py`: Can handle Gamma-point only
1) :git:`~gpaw/xc/hybrid.py`: Can handle Gamma-point only
calculations self-consistently (for molecules and large cells).
2) :svn:`~gpaw/xc/hybridk.py`: Can handle k-points, but not
2) :git:`~gpaw/xc/hybridk.py`: Can handle k-points, but not
self-consitently.
Things to work on:
......
......@@ -12,5 +12,5 @@ old collection of PAW setups we will focus on:
* faster convergence of energy with number of grid-points - if possible
* tesing the setups more carfully against a bigger set of all-electron results
The code is in :svn:`~gpaw/gpaw/atom/generator2.py` and it is based on
a new and more robust atomic solver: :svn:`~gpaw/gpaw/atom/aeatom.py`.
The code is in :git:`~gpaw/gpaw/atom/generator2.py` and it is based on
a new and more robust atomic solver: :git:`~gpaw/gpaw/atom/aeatom.py`.
......@@ -52,7 +52,7 @@ Splitting the integral in radial and angular parts, we get:
where `G_{\ell m,\ell'm'}^{\ell''m''}` are Gaunt coefficents and the
last angular integral has been calculated as ``Y_LLv`` in the
:svn:`~gpaw/gaunt.py` module.
:git:`~gpaw/gaunt.py` module.
More stuff
......
......@@ -85,7 +85,7 @@ Important setup problems to fix
* Improve Ru setup. Problem with nitrogen adsorption energy on
Ru(0001) surface: Improved f-scattering, do we need 4p semi-core
states? This problem has been fixed in the 0.9 release of the
setups and covered by the following test :svn:`~gpaw/test/big/Ru001`.
setups and covered by the following test :git:`~gpaw/test/big/Ru001`.
* Improve Mn setup. Problem with strange states in the band-gap for
AFM-II MnO.
* Fine-tune Fourier filtering of projector functions. There is still
......
......@@ -122,7 +122,7 @@ chemisorbed on transition metals. In such cases the
traditional Delta Self-Consistent Field breaks down since the orbital
to be occupied is no longer well described by a single Kohn-Sham state.
The script :svn:`~doc/documentation/dscf/homo.py` calculates
The script :git:`~doc/documentation/dscf/homo.py` calculates
the HOMO energy of CO adsorbed on-top Pt(111). The script starts
from scratch, but usually one would start from an optimized configuration
saved in a file ``gs.gpw``. The script only calculates the total energy of
......@@ -134,7 +134,7 @@ HOMO pseudo-wavefunctions and the projector overlaps are saved. The
energy range [-100.0, 0.0] means we only include states below the Fermi
level (default is states above).
The script :svn:`~doc/documentation/dscf/lumo.py` calculates
The script :git:`~doc/documentation/dscf/lumo.py` calculates
the LUMO energy of the same system, but is slightly more complicated due to
the degeneracy of the `2\pi` orbital. We would like to occupy the `2\pi_y`
orbital and we need to figure out which band (5 or 6) this orbital
......
......@@ -23,4 +23,4 @@ Examples
Your own potential
------------------
See an example here: :svn:`gpaw/test/harmonic.py`.
See an example here: :git:`gpaw/test/harmonic.py`.
......@@ -5,13 +5,13 @@ Manual
======
GPAW calculations are controlled through scripts written in the
programming language Python_. GPAW relies on the :ase:`Atomic
Simulation Environment <>` (ASE), which is a Python package that helps
programming language Python_. GPAW relies on the `Atomic
Simulation Environment <ASE>`_ (ASE), which is a Python package that helps
us describe our atoms. The ASE package also
handles molecular dynamics, analysis, visualization, geometry
optimization and more. If you don't know anything about ASE, then it
might be a good idea to familiarize yourself with it before continuing
(at least read the :ase:`ASE introduction <intro.html>`).
(at least read the :ref:`ase:about` section).
Below, there will be Python code examples starting with ``>>>`` (and
``...`` for continuation lines). It is a good idea to start the
......@@ -19,10 +19,11 @@ Python interpreter and try some of the examples below.
.. _Python: http://www.python.org
The units used by the GPAW calculator correspond to the :ase:`ASE
conventions <ase/units.html>`, most importantly electron volts and
The units used by the GPAW calculator correspond to the :mod:`ASE
conventions <ase.units>`, most importantly electron volts and
angstroms.
-----------------------
Doing a PAW calculation
-----------------------
......
......@@ -71,7 +71,7 @@ system.
Submit tool on Niflheim
-----------------------
At CAMd, we use this submit tool: :svn:`~doc/documentation/parallel_runs/gpaw-qsub`.
At CAMd, we use this submit tool: :git:`~doc/documentation/parallel_runs/gpaw-qsub`.
Examples::
......
......@@ -102,7 +102,7 @@ calculated by
The example below calculates the density of states for CO adsorbed on
a Pt(111) slab and the density of states projected onto the gas phase
orbitals of CO. The ``.gpw`` files can be generated with the script
:svn:`~doc/documentation/pdos/top.py`
:git:`~doc/documentation/pdos/top.py`
PDOS script::
......
......@@ -24,7 +24,7 @@ and "N/A" denotes a convergence failure.
Only the systems that fail to converge or converge to a
total energy above the threshold are given in the tables.
Calculator used: GPAW mode='fd' (see :svn:`gpaw/test/big/scf/g2_1_pbe0_fd.py`)
Calculator used: GPAW mode='fd' (see :git:`gpaw/test/big/scf/g2_1_pbe0_fd.py`)
.. image:: scf_g2_1_pbe0_fd_calculator_steps.png
......@@ -45,7 +45,7 @@ The runs marked with "initial cg iter N" perform N ``eigensolver=cg``
iterations before switching to the selected eigensolver.
Those initial iterations are included in the final reported number.
Calculator used: GPAW mode=PW() (see :svn:`gpaw/test/big/scf/dcdft_pbe_pw.py`)
Calculator used: GPAW mode=PW() (see :git:`gpaw/test/big/scf/dcdft_pbe_pw.py`)
.. image:: scf_dcdft_pbe_pw_calculator_steps.png
......
......@@ -21,7 +21,7 @@ The current implementation *lacks* the following features:
* Speed.
Inclusion of Fock exchange is exceedingly slow. The bottleneck is solving the poisson integrals of the Fock operator, which is currently done using an iterative real-space solver with a zero initial guess for the potential at each SCF cycle. This should be optimized.
One way to speed up an exact-exchange (or hybrid) calculation is to use the coarse grid (used for wave functions) instead of the finegrid (used for for densities) for the Fock potentials. This should give a speed-up factor of 8. This can be specified in the ``xc`` keyword like in this example :svn:`~gpaw/test/exx_coarse.py`
One way to speed up an exact-exchange (or hybrid) calculation is to use the coarse grid (used for wave functions) instead of the finegrid (used for for densities) for the Fock potentials. This should give a speed-up factor of 8. This can be specified in the ``xc`` keyword like in this example :git:`~gpaw/test/exx_coarse.py`
Parallelization using domain decomposition is fully supported.
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment