Skip to content

v0.5.0

Latest
Compare
Choose a tag to compare
@github-actions github-actions released this 29 Apr 08:19

GridapSolvers v0.5.0

Diff since v0.4.2

From the beginning of the package, we have naturally wanted to extend the functionalities to GridapP4est and GridapPETSc. However, this comes at a cost: We depended on compatibility with the binaries/artifacts that power those two packages. This has been a downside in terms of compatibility, as showcased by the struggles we had during our JOSS publication. Moreover, the library has come to a point where we do not require PETSc or P4est for most things.

All this considered, I have decided to move all of this code to extensions. Extensions are a new feature of Julia 1.9, that allow conditional loading and extension of packages. This perfectly addresses our needs, so I see no downside of taking this path.

The only downside is that it limits our Julia compat to 1.9 and above. I however do not think this is an issue.

Breaking changes

  • Due to the use of package extensions, only Julia versions above 1.9 are now supported.
  • Moved GridapP4est, GridapPETSc and IterativeSolvers into extensions (i.e weak dependencies). Since PR#76.

Other changes

  • Added support for GMG in serial. Since PR#68.
  • Added Vanka-like smoothers in serial. Since PR#68.
  • Added StaggeredFEOperators and StaggeredFESolvers. Since PR#84.
  • Added RichardsonLinearSolver. Since PR#87.
  • Added NullspaceSolver for serial. Since PR#88.

Merged pull requests:

Closed issues:

  • FullyAssembledRows vs SubAssembledRows for GMG (#11)
  • Making FGMRESSolver accept nothing as the right preconditioner (#85)
  • Preconditioned Richardson Iteration linear solver (#86)