- Full refactoring of {py:class}
dolfinx.fem.petsc.NonlinearProblem, which now uses the PETSc SNES backend. See the non-linear poisson demo for details. - {py:class}
dolfinx.fem.petsc.LinearProblemnow requires an additional argument,petsc_options_prefix. This should be a unique string identifier for eachLinearProblemthat is created. - Change how one reads in GMSH data with
gmshio. See the membrane code for more details. - {py:meth}
dolfinx.fem.FiniteElement.interpolation_points-> {py:attr}dolfinx.fem.FiniteElement.interpolation_points. - {py:mod}
dolfinx.io.gmshiohas been renamed to {py:mod}dolfinx.io.gmsh - Input to {py:func}
dolfinx.fem.petsc.create_vectorhas changed. One should now call {py:func}dolfinx.fem.extract_function_spaceson the input form first.
scalein {py:func}apply_lifting<dolfinx.fem.petsc.apply_lifting>has been renamed toalpha- Use
dolfinx.fem.Function.x.petsc_vecas opposed todolfinx.fem.Function.vector
- Replace all
ufl.FiniteElementandufl.VectorElementwith the appropriate {py:func}basix.ufl.element - Replace {py:class}
dolfinx.fem.FunctionSpacewith {py:func}dolfinx.fem.functionspace
- Change pyvista backend to
html, using Pyvista main branch - Using DOLFINx v0.7.2 https://github.com/FEniCS/dolfinx/releases/tag/v0.7.2 as base
- No API changes, release due to various bug-fixes from the 0.7.0 release, see: https://github.com/FEniCS/dolfinx/releases/tag/v0.7.1 for more information
- Renamed
dolfinx.graph.create_adjacencylistto {py:func}dolfinx.graph.adjacencylist - Renamed
dolfinx.plot.create_vtk_meshto {py:func}dolfinx.plot.vtk_mesh - Initialization of {py:class}
dolfinx.geometry.BoundingBoxTreehas been changed to {py:func}dolfinx.geometry.bb_tree create_meshwith Meshio has been modified. Note that you now need to pass dtypenp.int32to the cell_data.- Update dolfinx petsc API. Now one needs to explicitly import {py:mod}
dolfinx.fem.petscand {py:mod}dolfinx.fem.nls, as PETSc is no longer a strict requirement. Replacepetsc4py.PETSc.ScalarTypewithdolfinx.default_scalar_typein demos where we do not use {py:mod}petsc4pyexplicitly.
- Remove
ipyganyandpythreejsas plotting backends. Usingpanel. - Add gif-output to [chapter2/diffusion_code] and [chapter2/hyperelasticity].
- Replace
dolfinx.fem.Function.geometric_dimensionwithlen(dolfinx.fem.Function) - Improve [chapter2/ns_code2] to have better splitting scheme and density.
- Improve mesh quality in [chapter3/em].
jit_paramsandform_compiler_paramsrenamed to*_options.
- Using new GMSH interface in DOLFINx (
dolfinx.io.gmshio) in all demos using GMSH - Added a section on custom Newton-solvers, see [chapter4/newton-solver].
- Various minor DOLFINx API updates.
dolfinx.mesh.compute_boundary_facets-> {py:func}dolfinx.mesh.exterior_facet_indiceswith slightly different functionality. Usedolfinx.mesh.MeshTagsMetaClass.findinstead ofmt.indices[mt.values==value]. - Various numpy updates, use
np.full_like. - Change all notebooks to use jupytext to automatically sync
.ipynbwith.pyfiles. - Add example of how to use
DOLFINxin complex mode, see [chapter1/complex_mode].
- No changes
- All
pyvistaplotting has been rewritten to useipyganyandpythreejsas well as using a cleaner interface. dolfinx.plot.create_vtk_topologyhas been renamed todolfinx.plot.create_vtk_meshand can now be directly used as input to {py:class}pyvista.UnstructuredGrid.dolfinx.fem.Function.compute_point_valueshas been deprecated. Interpolation into a CG-1 is now the way of getting vertex values.- Instead of initializing class with {py:class}
Form<dolfinx.fem.Form>, use {py:func}form<dolfinx.fem.form>. - Instead of initializing class with {py:class}
DirichletBC<dolfinx.fem.DirichletBC>use {py:func}dirichletbc<dolfinx.fem.dirichletbc>. - Updates on error computations in Error control: Computing convergence rates.
- Added tutorial on interpolation of {py:class}
ufl.core.expr.Exprin Deflection of a membrane. - Added tutorial on how to apply constant-valued Dirichlet conditions in Deflection of a membrane.
- Various API changes relating to the import structure of DOLFINx
- Major improvements in Form compiler parameters, using pandas and seaborn for visualization of speed-ups gained using form compiler parameters.
- API change:
dolfinx.cpp.la.scatter_forward(u.x)->u.x.scatter_forward - Various plotting updates due to new version of pyvista.
- Updating of the Hyperelasticity demo, now using DOLFINx wrappers to create the non-linear problem
- Internal updates due to bumping of jupyter-book versions
- Various typos and capitalizations fixed by @mscroggs in PR 35.
- First tagged release of DOLFINx Tutorial, compatible with DOLFINx 0.1.0.