B-1 Mac OS

1.2.1. Disclaimer¶

HORTON has been tested on Mac OS X 10.8–10.11 using MacPorts. If youare running any other version of OS X or if you are using other packagemanagers, some of the instructions below may not work.

Buy APPLE MacBook Pro with Touch Bar Core i5 8th Gen - (8 GB/512 GB SSD/Mac OS Catalina) MXK72HN/A Online For Rs.142990, Also get APPLE MacBook Pro with Touch Bar Core i5 8th Gen - (8 GB/512 GB SSD/Mac OS Catalina) MXK72HN/A Specifications & Features. Only Genuine Products. 30 Day Replacement Guarantee. Cash On Delivery! Buy Apple MacBook Air Core i5 5th Gen - (8 GB/128 GB SSD/Mac OS Sierra) MQD32HN/A A1466 Online For Rs.72990, Also get Apple MacBook Air Core i5 5th Gen - (8 GB/128 GB SSD/Mac OS Sierra) MQD32HN/A A1466 Specifications & Features. Only Genuine Products. 30 Day Replacement Guarantee. Cash On Delivery!

1.2.2. MacPorts¶

Cached

We strongly recommend that you install all of the packages required by HORTONthrough MacPorts. The latest version of MacPorts can be downloaded from the web:https://www.macports.org/install.php. This guide has been tested usingMacPorts 2.3.3 but should also work with newer versions.

Note

If you have already installed a Python distribution (with another packagemanager than MacPorts), such as Canopy, it may interfere with the oneinstalled through MacPorts. The instructions below assume that no such otherinstallation of Python is present.

1.2.2.1. Quick tour of MacPorts¶

Here are some basic MacPorts commands:

  • updating ports (recommended):

  • upgrade ports:

  • finding ports (e.g, port_name = python27):

  • searching ports (e.g, port_name = python27):

  • installing ports (e.g, port_name = python27):

  • selecting ports (e.g, select python27 as python):

1.2.3. Download the code¶

The latest stable source code release of HORTON can be downloaded here:

Choose a suitable directory, e.g. ~/build, download and unpack the archive:

1.2.4. Dependencies for building, installing and testing HORTON¶

In order to compile and test HORTON, you need to install relatively recentversions of the following programs/libraries:

  • GCC, G++ and GFortran >=4.9: http://gcc.gnu.org (In principle the Intel compilers or any other combination of C++11 and Fortran compiler should work. The GNU compilers are used for development and testing.)
  • Python >=2.7,<3.0: http://www.python.org/ (Also install development files.)
  • Nosetests >=1.1.2: http://readthedocs.org/docs/nose/en/latest/
  • Atlas >=3.10.1: http://math-atlas.sourceforge.net/ (Also install development files. You should be able to use any other BLAS implementation as well.)
  • NumPy >=1.9.1: http://www.numpy.org/
  • SciPy >=0.11.0: http://www.scipy.org/
  • Cython >=0.17.1,!=0.24: http://www.cython.org/
  • H5Py >=2.2.1: http://www.h5py.org/
  • Sympy >=0.7.1: http://code.google.com/p/sympy/
  • Matplotlib >=1.0: http://matplotlib.org/
  • LibXC 2.2.2: http://www.tddft.org/programs/octopus/wiki/index.php/Libxc (Also install development files.)
  • LibInt 2.0.3: http://sourceforge.net/p/libint/home (Also install development files.)
  • Curl >=7.0: http://curl.haxx.se/
  • PIP >=7.0: https://pip.pypa.io/ (Not required in some scenarios but never bad to have.)

1.2.4.1. Installing the dependencies with MacPorts¶

All dependencies can be installed with MacPorts. We recommend the following ports:

  • gcc49: https://trac.macports.org/browser/trunk/dports/lang/gcc49/Portfile
  • python27: https://trac.macports.org/browser/trunk/dports/lang/python27/Portfile
  • py27-nose: https://trac.macports.org/browser/trunk/dports/python/py-nose/Portfile
  • atlas: https://trac.macports.org/browser/trunk/dports/math/atlas/Portfile
  • py27-numpy: https://trac.macports.org/browser/trunk/dports/python/py-numpy/Portfile
  • py27-scipy: https://trac.macports.org/browser/trunk/dports/python/py-scipy/Portfile
  • py27-cython: https://trac.macports.org/browser/trunk/dports/python/py-cython/Portfile
  • py27-h5py: https://trac.macports.org/browser/trunk/dports/python/py-h5py/Portfile
  • py27-sympy: https://trac.macports.org/browser/trunk/dports/python/py-sympy/Portfile
  • py27-matplotlib: https://trac.macports.org/browser/trunk/dports/python/py-matplotlib/Portfile
  • libxc: https://trac.macports.org/browser/trunk/dports/science/libxc/Portfile
  • libint: https://trac.macports.org/browser/trunk/dports/science/libint/Portfile
  • py27-pip: https://trac.macports.org/browser/trunk/dports/python/py-pip/Portfile

