DOLFIN-X
DOLFIN-X C++ interface
Class List
Here are the classes, structs, unions and interfaces with brief descriptions:
[detail level 123]
 Ndolfinx
 NcommonMiscellaneous classes, functions and types
 CIndexMapThis class represents the distribution index arrays across processes. An index array is a contiguous collection of N+1 block indices [0, 1, . . ., N] that are distributed across processes 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 block indices to a unique global block index
 CSubSystemsManagerThis is a singleton class which manages the initialisation and finalisation of various sub systems, such as MPI and PETSc
 CTimeLoggerTimer logging
 CTimeLogManagerLogger initialisation
 CTimerA timer can be used for timing tasks. The basic usage is
 CUniqueIdGeneratorThis is a singleton class that return IDs that are unique in the lifetime of a program
 NfemFinite element method functionality
 CCoordinateElementThis class manages coordinate mappings for isoparametric cells
 CDirichletBCInterface for setting (strong) Dirichlet boundary conditions
 CDiscreteOperatorsDiscrete gradient operators providing derivatives of functions
 CDofMapDegree-of-freedom map
 CDofMapBuilderBuilds a DofMap on a mesh::Mesh
 CElementDofLayoutThe 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
 CFiniteElementFinite Element, containing the dof layout on a reference element, and various methods for evaluating and transforming the basis
 CFormClass for variational forms
 CFormCoefficientsStorage for the coefficients of a Form consisting of Function and the Element objects they are defined on
 CFormIntegralsIntegrals of a Form, including those defined over cells, interior and exterior facets, and vertices
 CReferenceCellGeometryTabulates the vertex positions for the reference cell
 CSparsityPatternBuilderThis class provides functions to compute the sparsity pattern based on DOF maps
 NfunctionFunctions tools, including FEM functions and pointwise defined functions
 CConstantA constant value which can be attached to a Form. Constants may be scalar (rank 0), vector (rank 1), or tensor valued
 CFunctionThis class represents a function \( u_h \) in a finite element function space \( V_h \), given by
 CFunctionSpaceThis 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)
 NgenerationGenerators for simple meshes
 CBoxMeshTetrahedral mesh of the 3D rectangular prism spanned by two points p0 and p1. Given the number of cells (nx, ny, nz) in each direction, the total number of tetrahedra will be 6*nx*ny*nz and the total number of vertices will be (nx + 1)*(ny + 1)*(nz + 1)
 CIntervalMeshInterval mesh of the 1D line [a,b]. Given the number of cells (n) in the axial direction, the total number of intervals will be n and the total number of vertices will be (n + 1)
 CRectangleMeshTriangular mesh of the 2D rectangle spanned by two points p0 and p1. Given the number of cells (nx, ny) in each direction, the total number of triangles will be 2*nx*ny and the total number of vertices will be (nx + 1)*(ny + 1)
 NgeometryGeometry data structures and algorithms
 CBoundingBoxTreeAxis-Aligned bounding box binary tree. It is used to find entities in a collection (often a mesh::Mesh)
 NgraphGraph data structures and algorithms
 CAdjacencyListThis 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
 CBoostGraphColoringThis class colors a graph using the Boost Graph Library
 CBoostGraphOrderingThis class computes graph re-orderings. It uses Boost Graph
 CKaHIPThis class provides an interface to KaHIP parallel partitioner
 CParMETISThis class provides an interface to ParMETIS
 CPartitioningTools for distributed graphs
 CSCOTCHThis class provides an interface to SCOTCH-PT (parallel version)
 NioSupport for file IO
 CHDF5InterfaceThis class provides an interface to some HDF5 functionality
 CVTKFileOutput of meshes and functions in VTK format
 CVTKWriterWrite VTK mesh::Mesh representation
 CXDMFFileRead and write mesh::Mesh, function::Function and other objects in XDMF
 NlaLinear algebra interface
 CPETScKrylovSolverThis class implements Krylov methods for linear systems of the form Ax = b. It is a wrapper for the Krylov solvers of PETSc
 CPETScMatrixIt is a simple wrapper for a PETSc matrix pointer (Mat). Its main purpose is to assist memory management of PETSc Mat objects
 CPETScOperatorThis class is a base class for matrices that can be used in PETScKrylovSolver
 CPETScOptionsThese 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
 CPETScVectorIt is a simple wrapper for a PETSc vector pointer (Vec). Its main purpose is to assist memory management of PETSc Vec objects
 CSparsityPatternThis class provides a sparsity pattern data structure that can be used to initialize sparse matrices
 CVectorDistributed vector
 CVectorSpaceBasisThis class defines a basis for vector spaces, typically used for expressing nullspaces of singular operators and 'near nullspaces' used in smoothed aggregation algebraic multigrid
 NmeshMesh data structures
 CGeometryGeometry stores the geometry imposed on a mesh
 CGraphBuilderThis class builds a Graph corresponding to various objects
 CMeshA Mesh consists of a set of connected and numbered mesh topological entities, and geometry data
 CMeshTagsA 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
 CPartitioningTools for partitioning meshes
 CPermutationComputationTools for computing mesh entity permutations
 CTopologyTopology stores the topology of a mesh, consisting of mesh entities and connectivity (incidence relations for the mesh entities)
 CTopologyComputationThis class implements a set of basic algorithms that automate the computation of mesh entities and connectivity
 NnlsNonlinear solvers
 CNewtonSolverThis class defines a Newton solver for nonlinear systems of equations of the form \(F(x) = 0\)
 CNonlinearProblemThis is a base class for nonlinear problems which can return the nonlinear function F(u) and its Jacobian J = dF(u)/du
 NrefinementMesh refinement algorithms
 CParallelRefinementData structure and methods for refining meshes in parallel
 CPlazaRefinementNDImplementation of the refinement method described in Plaza and Carey "Local refinement of simplicial grids based on the skeleton" (Applied Numerical Mathematics 32 (2000) 195-218)
 CMPIThis class provides utility functions for easy communication with MPI and handles cases when DOLFINX is not configured with MPI
 CCommA duplicate MPI communicator and manage lifetime of the communicator
 Cdependent_false
 CTableThis class provides storage and pretty-printing for tables. Example usage: