\doxysection{src/include/serif/solver/nonlinear/qualification.hpp File Reference} \hypertarget{qualification_8hpp}{}\label{qualification_8hpp}\index{src/include/serif/solver/nonlinear/qualification.hpp@{src/include/serif/solver/nonlinear/qualification.hpp}} {\ttfamily \#include $<$algorithm$>$}\newline {\ttfamily \#include $<$cmath$>$}\newline {\ttfamily \#include $<$expected$>$}\newline {\ttfamily \#include $<$span$>$}\newline {\ttfamily \#include "{}serif/solver/nonlinear/result.\+hpp"{}}\newline {\ttfamily \#include "{}serif/utils/error/errors.\+hpp"{}}\newline Include dependency graph for qualification.\+hpp\+: \nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=350pt]{qualification_8hpp__incl} \end{center} \end{figure} This graph shows which files directly or indirectly include this file\+: \nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=350pt]{qualification_8hpp__dep__incl} \end{center} \end{figure} \doxysubsubsection*{Classes} \begin{DoxyCompactItemize} \item struct \mbox{\hyperlink{structserif_1_1solver_1_1detail_1_1_newton_failure}{serif\+::solver\+::detail\+::\+Newton\+Failure}} \begin{DoxyCompactList}\small\item\em Explain why a candidate cannot provide a usable nonlinear metric. \end{DoxyCompactList}\end{DoxyCompactItemize} \doxysubsubsection*{Namespaces} \begin{DoxyCompactItemize} \item namespace \mbox{\hyperlink{namespaceserif}{serif}} \item namespace \mbox{\hyperlink{namespaceserif_1_1solver}{serif\+::solver}} \item namespace \mbox{\hyperlink{namespaceserif_1_1solver_1_1detail}{serif\+::solver\+::detail}} \end{DoxyCompactItemize} \doxysubsubsection*{Functions} \begin{DoxyCompactItemize} \item std\+::optional$<$ std\+::string $>$ \mbox{\hyperlink{namespaceserif_1_1solver_1_1detail_abcb4ab5dca0460589f2989c776a641d7}{serif\+::solver\+::detail\+::preparation\+\_\+rejection}} (const auto \&problem, const auto \&evaluation) \begin{DoxyCompactList}\small\item\em Preserve numerical preparation failures while propagating invalid physical configurations. \end{DoxyCompactList}\item std\+::expected$<$ \mbox{\hyperlink{structserif_1_1solver_1_1_metric_evaluation}{Metric\+Evaluation}}, \mbox{\hyperlink{structserif_1_1solver_1_1detail_1_1_newton_failure}{Newton\+Failure}} $>$ \mbox{\hyperlink{namespaceserif_1_1solver_1_1detail_a20193e65f854a97472b6a4f1602798e8}{serif\+::solver\+::detail\+::qualify\+\_\+candidate}} (auto \&problem, const auto \&state, const auto \&evaluation, auto \&metric\+\_\+function, auto \&strategy, \mbox{\hyperlink{structserif_1_1solver_1_1_trial_assessment}{Trial\+Assessment}} assessment=\{\}) \begin{DoxyCompactList}\small\item\em Qualify one already evaluated candidate through the same physical and metric gates everywhere. \end{DoxyCompactList}\item bool \mbox{\hyperlink{namespaceserif_1_1solver_1_1detail_af66d3dcd2f2fc1b4e4858dcd4e23be8f}{serif\+::solver\+::detail\+::finite\+\_\+correction}} (std\+::span$<$ const double $>$ correction, const int expected\+\_\+size) \begin{DoxyCompactList}\small\item\em Every custom backend must preserve the correction dimensions and finite coefficients. \end{DoxyCompactList}\end{DoxyCompactItemize}