PCRaster Changelog

What's new in PCRaster 4.4.0

Oct 12, 2022
  • PCRaster now supports the ARM architecture (#341), packages for Apple M1 are available on conda-forge.
  • Other updates relevant for users:
  • You can compile PCRaster on your HPC with EasyBuild. Use or adapt our easyconfig files.
  • The sources can be compiled on aarch64 Linux systems as well.
  • Aguila was again refactored to reduce runtime library dependencies, notably the command line interface. The functionality should remain the same. In case you experience any differences to previous Aguila versions consider it as a defect and please report it at our issues page.
  • We fixed an issue where Aguila could hang on Windows (#333).
  • We fixed an incorrect image plotting of LDD raster (#362).
  • We fixed another segmentation fault at script exit when using modules from PCRaster, GDAL and QGIS (#361).
  • We further improved the code quality and the build system to ensure an ongoing creation of PCRaster packages, amongst others:
  • Building against the latest Python 3 version. Supported are 3.8 - 3.11
  • Replacing Boost.Filesystem by std::filesystem
  • Boost is no longer a runtime dependency
  • Further modernisation of the source code and build system.
  • Various improvements to support gcc-12, clang-14, Visual Studio 2019 and 2022.

New in PCRaster 4.3.3 (Mar 7, 2022)

  • We improved the internal precision of the maptotal operation resulting in more reliable results when using large datasets (#336).
  • We fixed several memory leaks in the multicore module (#344).
  • We fixed a segmentation fault at module exit when PCRaster and GDAL are used (#343).

New in PCRaster 4.3.2 (Nov 12, 2021)

  • This is a bug fix release for 4.3. We fixed:
  • Several small fixes to allow building with newer versions of 3rd party libraries (#339).
  • pcr.setclone, pcr.readmap: improved error message for non-PCRaster file arguments (#337).
  • The mldd package is again included by default (#235).

New in PCRaster 4.3.0 (Oct 19, 2020)

  • These are the most important changes:
  • PCRaster is available on conda-forge and can be installed using conda. Supported platforms are Linux, macOS and Windows. Supported Python versions are 3.6, 3.7 and 3.8.
  • We no longer provide support for Python 2.
  • We fixed a bug occurring when pickling PCRaster maps. Note that PCRaster maps pickled with previous versions cannot be opened with this version.
  • We fixed an incorrect return value while using a nonspatial condition in ifthen.
  • We fixed several minor inconsistencies in the multicore module.
  • We added the Python functions cellvalue_by_coordinates, cellvalue_by_index, cellvalue_by_indices and version_tuple.
  • We added a plot function to create basic plots of PCRaster maps in case the matplotlib module is installed.
  • On Windows, mapattr and legend show the menu again.
  • We fixed the incorrect rendering of directional rasters in Aguila.
  • PCRaster Modflow now supports the GHB package.
  • PCRaster Modflow BCF package received an optional flag to directly pass hcond and vcond values to Modflow.
  • Command line applications now show version numbers instead of a build date.
  • The exit value of applications only showing the usage information changed from 1 (EXIT_FAILURE) to 0 (EXIT_SUCCESS).

New in PCRaster 4.1.0 (Aug 19, 2016)

  • Shared libraries are now installed in a seperate directory called lib, just like on the other platforms. The path to this directory does not have to be listed in the $PATH environment variable. This has the advantage that the shared libraries shipped with PCRaster will never conflict with shared libraries shipped with other software, and visa versa.
  • Aguila:
  • It is now possible again to select a specific column from a timeseries file, like it used to.
  • PCRaster Python package:
  • PCRaster data types can now be serialized by the pickle module (Ticket #593). See also the pickle Python module. More about this in a future release.
  • GDAL:
  • The submitted patches for the GDAL PCRaster driver support the dynamic creation of PCRaster maps and contain some updates. We expect the functionality to be integrated in one of the next official GDAL releases.
  • Documentation:
  • Minor updates to documentation of spatial, transient and horizontan operations.

New in PCRaster 4.0.2 (Aug 19, 2016)

  • This release improves the reliability of PCRaster applications relating to large data sets, includes functional enhancements for the Modflow extension, and fixes several bugs.
  • PCRaster model engine:
  • An erroneous check was replaced to allow for processing maps with more than 2^31 - 1 cells on 64bit systems.
  • col2map:
  • We fixed the incorrect allocation of cells when using maps with more than 2^31 - 1 cells.
  • We fixed the incorrect printout of cells with more than one record.
  • Modflow extension:
  • Added functions to obtain cell-by-cell values for storage, constant heads, and front/right/lower flow face.
  • Fixed incorrect reporting of the Python getRiverLeakage.
  • Fixed activation of well package for time steps > 1.
  • Fixed setting of rewetting thresholds for top layer type laycon 1.
  • Fixed usage of reserved unit numbers for Modflow input files.
  • Maps now can be reported at time steps where Modflow fails to converge.
  • Minor performance improvements reducing the memory and I/O load
  • Aguila:
  • We fixed the incorrect colour assignment of 2D directional data types.
  • We fixed the incorrect colour assignment of 3D directional and scalar data types.
  • Documentation:
  • Minor updates.

New in PCRaster 4.0.1 (Aug 19, 2016)

  • This is a bug fix release for 4.0.
  • Global options chezy and manning for dynwavestate, dynwaveflux, dynamicwave (pcrcalc, PCRaster Python package)
  • dynamicwave (pcrcalc, PCRaster Python package):
  • We discovered and fixed a bug in the dynamicwave operation while using the Manning algorithm (Ticket #609). As the Manning algorithm was used as default (see the remarks above) it is expected that your model results will change.
  • Aguila:
  • Fixed ‘#624 cannot open .tss files in PCRASTER 4 aguila version’.
  • PCRaster Python package:
  • Fixed a wrong number of arguments in the base class for dynamic models.
  • resample:
  • Fixed a regression that caused the generation of MV in all cells while using the crop option.
  • pcrcalc:
  • Fixed a redundant timestep output.
  • Documentation:
  • The manual pages include updates for the mapattr application and the lookupstate and lookuppotential operations.
  • Developer information:
  • Ported machine_status.py to newer apt_pkg, updated list of required applications for compiling PCRaster.

New in PCRaster 4.0.0 (Aug 19, 2016)

  • General:
  • Changed the license of all PCRaster source code to the GPLv3 open source license. Moved all sourcecode to the PCRaster Open Source Tools site at SourceForge.
  • The installation process of PCRaster has been simplified.
  • Removed support for reading HDF4 formatted rasters. Maintaining support for this format proved to be too much of a hassle.
  • pcrcalc:
  • Removed support for encrypting models.
  • Removed support for license specific functionality (like missing value compression). All features that used to require a commercial license are available for everybody now.
  • resample:
  • Fixed the spurious creation of adjacent raster cells while using resample as cookie cutter.
  • PCRaster Python package:
  • Updated the code to allow the garbage collector to reclaim memory used by some of the framework class instance, after the last reference goes out of scope.
  • Updated the code to prevent that the memory used by the PCRaster Python extension increases during a model run.
  • PCRaster Python package now depends on Python 2.7.
  • PCRaster Python package uses lower case names for package names. Update all PCRaster related imports and change them to lower case. See also the Style Guide for Python Code.
  • Removed pcraster.numpy sub-package. Numpy functionality is merged in the pcraster main package and available without an explicit import of the numpy sub-package. Remove any import of pcraster.numpy and rename any calls of pcraster.numpy.pcr2numpy and pcraster.numpy.numpy2pcr to pcraster.pcr2numpy and pcraster.numpy2pcr.
  • Removed pcr2numarray and numarray2pcr which were already deprecated. Use pcr2numpy and numpy2pcr.
  • Reimplemented numpy2pcr. It is faster now.
  • Added a setclone overload taking nrRows, nrCols, cellSize, west, north. No need to pass the name of an existing raster anymore.
  • MODFLOW extension:
  • Fixed a crash.
  • Renamed extension from PCRasterModflow to pcraster_modflow.