2.1.0b3
1. HORTON Overview
2. Citing HORTON
3. License Information
4. Contact Information
User documentation
1. Download and Installation
2. Getting Started
3. Hamiltonians
4. Electronic Structure Methods
5. Post-processing
6. Other Topics
Technical stuff
1. Developer Documentation
1.1. HORTON Development with Git
1.2. Branch review checklist
1.3. Writing documentation
1.4. Writing unit tests
1.5. Writing examples scripts
1.6. Citing scientific work
1.7. Accelerating HORTON code with Cython
2. Reference Documentation
3. API Documentation
HORTON
Docs
»
1. Developer Documentation
View page source
1. Developer Documentation
ΒΆ
1.1. HORTON Development with Git
1.1.1. Additional steps required to build the development version of HORTON
1.1.1.1. Reference atoms
1.1.1.2. Other development tools
1.1.1.3. Building the documentation
1.1.2. Git
1.1.2.1. Git configuration
1.1.2.2. Some terminology
1.1.2.3. Cloning the HORTON git repository
1.1.3. Work flow for adding a new feature
1.1.3.1. Develop the feature in a topic branch
1.1.3.2. Make your branch available for review with a pull request (PR)
1.1.3.3. Merging your pull request with the master branch
1.1.4. Common issues
1.2. Branch review checklist
1.2.1. Reviewing protocol
1.2.1.1. Step 1. Automatic QA testing
1.2.1.2. Step 2. Human review
1.2.1.3. Step 3. Merging
1.2.2. Mindful criteria
1.2.2.1. Atomic commits
1.2.2.2. Unit tests (other than coverage, see below)
1.2.2.3. Code structure
1.2.2.4. Modularity
1.2.2.5. Cython is evil
1.2.3. General mindless criteria
1.2.3.1. Miscellaneous (MG01##)
1.2.3.2. Whitespace errors
1.2.3.3. Comments (MG02##)
1.2.3.4. Author name and e-mail (MG03##)
1.2.3.5. Git commit message format (MG04##)
1.2.3.6. Units and unit conversion
1.2.4. Mindless Python criteria
1.2.4.1. pycodestyle
1.2.4.2. Pydocstyle
1.2.4.3. PyLint
1.2.4.4. Code coverage by (fast) unit tests
1.2.4.5. Mindless Python criteria to be checked manually
1.2.5. Mindless C++ criteria
1.2.5.1. CPPCheck
1.2.5.2. CPPLint
1.2.5.3. Manual checks
1.2.5.4. API documentation
1.2.5.5. Code coverage
1.2.6. Mindless Cython criteria
1.3. Writing documentation
1.3.1. Introduction
1.3.2. Building documentation
1.3.3. Common issues
1.4. Writing unit tests
1.4.1. Running the tests
1.4.2. Writing new tests
1.4.3. Writing tests that need a temporary directory
1.4.4. Writing tests that use random numbers
1.5. Writing examples scripts
1.6. Citing scientific work
1.7. Accelerating HORTON code with Cython
1.7.1. Before you begin
1.7.2. Basic example
1.7.2.1. Background
1.7.2.2. Cythonizing your code
1.7.3. Additional notes
1.7.4. Further reading