HARES: Highperformance fortran Adaptive grid Real space Electronic Structure
Welcome to the HARES development area. This project is for people actively developing source code and documentation for this tool.
- GettingStarted - learn how to download the current code and make changes
- ToolInformation - describe your tool, its authors, and related materials
- TicketSystem - use trouble tickets to report problems and document ideas for future development
What is HARES?
HARES calculates atomic level electronic structure, within density functional theory, of crystals and small molecules using a real space, adaptive grid.
HARES is an ab initio electronic structure code based on density functional theory (DFT). In comparison with other types of DFT codes, it’s principal distinction is that, using a delta function basis, that is, discretizing the Hamiltonian on a real-space mesh, the system can be naturally subdivided and cast onto parallel processors. The amount of inter-processor communication is then limited to border cells, which are needed for computing the Laplacian, and various sorts of integrations which require access to functions defined throughout the whole simulation domain.
HARES is made even more efficient by employing an adaptive grid in real space for representation of the eigenfunctions, with points distributed according to the electro-negativity of the ions. The adaptive grid can be mapped onto a regular grid in (generally) curvilinear coordinates through the proper definition of a metric. Finally, due to the real-space basis of the problem, the Hamiltonian is naturally sparse (7-diagonal) and iterative methods for determining eigenvalues can be used.
HARES is written in High Performance Fortran, which is a version of fortran based on Fortran 90 but including structures for easy parallel coding. The input consists of information describing the location of the ions (and library files containing the pseudo-potentials of each), specification of the unit cell size and geometry, and various other switches for tuning the efficiency or specifying the desired output, etc.
How do I use this site?
You can edit any of the pages in this site and add information. For more instructions, see: