Skip to content

Releases: pmgbergen/porepy

PorePy version 1.9.0

03 May 11:54
6301c8b
Compare
Choose a tag to compare

What's Changed

This is the first of two planned releases of PorePy in 2024. The release provides some new and expanded functionality, together with several bugfixes and other improvements.

The main changes are as follows:

  • In the models, diffusive terms with non-linear coefficients can be discretized with a new mixin class class AdTpfaFlux (for practical usage, see the class DarcysLawAd). For such non-linear problems, the new discretization will give a better approximation of the flux derivative, thus improve the convergence of Newton's method.
  • The Mpsa Biot discretization can now deal with an arbitrary number of coupling tensors (as opposed to a single, scalar coupling coefficient)
  • Functionality for meshing and setting up flow discretizations for some standard geometries defined in benchmarks for 2d and 3d discretization of mixed-dimensional elliptic equations.
  • Discretization matrices of Ad discretizations are now accessed as methods instead of attributes. Example: MpfaAd().flux is replaced by MpfaAd().flux().

Contributors

Full Changelog: v1.8.1...v1.9.0

v1.8.1

01 Nov 09:02
Compare
Choose a tag to compare

This is a minor fix of version 1.8.0.

PorePy version 1.8.0

31 Oct 15:00
Compare
Choose a tag to compare

This is mainly a maintenance release, with the following major maintenance tasks completed:

  • The old Assembler class, previously used to compose mixed-dimensional problems, is deleted, as have many related classes and methods.
  • The test suite has undergone a major rewrite.
  • General maintenance of the source code.

In addition, new functionality has been added, the most important of which is:

  • A new approach for setting boundary conditions in the model classes.

Contributors

  • Omar Duran
  • Ivar Stefansson
  • Ingrid Kristine Jacobsen
  • Marius Nevland
  • Yury Zabegaev
  • Veljko Lipovac
  • Jhabriel Varela
  • Peter von Schultzendorff
  • Wietse Boon
  • Alessio Fumagalli
  • Eirik Keilegavlen

Full Changelog: v1.7.0...v1.8.0

PorePy version 1.7.0

05 May 12:11
49d3a7f
Compare
Choose a tag to compare

This PR provides several major updates of PorePy. The most important changes are:

  • The way equations are specified and solved is completely reworked. The new Model classes provide a flexible way to set up simulations, with extreme modularity to allow for manipulation of individual terms in equations. These classes are now the new recommended way of defining simulation models in PorePy.
  • Documentation is much improved, with updated tutorials as well as updated docstrings that cover a large part of the code.
  • Bugs and other shortcomings have been corrected throughout the code base.

From now on, our aim is to move to a more regular schedule of 2-3 yearly releases. The next release of PorePy is tentatively scheduled for September 2023.

New Contributors

Full Changelog: v1.6.0...v1.7.0

PorePy version 1.6.0

03 Aug 09:10
Compare
Choose a tag to compare

Overview of main changes

This PR contains several major changes that require updates to runscripts:

  • The data structures for the mixed-dimensional grid (formally the GridBucket) has been thoroughly overhauled, see #673 (comment) for a description of the new framework.
  • The interface for export to Paraview has been rewritten, with the new version being more flexible, cleaner and a lot faster. An overview of how to interact with the new structure is given in https://github.com/pmgbergen/porepy/blob/develop/tutorials/exporter.ipynb.
  • The tutorials have been thoroughly overhauled.

Other notable changes:

  • Typing coverage has been much extended.
  • Work on an improved
  • Docker files have been updated, these will be further improved in the coming months.
  • A test for point-in-polyhedron test has been implemented, removing the need to download an external file and thereby simplifying the installation procedure.
  • Several bugfixes and performance improvements.

Deprecations

  • It is becoming clear that the new Automatic Differentiation framework is the way to go for assembling multiphysics systems. To reduce the burden of maintenance, it has been decided to deprecate the Assembler, together with several associated methods and classes, with deletion scheduled for the second half of 2022. For further details, see #673 (comment) (towards the end of the description of the PR).
  • Support for Python 3.7 has been dropped.

Contributors

The following users made their first contribution to PorePy:

Also contributing to this release were:

  • Alessio Fumagalli
  • Eirik Keilegavlen
  • Ivar Stefansson
  • Jhabriel Varela

Full Changelog: v1.5.0...v1.6.0

PorePy version 1.5

07 Oct 12:11
Compare
Choose a tag to compare

Main modifications in this release:

  • Overhaul of the Ad framework:
    • The EquationManager has new functionality, clearer interfaces and improved documentation.
    • Syntax has been simplied, e.g. the class Expression has been removed so that evaluation of an Ad expression is done directly on an Operator.
    • General improvements throughout this part of the code.
  • Simple functionality for including wells. This should be considered experimental for the time being.
  • Introduced a class for time step control, guided by the performance of a non-linear solver.
  • Improved robustness of meshing of complex fracture networks.
  • General maintenance.

Full Changelog: v1.4.2...v1.5.0

The following people have contributed to this pull request

  • Runar Berge
  • Alessio Fumagalli
  • Eirik Keilegavlen
  • Jhabriel Varela
  • Ivar Stefansson

PorePy version 1.4.2

11 May 09:24
Compare
Choose a tag to compare

Minor changes to Ad framework. Some maintainance.

Contributions by:

  • Runar Berge
  • Ivar Stefansson
  • Eirik Keilegavlen

PorePy version 1.4.1

06 Apr 09:43
Compare
Choose a tag to compare

Minor updates:

  • Right hand side terms for some THM simulations
  • maintenance.

PorePy version 1.4.0

15 Mar 09:36
Compare
Choose a tag to compare

This release contains several updates to the code. The most important changes are:

  • Substantial improvements to the meshing of fractured domains.
  • Introduction of a new abstraction level for the automatic differentiation framework.
  • The Biot class for poro-elasticity has clearly been defined as a backend class. To solve poro-elastic problems, use ContactMechanicsBiotModel instead.
  • Support for Python 3.9 is introduced, support for 3.6 has been dropped.
  • The stable branch has changed name from master to main.

Details:

  • Meshing should be faster and more stable, in particular for geometries with many fractures. PorePy now uses the Gmsh python API directly. This can be used to modify mesh size parameters etc., although this has not been explored.
  • The new Ad functionality is currently immature, and prone to sudden changes in the API. The hope is that this will become the new framework for defining equations (thus extending the Assembler, which is mainly targeted towards linear problems). The Ad functionality will be expanded over the coming months.

The following people have contributed to this release:

  • Runar Lie Berge
  • Jakub Both
  • Alessio Fumagalli
  • Eirik Keilegavlen
  • Jhabriel Varela

Drop vtk dependency, update of THM models

10 Dec 12:24
Compare
Choose a tag to compare

Changes:

  • The Exporter is updated to remove the dependency on the vtk package.
  • The models have been updated, with changed names of private functions.

NOTE: The change to the models will break classes that have been derived from the M/HM/THM contact-mechanics models.