.TH "serif::equations::PointEquation" 3 "Version v0.0.1a" "SERiF" \" -*- nroff -*- .ad l .nh .SH NAME serif::equations::PointEquation \- A concept that defines the requirements for a pointwise equation\&. .SH SYNOPSIS .br .PP .PP \fR#include \fP .SH "Concept definition" .PP .nf template concept serif::equations::PointEquation = requires { typename T::Test; typename T::Operands; } && (discretization::blocks::SpatialTerm || discretization::blocks::GlobalScalarTerm) && discretization::blocks::HasResidualBlock && discretization::forms::IsOperand> && std::same_as::term_type, typename T::Test> && requires(const T& equation, const EquationPoint& point) { { equation\&.evaluate(point) } \-> std::same_as>>>; } .PP .fi .SH "Detailed Description" .PP A concept that defines the requirements for a pointwise equation\&. Requirements .PD 0 .IP "\(bu" 2 The equation must have a test type (::Test) and an operand type (::Operands)\&. .IP "\(bu" 2 The test type (::Test) must be either a spatial term or a global scalar term\&. .IP "\(bu" 2 The test type must have a residual block\&. .IP "\(bu" 2 The operand type must be a valid operand .IP "\(bu" 2 The operant term type (::term_type) must be the same as the test type (::Test)\&. .IP "\(bu" 2 The equation must have a method called ::evaluate() that takes an EquationPoint of the operand type and returns a PointLinearization of the operand type and the operand value of the test operand\&. .PP .SH "Author" .PP Generated automatically by Doxygen for SERiF from the source code\&.