Skip to content

A Repository to demonstrate usage of the fortran-package manager and the meson-build system for a journal club in the school of mathematics, trinity college dublin.

Notifications You must be signed in to change notification settings

RJaBi/FPM_jclub

Repository files navigation

jclub

A Repository to demonstrate usage of the fortran-package manager and the meson-build system for a journal club in the school of mathematics, trinity college dublin.

As I am a lattice gauge theorist, that is the examples I am using.

In particular, I have implemented the plaquette measurement and also the anisotropy and lattice spacing measurement using the Wilson flow.

Generated with cookiecutter template: https://github.com/SalvadorBrandolin/fortran_meson_py


What does the code actually do?

The main program (run with fpm run jclub) reads an openQCD format gaugefield https://luscher.web.cern.ch/luscher/openQCD/ into memory and calculates the average value of the simplest closed loop called the plaquette. The plaquette is one of the simplest observables in lattice field theory. In practice this means a lot of 3x3 complex matrix multiplications.

The w0RE program (run with fpm run --profile release w0RE -- PATHTOINPUTTOML.toml) performs the R_E method to get the anisotropy (ratio of spatial to temporal lattice spacing) and the lattice spacing (by the w_0 scale) using the gradient flow. This is outlined in https://doi.org/10.48550/arXiv.1205.0781 and https://doi.org/10.1007/JHEP09%282012%29010 . In particular the gradient flow is performed using the code available in the ancillary files of the latter on arXiv at https://arxiv.org/abs/1203.4469 .

There is an example input file G2_wflow.toml

Also note that the bspline (https://github.com/jacobwilliams/bspline-fortran) code used seems to have an issue with the check-bounds of the default (or debug) profile for gfortran 14.1.0-1. It works fine in the release profile or with the ifx compiler


Install

You need a fortran compiler, the code has been tested with gfortran 14.1.0-1 and ifx (IFX) 2024.2.1 20240711.

You need the fortran-package-manager https://fpm.fortran-lang.org/. This may be installed in a number of ways. The simplest will be i.e. pip or conda

About

A Repository to demonstrate usage of the fortran-package manager and the meson-build system for a journal club in the school of mathematics, trinity college dublin.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published