G+Smo
24.08.0
Geometry + Simulation Modules
|
The Core module is the backbone of the library. Here an abstract interface is defined for a gsBasis, that is, a set of real-valued functions living on a parameter domain. At this level, we do not specify how these functions (or its derivatives) should be evaluated. However, a number of virtual member functions define an interface that should be implemented by derived classes of this type. Another abstract class is the gsGeometry class. This object consists of a (still abstract) basis and a coefficient vector, and represents a patch. Note that parameter or physical dimension are not specified at this point. There are four classes directly derived from the geometry class; these are gsCurve, gsSurface, gsVolume and gsBulk. These are parametric objects with known parameter space dimension 1 ,2, 3, and 4 respectively.
Another abstract class is the gsFunction class. The interface for this class includes evaluation, derivations and other related operations. The gsGgeometry abstract class is actually deriving from the function class, demonstrating the fact that parametric geometries can be simply viewed as (vector) functions. Another interesting object is the gsMultipatch object. CAD models are composed of many patches. Therefore, a multipatch structure is of great importance. It contains two types of information; first, geometric information, essentially a list of geometry patches. Second, the gsBoxTopology class (inherited by gsMultiPatch) captures topological information between the patches, that is, the adjacency graph between patch boundaries, degenerate points, and so on. Let us also mention the gsField class, which is the object that typically represents the solution of a PDE. A gsField is a mathematical scalar or vector field which is defined on a parametric patch, or multipatch object. It may be evaluated either on the parameter or physical space, as the isogeometric paradigm suggests.
See Geometries hierarchy and Bases hierarchy.
Namespaces | |
gismo::math | |
This namespace contains common mathematical functions. | |
gismo::memory | |
This namespace contains functions related to memory management. | |
Classes | |
struct | boundary |
Struct that defines the boundary sides and corners and types of a geometric object. More... | |
class | gsAbsError< T > |
Generates a field with value the absolute difference (error) between and isogeometric function and a function defined on the physical domain. More... | |
class | gsAffineFunction< T > |
Representation of an affine function. More... | |
class | gsBasis< T > |
A basis represents a family of scalar basis functions defined over a common parameter domain. More... | |
class | gsBasisFun< T > |
Represents an individual function in a function set, or a certain component of a vector-valued function. More... | |
class | gsBasisRefs< T > |
Simple class to hold a list of gsBasis which discretize a PDE system on a given patch. More... | |
class | gsBoxTopology |
Defines a topological arrangement of a collection of "boxes" (e.g., parameter domains that map to physical-domain patches). More... | |
class | gsBulk< T > |
Abstract base class representing a 4D bulk. More... | |
class | gsConstantBasis< T > |
Class defining a dummy basis of constant functions. This is used for compatibility reasons. More... | |
class | gsConstantFunction< T > |
Class defining a globally constant function. More... | |
class | gsCurve< T > |
Abstract base class representing a curve. More... | |
class | gsDofMapper |
Maintains a mapping from patch-local dofs to global dof indices and allows the elimination of individual dofs. More... | |
class | gsDomain< T > |
Class representing a domain. i.e. a collection of elements (triangles, rectangles, cubes, simplices. More... | |
class | gsDomainIterator< T > |
Class which enables iteration over all elements of a parameter domain. More... | |
class | gsField< T > |
A scalar of vector field defined on a m_parametric geometry. More... | |
struct | gsFieldCreator< T > |
Class that creates standard fields on a given parametric (multipatch) geometry. More... | |
class | gsFuncCoordinate< T > |
Represents a certain component of a vector-valued function. More... | |
class | gsFunction< T > |
A function \(f:\mathbb{R}^n\rightarrow\mathbb{R}^m\) from a n-dimensional domain to an m-dimensional image. More... | |
class | gsFunctionExpr< T > |
Class defining a multivariate (real or vector) function given by a string mathematical expression. More... | |
class | gsGeometry< T > |
Abstract base class representing a geometry map. More... | |
class | gsGeometryTransform< T > |
Representation of a transformed geometry. More... | |
class | gsGradientField< T > |
Generates a field with value being the gradient of an isogeometric function. More... | |
class | gsJacDetField< T > |
Generates a field with value the Jacobian determinant of a geometry. More... | |
class | gsMultiBasis< T > |
Holds a set of patch-wise bases and their topology information. More... | |
class | gsMultiPatch< T > |
Container class for a set of geometry patches and their topology, that is, the interface connections and outer boundary faces. More... | |
class | gsNormalField< T > |
Generates the normal field of a geometry. More... | |
class | gsParamField< T > |
Generates a field that attaches the parameter values on each physical point. More... | |
class | gsPatchIdField< T > |
Generates a field that indicates the boundary sides on the geometry. More... | |
class | gsPatchwiseFunction< T > |
A function depending on an index i, typically referring to a patch/sub-domain. More... | |
class | gsPiecewiseFunction< T > |
A function depending on an index i, typically referring to a patch/sub-domain. On each patch a different gsFunction object is used. More... | |
class | gsRationalBasis< SrcT > |
Class that creates a rational counterpart for a given basis. More... | |
class | gsStdVectorRef< obj > |
Simple wrapper class for a vector of objects. More... | |
class | gsSurface< T > |
Abstract base class representing a surface. More... | |
class | gsVolume< T > |
Provides declaration of Volume abstract interface. More... | |