Skip to content

Releases: holukas/fluxrun

v2.1.1

18 Oct 15:39

Choose a tag to compare

v2.1.1 | 18 Oct 2025

  • Empty files are now ignored during file search

Full Changelog: v2.1.0...v2.1.1

v2.1.0

03 Jun 11:29

Choose a tag to compare

v2.1.0 | 3 Jun 2025

  • Refactored script for better execution as a module
  • Now using relative imports for modules
  • Small change: window title now lowercase

Full Changelog: v2.0.2...v2.1.0

v2.0.2

14 Apr 10:57

Choose a tag to compare

v2.0.2 | 14 Apr 2025

  • Bugfix: start and end date from CLI days arg did not work
  • Removed left-over main.py

Full Changelog: v2.0.1...v2.0.2

v2.0.1

14 Apr 10:44

Choose a tag to compare

v2.0.1 | 14 Apr 2025

  • Bugfix: Deleting umcompressed ASCII files after processing was not executed even when selected (
    fluxrun.fluxrun_engine.FluxRunEngine.run)
  • Changed: Deleting uncompressed data files after processing now takes into account the original file suffix of the
    input files (fluxrun.fluxrun_engine.FluxRunEngine._delete_uncompressed_ascii_files)
  • Fix date shown in GUI

Full Changelog: v2.0.0...v2.0.1

v2.0.0

09 Apr 17:00

Choose a tag to compare

v2.0.0 | 9 Apr 2025

Introducing v2.0.0

fluxrun has been updated to version 2.

fluxrun is a Python wrapper for EddyPro to calculate EC ecosystem fluxes from raw data files.

This version enhances its usability for a wider range of eddy covariance (EC) sites beyond
the ETH Grassland Sciences group.

fluxrun can be executed using the GUI or directly from the command line interface.

fluxrun was created as a wrapper around EddyPro. This means that the flux calculations are done by EddyPro, but
fluxrun adds some functionality, e.g.:

  • fluxrun automatically creates an output folder structure, including run ID.
  • The log output from EddyPro (together with other output from fluxrun) is stored to a log file.
  • There is an additional log file storing warnings and errors.
  • fluxrun can be executed in parallel, e.g. when calculating fluxes for multiple years fluxrun makes it a bit easier
    to run them all at once. Parallelization is not included by default (at the moment), but using the command-line
    interface multiple instances of fluxrun can be started quickly. Each started instance gets its own output folder and
    folder structure, including a unique run ID.
  • Input files are validated to make sure columns contain numeric data only. Non-numeric data are converted to -9999.
  • fluxrun can create several plots during processing: raw data availability, raw data aggregates and summary plots of
    all variables in EddyPro's _full_output_ file.
  • In case compressed files are used (.gz), the files are automatically uncompressed (text format) before processing.
    After processing,in case the uncompressed files are no longer needed, they can be automatically deleted. If the
    files have the file extension .gz, they are uncompressed before further processing.

Installation

Installation is currently far from perfect, but here we go:

Using miniconda:

  • Create conda environment with required Python version: conda create -n fluxrun-env python=3.11
  • Activate the created environment: conda activate fluxrun-env
  • Now check the fluxrun releases here and decide which version to use
  • Spot the .tar.gz file of the desired fluxrun version and use it to directly install from the GitHub repo via pip:
    pip install https://github.com/holukas/fluxrun/archive/refs/tags/v2.0.0.tar.gz
  • Now all required dependencies are installed in the environment fluxrun-env
  • Spot the .zip file of the desired fluxrun version and download it from GitHub. Use the same version as for the
    .tar.gz file: https://github.com/holukas/fluxrun/archive/refs/tags/v2.0.0.zip
  • Unzip the zip file to a folder, e.g. C:\fluxrun-2.0.0
  • Start GUI: python C:\fluxrun-2.0.0\fluxrun main.py -g
  • Start processing with CLI: python C:\fluxrun-2.0.0\fluxrun main.py -f C:\my_project -d 10. When using the CLI, you
    basically point fluxrun to a folder and everything it needs to run it searches in that folder. Therefore, the folder
    C:\my_project needs to contain the .eddypro and .metadata files used by EddyPro, and in addition the file
    fluxrunsettings.yaml. The parameter -d 10 means that only fluxes for the last 10 days are calculted. This
    parameter is useful when running fluxrun on an automatic schedule.

Description of GUI settings

