Files
MeanField_SERiF/docs/xml/structserif_1_1solver_1_1_newton.xml
Emily Boudreaux 6b57738330 docs(docs): built docs
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)
2026-11-09 14:09:44 -05:00

133 lines
8.0 KiB
XML

<?xml version='1.0' encoding='UTF-8' standalone='no'?>
<doxygen xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="compound.xsd" version="1.13.2" xml:lang="en-US">
<compounddef id="structserif_1_1solver_1_1_newton" kind="struct" language="C++" prot="public">
<compoundname>serif::solver::Newton</compoundname>
<includes local="no">options.hpp</includes>
<sectiondef kind="public-attrib">
<memberdef kind="variable" id="structserif_1_1solver_1_1_newton_1a0f0f39dd50491d41a52256f9f6d7a397" prot="public" static="no" mutable="no">
<type>double</type>
<definition>double serif::solver::Newton::relative_tolerance</definition>
<argsstring></argsstring>
<name>relative_tolerance</name>
<qualifiedname>serif::solver::Newton::relative_tolerance</qualifiedname>
<initializer>{1.0e-8}</initializer>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/include/serif/solver/nonlinear/options.hpp" line="15" column="16" bodyfile="src/include/serif/solver/nonlinear/options.hpp" bodystart="15" bodyend="15"/>
</memberdef>
<memberdef kind="variable" id="structserif_1_1solver_1_1_newton_1ad898cfc3de115a418fc6782e31bb53fa" prot="public" static="no" mutable="no">
<type>double</type>
<definition>double serif::solver::Newton::absolute_tolerance</definition>
<argsstring></argsstring>
<name>absolute_tolerance</name>
<qualifiedname>serif::solver::Newton::absolute_tolerance</qualifiedname>
<initializer>{0.0}</initializer>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/include/serif/solver/nonlinear/options.hpp" line="16" column="16" bodyfile="src/include/serif/solver/nonlinear/options.hpp" bodystart="16" bodyend="16"/>
</memberdef>
<memberdef kind="variable" id="structserif_1_1solver_1_1_newton_1a673a168331c73603a181f66f23487759" prot="public" static="no" mutable="no">
<type>int</type>
<definition>int serif::solver::Newton::maximum_iterations</definition>
<argsstring></argsstring>
<name>maximum_iterations</name>
<qualifiedname>serif::solver::Newton::maximum_iterations</qualifiedname>
<initializer>{50}</initializer>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/include/serif/solver/nonlinear/options.hpp" line="17" column="13" bodyfile="src/include/serif/solver/nonlinear/options.hpp" bodystart="17" bodyend="17"/>
</memberdef>
<memberdef kind="variable" id="structserif_1_1solver_1_1_newton_1ad7ad5d765234464e957ba660aa0253ff" prot="public" static="no" mutable="no">
<type><ref refid="structserif_1_1solver_1_1linear_1_1_control" kindref="compound">linear::Control</ref></type>
<definition>linear::Control serif::solver::Newton::linear_solve</definition>
<argsstring></argsstring>
<name>linear_solve</name>
<qualifiedname>serif::solver::Newton::linear_solve</qualifiedname>
<initializer>{.<ref refid="structserif_1_1solver_1_1_newton_1a0f0f39dd50491d41a52256f9f6d7a397" kindref="member">relative_tolerance</ref> = 0.03, .<ref refid="structserif_1_1solver_1_1_newton_1a673a168331c73603a181f66f23487759" kindref="member">maximum_iterations</ref> = 200}</initializer>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/include/serif/solver/nonlinear/options.hpp" line="19" column="25" bodyfile="src/include/serif/solver/nonlinear/options.hpp" bodystart="19" bodyend="19"/>
</memberdef>
</sectiondef>
<sectiondef kind="public-func">
<memberdef kind="function" id="structserif_1_1solver_1_1_newton_1a4123b39d2ef3dfdd9e5ca8d8fef43892" prot="public" static="no" const="yes" explicit="no" inline="no" virt="non-virtual">
<type>void</type>
<definition>void serif::solver::Newton::validate</definition>
<argsstring>() const</argsstring>
<name>validate</name>
<qualifiedname>serif::solver::Newton::validate</qualifiedname>
<briefdescription>
<para>Check tolerances and budgets before evaluating any candidate. </para>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/include/serif/solver/nonlinear/options.hpp" line="22" column="14" bodyfile="src/lib/serif/solver/nonlinear/options.cpp" bodystart="7" bodyend="13"/>
</memberdef>
<memberdef kind="function" id="structserif_1_1solver_1_1_newton_1a3b45548b6d188740685d4c38c4c1feda" prot="public" static="no" nodiscard="yes" const="yes" explicit="no" inline="no" virt="non-virtual">
<type>double</type>
<definition>double serif::solver::Newton::convergence_threshold</definition>
<argsstring>(double initial_norm) const</argsstring>
<name>convergence_threshold</name>
<qualifiedname>serif::solver::Newton::convergence_threshold</qualifiedname>
<param>
<type>double</type>
<declname>initial_norm</declname>
</param>
<briefdescription>
<para>Freeze the convergence threshold from this solve&apos;s initial residual. </para>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/include/serif/solver/nonlinear/options.hpp" line="24" column="17" bodyfile="src/lib/serif/solver/nonlinear/options.cpp" bodystart="15" bodyend="22"/>
</memberdef>
</sectiondef>
<briefdescription>
<para>Accuracy and work limits for finding one equilibrium star. </para>
</briefdescription>
<detaileddescription>
</detaileddescription>
<collaborationgraph>
<node id="1">
<label>serif::solver::Newton</label>
<link refid="structserif_1_1solver_1_1_newton"/>
<childnode refid="2" relation="usage">
<edgelabel>linear_solve</edgelabel>
</childnode>
</node>
<node id="2">
<label>serif::solver::linear::Control</label>
<link refid="structserif_1_1solver_1_1linear_1_1_control"/>
</node>
</collaborationgraph>
<location file="src/include/serif/solver/nonlinear/options.hpp" line="14" column="5" bodyfile="src/include/serif/solver/nonlinear/options.hpp" bodystart="14" bodyend="25"/>
<listofallmembers>
<member refid="structserif_1_1solver_1_1_newton_1ad898cfc3de115a418fc6782e31bb53fa" prot="public" virt="non-virtual"><scope>serif::solver::Newton</scope><name>absolute_tolerance</name></member>
<member refid="structserif_1_1solver_1_1_newton_1a3b45548b6d188740685d4c38c4c1feda" prot="public" virt="non-virtual"><scope>serif::solver::Newton</scope><name>convergence_threshold</name></member>
<member refid="structserif_1_1solver_1_1_newton_1ad7ad5d765234464e957ba660aa0253ff" prot="public" virt="non-virtual"><scope>serif::solver::Newton</scope><name>linear_solve</name></member>
<member refid="structserif_1_1solver_1_1_newton_1a673a168331c73603a181f66f23487759" prot="public" virt="non-virtual"><scope>serif::solver::Newton</scope><name>maximum_iterations</name></member>
<member refid="structserif_1_1solver_1_1_newton_1a0f0f39dd50491d41a52256f9f6d7a397" prot="public" virt="non-virtual"><scope>serif::solver::Newton</scope><name>relative_tolerance</name></member>
<member refid="structserif_1_1solver_1_1_newton_1a4123b39d2ef3dfdd9e5ca8d8fef43892" prot="public" virt="non-virtual"><scope>serif::solver::Newton</scope><name>validate</name></member>
</listofallmembers>
</compounddef>
</doxygen>