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)
98 lines
5.1 KiB
XML
98 lines
5.1 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="namespaceserif_1_1utils_1_1checks" kind="namespace" language="C++">
|
|
<compoundname>serif::utils::checks</compoundname>
|
|
<sectiondef kind="func">
|
|
<memberdef kind="function" id="namespaceserif_1_1utils_1_1checks_1a4eb8e1d2bdd4bdae0242814f9018537e" prot="public" static="no" const="no" explicit="no" inline="yes" virt="non-virtual">
|
|
<type>bool</type>
|
|
<definition>bool serif::utils::checks::is_finite</definition>
|
|
<argsstring>(const mfem::Vector &vector)</argsstring>
|
|
<name>is_finite</name>
|
|
<qualifiedname>serif::utils::checks::is_finite</qualifiedname>
|
|
<param>
|
|
<type>const mfem::Vector &</type>
|
|
<declname>vector</declname>
|
|
</param>
|
|
<briefdescription>
|
|
<para>Check every MFEM coefficient before publishing a numerical result. </para>
|
|
</briefdescription>
|
|
<detaileddescription>
|
|
</detaileddescription>
|
|
<inbodydescription>
|
|
</inbodydescription>
|
|
<location file="src/include/serif/backend/mfem/shared/finite.hpp" line="9" column="17" bodyfile="src/include/serif/backend/mfem/shared/finite.hpp" bodystart="9" bodyend="17"/>
|
|
</memberdef>
|
|
<memberdef kind="function" id="namespaceserif_1_1utils_1_1checks_1a573108a049c9d39dbb13558314c828ff" prot="public" static="no" const="no" explicit="no" inline="yes" virt="non-virtual">
|
|
<type>bool</type>
|
|
<definition>bool serif::utils::checks::is_finite</definition>
|
|
<argsstring>(const mfem::DenseMatrix &matrix)</argsstring>
|
|
<name>is_finite</name>
|
|
<qualifiedname>serif::utils::checks::is_finite</qualifiedname>
|
|
<param>
|
|
<type>const mfem::DenseMatrix &</type>
|
|
<declname>matrix</declname>
|
|
</param>
|
|
<briefdescription>
|
|
<para>Check all entries of a small MFEM dense matrix. </para>
|
|
</briefdescription>
|
|
<detaileddescription>
|
|
</detaileddescription>
|
|
<inbodydescription>
|
|
</inbodydescription>
|
|
<location file="src/include/serif/backend/mfem/shared/finite.hpp" line="20" column="17" bodyfile="src/include/serif/backend/mfem/shared/finite.hpp" bodystart="20" bodyend="30"/>
|
|
</memberdef>
|
|
<memberdef kind="function" id="namespaceserif_1_1utils_1_1checks_1a3471cc276b4a977cff023828197af29e" prot="public" static="no" nodiscard="yes" const="no" explicit="no" inline="yes" virt="non-virtual">
|
|
<type>bool</type>
|
|
<definition>bool serif::utils::checks::has_stable_inverse</definition>
|
|
<argsstring>(const ::mfem::DenseMatrix &matrix)</argsstring>
|
|
<name>has_stable_inverse</name>
|
|
<qualifiedname>serif::utils::checks::has_stable_inverse</qualifiedname>
|
|
<param>
|
|
<type>const ::mfem::DenseMatrix &</type>
|
|
<declname>matrix</declname>
|
|
</param>
|
|
<briefdescription>
|
|
<para>Check a one- to three-dimensional square Jacobian before asking MFEM to invert it. </para>
|
|
</briefdescription>
|
|
<detaileddescription>
|
|
<para><simplesect kind="note"><para>Use MFEM's scale-relative singularity criterion in all build modes, so invalid geometry can be reported as a value instead of triggering its debug assertion. Uniform coordinate scaling is permitted. </para>
|
|
</simplesect>
|
|
</para>
|
|
</detaileddescription>
|
|
<inbodydescription>
|
|
</inbodydescription>
|
|
<location file="src/include/serif/backend/mfem/shared/invertible.hpp" line="12" column="18" bodyfile="src/include/serif/backend/mfem/shared/invertible.hpp" bodystart="12" bodyend="22"/>
|
|
</memberdef>
|
|
<memberdef kind="function" id="namespaceserif_1_1utils_1_1checks_1abf004f539355f7039efe011d0b1780ef" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
|
|
<templateparamlist>
|
|
<param>
|
|
<type>typename Scalar</type>
|
|
</param>
|
|
</templateparamlist>
|
|
<type>bool</type>
|
|
<definition>bool serif::utils::checks::is_finite</definition>
|
|
<argsstring>(const Scalar scalar)</argsstring>
|
|
<name>is_finite</name>
|
|
<qualifiedname>serif::utils::checks::is_finite</qualifiedname>
|
|
<param>
|
|
<type>const Scalar</type>
|
|
<declname>scalar</declname>
|
|
</param>
|
|
<requiresclause>requires (Scalar x) {{std::isfinite(x)} -> std::convertible_to<bool>; } </requiresclause>
|
|
<briefdescription>
|
|
</briefdescription>
|
|
<detaileddescription>
|
|
</detaileddescription>
|
|
<inbodydescription>
|
|
</inbodydescription>
|
|
<location file="src/include/serif/utils/checks/finite.hpp" line="11" column="10" bodyfile="src/include/serif/utils/checks/finite.hpp" bodystart="11" bodyend="13"/>
|
|
</memberdef>
|
|
</sectiondef>
|
|
<briefdescription>
|
|
</briefdescription>
|
|
<detaileddescription>
|
|
</detaileddescription>
|
|
<location file="src/include/serif/backend/mfem/shared/finite.hpp" line="7" column="1"/>
|
|
</compounddef>
|
|
</doxygen>
|