Raw Data Files
  • Select raw data source folder (ASCII): Select source folder with eddy covariance (EC) raw data files
  • File name ID: Define file name ID. The file name needs to contain datetime info, it needs info about the year,
    month, day, hours and minutes. Time info refers to the starting time of the file. Files are handled differently
    depending on the file extension. Files with the ending .gz will be umcompressed before processing. Files need to be
    text-based, e.g. CSV files, but they can be compressed as .gz. Example: SITE_yyyymmddHHMM.csv.gz
  • Header format: Numer of header rows in the raw data files.
  • Start: Define start date for processing, files before this date will be ignored.
  • End: Define end date for processing, files after this date will be ignored.
  • Plots:
    • Availability (raw data): Plot data availablility based on the datetime info in the filenames.
    • Aggregates (raw data): Plot aggregates (means) of the raw data.
Flux Processing Settings
  • Run flux calculation using EddyPro: Select for flux calculations.
  • Select EddyPro processing file (*.eddypro): Select .eddypro settings file that contains the flux processing
    settings for EddyPro. fluxrun will search for a .metadata file of the same name in the same folder as the
    .eddypro file. For example, if the settings file is named my_settings.eddypro, then fluxrun needs a metadata
    file with the name my_settings.metadata in the same folder.
Output
  • Select output folder: Select where to store the results. fluxrun automatically creates an output folder structure,
    including run ID for the main folder.
  • Output folder name prefix: Prefix for the output folder, will be combined with the automatically generated run ID.
  • Plots:
    • Summary (flux processing): Simple overview plots generated for each variables in the _full_output_ file from
      the EddyPro output.
After Processing
  • Delete uncompressed raw data ASCII after processing: After processing, fluxrun can delete the uncompressed ASCII
    files. The uncompressed files are needed for flux calculations, but unless there is a desire to store the uncompressed
    files they are no longer needed. Only recommended if the input files were compressed (.gz).

Other changes

  • Now using PyQt6 for GUI
  • Updated code for PyQt6
  • Fixed bug in pandas .pivot() method, small issue due to the updated pandas version
  • diive is now using Python version 3.11 upwards
  • Updated environment, poetry pyproject.toml file now has the currently used structure
  • Added key shortcut to start processing ("Ctrl+R")
  • Added key shortcut save settings ("Ctrl+S")
  • Now always using forward slashes for paths

What's Changed

Full Changelog: v1.4.1...v2.0.0

v1.4.1

27 Mar 13:50
1699a73

Choose a tag to compare

v1.4.1 | 27 Mar 2024

  • Added new sites CH-FOR, CH-HON and CH-TAN in site selection menu
  • Now showing all sites when clicking on site selection drop-down menu
  • Added info about default setting in GUI: Date/Time Format In File Name (default: yyyymmddHHMM)
  • Updated links in sidebar to GitHub locations

What's Changed

New Contributors

Full Changelog: v1.4.0...v1.4.1

v1.4.0

27 Feb 15:59

Choose a tag to compare

v1.4.0 | 27 Feb 2024

  • Added: it is now possible to give a specific file extension in the GUI
    setting Raw Data: File Settings > Date/Time Format In File name. In case no file extension is given, fluxrun
    assumes .csv as the default file extension.
    • Example 1: For uncompressed files named using a format like CH-FRU_ec_20230509-0930_withAGC.dat, the
      respective entry is ec_yyyymmdd-HHMM_withAGC.dat. The site name CH-FRU_ is added automatically during
      processing and must not be added in this setting.
    • Example 2: For uncompressed files named using a format like CH-FRU_202305090930.csv, the respective
      entry is yyyymmddHHMM (same as in earlier version). The site name CH-FRU_ is added automatically during
      processing and must not be added in this setting. The file extension .csv is assumed since no specific file
      extension is given.
    • Example 3: For compressed files named using a format like CH-FRU_ec_20230509-0930_withAGC.dat.gz, the
      respective entry is ec_yyyymmdd-HHMM_withAGC.dat. The suffix .gz is automatically added to the given file
      extension.
    • Example 4: For compressed files named using a format like CH-FRU_202305090930.csv.gz, the respective
      entry is yyyymmddHHMM (same as in earlier version).
  • Added: During unzipping of gzip files, the logger now also displays the name of the file before unzipping
    is started. This way it is easier to identify files for which unzipping does not work, e.g., due to
    corrupted binary files (irregular structure). (fluxrun.ops.file.uncompress_gzip)

Full Changelog: v1.3.1...v1.4.0

v1.3.1

25 Oct 16:38

Choose a tag to compare

Updated lock file