Note for now much of the docs is LLM written. This was done to save time and focus on code development. The docs have been LOOSLEY reviewed. However, the code itself has been either fully written by hand or fully reviewed. Therefore, the docs should at the moment be seen as a loose resource rather than authoratiative (and this is on top of the general ability for docs to drift)
147 lines
4.2 KiB
Groff
147 lines
4.2 KiB
Groff
.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 <arithmetic\&.hpp>\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<Equation EquationT>
|
|
.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<Equation EquationT> 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<Equation EquationT> \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<Equation EquationT> 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<Equation EquationT> 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<Equation EquationT> double \fBserif::equations::EquationScale\fP< EquationT >::m_coefficient\fR [private]\fP"
|
|
|
|
.PP
|
|
The coefficient to scale the equation by\&. Must be finite\&.
|
|
.SS "template<Equation EquationT> EquationT \fBserif::equations::EquationScale\fP< EquationT >::m_equation\fR [private]\fP"
|
|
|
|
.PP
|
|
The equation being scaled\&.
|
|
.SS "template<Equation EquationT> 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\&.
|