Files
MeanField_SERiF/docs/xml/namespaceserif_1_1eos.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

241 lines
11 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_1eos" kind="namespace" language="C++">
<compoundname>serif::eos</compoundname>
<innerclass refid="classserif_1_1eos_1_1_e_o_s_evaluation_error" prot="public">serif::eos::EOSEvaluationError</innerclass>
<innernamespace refid="namespaceserif_1_1eos_1_1models">serif::eos::models</innernamespace>
<innernamespace refid="namespaceserif_1_1eos_1_1relations">serif::eos::relations</innernamespace>
<sectiondef kind="func">
<memberdef kind="function" id="namespaceserif_1_1eos_1ade79763ef51f539b78059d8898a2d2a2" prot="public" static="no" nodiscard="yes" constexpr="yes" const="no" explicit="no" inline="no" noexcept="yes" noexceptexpression="noexcept(eos.evaluate(relations::Relation&lt; OutputQ, dimensions::QuantityOfT&lt; InputValues &gt;... &gt;{}, inputValues...))" virt="non-virtual">
<templateparamlist>
<param>
<type>dimensions::ThermodynamicQuantityType</type>
<declname>OutputQ</declname>
<defname>OutputQ</defname>
</param>
<param>
<type>models::EOSModel</type>
<declname>EOS</declname>
<defname>EOS</defname>
</param>
<param>
<type>dimensions::QuantityValueType...</type>
<declname>InputValues</declname>
<defname>InputValues</defname>
</param>
</templateparamlist>
<type><ref refid="classserif_1_1dimensions_1_1_quantity_value" kindref="compound">dimensions::QuantityValue</ref>&lt; OutputQ &gt;</type>
<definition>dimensions::QuantityValue&lt; OutputQ &gt; serif::eos::evaluate</definition>
<argsstring>(const EOS &amp;eos, const InputValues... inputValues)</argsstring>
<name>evaluate</name>
<qualifiedname>serif::eos::evaluate</qualifiedname>
<param>
<type>const EOS &amp;</type>
<declname>eos</declname>
</param>
<param>
<type>const InputValues...</type>
<declname>inputValues</declname>
</param>
<requiresclause>models::EOSSupportingRelation&lt;EOS, relations::Relation&lt;OutputQ, dimensions::QuantityOfT&lt;InputValues&gt;...&gt;&gt; </requiresclause>
<briefdescription>
<para>Evaluates a relation for a given EOS model. This function is used to evaluate relations for a given EOS model. </para>
</briefdescription>
<detaileddescription>
<para><parameterlist kind="templateparam"><parameteritem>
<parameternamelist>
<parametername>OutputQ</parametername>
</parameternamelist>
<parameterdescription>
<para>The output quantity type to evaluate. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>InputValues</parametername>
</parameternamelist>
<parameterdescription>
<para>The input values to use for evaluation. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>eos</parametername>
</parameternamelist>
<parameterdescription>
<para>The EOS model instance to use for evaluation. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>inputValues</parametername>
</parameternamelist>
<parameterdescription>
<para>The input values to use for evaluation. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>The result of the evaluation.</para>
</simplesect>
<simplesect kind="note"><para>this is generally the function you want to call to evaluate a model as it will automatically dispatch to the correct relation. </para>
</simplesect>
</para>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/include/serif/eos/evaluation.hpp" line="39" column="42" bodyfile="src/include/serif/eos/evaluation.hpp" bodystart="39" bodyend="42"/>
</memberdef>
<memberdef kind="function" id="namespaceserif_1_1eos_1a2d0ca00b47c2dfa34d75bae9456fe390" prot="public" static="no" nodiscard="yes" constexpr="yes" const="no" explicit="no" inline="no" noexcept="yes" noexceptexpression="noexcept(eos.partial_derivative(relations::Relation&lt; OutputQ, dimensions::QuantityOfT&lt; InputValues &gt;... &gt;{}, dimensions::WithRespectTo&lt; InputQ &gt;{}, inputValues...))" virt="non-virtual">
<templateparamlist>
<param>
<type>dimensions::ThermodynamicQuantityType</type>
<declname>OutputQ</declname>
<defname>OutputQ</defname>
</param>
<param>
<type>dimensions::ThermodynamicQuantityType</type>
<declname>InputQ</declname>
<defname>InputQ</defname>
</param>
<param>
<type>models::EOSModel</type>
<declname>EOS</declname>
<defname>EOS</defname>
</param>
<param>
<type>dimensions::QuantityValueType...</type>
<declname>InputValues</declname>
<defname>InputValues</defname>
</param>
</templateparamlist>
<type><ref refid="classserif_1_1dimensions_1_1_partial_derivative" kindref="compound">dimensions::PartialDerivative</ref>&lt; OutputQ, InputQ &gt;</type>
<definition>dimensions::PartialDerivative&lt; OutputQ, InputQ &gt; serif::eos::partial_derivative</definition>
<argsstring>(const EOS &amp;eos, const InputValues... inputValues)</argsstring>
<name>partial_derivative</name>
<qualifiedname>serif::eos::partial_derivative</qualifiedname>
<param>
<type>const EOS &amp;</type>
<declname>eos</declname>
</param>
<param>
<type>const InputValues...</type>
<declname>inputValues</declname>
</param>
<requiresclause>models::EOSSupportingPartialDerivative&lt;EOS, relations::Relation&lt;OutputQ, dimensions::QuantityOfT&lt;InputValues&gt;...&gt;, InputQ&gt; </requiresclause>
<briefdescription>
<para>Evaluates a partial derivative of a relation for a given EOS model. This function is used to evaluate partial derivatives of relations for a given EOS model. </para>
</briefdescription>
<detaileddescription>
<para><parameterlist kind="templateparam"><parameteritem>
<parameternamelist>
<parametername>OutputQ</parametername>
</parameternamelist>
<parameterdescription>
<para>The output quantity type to evaluate. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>InputQ</parametername>
</parameternamelist>
<parameterdescription>
<para>The input quantity type to take the partial derivative with respect to. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>InputValues</parametername>
</parameternamelist>
<parameterdescription>
<para>The input values to use for evaluation. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>eos</parametername>
</parameternamelist>
<parameterdescription>
<para>The EOS model instance to use for evaluation. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>inputValues</parametername>
</parameternamelist>
<parameterdescription>
<para>The input values to use for evaluation. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>The result of the evaluation.</para>
</simplesect>
<simplesect kind="note"><para>this is generally the function you want to call to evaluate a model&apos;s partial derivative as it will automatically dispatch to the correct relation and partial derivative. </para>
</simplesect>
</para>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/include/serif/eos/evaluation.hpp" line="57" column="46" bodyfile="src/include/serif/eos/evaluation.hpp" bodystart="57" bodyend="60"/>
</memberdef>
<memberdef kind="function" id="namespaceserif_1_1eos_1ad41c8ebf0663a55e74ba55bc35e560b4" prot="public" static="no" nodiscard="yes" constexpr="yes" const="no" explicit="no" inline="no" noexcept="yes" noexceptexpression="noexcept(eos.second_partial_derivative(relations::Relation&lt; OutputQ, dimensions::QuantityOfT&lt; InputValues &gt;... &gt;{}, dimensions::WithRespectTo&lt; FirstInput &gt;{}, dimensions::WithRespectTo&lt; SecondInput &gt;{}, inputValues...))" virt="non-virtual">
<templateparamlist>
<param>
<type>dimensions::ThermodynamicQuantityType</type>
<declname>OutputQ</declname>
<defname>OutputQ</defname>
</param>
<param>
<type>dimensions::ThermodynamicQuantityType</type>
<declname>FirstInput</declname>
<defname>FirstInput</defname>
</param>
<param>
<type>dimensions::ThermodynamicQuantityType</type>
<declname>SecondInput</declname>
<defname>SecondInput</defname>
</param>
<param>
<type>models::EOSModel</type>
<declname>EOS</declname>
<defname>EOS</defname>
</param>
<param>
<type>dimensions::QuantityValueType...</type>
<declname>InputValues</declname>
<defname>InputValues</defname>
</param>
</templateparamlist>
<type><ref refid="classserif_1_1dimensions_1_1_second_partial_derivative" kindref="compound">dimensions::SecondPartialDerivative</ref>&lt; OutputQ, FirstInput, SecondInput &gt;</type>
<definition>dimensions::SecondPartialDerivative&lt; OutputQ, FirstInput, SecondInput &gt; serif::eos::second_partial_derivative</definition>
<argsstring>(const EOS &amp;eos, const InputValues... inputValues)</argsstring>
<name>second_partial_derivative</name>
<qualifiedname>serif::eos::second_partial_derivative</qualifiedname>
<param>
<type>const EOS &amp;</type>
<declname>eos</declname>
</param>
<param>
<type>const InputValues...</type>
<declname>inputValues</declname>
</param>
<requiresclause>models::EOSSupportingSecondPartialDerivative&lt;EOS, relations::Relation&lt;OutputQ, dimensions::QuantityOfT&lt;InputValues&gt;...&gt;, FirstInput, SecondInput&gt; </requiresclause>
<briefdescription>
<para>Dispatch an analytic second partial without imposing an EOS-specific state. </para>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/include/serif/eos/evaluation.hpp" line="68" column="5" bodyfile="src/include/serif/eos/evaluation.hpp" bodystart="68" bodyend="73"/>
</memberdef>
</sectiondef>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<location file="src/include/serif/eos/evaluation.hpp" line="12" column="1"/>
</compounddef>
</doxygen>