.TH "serif::equations::EquationScale< EquationT >" 3 "Version v0.0.1a" "SERiF" \" -*- nroff -*- .ad l .nh .SH NAME serif::equations::EquationScale< EquationT > \- Scale an equation by a constant coefficient\&. .SH SYNOPSIS .br .PP .PP \fR#include \fP .SS "Public Types" .in +1c .ti -1c .RI "using \fBTest\fP = typename EquationT::Test" .br .RI "The test type of the scaled equation is the same as the test type of the original equation\&. " .in -1c .SS "Public Member Functions" .in +1c .ti -1c .RI "\fBEquationScale\fP (EquationT equation, const double \fBcoefficient\fP)" .br .RI "Construct a scaled equation\&. " .ti -1c .RI "auto \fBcontributions\fP () const noexcept" .br .RI "Return the contributions of the scaled equation\&. " .ti -1c .RI "double \fBcoefficient\fP () const noexcept" .br .RI "Return the coefficient of the scaled equation\&. " .in -1c .SS "Static Public Attributes" .in +1c .ti -1c .RI "static constexpr std::string_view \fBname\fP = 'scaled equation'" .br .RI "Compile time name for the scaled equation, used for debugging and logging\&. " .in -1c .SS "Private Attributes" .in +1c .ti -1c .RI "EquationT \fBm_equation\fP" .br .RI "The equation being scaled\&. " .ti -1c .RI "double \fBm_coefficient\fP" .br .RI "The coefficient to scale the equation by\&. Must be finite\&. " .in -1c .SH "Detailed Description" .PP .SS "template .br class serif::equations::EquationScale< EquationT >"Scale an equation by a constant coefficient\&. This class is a compile-time tag that indicates that the weak contributions from a given equation should be scaled by the given coefficient\&. The actual scaling is performed by the backend\&. A simple example would be if the scale is set to 1 then the weak contributions would be integrated unchanged; whereas if the scale were set to -1 then the weak contributions would be integrated and then negated\&. .PP \fBTemplate Parameters\fP .RS 4 \fIEquationT\fP The equation type to scale\&. .RE .PP .SH "Member Typedef Documentation" .PP .SS "template using \fBserif::equations::EquationScale\fP< EquationT >::Test = typename EquationT::Test" .PP The test type of the scaled equation is the same as the test type of the original equation\&. .SH "Constructor & Destructor Documentation" .PP .SS "template \fBserif::equations::EquationScale\fP< EquationT >::EquationScale (EquationT equation, const double coefficient)\fR [inline]\fP, \fR [explicit]\fP" .PP Construct a scaled equation\&. .PP \fBParameters\fP .RS 4 \fIequation\fP The equation to scale\&. .br \fIcoefficient\fP The coefficient to scale the equation by\&. Must be finite\&. .RE .PP \fBEquation\fP \fBContributions\fP .PD 0 .IP "\(bu" 2 Residuals to all rows which are shared by the summed equations .PP .PP \fBExceptions\fP .RS 4 \fIstd::invalid_argument\fP If the coefficient is not finite\&. .RE .PP .SH "Member Function Documentation" .PP .SS "template double \fBserif::equations::EquationScale\fP< EquationT >::coefficient () const\fR [inline]\fP, \fR [nodiscard]\fP, \fR [noexcept]\fP" .PP Return the coefficient of the scaled equation\&. .PP \fBReturns\fP .RS 4 The coefficient of the scaled equation\&. .RE .PP .SS "template auto \fBserif::equations::EquationScale\fP< EquationT >::contributions () const\fR [inline]\fP, \fR [nodiscard]\fP, \fR [noexcept]\fP" .PP Return the contributions of the scaled equation\&. .PP \fBReturns\fP .RS 4 A tuple containing the contributions of the scaled equation\&. .RE .PP .SH "Member Data Documentation" .PP .SS "template double \fBserif::equations::EquationScale\fP< EquationT >::m_coefficient\fR [private]\fP" .PP The coefficient to scale the equation by\&. Must be finite\&. .SS "template EquationT \fBserif::equations::EquationScale\fP< EquationT >::m_equation\fR [private]\fP" .PP The equation being scaled\&. .SS "template std::string_view \fBserif::equations::EquationScale\fP< EquationT >::name = 'scaled equation'\fR [static]\fP, \fR [constexpr]\fP" .PP Compile time name for the scaled equation, used for debugging and logging\&. .SH "Author" .PP Generated automatically by Doxygen for SERiF from the source code\&.