v0.7.0
User facing changes
- Add functionalities to cache data when interpolating on nonmatching meshes by @massimiliano-leoni in #2414
- [cmake] make Python3 interpreter optional by @minrk in #2514
- Add divergence conforming discontinuous Galerkin demo for the Navier-Stokes equations by @jpdean in #2390
- Improve C++ docs for collision code functions by @garth-wells in #2518
- Fix some mistakes in BoundingBox by @chrisrichardson in #2525
- Improve XDMFFile docs by @jorgensd in #2532
- Add explicit destruction of PETSc Python objects by @garth-wells in #2560
- Let integration entities be specified manually by @jpdean in #2269
- Add demo of mixed Poisson problem by @jhale in #2502
- Add biharmonic demo (Python and C++) by @juliusgh in #2508
- Allow extra control for mesh partitioning from python by @jorgensd in #2598
- Fixes for mixed dimensional topology in dolfinx.io.create_vtk_mesh by @francesco-ballarin in #2608
- Add default scalar type by @garth-wells in #2610
- Support for
FiniteElement
s with different scalar types by @garth-wells in #2634 - Add ADIOS2 engine as option by @garth-wells in #2636
- Fix 3D manifolds from vector and tensorfunctionspace by @jorgensd in #2655
- Remove petsc from some tests by @chrisrichardson in #2657
- Add Block support to MatrixCSR by @chrisrichardson in #2654
- Constrain scalar types with concept by @jhale in #2690
- Add info about polynomial sets to custom element demo by @mscroggs in #2761
- Add IndexMap imbalance "diagnostic" function by @IgorBaratta in #2653
- Make non-matching interpolation more robust and deterministic by @jorgensd in #2788
- Don't use
rank=
in Basix elements by @mscroggs in #2789 - Template over mesh geometry type by @garth-wells in #2603
- Split Docker builds by @jhale in #2642
- Expose lower level
insert_diagonal
function by @IgorBaratta in #2684
Other changes
-
Fix concept requirements by @chrisrichardson in #2513
-
Split pybind11 wrapper code in
fem.cpp
to improve compile times by @garth-wells in #2478 -
make sure setuptools/pip are up-to-date before using them by @minrk in #2515
-
Re-order and edit (some) demos (Python) by @garth-wells in #2512
-
Wrap C++
Mesh
from Python (fixes support for Python 3.11) by @garth-wells in #2500 -
Remove unnecessary call to NBX algorithm when creating sub index map by @jpdean in #2520
-
Wrap mesh tags from Python by @garth-wells in #2522
-
Tidy up Python wrapping of mesh refinement interface by @garth-wells in #2528
-
Split topology and geometry stages in
mesh::create_submesh
by @garth-wells in #2529 -
Fix
create_form
to only integrate over owned entities by @jpdean in #2531 -
Bump dev versions by @garth-wells in #2538
-
Fix doc error in
mesh.create_mesh
for coordinate layout. by @garth-wells in #2540 -
Minor install updates in
README.md
by @garth-wells in #2542 -
Template
mesh::Geometry
over scalar type by @garth-wells in #2457 -
Fix UFL version in
setup.py
by @garth-wells in #2548 -
Add point as cell type to be able to read in vertex tags by @jorgensd in #2549
-
Default to ninja when building Python/pybind11 interface by @garth-wells in #2550
-
Update OneAPI and Redhat Dockerfiles by @garth-wells in #2551
-
Run subset of tests in parallel by @garth-wells in #2553
-
Dockerfile PETSc version bump by @garth-wells in #2552
-
Use larger arm Docker build runner (more memory) by @garth-wells in #2554
-
Remove clang from Dockerfile by @garth-wells in #2555
-
Expose real version of inverse transform to python by @jorgensd in #2547
-
Fix extraction of mesh from array of forms in lifting by @garth-wells in #2562
-
Basix interface change by @chrisrichardson in #2563
-
Move location of pybind11 import in
setup.py
by @garth-wells in #2564 -
Fix checkout path of macos CI by @garth-wells in #2565
-
Fix another call to create_element by @chrisrichardson in #2566
-
Fix in setup.py for Spack builds by @garth-wells in #2567
-
Revert setup.py changes by @garth-wells in #2568
-
Just fixing a few typos by @massimiliano-leoni in #2569
-
Bump PETSc version in Dockerfile by @garth-wells in #2572
-
Add missing include to demo for (
std::numbers
) by @garth-wells in #2582 -
Add more versions of DOLFINx to dropdown by @jorgensd in #2581
-
Remove some
isinstance
by @garth-wells in #2587 -
Fix DOF transformations for custom elements by @mscroggs in #2588
-
Extend VectorFunctionSpace to custom elements by @pierricmora in #2576
-
Reduce function argument types to basic types by @garth-wells in #2592
-
Fix call to dolfinx.cpp.io.extract_vtk_connectivity in dolfinx.io.create_vtk_mesh by @francesco-ballarin in #2594
-
Replace UFL elements with Basix elements in tests and demos by @mscroggs in #2381
-
Fix template parameters by @chrisrichardson in #2605
-
Mixed topology by @chrisrichardson in #2597
-
Associate
MeshTags
withTopology
(and notMesh
) by @garth-wells in #2607 -
Extend geometry scalar typing by @garth-wells in #2611
-
Remove inconsistent behaviour when building sparsity pattern from forms by @garth-wells in #2615
-
Simplify
fem::Form
domain handling by @garth-wells in #2617 -
Fix Cython version to temporarily fix issue with petsc4py includes by @jhale in #2620
-
Use
std::span
for Form domain indices by @garth-wells in #2621 -
Update for Basix type changes by @garth-wells in #2623
-
Fix std::function memory error in Forms by @garth-wells in #2626
-
Update for Basix templating over scalar type by @garth-wells in #2630
-
Add
complex
to type hints forConstant
by @garth-wells in #2635 -
Flatten dofmap storage by @garth-wells in #2632
-
Variable only used in assert causing unused variable warnings on release by @jorgensd in #2637
-
Fix for interpolation of a callable on cells subset by @francesco-ballarin in #2640
-
Use container instead of allocator in
dolfinx::la::Vector
by @chrisrichardson in #2639 -
Use wider integer type in SparsityPattern adjacency data structures by @garth-wells in #2641
-
Use more expressive Actions labels by @garth-wells in #2644
-
Remove "needs" from the first step of the end-user Docker images workflow, since now build images are prepared in a standalone workflow by @francesco-ballarin in #2643
-
Fix over-elaborated enum int type by @garth-wells in #2646
-
Further fixes for gcc-13 by @chrisrichardson in #2647
-
Fix macOS CI by @garth-wells in #2648
-
Adjust API to be more consistent by @chrisrichardson in #2650
-
Bump versions in oneAPI Docker file by @garth-wells in #2656
-
Wrong function-space used in direct solver by @jorgensd in #2660
-
Version updates in docker files by @garth-wells in #2662
-
macOS CI updates by @garth-wells in #2665
-
Get macOS CI working again by @garth-wells in #2667
-
Reduce number of build threads for doxygen in Docker by @garth-wells in #2669
-
Update PETSC_ARCH in CI by @garth-wells in #2670
-
Build petsc4py and SLEPc for
float
in Dockerfile by @garth-wells in #2672 -
Typos by @massimiliano-leoni in #2678
-
Add elasticity to 'types' demo by @garth-wells in #2685
-
Support for 32-bit floats by @garth-wells in #2651
-
Remove Python 'meta classes' by @garth-wells in #2683
-
Consolidate petsc wrapper code into one file by @chrisrichardson in #2688
-
Enable CI for PETSc with 64-bit complex (single precision) scalars by @garth-wells in #2689
-
CI using float with oneAPI by @garth-wells in #2691
-
Remove petsc4py from tests where possible by @garth-wells in #2692
-
Parameterise some geometry test by @garth-wells in #2693
-
oneAPI test improvements by @garth-wells in #2694
-
Reduce code duplication by @garth-wells in #2696
-
Disable a nested matrix test in single precision by @garth-wells in #2698
-
Remove more petsc-specific tests by @chrisrichardson in #2695
-
Add interface to wrap MatrixCSR as SciPy sparse matrix by @garth-wells in #2699
-
Fix extraction of
fem::Function
names in ADIOS2-based output by @garth-wells in #2708 -
Isolate petsc4y in Python interface by @garth-wells in #2703
-
Pass ADIOS2 egine through for Fides (Python) by @garth-wells in #2709
-
Make numerical tolerance dependent on input type by @jorgensd in #2697
-
Revert geometric tolerance changes by @garth-wells in #2711
-
Add extra merge queue tests by @garth-wells in #2714
-
Correctly wrap FidesWriter constructor by @massimiliano-leoni in #2718
-
Add optional type check in HDF5 files by @garth-wells in #2721
-
Add missing forward scatters in C++ demos by @garth-wells in #2722
-
Avoid introducing HDF5-HL library by @garth-wells in #2725
-
Get Debug mode in Python working again for CI by @chrisrichardson in #2723
-
Dependency version bumps in Dockerfiles by @garth-wells in #2726
-
Perform checks on matrix insertion in
MatrixCSR
by @chrisrichardson in #2728 -
Put adios2 python interface in usr/local/lib by @jorgensd in #2729
-
Use PETSc release version in oneAPI docker file by @garth-wells in #2731
-
Simplify
fem::Expression
by @garth-wells in #2730 -
Allow trivial (null) cell partitioner by @garth-wells in #2727
-
Rename ‘MatrixCSR::finalize’ to ‘MatrixCSR::scatter_rev’ by @chrisrichardson in #2732
-
Update to Catch2 v3 for C++ unit testing by @garth-wells in #2733
-
Refactor Gmsh demo by @garth-wells in #2734
-
Require interpolation before XDMF output by @garth-wells in #2735
-
Use new static data structures in ufcx for
entity_dofs
by @chrisrichardson in #2742 -
Minor changes left out of #2742 by @garth-wells in #2743
-
Get integral data from static data structures, not a function by @chrisrichardson in #2744
-
Minor fix for missed ufcx change by @chrisrichardson in #2745
-
Rename integrals -> form_integrals in demo by @mscroggs in #2746
-
Remove empty non matching mesh interpolation data exception by @nate-sime in #2748
-
Fix LaTeX text formatting issue by @garth-wells in #2753
-
Parameterise some assembly tests over scalar type by @garth-wells in #2765
-
Add shape argument to
FunctionSpace
for creating blocked scalar element spaces by @garth-wells in #2766 -
Remove "create" prefix from some functions by @garth-wells in #2763
-
Create doc images in doc source rather than code source directory by @garth-wells in #2770
-
Update for mdspan by @garth-wells in #2772
-
Stop using deprecated UFL initialisation by @mscroggs in #2777
-
Add missing templating of inverse transform by @jorgensd in #2778
-
Re-design gmsh import in
io.gmshio
by @garth-wells in #2775 -
Update Github action versions by @garth-wells in #2779
-
Revise a
gmshio
docstring by @garth-wells in #2780 -
Improve CMake test and demo building by @garth-wells in #2781
-
Change release/development order in spack test by @garth-wells in #2782
-
Add complex wrappers for equivalent floating type for exposed dof transformations by @jorgensd in #2783
-
Avoid Basix enums in the DOLFINx pybind11 interface by @garth-wells in #2785
-
Bump dependency versions in Dockerfiles by @garth-wells in #2790
-
PETSc version updates by @garth-wells in #2791
-
Tidy up syntax by @garth-wells in #2793
-
Sonar analysis fixes by @garth-wells in #2794
-
Update test for petsc4py v3.20 by @garth-wells in #2798
-
Disable mypy on petsc4py 3.20 types by @garth-wells in #2799
-
Fixes in docker files by @garth-wells in #2797
-
Remove debugging messages in Python CMakeLists.txt by @jhale in #2801
-
Re-factor a PETSc Vec creation function due to OpenMPI/PETSc interaction issue by @garth-wells in #2802
New Contributors
- @pierricmora made their first contribution in #2576
Full Changelog: v0.6.0...v0.7.0