Source code

To download the source code, the only requirement is to register here

Then, the source code can be downloaded from
Log in using your account information.

Code development uses Mercurial for version control. If you wish to contribute to code development, it is advised to clone this Mercurial repository and use the same version control tool.

Win32 compatible environment

Executables version of the code (.exe) can be downloaded here :
Matlab routines for use of NEMOH in the Matlab environment can be downloaded here:
Alternatively, you may wish to compile your own version of the codes. Codes should compile without troubles with the Intel Fortran compiler ifort. Dependencies are:

• preProcessor: Common/Environment.f90; Common/Identification.f90; preProcessor/BodyConditions.f90; preProcessor/Integration.f90; preProcessor/Main.f90; preProcessor/Mesh.f90

• solver: Common/Mesh.f90; Common/Results.f90; Common/Identification.f90; Solver/Core/ALLOCATE_DATA.f90; Solver/Core/BODYCONDITIONS.f90; Solver/Core/COM_VAR.f90; Solver/Core/COMPUTE_GREEN.f90; Solver/Core/COMPUTE_GREEN_FREESURFACE.f90; Solver/Core/COMPUTE_KOCHIN.f90; Solver/Core/COMPUTE_POTENTIAL_DOMAIN.f90; Solver/Core/DEALLOCATE_DATA.f90; Solver/Core/ELEMENTARY_FNS.f90; Solver/Core/INITIALIZATION.f90; Solver/Core/M_SOLVER.f90; Solver/Core/OUTPUT.f90; Solver/Core/PREPARE_MESH.f90; Solver/Core/SOLVE_BEM.f90; Solver/Core/SOLVE_BEM_FD_DIRECT.f90; Solver/Core/SOLVE_BEM_INFD_DIRECT.f90; Solver/NEMOH.f90

• postProcessor: Common/Environment.f90; Common/Identification.f90; Common/Results.f90; postProcessor/Compute_RAOs.f90; postProcessor/IRF.f90; postProcessor/Main.f90; postProcessor/Plot_WaveElevation.f90

•mesh: Common/Identification.f90; Mesh/calCol.f90; Mesh/coque.f90; Mesh/ExMaillage.f90; Mesh/hydre.f90; Mesh/Mailleur.f90; mesh.f90

The Visual Studio solution NEMOH.sln may be used for easy compilation of NEMOH with Microsoft Visual Studio.

Linux and Mac OS X environment

A makefile is provided with the source code for compiling NEMOH in Linux and Mac OS X environment. The Intel Fortran compiler ifort shall be used for Linux. The gfortran compiler should be used for Mac OS X. Some adjustments may be require for Mac, look at the OSXreadme.txt. Other compilers may compile with small adjustments to the libraries.

Dependencies are the same as for compiling in Win32 environment.

Thanks goes to Christophe Peyrard, Yi-Hsiang Hu and Eliot Quin for providing the makefile.
Published on November 22, 2017 Updated on January 25, 2023