Installation

In order to reduce the number of prerequisites, the FoX and 2decomp&fft libraries (http://www1.gly.bris.ac.uk/~walker/FoX and http://www.2decomp.org) are directly provided with AMITEX_FFTP within the directory (amitex_fftp)/lib_extern.


Prerequisites

1. Fortran compiler : Intel 13.0.1 (minimum tested) or GCC 4.7.2 (minimum tested)

The program has been tested successfully with Intel 15.0.0 and GCC 4.8.2.

2. MPI library : The program has been tested successfully with Intel MPI 4.0.3 and 5.0.1 as well as Open MPI 1.6.3 and 1.6.5.

Warning

Observations made on intel-based clusters

Performances obtained with [Intel compiler + Intel MPI] are significantly better than with [GCC compiler + Open MPI].

Performances obtained with Open MPI 1.8 are worse than with Open MPI 1.6.

While waiting for a clarification of these two points, use [Intel compiler + Intel MPI] if possible.

3. FFT libraries :

As mentioned, AMITEX_FFTP comes with the 2decomp&fft library which provides interfaces with various FFT libraries.

AMITEX_FFTP has been tested successfully with libraries fftw (see [FFTW32005]), versions 3.3.3 and 3.3.4, but should work fine with other versions or other libraries as long as they are compatible with 2decomp&fft.

Note that fftw must be installed with both double (default) and single precision.

4. The MFront library (optional)

The MFront library (http://tfel.sourceforge.net/documentations.html) is useful to easily generate behavior laws. These laws are available in a dynamic library and are based on the standard UMAT interface which is compatible with AMITEX_FFTP.

The MFront library should be installed and compiled with the same compiler than the one used to compile AMITEX_FFTP.


Installation guide

  1. Adjust the following first lines of the install file located in (amitex_fftp):

    #! /bin/bash
    # Compiler : ifort, gfortran
    FC=ifort
    # FC=gfortran
    # FFT Library
    # 2decomp&fft
    # Choose one FFT engine, available options are:
    #   acml       - AMD Core Math Library
    #   ffte       - FFTE
    #   fftpack5   - FFTPACK5
    #   fftw3      - FFTW version 3.x
    #   fftw3_f03  - FFTW 3.3-beta1 or later (with Fortran 2003 interface)
    #   generic    - A general FFT algorithm (no 3rd-party library needed)
    #   mkl        - Intel Math Kernel Library
    FFT=fftw3_f03
    # FFT library path
    FFT_PATH=/usr/local
    # Precision (simple, double)
    PREC=double
    

The user must choose :

  • the compiler: ifort (Intel) or gfortran (GCC) (prefer ifort if possible),
  • the FFT library and inform the corresponding library path,
  • the precision of the simulation: simple or double (prefer double).
  1. Launch install:

    ./install
    

In practice, ./install :

  • fills correctly (amitex_fftp)/lib_extern/2decomp_fft-1.5.8472/src/Makefile.inc and various Makefiles and scripts,
  • compiles the 2decomp&fft library,
  • compiles the FoX library,
  • compiles AMITEX_FFTP,
  • builds different executables named in the cas_tests folder: a standard version named amitex_fftp, a version with a crystalline user material law in small perturbations amitex_fftp_polyx and in large strains amitex_fftp_polyxGD, a version with a Mazars user material law generated with MFront in amitex_fftp_mazars. These three exemples demonstrate how to add a new behavior law to the amitex_fftp code. These behaviors are located in the folder (amitex_fftp)/cas_tests/comportement.

Warning

If the MFront library is not installed, the building of AMITEX_FFTP in (amitex_fftp)/cas_tests/mazars will fail, obviously. If you do not wish to use MFront do not pay attention to this error.

Remark

New executables with user defined behavior laws (with or without MFront) as well as user defined outputs can be built. See User behavior law and user output for more information.


Launching AMITEX_FFTP

The shell script (amitex_fftp)/cas_tests/script.sh provides a list of simulations based on geometries, loadings, algorithms and material properties defined in xml files respectively in directories microstructures, chargements, algorithmes and materiaux under (amitex_fftp)/cas_tests.

Different batch scripts for different batch schedulers (Torque, LoadLeveler...) are provided as examples to launch (amitex_fftp)/cas_tests/script.sh. Of course, you will have to create your own batch script in agreement with the batch scheduler available on your platform.