|
struct | AddNodeData |
| MPL transform operator to wrap a variable in its data type. More...
|
|
struct | AddNodeValues |
|
struct | AddNodeValuesIndex |
|
struct | AssignNodalValues |
| Write to element nodal values. More...
|
|
struct | BlockAccumulation |
| Grammar matching block accumulation expressions. More...
|
|
struct | BlockAccumulator |
| Primitive transform to handle assignment to an LSS matrix. More...
|
|
struct | BlockAssignmentOp |
| Helper struct for assignment to a matrix or RHS. More...
|
|
struct | BlockAssignmentOp< SystemMatrixTag, OpTagT > |
|
struct | BlockAssignmentOp< SystemRHSTag, OpTagT > |
|
struct | BlockLhsGrammar |
| Grammar matching the LHS of an assignment op. More...
|
|
struct | CheckSameEtype |
| Check if all variables are on fields with element type ETYPE. More...
|
|
struct | ColTag |
|
class | ComponentWrapper |
| Proto-ready terminal type for wrapping a component. More...
|
|
class | ComponentWrapperImpl |
|
struct | ComputeNorm |
| Compute the norm of a matrix or a vector. More...
|
|
struct | ConfigurableConstant |
| Refers to a configurable constant value. More...
|
|
struct | ConstantStorage |
| Storage for the values pointed to by a ConfigurableConstant. More...
|
|
struct | ConstantStorageType |
| Returns the map type used to store values of the given type. More...
|
|
struct | CoordinatesGrammar |
|
struct | CoordinatesOp |
| Interpolated real-world coordinates at mapped coordinates. More...
|
|
struct | CoordsTerminals |
| Valid terminals that can represent the current node coordinates. More...
|
|
struct | CopyNumberedVars |
| Copy the terminal values to a fusion list. More...
|
|
struct | CustomSFOp |
|
struct | CustomSFOpTransform |
| Operation with a custom implementation. More...
|
|
struct | DeepCopy |
| Transform to copy an expression, keeping terminals that store a value by reference unchanged (thanks to Eric Niebler) More...
|
|
struct | DefaultFunctions |
| All possible default-evaluated functions. More...
|
|
struct | DefineType |
| Transform that extracts the type of variable I. More...
|
|
struct | DefineTypeOp |
| Ease application of DefineType as an MPL lambda expression, and strip the Var encapsulation. More...
|
|
struct | DimensionIdxTag |
| Tags terminals that will be replaced with the current dimension. More...
|
|
struct | DirichletBCComponentSetter |
| Sets a specific component of a vector. More...
|
|
struct | DirichletBCGrammar |
| Matches the proper formulation of Dirichlet BC. More...
|
|
struct | DirichletBCSetter |
| Sets whole-variable dirichlet BC, allowing the use of a complete vector as value. More...
|
|
struct | DirichletBCTag |
| Tag for a Dirichlet BC. More...
|
|
struct | DivOp |
| Evaluate the divergence. More...
|
|
struct | EigenIndexing |
| Indexing into Eigen expressions. More...
|
|
struct | EigenMath |
| Grammar for valid Eigen expressions, composed of primitives matching GrammarT. More...
|
|
struct | EigenMultiplication |
| Handle an expression that is filtered by Eigen. More...
|
|
struct | EigenPlusAssignProductEval |
| Evaluate A += B*C, which is a special case needed in Gauss integrator. If B or C is a scalar, it's also faster. More...
|
|
struct | EigenProductEval |
| Evaluate the product LeftT * RightT. More...
|
|
struct | EigenProductType |
| Generalization of Eigen::ProductReturnType that also works for scalars (see specializations below) More...
|
|
struct | EigenProductType< Eigen::GeneralProduct< LeftT, RightT >, Real > |
| Scalar on the right. More...
|
|
struct | EigenProductType< LeftT, Real > |
| Scalar on the right. More...
|
|
struct | EigenProductType< Real, Eigen::GeneralProduct< LeftT, RightT > > |
| Scalar on the left. More...
|
|
struct | EigenProductType< Real, Real > |
| Scalar - scalar. More...
|
|
struct | EigenProductType< Real, RightT > |
| Scalar on the left. More...
|
|
struct | ElementBased |
| Dummy shape function type used for element-based fields. More...
|
|
class | ElementData |
|
struct | ElementGrammar |
| Matches and evaluates element-wise expressions. More...
|
|
struct | ElementIntegration |
|
struct | ElementLooper |
| mpl::for_each compatible functor to loop over elements, using the correct shape function for the geometry More...
|
|
struct | ElementLooperImpl |
| Helper struct to launch execution once all shape functions have been determined. More...
|
|
struct | ElementMath |
|
struct | ElementMathBase |
|
struct | ElementMathImplicit |
|
struct | ElementMathImplicitIndexed |
| Grammar that allows looping over I and J indices. More...
|
|
struct | ElementMathIndexed |
|
struct | ElementMatrix |
| Represents an element matrix. More...
|
|
struct | ElementMatrixBlockValue |
| Only get a block containing the rows for the first var and the cols for the second. More...
|
|
struct | ElementMatrixGrammar |
|
struct | ElementMatrixGrammarIndexed |
| Gets submatrices of vector variables. More...
|
|
struct | ElementMatrixRowsValue |
| Only get the rows relevant for a given variable. More...
|
|
struct | ElementMatrixSize |
| Calculate the size of the element matrix. More...
|
|
struct | ElementMatrixSubBlocks |
| Match but don't evaluate subblock-expressions. More...
|
|
struct | ElementMatrixTerm |
| Match element matrix terminals. More...
|
|
struct | ElementMatrixValue |
| Get a given element matrix. More...
|
|
struct | ElementQuadrature |
|
struct | ElementQuadratureEval |
|
struct | ElementQuadratureMatch |
| Match quadrature expressions. THese call the grouping separately, so don't trigger on indices there. More...
|
|
struct | ElementQuadratureTag |
| Tags a gauss-quadrature loop for the following expressions. More...
|
|
struct | ElementRHS |
| Reperesents element RHS vector. More...
|
|
struct | ElementRHSValue |
| Get the RHS vector. More...
|
|
class | ElementsExpression |
|
struct | ElementSystemMatrix |
| Represents an element matrix that is used as part of the linear system. More...
|
|
struct | ElementSystemMatrixTerm |
| Match only element matrices that are used in a linear system. More...
|
|
struct | ElementValue |
|
struct | ElementVector |
| Represents an element vector. More...
|
|
struct | ElementVectorRowsValue |
| Only get the rows relevant for a given variable. More...
|
|
struct | ElementVectorTag |
|
struct | ElementVectorTerm |
| Match element matrix terminals. More...
|
|
struct | ElementVectorTransform |
|
struct | ElementVectorValue |
| Get a given element matrix. More...
|
|
struct | EquationVariables |
| Calculate if a variable is part of an equation. More...
|
|
struct | EquationVariablesOp |
| Wrap IsEquationVariable as a lambda expression. More...
|
|
class | EtypeTVariableData |
| Data associated with field variables. More...
|
|
class | EtypeTVariableData< ElementBased< 1 >, SupportEtypeT, 1, IsEquationVar > |
| Data for scalar element-based fields. More...
|
|
class | EtypeTVariableData< ElementBased< Dim >, SupportEtypeT, Dim, IsEquationVar > |
| Data for element-based fields. More...
|
|
struct | EvalMappedCoords |
| Transform to evalate mapped coordinates. More...
|
|
struct | ExpandDimension |
| Replaces dimension placeholder with state. More...
|
|
class | Expression |
| Abstract interface for classes that can hold a proto expression. More...
|
|
class | ExpressionBase |
| Boilerplate implementation. More...
|
|
struct | ExpressionGroup |
| Primitive transform to evaluate a group of expressions. More...
|
|
struct | ExpressionGroupTag |
| Tags a terminal that triggers expression grouping. More...
|
|
struct | ExpressionProperties |
| Convenience struct to get easy access to the numberof variables and their type. More...
|
|
struct | ExpressionRunner |
| Find the concrete element type of each field variable. More...
|
|
struct | ExpressionRunner< ElementTypesT, ExprT, SupportETYPE, VariablesT, VariablesEtypesT, NbVarsT, NbVarsT > |
| When we recursed to the last variable, actually run the expression. More...
|
|
struct | ExprVarArity |
| Gets the arity (max index) for the numbered variables. More...
|
|
struct | ExtractDiag |
| Primitive transform to perform the transpose. More...
|
|
struct | ExtractDiagTag |
| Terminal to indicate we want a diagonal. More...
|
|
struct | FieldBase |
| Base class for field data. More...
|
|
struct | FieldInterpolation |
| Interpolate a field at the current gauss point. More...
|
|
class | FieldSynchronizer |
| Helper struct to synchronize fields at the end of a loop. More...
|
|
struct | FieldTypes |
| Match field types. More...
|
|
struct | FieldVariable |
|
struct | FieldWidth |
| Get the width of a field varaible, based on the variable type. More...
|
|
struct | FieldWidth< ScalarField, SF > |
| Scalars have width 1. More...
|
|
struct | FieldWidth< VectorField, SF > |
| VectorFields have the same dimension as the problem domain. More...
|
|
struct | FilterElementField |
|
struct | FilterElementField< IsEqVarT, boost::mpl::void_ > |
|
struct | FilterEquationVars |
| Filter out element-based fields from the possible equation variables. More...
|
|
struct | FilterMatrixSizes |
| Filter the matrix size so equation variables are the only ones left with non-zero size. More...
|
|
struct | ForEachDimension |
| Primitive transform to evaluate a group of expressions. More...
|
|
struct | ForEachDimensionGrammar |
| Matches and evaluates groups of expressions matching GrammarT. More...
|
|
struct | ForEachDimensionTag |
| Tags a terminal that indicates that indicates the argument should be evaluated for each dimension index. More...
|
|
struct | FunctionBase |
| Base class of all functions that can be evaluated using "default" C++ semantics. More...
|
|
struct | FunctionPointer |
| Matches a terminal containing a function pointer. More...
|
|
struct | GaussGrammar |
|
struct | GaussIntegral |
| Primitive transform that evaluates an integral using the Gauss points and returns the result as a reference to a stored matrix (or scalar) More...
|
|
struct | GaussOrder |
| Static constant for the Gauss integration order. More...
|
|
struct | GaussPointEval |
| Transform to evaluate Gauss point access. More...
|
|
struct | GaussPointTag |
|
struct | GaussWeightEval |
| Transform to evaluate Gauss weight access. More...
|
|
struct | GaussWeightTag |
|
class | GeometricSupport |
| Functions and operators associated with a geometric support. More...
|
|
struct | GetCoordinates |
| Provide access to the geometry coordinates in case of node expressions. More...
|
|
struct | GetElementResultType |
| Dummy for non-element fields. More...
|
|
struct | GetElementResultType< T, ElementBased< Dim > > |
|
struct | GetNodeIdx |
|
struct | GetOrder |
| Get the order of variable I. More...
|
|
struct | GetOrderFromData |
|
struct | GetOrderFromData< DataT, boost::mpl::void_ > |
|
struct | GetRHSVector |
|
struct | GetSolutionVector |
|
struct | GradientOp |
| Evaluate the gradient. More...
|
|
struct | GroupGrammar |
| Matches and evaluates groups of expressions matching GrammarT. More...
|
|
struct | HasIdx |
| Check if index I is used in the expression. More...
|
|
struct | IdentityTag |
|
struct | IndexedNodeAssign |
| Modify only a single component of a field. More...
|
|
struct | IndexedNodeAssignmentCases |
|
struct | IndexLooper |
|
struct | IndexTag |
| Tag terminals used as index. More...
|
|
struct | IndexType |
| Extract an index-type from a var. More...
|
|
struct | IndexType< Var< I, T > > |
|
struct | IndexValues |
| Evaluate the value of both indices to the integral constants given in the template arguments. More...
|
|
struct | Integers |
| Matches integer terminals. More...
|
|
struct | IntegralTag |
| Tag for an integral, wit the order provided as an MPL integral constant. More...
|
|
struct | IntegrationOrder |
| Determine integration order based on the order of the shape function. More...
|
|
struct | IntegrationOrder< 1 > |
|
struct | IntegrationOrder< 2 > |
|
struct | InterpolationOp |
| Interpolated values at mapped coordinates. More...
|
|
struct | IsEquationData |
| Predicate to check if data belongs to an equation variable. More...
|
|
struct | IsEquationVariable |
| Transform to set a range with true indicating a variable that has an equation, and false for no equation. More...
|
|
struct | IsSubCols |
| Match subrows. More...
|
|
struct | IsSubMatrix |
| Match submatrices. More...
|
|
struct | IsSubRows |
| Match subrows. More...
|
|
struct | IsVectorSubRows |
| Match subrows for vectors. More...
|
|
struct | JacobianDeterminantOp |
| Jacobian determinant. More...
|
|
struct | JacobianOp |
| Jacobian matrix. More...
|
|
struct | LazyElementGrammar |
| Less restricitve grammar to get the result of expressions that are in an integral as well. More...
|
|
struct | LazyIndexedGrammar |
|
class | LSSWrapper |
| Proto-ready terminal type for wrapping a component. More...
|
|
class | LSSWrapperImpl |
|
struct | Lump |
| Lump the matrix. More...
|
|
struct | LumpTag |
|
struct | MakeSFOp |
| Helper struct to declare custom types. More...
|
|
struct | MakeVarData |
| Metafunction class for creating an appropriate data type. More...
|
|
struct | MakeVarData< VariablesT, EtypeT, EtypeT, EquationVariablesT, MatrixSizesT, EMatrixSizeT > |
|
struct | MappedCoordTerms |
| Possible types for mapped coords. More...
|
|
struct | MappedOpBase |
| Base class for the implementation of operations that depend on mapped coordinates (CRTP pattern) More...
|
|
struct | MappedVarOpBase |
| Base class for the implementation of operations that depend on mapped coordinates (CRTP pattern) More...
|
|
struct | MathOpDefault |
| math operators evaluated using default C++ meaning More...
|
|
struct | MathOpDefaultCases |
| Split up MapthOpDefault using cases, for better compilation performance. More...
|
|
struct | MathTerminals |
| Matches terminal values that can be used in math formulas. More...
|
|
struct | MatrixAssignOpsCases |
| Allowed block assignment operations. More...
|
|
struct | MatrixColAccess |
|
struct | MatrixElementAccess |
| Primitive transform to access matrix elements using operator() More...
|
|
struct | MatrixRowAccess |
|
struct | MatrixSizePerVar |
| The size of the element matrix for each variable. More...
|
|
struct | MatrixSubscript |
| Primitive transform to access matrix elements using operator[]. More...
|
|
struct | MatrixTerm |
| Match matrix terms (only matrix products need special treatment) More...
|
|
struct | MatVec |
| Matches matrices and vectors. More...
|
|
struct | MaxOrder |
| Get the maximum order of the shape functions used in Expr. More...
|
|
struct | NablaOp |
| Gradient. More...
|
|
struct | NodalValues |
| Get nodal values. More...
|
|
struct | NodalValuesTag |
|
struct | NodeAssign |
| Handle modification of a field. More...
|
|
struct | NodeAssignGrammar |
|
struct | NodeAssignmentCases |
|
class | NodeData |
|
struct | NodeGrammar |
|
struct | NodeIdxOp |
|
struct | NodeLooper |
| Loop over nodes, using static-sized vectors to store coordinates. More...
|
|
struct | NodeLooperDim |
| Loop over nodes, when the dimension is known. More...
|
|
struct | NodeMath |
|
struct | NodeMathBase |
| Matches expressions that can be used as terms in math formulas for element expressions. More...
|
|
struct | NodeMathIndexed |
|
class | NodesExpression |
| Expression for looping over nodes. More...
|
|
struct | NodesOp |
| Element nodes. More...
|
|
struct | NodesTimesDim |
| Given a variable's data, get the product of the number of nodes with the dimension variable (i.e. the size of the element matrix if this variable would be the only one in the problem) More...
|
|
struct | NodesTimesDim< boost::mpl::void_, SF, SupportSF > |
|
struct | NodeStreamOutputIndexed |
|
struct | NodeVarData |
| Struct keeping track of data associated with numbered variables in node expressions. More...
|
|
struct | NodeVarData< ScalarField > |
|
struct | NodeVarData< VectorField, Dim > |
|
struct | NormalOp |
| Face Normal. More...
|
|
struct | NormTag |
|
struct | NumberedTermType |
| Shorthand for terminals containing a numbered variable. More...
|
|
struct | ParsedFunctionGrammar |
|
struct | ParsedScalarFunctionTransform |
|
struct | ParsedVectorFunctionTransform |
| Primitive transform to evaluate a function with the function parser. More...
|
|
struct | PhysicsConstant |
| Refers to a value from the physical model. More...
|
|
struct | PhysicsConstantStorage |
| Storage for the values pointed to by a PhysicsConstant. More...
|
|
struct | pow_fun |
| Pow function based on Proto docs example. More...
|
|
class | ProtoAction |
| Class to encapsulate Proto actions. More...
|
|
struct | ProtoDefaultFunction |
| Matches a terminal containing a proto function that can be evaluated using operator() More...
|
|
struct | ProtoEvaluatedFunction |
| Wrap the vectorial function, adding extra data that may be filled before expression evaluation. More...
|
|
struct | ReplaceConfigurableConstant |
| Transform to replace an occurance of ConfigurableConstant with a reference to its value. More...
|
|
struct | ReplaceConfigurableConstants |
| Grammar replacing ConfigurableConstants in an expression. More...
|
|
struct | ReplacePhysicsConstant |
| Transform to replace an occurance of PhysicsConstant with a reference to its value. More...
|
|
struct | ReplacePhysicsConstants |
| Grammar replacing PhysicsConstants in an expression. More...
|
|
struct | RestrictToElementType |
| Primitive transform to evaluate a group of expressions for specific element types only. More...
|
|
struct | RestrictToElementTypeGrammar |
|
struct | RestrictToElementTypeGrammarSingle |
| Matches and evaluates groups of expressions matching GrammarT, optionally restricting to certain element types. More...
|
|
struct | RestrictToElementTypeTag |
|
struct | RHSAccumulator |
|
struct | RHSVectorGrammar |
| Matches placeholders for the solution vector. More...
|
|
struct | RowTag |
| Placeholders to indicate if we should get a row or a column. More...
|
|
struct | RunFunctionOp |
| Runs a shape function operation that is used as a function call. More...
|
|
struct | RunTerminalOp |
| Runs a shape function operation that is used as a terminal. More...
|
|
struct | Scalar |
| Matches scalar terminals. More...
|
|
struct | ScalarField |
| Field data for a scalar field. More...
|
|
struct | ScalarFunction |
|
struct | SetIdentity |
|
struct | SetRHSGrammar |
| Matches the proper formulation of Neumann BC. More...
|
|
struct | SetRHSSetter |
|
struct | SetSolutionGrammar |
| Matches the proper formulation of Neumann BC. More...
|
|
struct | SetSolutionSetter |
|
struct | SetZero |
|
struct | SFOp |
| Wrap all operations in a template, so we can detect ops using a wildcard. More...
|
|
struct | SFOp< CustomSFOp< OpT > > |
|
struct | SFOps |
| Shape-function related operations. More...
|
|
struct | ShapeFunctionOp |
| Shape functions. More...
|
|
struct | SingleExprElementGrammar |
|
struct | SingleExprNodeGrammar |
| Matches and evaluates element-wise expressions. More...
|
|
struct | SolutionVectorGrammar |
| Matches placeholders for the solution vector. More...
|
|
struct | SolutionVectorTag |
| Tag for a Neumann BC. More...
|
|
struct | StoredMatrixExpression |
| Wraps a given expression, so the value that it represents can be stored inside the expression itself. More...
|
|
struct | StreamOutput |
| Stream output. More...
|
|
struct | StreamOutputIndexed |
|
struct | SubCols |
| A subblock of columns. More...
|
|
struct | SubMatrix |
| A submatrix. More...
|
|
struct | SubRows |
| A subblock of rows. More...
|
|
struct | SystemMatrixTag |
| Tag for system matrix. More...
|
|
struct | SystemRHSTag |
| Tag for RHS. More...
|
|
struct | TransposeFunction |
| Terminal to indicate we want a transpose. More...
|
|
struct | TransposeGrammar |
|
struct | TransposeTransform |
| Primitive transform to perform the transpose. More...
|
|
struct | ValueType |
| Extract the real value type of a given type, which might be an Eigen expression. More...
|
|
struct | ValueType< Eigen::CwiseUnaryOp< Eigen::internal::scalar_multiple_op< Real >, const MatrixT > > |
| Specialise for multiplication with a scalar. More...
|
|
struct | ValueType< Eigen::Matrix< Real, I, J > > |
| Specialize for Eigen matrices. More...
|
|
struct | ValueType< Eigen::Transpose< const Real > > |
| Specialise for transpose of reals. More...
|
|
struct | ValueType< Real > |
| Specialise for reals. More...
|
|
struct | Var |
| Creates a variable that has unique ID I. More...
|
|
struct | VarArity |
|
struct | VarChild |
| Helper to get the variable type at a child of an expression. More...
|
|
struct | VarDataType |
| Helper to get the data type for the given variable. More...
|
|
struct | VarValue |
| Returns the data value of a numbered variable. More...
|
|
struct | VectorField |
| Field data for a vector having the dimension of the problem. More...
|
|
struct | VectorFunction |
|
struct | VectorSubRows |
| A subblock for the element vector. More...
|
|
struct | VolumeOp |
| Element volume. More...
|
|
struct | WrapExpression |
| Grammar to do the expression wrapping. More...
|
|
struct | WrapMatrixExpression |
|
struct | WrappableElementExpressions |
| Matches expressions that can be wrapped. More...
|
|
struct | WrappableNodeExpressions |
| Matches expressions that need to be wrapped in an extension before they can be evaluated (i.e. Eigen products) More...
|
|
struct | ZeroTag |
|
|
void | do_assign_op_matrix (boost::proto::tag::assign, math::LSS::Matrix &lss_matrix, const math::LSS::BlockAccumulator &block_accumulator) |
| Translate tag to operator. More...
|
|
void | do_assign_op_matrix (boost::proto::tag::plus_assign, math::LSS::Matrix &lss_matrix, const math::LSS::BlockAccumulator &block_accumulator) |
| Translate tag to operator. More...
|
|
void | do_assign_op_rhs (boost::proto::tag::assign, math::LSS::Vector &lss_rhs, const math::LSS::BlockAccumulator &block_accumulator) |
| Translate tag to operator. More...
|
|
void | do_assign_op_rhs (boost::proto::tag::plus_assign, math::LSS::Vector &lss_rhs, const math::LSS::BlockAccumulator &block_accumulator) |
| Translate tag to operator. More...
|
|
template<typename TagT , typename TargetT > |
void | do_assign_op (TagT, Real &lhs, TargetT &lss_matrix, const math::LSS::BlockAccumulator &block_accumulator) |
| Translate tag to operator. More...
|
|
void | assign_dirichlet (math::LSS::System &lss, const Real new_value, const Real old_value, const int node_idx, const Uint offset) |
| Helper function for assignment. More...
|
|
template<typename NewT , typename OldT > |
void | assign_dirichlet (math::LSS::System &lss, const NewT &new_value, const OldT &old_value, const int node_idx, const Uint offset) |
| Overload for vector types. More...
|
|
mesh::Field & | find_field (mesh::Elements &elements, const std::string &tag) |
| Helper function to find a field starting from a region. More...
|
|
template<Uint Order, typename ExprT > |
boost::proto::result_of::make_expr< boost::proto::tag::function, IntegralTag< boost::mpl::int_< Order > >, ExprT const & >::type const | integral (ExprT const &expr) |
|
template<typename ElementTypesT , typename ExprT > |
void | for_each_element (mesh::Region &root_region, const ExprT &expr) |
|
template<typename ExprT , typename ElementTypes > |
boost::shared_ptr< ElementsExpression< ExprT, ElementTypes > > | elements_expression (ElementTypes, const ExprT &expr) |
|
template<typename ExprT > |
boost::shared_ptr< ElementsExpression< ExprT, DefaultElementTypes > > | elements_expression (const ExprT &expr) |
|
template<typename ExprT > |
boost::shared_ptr< NodesExpression< ExprT, boost::mpl::range_c< Uint, 1, 4 > > > | nodes_expression (const ExprT &expr) |
|
template<typename ExprT > |
boost::shared_ptr< NodesExpression< ExprT, boost::mpl::range_c< Uint, 1, 2 > > > | nodes_expression_1d (const ExprT &expr) |
|
template<typename ExprT > |
boost::shared_ptr< NodesExpression< ExprT, boost::mpl::range_c< Uint, 2, 3 > > > | nodes_expression_2d (const ExprT &expr) |
|
template<typename ExprT > |
boost::shared_ptr< NodesExpression< ExprT, boost::mpl::range_c< Uint, 3, 4 > > > | nodes_expression_3d (const ExprT &expr) |
|
template<typename GrammarT , typename ExprT , typename DataT > |
void | eval_expr (const ExprT &expr, DataT &data) |
|
template<Uint Exp, typename Arg > |
boost::proto::result_of::make_expr< boost::proto::tag::function, pow_fun< Exp >, Arg const & >::type const | pow (Arg const &arg) |
|
template<typename ResultT , typename CoordsT > |
void | evaluate_function (const ProtoEvaluatedFunction &func, const CoordsT &coords, ResultT &result) |
|
const common::Table< Real > & | extract_coordinates (const mesh::Region ®ion) |
| Extract the coordinates, given a specific region. More...
|
|
mesh::Field & | find_field (mesh::Region ®ion, const std::string &tag) |
| Helper function to find a field starting from a region. More...
|
|
template<Uint dim, typename ExprT > |
void | for_each_node (mesh::Region &root_region, const ExprT &expr) |
|
template<typename ExprT > |
void | for_each_node (mesh::Region &root_region, const ExprT &expr) |
|
boost::shared_ptr< ProtoAction > | create_proto_action (const std::string &name, const boost::shared_ptr< Expression > &expression) |
| Create a new ProtoAction, immediatly setting the expression. More...
|
|
template<typename T > |
void | print_error () |
| Using this on a type always gives a compile error showing the type of T. More...
|
|
template<typename T > |
void | print_error (const T &) |
|
Real | atan_vec (const RealVector2 &vec) |
| Accept a 2D realvector for atan2. More...
|
|
Real | max (const Real a, const Real b) |
| Maximum between two scalars. More...
|
|
Real | min (const Real a, const Real b) |
| Minimum between two scalars. More...
|
|
|
boost::proto::terminal< TransposeFunction >::type const | transpose = {{}} |
|
boost::proto::terminal< ExtractDiagTag >::type const | diagonal = {{}} |
|
static boost::proto::terminal< RowTag >::type | _row = {} |
|
static boost::proto::terminal< ColTag >::type | _col = {} |
|
static boost::proto::terminal< NormTag >::type const | _norm = {} |
|
static boost::proto::terminal< LumpTag >::type const | lump = {} |
|
static MakeSFOp< GradientOp >::type const | gradient = {} |
|
static MakeSFOp< DivOp >::type const | divergence = {} |
|
static boost::proto::terminal< ElementQuadratureTag >::type | element_quadrature = {} |
| Use element_quadrature(expr1, expr2, ..., exprN) to evaluate a group of expressions. More...
|
|
static boost::proto::terminal< ElementSystemMatrix< boost::mpl::int_< 0 > > >::type const | _A = {} |
| Some predefined element matrices (more can be user-defined, but you have to change the number in the MPL int_ so the type is long and tedious) More...
|
|
static boost::proto::terminal< ElementVector< boost::mpl::int_< 0 > > >::type const | _a = {} |
|
static boost::proto::terminal< ElementSystemMatrix< boost::mpl::int_< 1 > > >::type const | _T = {} |
|
static boost::proto::terminal< ElementMatrix< boost::mpl::int_< 2 > > >::type const | _M = {} |
|
static boost::proto::terminal< ElementRHS >::type const | _x = {} |
| Terminal for the element RHS vector ("b") More...
|
|
boost::proto::terminal< SFOp< VolumeOp > >::type const | volume = {} |
| Static terminals that can be used in proto expressions. More...
|
|
boost::proto::terminal< SFOp< NodesOp > >::type const | nodes = {} |
|
boost::proto::terminal< SFOp< CoordinatesOp > >::type const | coordinates = {} |
|
boost::proto::terminal< SFOp< JacobianOp > >::type const | jacobian = {} |
|
boost::proto::terminal< SFOp< JacobianDeterminantOp > >::type const | jacobian_determinant = {} |
|
boost::proto::terminal< SFOp< NormalOp > >::type const | normal = {} |
|
boost::proto::terminal< SFOp< NablaOp > >::type const | nabla = {} |
|
boost::proto::terminal< SFOp< ShapeFunctionOp > >::type const | N = {} |
|
static boost::proto::terminal< NodalValuesTag >::type const | nodal_values = {} |
|
static boost::proto::terminal< ElementVectorTag >::type const | element_vector = {} |
|
static boost::proto::terminal< ExpressionGroupTag >::type | group = {} |
| Use group(expr1, expr2, ..., exprN) to evaluate a group of expressions. More...
|
|
static boost::proto::terminal< DimensionIdxTag >::type | _dim = {} |
|
static boost::proto::terminal< ForEachDimensionTag >::type | for_each_dimension = {} |
| Use for_each_dimension(expression) to execute expression for each dimension separately. More...
|
|
static boost::proto::terminal< GaussPointTag< GaussOrder< 1 > > >::type | gauss_points_1 = {} |
|
static boost::proto::terminal< GaussPointTag< GaussOrder< 2 > > >::type | gauss_points_2 = {} |
|
static boost::proto::terminal< GaussWeightTag< GaussOrder< 1 > > >::type | gauss_weights_1 = {} |
|
static boost::proto::terminal< GaussWeightTag< GaussOrder< 2 > > >::type | gauss_weights_2 = {} |
|
static boost::proto::terminal< IndexTag< boost::mpl::int_< 0 > > >::type const | _i = {} |
| Index looping over the dimensions of a variable. More...
|
|
static boost::proto::terminal< IndexTag< boost::mpl::int_< 1 > > >::type const | _j = {} |
| Index looping over the dimensions of a variable. More...
|
|
boost::proto::terminal< NodeIdxOp >::type const | node_index = {} |
|
ComponentBuilder< ProtoAction, common::Action, LibSolver > | ProtoAction_Builder |
|
static boost::proto::terminal< ZeroTag >::type | _0 = {} |
| Placeholder for the zero matrix. More...
|
|
static boost::proto::terminal< IdentityTag >::type | _I = {} |
| Placeholder for the identity matrix. More...
|
|
static boost::proto::terminal< std::ostream & >::type | _cout = {std::cout} |
| Wrap std::cout. More...
|
|
static boost::proto::terminal< double(*)(double) >::type const | _sin = {&sin} |
|
static boost::proto::terminal< double(*)(double, double) >::type const | _atan2 = {&atan2} |
|
static boost::proto::terminal< double(*)(const RealVector2 &) >::type const | _atan_vec = {&atan_vec} |
|
static boost::proto::terminal< double(*)(double) >::type const | _exp = {&exp} |
|
static boost::proto::terminal< double(*)(double) >::type const | _sqrt = {&sqrt} |
|
static boost::proto::terminal< double(*)(double) >::type const | _abs = {&fabs} |
|
static boost::proto::terminal< double(*)(double, double) >::type const | _max = {&max} |
|
static boost::proto::terminal< double(*)(double, double) >::type const | _min = {&min} |
|
static boost::proto::terminal< double(*)(double, double) >::type const | _std_pow = {&std::pow} |
|