InstallationGuide

Installation of MESHFREE

Short URL to this page: https://meshfree.pages.fraunhofer.de/docu/install

0. Get Help if necessary

If you get stuck somewhere along this guide, please contact our Support team.

We recommend, using the latest beta version as described below. If you need to use a version from before beta2023.08.0, please see the OldInstallationGuide.

1. System Requirements

We recommend the usage of a Linux-based system (real or virtual machine). Our executables are currently compiled on

  • Oracle Linux 7.9 (ol7.9),
  • Oracle Linux 8.9 (ol8.9),
  • Oracle Linux 9.2 (ol9.2),
  • Ubuntu 22.04 (ubuntu22.04),
  • HLRS Hawk System specifically for use on that hardware. Those executables carry the identifier 'hawk' in the name.

The OracleLinux executables are compatible with the corresponding Red Hat Enterprise Linux versions.

In the following steps, we assume a Linux bash shell.

2. Download

Download an appropriate MESHFREE executable archive (*.sh). We generally recommend using the latest beta version. See Download page for details.

3. Extract Archive

The archives are self-extracting. Execute the appropriate one for your given operating system to extract. The --help option gives an overview of possible options. E.g.

    <path_to_archive>/meshfree_<version>.sh --include-subdir --prefix=<installation_location>

4. Test Installation

An Intel MPI installation is shipped along with MESHFREE. To test this: Change into the 'bin' subdirectory,

    cd <package_root>/bin

then call

    source ../mpi/env/vars.sh     mpirun -n 2 ./test_mpi

An output like this should be printed to the screen:

    Hello World from process 0 of 2 on     Hello World from process 1 of 2 on

Finally, check a full call to MESHFREE

    meshfree.x --version

5. Prepare License

Please check what type of license you have, see also LicenseVariants.

5.1 Educational License

The Educational License requires no license file and no license server. You can skip to the next section.

5.2 Local License File

If you have been provided with a local license file, that is a file with ending lcs, make sure to save it somewhere that all MESHFREE users who are supposed to use this have access and that it is readable.

chmod ugo+r /path/to/local/license/file.lcs

and set the environment variable MESHFREE_LICENSE_FILE

export MESHFREE_LICENSE_FILE=/path/to/local/license/file.lcs

You can check the validity of the license with MESHFREE via

mpirun -n 1 /path/to/meshfree.x --check-license

5.3 License Manager FITlm

If you have been provided with a server license file, that is a file with ending lcd, then you need to install and set up the license manager FITlm. Please follow the instructions in the FITlm user manual (compare Download page). Once the license server is running, set the environment variable MESHFREE_LICENSE_SERVER according to the server and port, for example

export MESHFREE_LICENSE_SERVER=server.example.com:12345

You can check the validity of the license with MESHFREE via

mpirun -n 1 /path/to/meshfree.x --check-license

5.4 Optional: Add application licenses to job scheduler

If you have a limited number of floating licenses for MESHFREE and you are using a job scheduler on your cluster, it is possible to set this limit in your scheduler as a license resource. That way, you can schedule additional jobs beyond the floating limit and these jobs will wait until a license becomes available. The limit needs to be set by your system administrator.

6. Simulate with MESHFREE

Open a (bash) shell. To set up all required environment variables for the included MPI installation, call

    source <package_root>/mpi/env/vars.sh

at least once in the shell you want to run MESHFREE in.

Then, switch to a MESHFREE working directory, including a USER_common_variables.dat, common_variables.dat, etc., and issue

    mpirun -n <np> <package_root>/bin/meshfree.x

where <np> denotes the number of processes to use and <package_root> denotes the root of the unpacked package.

List of members:
OldInstallationGuide Installation of MESHFREE (up to beta2023.08.0)