deal.II Authors

deal.II is a global project. It is administered by a group of principal developers. Technical decisions are made by the principal developers and a group of developers consisting of long-term contributors with a global overview of the library. A large number of contributors have provided substantial patches over the years. These three groups are listed below.

Principal developers

Developers

Contributors

Many people have contributed to deal.II over the years, some of them very substantial parts of the library. Their work is greatly appreciated: no open source project can survice without a community. The following people contributed major parts of the library (in alphabetical order), with many more that have sent in fixes and small enhancements:

  • Mihai Alexe: Improvements in hp interpolation.
  • Moritz Allmaras: Step-29 tutorial program.
  • Fahad Alrashed: work in PETScWrappers, various other fixes.
  • Michael Anderson: Linear complexity grid reordering algorithm in 2d and 3d.
  • Juan Carlos Araujo Cabarcas: Work on ARPACK.
  • Andrew Baker: Improvements on Trilinos AMG preconditioner interfaces.
  • Mauro Bardelloni: Work on Linear Operator.
  • Alistair Bentley: FE_BDM improvements, small fixes.
  • Andrea Bonito: Step-38, work on codimension functionality.
  • Marco Borelli: Small fixes.
  • Benjamin Brands: Small fixes.
  • Claire Bruna-Rosso: Improvements to hp::SolutionTransfer.
  • Markus Bürg: Conical meshes and geometries;   step-45 tutorial program;   VectorTools::project_boundary_values_curl_conforming;   MUMPS interface, FE_Nedelec for arbitrary polynomial degrees.
  • John Burnell: Configuration on Microsoft Windows systems.
  • Krysztof Bzowski: Various small fixes.
  • Praveen C: Various smaller fixes.
  • Brian Carnes: Hierarchical finite element classes;   random fixes and enhancements.
  • Nicola Cavallini: FEBernstein.
  • Jordan Cazamias: Work on tools for testing. Linear algebra.
  • Conrad Clevenger: SparsityPattern::print_svg().
  • Ivan Christov: Step-25 tutorial program.
  • Chih-Che Chueh: Step-43 tutorial program. Bug fixes.
  • Minh Do-Quang: Small fixes.
  • Kevin Drzycimski: Improvements on face measurement methods.
  • Kevin Dugan: Fixes in VectorTools::interpolate.
  • Marco Engelhard: Better support for output for Paraview.
  • Patrick Esser: FE_RannacherTurek.
  • Anton Evgrafov: Work on FE_TraceQ.
  • Menno Fraters: Small fixes.
  • Jörg Frohne: step-41. Fixes in many places.
  • Thomas Geenen: Support for different geometries.
  • Rene Gassmoeller: Triangulation partitioning with weights, various smaller contributions.
  • Martin Genet: Make SparseDirectUMFPACK work with block matrices.
  • Arezou Ghesmati: Utility functions in DoFTools and GridTools for patch support, work on VectorTools::integrate_difference().
  • Nicola Giuliani: QTelles.
  • Christian Goll: Abstraction of material and boundary indicators. Enhancements in various places.
  • Alexander Grayver: Fixes in PETScWrappers, the Nedelec element, and various other places.
  • Ryan Grove: Documentation.
  • Felix Gruber: Documentation.
  • Maien Hamed: FiniteElement derivatives. Various fixes.
  • Ralf Hartmann: Ralf was one of the original developers and maintainers of the library until 2011. He has written significant chunks of code throughout the library.
  • Eric Heien: HDF5 output.
  • Christoph Heiniger: Small fixes.
  • Michael F. Herbst: Work related to AlignedVector.
  • Dakshina Ilangovan: Small fixes.
  • Bärbel Janssen: Lots of work on multigrid for adaptive meshes;   multigrid in the MeshWorker framework;   step-16. Various fixes.
  • Armin Ghajar Jazi: Small fixes.
  • Xing Jin: step-24 tutorial program.
  • Oliver Kayser-Herold: Lots of work on hp finite elements;   integration of PETSc's LU decomposition;   hanging node constraints for higher order elements in 3d.
  • Seungil Kim: Help on the step-16 tutorial program.
  • Benjamin Shelton Kirk: Tecplot output.
  • Angela Klewinghaus: FE_TraceQ, a family of face elements which are the traces of H1-conforming finite elements.
  • Uwe Köcher: Microsoft Visual Studio support, small fixes.
  • Aslan Kosakian: Work on GridIn::read_unv().
  • Adam Kosik: Small fixes.
  • Katharina Kormann: Support for arbitrary nodes in FE_Q. Matrix-free framework. step-37 and step-48 tutorial programs.
  • Lukas Korous: Microsoft Visual Studio support, small fixes.
  • Giorgos Kourakos: Improvements on vtk support, small fixes.
  • Oleh Krehel: Documentation fixes, small fixes.
  • Ross Kynch: Small fixes.
  • Konstantin Ladutenko: step-6 improvements.
  • Damien Lebrun-Grandie: step-52 tutorial program.
  • Tobias Leicht: Lots of work on internal data structures: anisotropic refinement (including step-30), faces without level, support for previously unorientable meshes;   extension of DataOut to higher order mapping functions; DataPostprocessor;   GridIn::read_tecplot;   made SolutionTransfer independent of Triangulation::user_pointers;   random bug fixes and enhancements.
  • Yan Li: step-21 tutorial program.
  • Manuel Quezada de Luna: Documentation improvements.
  • Vijay Mahadevan: Enhancements in the interface to PETSc. Support for reading GMSH 2.5 format.
  • Cataldo Manigrasso: Work on the codimension-one meshes, DoFHandler, and finite elements.
  • Andre Massing: Small fixes.
  • Andrew McBride: FEValues extractors for symmetric tensors. step-44.
  • Craig Michoski: Periodic boundaries
  • Scott Miller: Enhancements to FE_Nothing, step-51, many smaller fixes.
  • Andrea Mola: OpenCASCADE support
  • Helmut Müller: Multiprocessor detection on Mac OS X.
  • Jose Javier Munoz Criollo: Improvements in PETScWrappers.
  • Stefan Nauber: Postscript output.
  • David Neckels: step-33 tutorial program.
  • M. Sebastian Pauletti: Making meshes embedded in higher space dimensions more usable;   many bug fixes and enhancements for codimension-one computations and throughout the library.
  • Jean-Paul Pelteret: step-44, linear algebra, mesh converter, bug fixes.
  • Jonathan Pitt: Enhancements to FE_Nothing. Changes in a variety of places.
  • Guiseppe Pitton: Quadrature formulas.
  • Fernando Posada: GridTools::get_all_vertices_at_boundary
  • Adam Powell IV: Configuration issues, Debian packages.
  • Florian Prill: Gauss Lobatto quadrature, random bug fixes.
  • Andreas Putz: GridIn::read_vtk().
  • Lei Qiao: New Triangulation signals, linear algebra, small fixes.
  • Daniel Castanon Quiroz: Torus domain and boundary.
  • Michael Rapson: PointValueHistory class.
  • Thomas Richter: Povray output;   multi-threading work;   refinement functions;   MinRes linear solver.
  • Gennadiy Rishin: Small fixes.
  • Angel Rodriguez: Small fixes.
  • Ian Rose: Small fixes.
  • Shiva Rudraraju: Small fixes.
  • Mayank Sabharwal: GridIn::read_vtk().
  • Abner Salgado-Gonzalez: step-35 tutorial program. Other fixes.
  • Alberto Sartori: ParameterHandler improvements. Smaller fixes.
  • Anna Schneebeli: Help and advice for Nedelec elements, writing the excellent report on Nedelec elements.
  • Jan Schrage: Initial parts of the tutorial.
  • Ralf B. Schulz: Support for DLLs on Windows systems.
  • Daniel Shapero: InterpolatedTensorProductGridData::gradient().
  • Jason Sheldon: More generic FESystems. Enhancements in a variety of places.
  • Florian Sonner: DoFRenumbering::block_wise for multigrid, SparseVanka improvements.
  • Michael Stadler: Reading 3d data in UCD, accepting boundary data in 3d;   Eulerian mappings.
  • Jan Stebel: Small fixes.
  • Martin Steigemann: Graphical user interface for the ParameterHandler class. ParaSails preconditioner. Functionality in various places of the library.
  • Simon Sticko: Eigenvalues in SolverCG and SolverGMRES.
  • Franz-Theo Suttmeier: Initial parts of the linear algebra libraries.
  • Zhen Tao: Work on VectorTools::integrate_difference. Smaller fixes.
  • Marco Tezzele: MappingFEField, FE_Bernstein.
  • Habib Talavatifard: Bug fixes in the Trilinos interfaces.
  • Ben Thompson: Improvements on PETSc and Trilinos MPI Wrappers.
  • Christophe Trophime: Packaging and configuration issues.
  • Heikki Virtanen: DataOutFaces in parallel.
  • Kainan Wang: Extending deal.ii for 64-bit integer support.
  • Yaqi Wang: The step-28 tutorial program;   some grid generation functions.
  • Sven Wetterauer: Step-15 tutorial program.
  • Daniel Weygand: fixes to GridGenerator::extract_boundary_mesh().
  • Joshua White: Arbitrary order Eulerian mappings.
  • Michal Wichrowski: Small fixes.
  • Christian Wülker: GridOut::write_svg.
  • Yuhan Zhou: Input to the curved boundary example in step-49.
  • Valentin Zingan: Improvements in VectorTools.

deal.II draws from some ideas which were first implemented in the predecessor library, DEAL, developed by Guido Kanschat, Franz-Theo Suttmeier, and Roland Becker. It has also benefitted from knowing about DiffPack, a library developed in Norway in the 1990s.