Skip to main content

FALFILFA

Externalized FA - LFI - LFA Formats from IAL

  • LFI : "Logiciel de Fichiers Indexes"
  • FA : "Format Arpege" - overlay on top of LFI
  • LFA : format used for DDH outputs

Installing FALFILFA

Supported Platforms

  • Linux

Requirements

  • Fortran and C compiler( tested On Intel & GNU 11.3.0 and later )
  • CMake
  • ecbuild
  • eccodes : version ECCODES_REQUIRED_VERSION in CMakeLists.txt
  • fiat : version >= commit fdcb622e

Building FALFILFA

Environment variables

$ export ecbuild_ROOT=`<path-to-ecbuild>`
$ export fiat_ROOT=`<path-to-fiat>`
$ export eccodes_ROOT=`<path-to-eccodes>`

Dependency to eccodes and fiat must be passed to the cmake command:

  • -Deccodes_ROOT=path/to/eccodes/install
  • -Dfiat_ROOT=path/to/fiat/install

Compilers could be set while building the libraries or with thoses env variables :

$ export CC=`<path-to-C-compiler>`
$ export FC=`<path-to-Fortran-compiler>`

Since, we are using ecbuild, you must compile FALFILFA out-of-source, so create a build-directory

$ mkdir build

Configuration of the build happens through standard CMake

$ cmake -S FALFILFA -B build

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)

  • -DBUILD_SHARED_LIBS=<BOTH|ON|OFF> default=ON

  • -DENABLE_SINGLE_PRECISION=<ON|OFF> default=OFF

  • -DENABLE_DOUBLE_PRECISION=<ON|OFF> default=ON

  • -DCMAKE_INSTALL_PREFIX=<install-prefix> default=/usr/local (You will need permission to install)

  • -DCMAKE_Fortran_COMPILER=< fortran compiler> default=gfortran or the set FC env variable

  • -DCMAKE_C_COMPILER=< C compiler> default=gcc or the set CC env variable

  • -DENABLE_UTILITIES=<ON|OFF> default=ON

  • -DENABLE_PROGRAMS=<ON|OFF> default=ON

  • -DENABLE_TESTS=<ON|OFF> default=ON

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

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

Once this has finished successfully, run cmake --build . and cmake --install ..

Testing FALFILFA

Tests data is downloaded in ./tests/... directories when running cmake command. They are downloaded from https://api.sedoo.fr/sedoo-fa-lfi-lfa-rest/data/download platform. Tests data is approx. 200 MB.

To run the tests, go to build directory and type ctest. The tests results are written to a tests_results directory in the build directory.

Building falfilfa4py

To build the falfilfa4py python package (wheel):

export ecbuild_ROOT=`<path-to-ecbuild>`
export gribex_ROOT=`<path-to-your-gribex-root>`
export fiat_ROOT=`<path-to-fiat>`
export eccodes_ROOT=`<path-to-eccodes>`

pip install build
pip install auditwheel
python -m build --sdist --wheel
python -m auditwheel repair dist/falfilfa4py-*-linux_x86_64.whl

Build helper

Cf. https://github.com/ACCORD-NWP/FALFILFA-bundle

Caveats

The current version relies on a copy of the GRIB_API_INTERFACE module (grib_api_interface.F90) from IAL, renamed ECCODES_INTERFACE (src/fa/module/eccodes_interface.F90).

This is a temporary workaround, several options are considered to fix this caveat in a near future:

  • relying directly on ECCODES library
  • moving this module in a lower-level library, e.g. eccodes or fiat

Same with ELLIPS64 routine, duplicate of ectrans' ELLIPS.

Reporting Bugs

Issues: https://github.com/ACCORD-NWP/FALFILFA/Issues Contributions: https://github.com/ACCORD-NWP/FALFILFA/Pulls

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

falfilfa4py-1.3.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (25.3 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ x86-64

falfilfa4py-1.3.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (25.3 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

falfilfa4py-1.3.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (25.3 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

falfilfa4py-1.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (25.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

falfilfa4py-1.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (25.3 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

File details

Details for the file falfilfa4py-1.3.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for falfilfa4py-1.3.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d9a8095b9ea224f0f69ec0ad346462ce150091deff44b1420b900cc03500152c
MD5 e4de556a47d23b77f96cbaffbead9a08
BLAKE2b-256 c9d053f17f5b1dcd960654df36365fb78668cc51ee69d565fbb62683747d7c66

See more details on using hashes here.

File details

Details for the file falfilfa4py-1.3.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for falfilfa4py-1.3.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6b5d4c4b13658e1ee6359bb52c09803839764cdd51433cdf6c84865f6527d331
MD5 d849889e9b43ac35c829376c2f7cf258
BLAKE2b-256 458329b17a42d0add50a2e925d18fcb50428461ff943766a554f70d4acfae9bf

See more details on using hashes here.

File details

Details for the file falfilfa4py-1.3.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for falfilfa4py-1.3.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 59435f751c473c96b580390ff7486086efb4376e150cbb30de788786f7113e54
MD5 32e9cf65e54fd2582add7f9052f88d71
BLAKE2b-256 1be3da488d61c4dd927e4f565b2b9162a8fa8393823370cd18e03793355c7685

See more details on using hashes here.

File details

Details for the file falfilfa4py-1.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for falfilfa4py-1.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2fa7353e6a8ad9806f55e50eb638383ec27e340fbd80f8e2e6edc3d79fb93bf7
MD5 fe3a342128f0c0f61b98061bb9047f2b
BLAKE2b-256 8c9790fe7a9ad72de9e932d6d760b20d3af82cec2cf22af14c0ff29611f53c36

See more details on using hashes here.

File details

Details for the file falfilfa4py-1.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for falfilfa4py-1.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d5cd952112a0d613f8f46a32cec5e4aa256b99857f887acc89b765cfdcf9ca9f
MD5 b2eaca1567f376414aa7402f88624a7d
BLAKE2b-256 f11a9aedb7d3d429ac06e0ecc2b49f9027f4b24a66ebb3e29403c07e32cc27d9

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.3.0 This release

5 files

1.2.2

5 files

1.2.1

5 files

1.0.7

5 files

1.0.6

5 files

1.0.5

5 files

1.0.4

5 files

1.0.3

5 files

1.0.2

5 files

1.0.1

5 files

1.0.0

5 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page