|
| struct | boundary_flux |
| | The boundary_flux form represents the boundary flux operation in the discretization framework. It takes a trial term and a test term as template parameters and defines the operand types for the boundary flux operation. More...
|
| |
| struct | divergence |
| | The divergence form represents the divergence operation in the discretization framework. It takes a trial term and a test term as template parameters and defines the operand types for the divergence operation. More...
|
| |
| struct | force |
| | The force form represents the force term in the discretization framework. It takes a trial term and a test term as template parameters and defines the operand types for the force operation. More...
|
| |
| struct | form |
| | The form struct is a tag type that is used to identify a form in the discretization. It is used to group together forms that belong to the same mathematical operation. Each form should have a unique name and a list of operand types that belong to it. More...
|
| |
| struct | FormDescriptor |
| | Runtime form descriptor including runtime term information. Used to represented the compile-time form type at runtime. More...
|
| |
| struct | FormTraits |
| | Compile-time traits for forms, used to extract types and properties from template parameters. This struct is specialized for each form type to provide specific traits such as trial and test order reductions. More...
|
| |
| struct | FormTraits< boundary_flux< TrialT, TestT > > |
| | Specialization of FormTraits for the boundary_flux form, which has no order reduction for either trial or test terms. More...
|
| |
| struct | FormTraits< divergence< TrialT, TestT > > |
| | Specialization of FormTraits for the divergence form, which has an order reduction of 1, to satisfy the Inf-Sup condition, for the trial term and no order reduction for the test term. More...
|
| |
| struct | FormTraits< force< TrialT, TestT > > |
| | Specialization of FormTraits for the force form, which has no order reduction for either trial or test terms. More...
|
| |
| struct | FormTraits< mass< TrialT, TestT > > |
| | Specialization of FormTraits for the mass form, which has no order reduction for either trial or test terms. More...
|
| |
| struct | FormTraits< projection< TrialT, TestT > > |
| | Specialization of FormTraits for the projection form, which has no order reduction for either trial or test terms. More...
|
| |
| struct | FormTraits< source< TrialT, TestT > > |
| | Specialization of FormTraits for the source form, which has no order reduction for either trial or test terms. More...
|
| |
| struct | mass |
| | The mass form represents the mass matrix operation in the discretization framework. It takes a trial term and a test term as template parameters and defines the operand types for the mass operation. More...
|
| |
| struct | Operand |
| | Compile time representation of some operand. An operand associates a term to an operation type (e.g. the gradient of gravitational potential where gravitational potential is the term and gradient is the operation). More...
|
| |
| struct | OperandResult |
| | General case for compile time metadata associating some operand to the value type of its result. These use the OperationValue struct and the information in the operand to determine the value type of the result of that operand. More...
|
| |
| struct | OperandResult< OperandT > |
| | Specialization of the OperandResult struct for operands that are valid operands (satisfy the IsOperand concept) and are spatial terms (e.g defined over the domain, think mass density). This specialization uses the OperationValue struct to determine the value type of the result of the operand based on its term type and operation type. More...
|
| |
| struct | Operation |
| | The Operation struct defines a set of operations that can be applied to terms in the context of a form. These operations include value, gradient, divergence, curl, and normal trace. Similar to the statement I made at the top of forms.hpp, if you are a developer looking to extend the mathematical capabilities of SERiF this is a place you should be looking early on. More...
|
| |
| struct | OperationValue |
| | General case for compile time metadata associating a tensor rank to an operation. The specialization of this will also specific what the return value of an operation of that rank will be. More...
|
| |
| struct | OperationValue< 0, Operation::Gradient > |
| | The gradient of a rank 0 tensor is a rank 1 tensor (a vector of doubles) More...
|
| |
| struct | OperationValue< 0, Operation::Value > |
| | The value of a rank 0 tensor is a scalar, a double in the case of SERiF where we restrict ourselves to double precision. More...
|
| |
| struct | OperationValue< 1, Operation::Curl > |
| | The curl of a rank 1 tensor is a rank 1 tensor (a vector of doubles) More...
|
| |
| struct | OperationValue< 1, Operation::Divergence > |
| | The divergence of a rank one tensor is a scalar (a double) More...
|
| |
| struct | OperationValue< 1, Operation::Gradient > |
| | Vector gradients use G[component][derivative] = partial_derivative(u_component, x_derivative). More...
|
| |
| struct | OperationValue< 1, Operation::NormalTrace > |
| |
| struct | OperationValue< 1, Operation::Value > |
| | The value of a rank 1 tensor is a rank 1 tensor (a vector of doubles in SERiF) More...
|
| |
| struct | projection |
| | The projection form represents the projection operation in the discretization framework. It takes a trial term and a test term as template parameters and defines the operand types for the projection operation. More...
|
| |
| struct | source |
| | The source form represents the source term in the discretization framework. It takes a trial term and a test term as template parameters and defines the operand types for the source operation. More...
|
| |
| struct | ValueComponents |
| | Helper variable template to determine the number of components in the value type of an operand. This is a convenience variable that allows you to easily access the number of components in the value type of an operand without having to explicitly use the OperandResult struct. More...
|
| |
| struct | ValueComponents< double > |
| |
| struct | ValueComponents< std::array< Entry, Size > > |
| |
| struct | ValueComponents< void > |
| |