Commit 2e511359 authored by Daniel Wortmann's avatar Daniel Wortmann

More documentation

parent a7d63b22
docs/mkdocs/site
init/compileinfo.h init/compileinfo.h
io/xml/inputSchema.h io/xml/inputSchema.h
Testing/* Testing/*
......
...@@ -35,9 +35,9 @@ There are a couple of external dependencies in the build process of FLEUR. ...@@ -35,9 +35,9 @@ There are a couple of external dependencies in the build process of FLEUR.
**Required are:** **Required are:**
* *cmake*: The build process uses cmake to configure FLEUR. You should have at least version 3.0. Some options might require newer versions. Cmake is available for free at [www.cmake.org]([http://www.cmake.org). * *cmake*: The build process uses cmake to configure FLEUR. You should have at least version 3.0. Some options might require newer versions. Cmake is available for free at [www.cmake.org](http://www.cmake.org).
* *Compilers*: You will need a Fortran compiler and a corresponding C-compiler (i.e. the two have to be able to work together via the iso-c bindings of Fortran). Please check our [list of compilers](#compilers) to see if your compiler should work. * *Compilers*: You will need a Fortran compiler and a corresponding C-compiler (i.e. the two have to be able to work together via the iso-c bindings of Fortran). Please check our [list of compilers](#compilers) to see if your compiler should work.
* *BLAS/LAPACK*: These standard linear algebra libraries are required. You should try your best not to use a reference implementation from [Netlib](http://www.netlib.org) but look for an optimized version for your system. In general compiler and/or hardware vendors provide optimized libraries such as the MKL (Intel) or ESSL (IBM). If you do not have access to those, check [openBLAS]([http://www.openbas.net). * *BLAS/LAPACK*: These standard linear algebra libraries are required. You should try your best not to use a reference implementation from [Netlib](http://www.netlib.org) but look for an optimized version for your system. In general compiler and/or hardware vendors provide optimized libraries such as the MKL (Intel) or ESSL (IBM). If you do not have access to those, check [openBLAS](http://www.openbas.net).
* *libxml2*: this is a standard XML-library that is available on most systems. If it is missing on your computer you should really complain with your admin. *Please note that you might need a development package of this library as well.* To compile this library yourself, see [xmlsoft.org](http://xmlsoft.org). * *libxml2*: this is a standard XML-library that is available on most systems. If it is missing on your computer you should really complain with your admin. *Please note that you might need a development package of this library as well.* To compile this library yourself, see [xmlsoft.org](http://xmlsoft.org).
**Optional**: **Optional**:
...@@ -76,8 +76,6 @@ The `configure.sh` script performs the following steps: ...@@ -76,8 +76,6 @@ The `configure.sh` script performs the following steps:
If you specify -d as argument of configure.sh, the string "debug" will be added to LABEL and a debugging version of FLEUR will be build, i.e. the corresponding compiler switches will be set. If you specify -d as argument of configure.sh, the string "debug" will be added to LABEL and a debugging version of FLEUR will be build, i.e. the corresponding compiler switches will be set.
You might want to check our page on
[how to adjust to your configuration](InstallTroubles.md) if you run into trouble.
#How to adjust the Configuration #How to adjust the Configuration
While `cmake` and the `configure.sh` script can determine the correct compilation switches automatically in some cases (mostly those known to us), in many other instances While `cmake` and the `configure.sh` script can determine the correct compilation switches automatically in some cases (mostly those known to us), in many other instances
...@@ -152,4 +150,4 @@ Please note: ...@@ -152,4 +150,4 @@ Please note:
two MPI tasks. two MPI tasks.
* You can use the environment variable `juDFT` to give command line arguments to FLEUR. E.g. say `export juDFT='-mem'`. * You can use the environment variable `juDFT` to give command line arguments to FLEUR. E.g. say `export juDFT='-mem'`.
* To run a specific test only (or a range of tests) use the `-I` option of ctest (check `ctest -h` for details) * To run a specific test only (or a range of tests) use the `-I` option of ctest (check `ctest -h` for details)
* The tests are run in Testing/work. You can check this directory to see why a specific test fails. * The tests are run in Testing/work. You can check this directory to see why a specific test fails.
\ No newline at end of file
Running Fleur Running Fleur
================= =================
Here we deal with the question of how to run FLEUR "by hand". If you are interested in running FLEUR in a scripting environment you might want to check the [AiiDA plug-in](AiiDA.md). Here we deal with the question of how to run FLEUR "by hand". If you are interested in running FLEUR in a scripting environment you might want to check the [AiiDA plug-in](http://aiida-fleur.readthedocs.io/en/develop/).
At first you might notice that there are several executables created in the build process. You might find: At first you might notice that there are several executables created in the build process. You might find:
......
# Welcome to MkDocs FLEUR development team
----------------------
For full documentation visit [mkdocs.org](http://mkdocs.org). FLEUR is mainly developed at the Forschungszentrum Jülich at the Institute of Advanced Simulation and the Peter Grünberg Institut.
## Commands # IMPRESSUM
* `mkdocs new [dir-name]` - Create a new project. Forschungszentrum Jülich GmbH
* `mkdocs serve` - Start the live-reloading docs server. Wilhelm-Johnen-Straße
* `mkdocs build` - Build the documentation site. 52428 Jülich
* `mkdocs help` - Print this help message.
## Project layout Postanschrift:
52425 Jülich
mkdocs.yml # The configuration file. Lieferanschrift:
docs/ Leo-Brandt-Straße
index.md # The documentation homepage. 52428 Jülich
... # Other markdown pages, images and other files.
Eingetragen im Handelsregister des Amtsgerichts Düren Nr. HR B 3498
Umsatzsteuer-Id-Nr. gem. § 27 a Umsatzsteuergesetz: DE 122624631
Steuer-Nr.: 213/5700/0033
Geschäftsführung:
Prof. Dr.-Ing. Wolfgang Marquardt (Vorsitzender)
Karsten Beneke (Stellvertr. Vorsitzender)
Prof. Dr. Sebastian M. Schmidt
Prof. Dr. Harald Bolt
Vorsitzender des Aufsichtsrats:
Ministerialdirektor Dr. Karl Eugen Huthmacher
Verantwortlicher nach § 55, Abs. 2, Rundfunkstaatsvertrag:
Prof. Dr. Stefan Blügel
IAS-1/PGI-1
Forschungszentrum Jülich
Wilhelm-Johnen-Straße, 52428 Jülich
Kontakt:
Telefon-Sammel-Nr. 02461 61-0
Internet: http://www.fz-juelich.de
Mailadresse: info@fz-juelich.de
##Haftungsausschluss
Inhalt der eigenen Seiten
Wir haben die Internet-Seiten sorgfältig zusammengestellt. Allerdings übernehmen wir keine Gewähr oder Haftung für die Aktualität, Vollständigkeit und Richtigkeit der angebotenen Informationen.
Links auf externe Web-Seiten
Die Internet-Seiten enthalten Links auf die Web-Seiten Dritter. Diese Links auf die Web-Seiten Dritter stellen keine Zustimmung zu deren Inhalt dar. Wir haben keinen Einfluss auf die aktuelle oder zukünftige Gestaltung dieser Seiten. Wir übernehmen daher keine Haftung für die Verfügbarkeit oder den Inhalt solcher Web-Seiten und keine Haftung für Schäden, die aus der Nutzung solcher Inhalte entstehen.
##Datenschutz:
Bei jedem Zugriff eines Nutzers auf eine Seite aus dem Angebot der Forschungszentrum Jülich GmbH und bei jedem Abruf einer Datei werden Daten über diesen Vorgang in einer Protokolldatei gespeichert. Diese Daten sind nicht personenbezogen; wir können also nicht nachvollziehen, welcher Nutzer welche Daten abgerufen hat. Personenbezogene Nutzerprofile können daher nicht gebildet werden. Die gespeicherten Daten werden nur zu statistischen Zwecken ausgewertet. Eine Weitergabe an Dritte findet im Falle eines solchen Zugriffs nicht statt.
[Weitere Informationen zum Datenschutz](http://www.fz-juelich.de/portal/DE/datenschutz/_node.html)
Welcome to the developers documentation of FLEUR
========================
These pages are complementing the <A HREF="http://www.flapw.de/pm/index.php?n=User-Documentation.Documentation"> User documentation </A> in which the actual use of FLEUR is documented.
Here we collect information useful for developers or advanced users that actually will modify the source code.
## GitLab
The development process is performed using gitlab. You can access the <A HREF="https://iffgit.fz-juelich.de/fleur/fleur"> main gitlab page here.</A>
If you checkout the code please be aware that there are several branches. The release branch contains the code of the last release published on <A HREF="http://www.flapw.de/pm/index.php?n=FLEUR.Downloads"> the FLEUR webpage</A>. You can *not* push to this branch directly.
You probably want to use the development branch to insert your changes. If your changes are large, it might be a good idea to create your own branch first.
Contributors guide
======================================
Everyone is very welcome to contribute to the enhancement of FLEUR.
Please use the [gitlab service] (https://iffgit.fz-juelich.de/fleur/fleur) to obtain the
latest development version of FLEUR.
##Coding rules for FLEUR:
In no particular order we try to collect items to consider when writing code for FLEUR
- Instead of 'stop' use calls to judft_error, judft_warn, judft_end
- Do not read and write any files. Files are neither replacements for common-blocks nor a
storage for status variables.
Only exceptions:
+ you create nice IO subroutines in the subdirectory io
+ you write to the typical FLEUR output files
Useful info for developers
==============================================
## Using fleur with the HDF5 library and debugging it with valgrind
HDF5 has to be built with the same compiler that is also used to compile fleur. If adapted the following commands can be used to compile a HDF5 library for fleur:
+ 'FC=/usr/local/intel/impi/4.0.3.008/intel64/bin/mpiifort CC=/usr/local/intel/impi/4.0.3.008/intel64/bin/mpiicc CXX=/usr/local/intel/impi/4.0.3.008/intel64/bin/mpiicc ./configure --enable-fortran --enable-fortran2003 --enable-parallel --enable-using-memchecker --enable-clear-file-buffers'
+ 'make'
+ 'make install'
+ 'make check' (optional)
Note:
+ The paths have to be adjusted such that that compiler is used which is also used to compile fleur.
+ The parallel switch is not needed for every calculation: Only for parallel calculations in which HDF5 is also used for the eigenvector IO.
+ The last two command line switches in the configure command turn on initializations of irrelevant array parts in HDF5. If valgrind is not needed it is probably the better choice to leave them away. If left away valgrind will complain about missing initializations in the HDF5 library.
+ valgrind gives partially strange behavior if used together with the intel compiler. It would be better to use it together with gfortran.
+ At the moment HDF5 is needed in version 1.8.*. Usage of version 1.10.* yields some problems.
Furthermore to configure and start fleur with HDF5 the following has to be done:
+ In your .bashrc the HDF5 library has to be added to the LD_LIBRARY_PATH. This implies a line like 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:~/hdf5/current/hdf5/lib'
+ configure fleur with some line like 'CMAKE_Fortran_FLAGS="-I~/hdf5/current/hdf5/include" FLEUR_LIBRARIES="-L~/hdf5/current/hdf5/lib;-lhdf5_fortran;-lhdf5" ./fleur/configure.sh IFF'
Downloads of the FLEUR code
====================================
![](http://www.flapw.de/pm/datapool/pics/linie_570.jpg)
![](http://www.flapw.de/pm/uploads/FLEUR/max.png)
![](http://www.flapw.de/pm/datapool/pics/linie_570.jpg)
Within the [MaX project](http://www.max-centre.eu) we created a series of FLEUR-releases which can be downloaded here:
* [FLEUR MaX Release 3 of Version 0.27](http://www.flapw.de/pm/uploads/FLEUR/fleurMaXR3.tgz) Current as of 30/06/2018
* [FLEUR MaX Release 2.1 of Version 0.27](http://www.flapw.de/pm/uploads/FLEUR/fleurMaXR2.1.tgz) Current as of 30/11/2017
* [FLEUR MaX Release 2 of Version 0.27](http://www.flapw.de/pm/uploads/FLEUR/fleurMaXR2.tgz) Current as of 31/08/2017
* [FLEUR MaX Release 1.3 of Version 0.27](http://www.flapw.de/pm/uploads/FLEUR/fleurMaXR1.3.tgz) Current as of 27/06/2017
* [FLEUR MaX Release 1.2 of Version 0.27](http://www.flapw.de/pm/uploads/FLEUR/fleurMaXR1.2.tgz) Current as of 04/05/2017
* [FLEUR MaX Release 1.1 of Version 0.27](http://www.flapw.de/pm/uploads/FLEUR/fleurMaXR1.1.tgz) Current as of 06/12/2016
* [FLEUR MaX Release 1 of Version 0.27](http://www.flapw.de/pm/uploads/FLEUR/fleurMaXR1.tgz) Current as of 31/08/2016
Quantum Mobile -- A virtual machine with all MaX-codes and AiiDA installed can be found on [Github](https://github.com/marvel-nccr/quantum-mobile/releases).
There is also a page with a few [[BinariesDownloads| precompiled binaries]].
After downloading the source we strongly recommend to have a look at the [[User-Documentation/Documentation]].
http://www.flapw.de/pm/datapool/pics/linie_570.jpg
[+ Releases of older FLEUR versions: +]
(You have to [[Main.Registration|register]] first to obtain a userID for these Downloads)
[+ Here you can download the FLEUR code +]
* [[http://www.flapw.de/WIKI-links/v22.tar.gz | Version 0.22]] Current as of 26/10/2001
* [[http://www.flapw.de/WIKI-links/v23.tar.gz | Version 0.23]] Current as of 25/02/2005
* [[http://www.flapw.de/WIKI-links/v24_NIC.tgz | Version 0.24]] Current as of 14/02/2006 (Version used at NIC winterschool 2006)
* [[http://www.flapw.de/WIKI-links/v25.tgz | Version 0.25]] Current as of 05/07/2006
* [[http://www.flapw.de/WIKI-links/v26e.tgz | Version 0.26]] Current as of 02/02/2017 ([[VesNotes | update]] v0.26e)
[+ Useful helpers +]
* [[http://www.flapw.de/WIKI-links/scripts.tgz | Scripts archive]] Current as of Feb 15, 2005
->Please note that assembly of these script is a task i.tgz Version 0.25n progress.
->The contents of this archive are preliminary and may change with time.
->Currently, it contains: \
scripts [[Symmetry Of Bands | band3xmgr]] and [[User-Documentation.CalculatingTheBandStructure | kptsgen.pl]], program [[User-Documentation.SortingBandsInABandStructurePlot | sortbands.f.]]
* [[http://www.flapw.de/WIKI-links/Sso-08-2009.tar.gz | Archive]] Current as of Sep 16, 2009
-> containing an external program for the analysis of the SOC matrix elements when calculating [[User-Documentation.SsoHowto | spin-spirals + SOC]].
[+ Beta versions +]
* [[http://www.flapw.de/WIKI-links/v25g.tgz | Version 0.25g]] Current as of 08/06/2009 \
(last [[Bug-fixes | bugfix]] from 24/02/2010)
* [[http://www.flapw.de/WIKI-links/v26b.tgz | Version 0.26b]] Version as of 06/12/2011 \
(containing complete wannier-part, [[Bug-fixes | bugfixes]] and some new functionality)
* [[http://www.flapw.de/WIKI-links/v26d.tgz | Version 0.26d]] Version as of 26/10/2012 \
(including spin-spirals & SOC, some new functionality for inpgen and [[Bug-fixes | bugfixes]])
* [[http://www.flapw.de/WIKI-links/wann_v25h.tgz | Wannier-version 0.25h]] Current as of 20/11/2009
* [[http://www.flapw.de/WIKI-links/fleur_v27_beta.tgz| Beta Version 0.27]] Current as of 19/09/2014 (includes new IO module with the option to keep more data in memory and first OpenMP parallel parts)
# Welcome to the FLEUR-project
This is the homepage of FLEUR, a feature-full, freely available FLAPW (full potential linearized augmented planewave) code, based on density-functional theory.
The FLAPW-Method (Full Potential Linearized Augmented Plane Wave Method) is an all-electron method which within density functional theory is universally applicable to all atoms of the periodic table and to systems with compact as well as open structures. It is widely considered to be the most precise electronic structure method in solid state physics.
FLEUR is one of the flagship codes of the MaX-Centre of Excellence. Within MaX we aim at creating a new FLEUR version fit for the challenges of high-throughput and exascale computing.
[![MaX-logo](img/MaX.png)](http://www.max-centre.eu)
Please feel free to [download](downloads.md) and [run our code](Docu-Main.md).
Fleur is part of the [juDFT family](http://www.judft.de) of codes developed in Jülich.
site_name: Fleur Documentation site_name: FLEUR
repo_url: https://iffgit.fz-juelich.de/fleur/fleur repo_url: https://iffgit.fz-juelich.de/fleur/fleur/
site_url: https://www.flapw.de/s/
repo_name: GIT
edit_url: edit/develop/docs/mkdocs/
nav: nav:
- Welcome: Docu-Main.md - Welcome: index.md
- Further support: support.md - Further support: support.md
- User Guide: - User Guide:
- Overview: Docu-Main.md
- Installation: Install.md - Installation: Install.md
- Running FLEUR: Running.md - Running FLEUR: Running.md
- The input-generator: inpgen.md - The input-generator: inpgen.md
...@@ -13,5 +17,5 @@ nav: ...@@ -13,5 +17,5 @@ nav:
- Fleur-GITLAB: https://iffgit.fz-juelich.de/fleur/fleur/ - Fleur-GITLAB: https://iffgit.fz-juelich.de/fleur/fleur/
- The DOXYGEN documentation of the source code: https://fleur.iffgit.fz-juelich.de/fleur/html - The DOXYGEN documentation of the source code: https://fleur.iffgit.fz-juelich.de/fleur/html
- The coverage analysis: https://fleur.iffgit.fz-juelich.de/fleur/coverage_html - The coverage analysis: https://fleur.iffgit.fz-juelich.de/fleur/coverage_html
- Developers Guide/Manual: developer.md - Developers Guide/Manual: developers.md
theme: readthedocs - About/Impressum: about.md
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