Note: this is documentation for an old release. View the latest documentation at docs.fenicsproject.org/v0.3.0/v0.9.0/cpp
DOLFINx  0.3.0
DOLFINx C++ interface
Class Hierarchy

Go to the graphical class hierarchy

This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 12]
 Cdolfinx::graph::AdjacencyList< T >This class provides a static adjacency list data structure. It is commonly used to store directed graphs. For each node in the contiguous list of nodes [0, 1, 2, ..., n) it stores the connected nodes. The representation is strictly local, i.e. it is not parallel aware
 Cdolfinx::array2d< T, Allocator >This class provides a dynamic 2-dimensional row-wise array data structure
 Cdolfinx::geometry::BoundingBoxTreeAxis-Aligned bounding box binary tree. It is used to find entities in a collection (often a mesh::Mesh)
 Cdolfinx::MPI::CommA duplicate MPI communicator and manage lifetime of the communicator
 Cdolfinx::fem::Constant< T >A constant value which can be attached to a Form. Constants may be scalar (rank 0), vector (rank 1), or tensor valued
 Cdolfinx::fem::CoordinateElementThis class manages coordinate mappings for isoparametric cells
 Cdolfinx::fem::DirichletBC< T >Interface for setting (strong) Dirichlet boundary conditions
 Cdolfinx::fem::DofMapDegree-of-freedom map
 Cdolfinx::fem::ElementDofLayoutThe class represents the degree-of-freedom (dofs) for an element. Dofs are associated with a mesh entity. This class also handles sub-space dofs, which are views into the parent dofs
 Cdolfinx::fem::Expression< T >Represents a mathematical expression evaluated at a pre-defined set of points on the reference cell. This class closely follows the concept of a UFC Expression
 Cstd::false_type
 Cdolfinx::MPI::dependent_false< T >
 Cdolfinx::fem::FiniteElementFinite Element, containing the dof layout on a reference element, and various methods for evaluating and transforming the basis
 Cdolfinx::fem::Form< T >Class for variational forms
 Cdolfinx::fem::Function< T >This class represents a function \( u_h \) in a finite element function space \( V_h \), given by
 Cdolfinx::function::Function< T >
 Cdolfinx::fem::FunctionSpaceThis class represents a finite element function space defined by a mesh, a finite element, and a local-to-global map of the degrees of freedom (dofmap)
 Cdolfinx::mesh::GeometryGeometry stores the geometry imposed on a mesh
 Cdolfinx::io::HDF5InterfaceThis class provides an interface to some HDF5 functionality
 Cdolfinx::common::IndexMapThis class represents the distribution index arrays across processes. An index array is a contiguous collection of N+1 indices [0, 1, . . ., N] that are distributed across M processes. On a given process, the IndexMap stores a portion of the index set using local indices [0, 1, . . . , n], and a map from the local indices to a unique global index
 Cdolfinx::mesh::MeshA Mesh consists of a set of connected and numbered mesh topological entities, and geometry data
 Cdolfinx::mesh::MeshTags< T >A MeshTags are used to associate mesh entities with values. The entity index (local to process) identifies the entity. MeshTags is a sparse data storage class; it allows tags to be associated with an arbitrary subset of mesh entities. An entity can have only one associated tag
 Cdolfinx::nls::NewtonSolverThis class defines a Newton solver for nonlinear systems of equations of the form \(F(x) = 0\)
 Cdolfinx::la::PETScKrylovSolverThis class implements Krylov methods for linear systems of the form Ax = b. It is a wrapper for the Krylov solvers of PETSc
 Cdolfinx::la::PETScOperatorThis class is a base class for matrices that can be used in PETScKrylovSolver
 Cdolfinx::la::PETScMatrixIt is a simple wrapper for a PETSc matrix pointer (Mat). Its main purpose is to assist memory management of PETSc Mat objects
 Cdolfinx::la::PETScOptionsThese class provides static functions that permit users to set and retrieve PETSc options via the PETSc option/parameter system. The option must not be prefixed by '-', e.g
 Cdolfinx::la::PETScVectorA simple wrapper for a PETSc vector pointer (Vec). Its main purpose is to assist with memory/lifetime management of PETSc Vec objects
 Cdolfinx::la::SparsityPatternThis class provides a sparsity pattern data structure that can be used to initialize sparse matrices
 Cdolfinx::TableThis class provides storage and pretty-printing for tables. Example usage:
 Cdolfinx::common::TimeLoggerTimer logging
 Cdolfinx::common::TimeLogManagerLogger initialisation
 Cdolfinx::common::TimerA timer can be used for timing tasks. The basic usage is
 Cdolfinx::mesh::TopologyTopology stores the topology of a mesh, consisting of mesh entities and connectivity (incidence relations for the mesh entities)
 Cdolfinx::common::UniqueIdGeneratorThis is a singleton class that return IDs that are unique in the lifetime of a program
 Cdolfinx::la::Vector< T, Allocator >Distributed vector
 Cdolfinx::la::VectorSpaceBasisThis class defines a basis for vector spaces, typically used for expressing nullspaces of singular operators and 'near nullspaces' used in smoothed aggregation algebraic multigrid
 Cdolfinx::io::VTKFileOutput of meshes and functions in VTK/ParaView format. Isoparametric meshes of arbitrary degree are supported. For finite element functions, cell-based (DG0) and Lagrange (point-based) functions can be saved. For vertex-based functions the output must be isoparametic, i.e. the geometry and the finite element functions must be defined using the same basis
 Cdolfinx::io::XDMFFileRead and write mesh::Mesh, fem::Function and other objects in XDMF