|
|
Prerequisites |
|
|
\ No newline at end of file |
|
|
To install HiFlow3, make sure to meet the following requirements.
|
|
|
|
|
|
### Compiler
|
|
|
Compilation has successfully been tested with
|
|
|
* **[GCC](https://gcc.gnu.org/) >= 4.6**
|
|
|
* **Intel >= 11**
|
|
|
|
|
|
Moreover, any C++11 compliant compiler should work.
|
|
|
|
|
|
### CMake
|
|
|
For the build configuration, **[CMake](https://cmake.org/) >= 2.8.2** is required. You might also like to use the CMake curses text user interface.
|
|
|
|
|
|
### MPI
|
|
|
HiFlow3 is parallelized for distributed memory machines with MPI. Only MPI-1 functionality is needed. It has been successfully used with
|
|
|
* **[OpenMPI](https://www.open-mpi.org/)** (on various platforms)
|
|
|
* **[Intel MPI](https://software.intel.com/en-us/intel-mpi-library/)** (on various platforms)
|
|
|
* **[Parastation MPI](http://parastation.com/)**
|
|
|
|
|
|
Moreover, any standards compliant MPI implementation should work.
|
|
|
|
|
|
### Doxygen (optional)
|
|
|
The generation of the source code documentation is an optional step in the installation. **[Doxygen](https://sourceforge.net/projects/doxygen/)** is required in this case. To generate also graphs of the class dependencies, **[graphviz](http://graphviz.org/)** is required in addition.
|
|
|
|
|
|
### VTK Viewer (optional)
|
|
|
HiFlow3 can generate **[VTK](http://www.vtk.org/)** data for the visualization of simulation results. Any VTK viewer, e.g. **[Paraview](https://www.paraview.org/)**, should work to visualize results.
|
|
|
|
|
|
### Other options
|
|
|
There are several further compilation options which can be activated in the CMake build configuration:
|
|
|
* **[OpenMP](http://www.openmp.org/)**
|
|
|
* **[CUDA](http://www.nvidia.com/object/cuda_home_new.html)**, **[OpenCL](https://www.khronos.org/opencl/)** accelerators
|
|
|
* **CBLAS, **[CLAPACK](http://www.netlib.org/clapack/)**, **[MKL](https://software.intel.com/en-us/mkl)**, **[ATLAS](http://math-atlas.sourceforge.net/)** linear algebra routines and solvers
|
|
|
* **[METIS](http://glaros.dtc.umn.edu/gkhome/metis/metis/overview)** graph partitioner to compute domain decompositions
|
|
|
* **[MUMPS](http://mumps.enseeiht.fr/)** linear solver
|
|
|
* **[UMFPACK](http://faculty.cse.tamu.edu/davis/suitesparse.html)** linear solver
|
|
|
* **[ILU++](https://github.com/CognitionGuidedSurgery/ILUpp)** preconditioner
|
|
|
* **[HDF5](https://support.hdfgroup.org/HDF5/)** in- and output
|
|
|
* **GAUSSQ**
|
|
|
* **[Hypre](https://computation.llnl.gov/projects/hypre-scalable-linear-solvers-multigrid-methods/software)**
|
|
|
* **[p4est](http://p4est.org/)**
|
|
|
* **[ParMETIS](http://glaros.dtc.umn.edu/gkhome/metis/parmetis/overview)**
|
|
|
* **[PETSc](http://www.mcs.anl.gov/petsc/)**, **[SLEPc](http://slepc.upv.es/)** |
|
|
\ No newline at end of file |