These are installed with the following commands. (When MacPorts is installed in userspace, the sudo can be omitted.):

1.2.4.2. Installing dependencies manually¶

B-1 Mac OS

BLAS

In principle, any BLAS implementation may be used. In case of a custom build,some environment variables must be set prior to building HORTON, as discussedin Installing the dependencies with MacPorts. Also, Keep in mind that MacPorts only supports Atlasfor building NumPy and SciPy.

LibXC

The directory tools/qa of the HORTON source tree contains scripts to download andbuild LibXC, which will work on most systems:

This results in a LibXC library suitable for compiling HORTON. If this fails,consult your local Mac guru to build LibXC. For more info about LibXC, checkthe website: http://www.tddft.org/programs/octopus/wiki/index.php/Libxc

LibInt2

The directory tools/qa of the HORTON source tree contains scripts to download andbuild LibInt2, which will work on most systems:

The compilation of LibInt2 takes a few minutes and results in a library suitable forcompiling HORTON. If this fails, consult your local Mac guru to build LibInt2. For moreinfo about LibInt2, check the website: https://github.com/evaleev/libint

1.2.5. Compilation and installation¶

1.2.5.1. Build and install¶

The regular build and install is done as follows:

The setup.py script makes a reasonable attempt configuring the compiler andlinker settings for the LibXC, LibInt2 and BLAS libraries. However, this doesnot work in all environments. In case of a failure, or if a configuration otherthan the default is desired, read the following section.

B-1

Raspberry Pi Downloads - Software For The Raspberry Pi

1.2.5.2. Overriding default compiler/linker settings for LibXC, LibInt2 and BLAS¶

The manual configuration of the compiler and linker settings is described here:Controlling dynamic/static linking against LibXC, LibInt2 and BLAS. You should read this section if the default build and installfailed or if you would like to specify which libraries to use.

1.2.5.3. Runtime configuration¶

You need to set some environment variables to use HORTON. Add the following to~/.bash_profile if it exists, otherwise add them to ~/.profile:

If you run HORTON on a headless node, i.e. without an X server, you need toconfigure Matplotlib to use a backend that does not require a graphical userinterface. (See http://matplotlib.org/faq/usage_faq.html#what-is-a-backend formore details on the Matplotlib backends.) This can be done by adding thefollowing line to your matplotlibrc file:

This file is located either in ${HOME}/.matplotlib or${HOME}/.config/matplotlib.

1.2.6. Reference atoms¶

Several parts of HORTON make use of reference atomic computations. When compilinga stable release from a .tar.gz file these reference atoms are already included inthe release. When building a development version of HORTON, please refer toAdditional steps required to build the development version of HORTON on how to build these reference atoms.

1.2.7. Running the tests¶

To test that HORTON was installed properly and that you can can access it fromother directories, you should change to a directory outside of the source treeand call nosetests as follows:

1.2.8. Building the documentation¶

1.2.8.1. Dependencies¶

If you are interested in generating the documentation from source, the followingpackages are also needed:

  • Sphinx >=1.3.1: http://sphinx.pocoo.org/
  • Sphinx Read-The-Docs theme >=0.1.8: https://github.com/snide/sphinx_rtd_theme
  • Doxygen >=1.8.6: http://www.doxygen.org/
  • Breathe >=1.2.0: http://breathe.readthedocs.org/en/latest/
  • Docutils >=0.11: http://docutils.sourceforge.net/

1.2.8.2. Installing the dependencies with MacPorts and PIP¶

Most can be installed directly with MacPorts. The following list of ports is recommended:

  • doxygen: https://trac.macports.org/browser/trunk/dports/textproc/doxygen/Portfile

B-1 Mac Os X

The following commands will install the ports and a few other dependencies (with pip),which are not available as ports:

You must also manually build LibXC as explained in Installing dependencies manually,to generate the list of DFT functionals in the documentation.

1.2.8.3. Actual build¶

The documentation is compiled and viewed as follows:

Macintosh

1.2.9. Development tools¶

Download Nikon D90 Camera Firmware A:1.00/B:1.01 For Mac OS ...

If you want to contribute to the development of HORTON, you’ll need to install at leastthe following dependencies:

  • PyLint >=1.5.0: https://www.pylint.org/
  • pycodestyle >=2.0.0: http://pycodestyle.readthedocs.io/
  • pydocstyle >=1.0.0: http://pydocstyle.readthedocs.io/
  • coverage >=4.1: https://coverage.readthedocs.io/
  • Cppcheck >=1.73: http://cppcheck.sourceforge.net/
  • Git >=1.8: https://git-scm.com/
  • GitPython >=2.0.5: http://gitpython.readthedocs.io/

The following list of ports is recommended:

  • doxygen: https://trac.macports.org/browser/trunk/dports/textproc/doxygen/Portfile

For the python development tools, we recommend that you install the latest versions withpip.