Git Product home page Git Product logo

fiat's Introduction

FIAT


The Fortran IFS and Arpege Toolkit

Introduction

FIAT is a collection of selected Fortran utility libraries, extracted from the IFS/Arpege model.

  • drhook : tracing
  • gstats : timing
  • parkind : choose precision
  • mpl : MPI communication
  • mpi_serial: MPI dummy symbols compiled into static library
  • other various routines

License

FIAT is distributed under the Apache License Version 2.0. See LICENSE file for details.

Installing FIAT

Supported Platforms

  • Linux
  • Apple MacOS

Other UNIX-like operating systems may work too out of the box.

Requirements

Further optional dependencies:

Building FIAT

Environment variables

$ export ecbuild_ROOT=<path-to-ecbuild>
$ export MPI_HOME=<path-to-MPI>
$ export fckit_ROOT=<path-to-fckit>
$ export CC=<path-to-C-compiler>
$ export FC=<path-to-Fortran-compiler>
$ export CXX=<path-to-C++-compiler> 

You must compile FIAT out-of-source, so create a build-directory

$ mkdir build && cd build

Configuration of the build happens through standard CMake

$ cmake ..

Extra options can be added to the cmake command to control the build:

  • -DCMAKE_BUILD_TYPE=<Debug|RelWithDebInfo|Release|Bit> default=RelWithDebInfo (typically -O2 -g)
  • -DENABLE_TESTS=<ON|OFF>
  • -DENABLE_MPI=<ON|OFF>
  • -DENABLE_OMP=<ON|OFF>
  • -DCMAKE_INSTALL_PREFIX=<install-prefix>

More options to control compilation flags, only when defaults are not sufficient

  • -DOpenMP_Fortran_FLAGS=<flags>
  • -DCMAKE_Fortran_FLAGS=<fortran-flags>
  • -DCMAKE_C_FLAGS=<c-flags>

Once this has finished successfully, run make and make install.

Optionally, tests can be run to check succesful compilation, when the feature TESTS is enabled (-DENABLE_TESTS=ON, default ON)

$ ctest

Reporting Bugs

TODO

Contributing

TODO

fiat's People

Contributors

wdeconinck avatar towil1 avatar ryadelkhatibmf avatar prgillies avatar marsdeno avatar ioanhadade avatar msleigh avatar sebastienmassart avatar samhatfield avatar djdavies2 avatar fabvoit avatar dueben avatar mlange05 avatar pmarguinaud avatar flpvana avatar alangeer avatar awnawab avatar dawson-ec avatar meteostef avatar alexandremary avatar marcin85pl avatar christophepayanmf avatar cresswellp avatar pbrowne avatar floriansuzat avatar ewhelan avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.