696 lines
34 KiB
XML
696 lines
34 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_1_1runtime" kind="namespace" language="C++">
|
||
|
|
<compoundname>serif::eos::runtime</compoundname>
|
||
|
|
<innerclass refid="classserif_1_1eos_1_1runtime_1_1_e_o_s_view" prot="public">serif::eos::runtime::EOSView</innerclass>
|
||
|
|
<innerclass refid="structserif_1_1eos_1_1runtime_1_1_has_runtime_quantity_identifiers" prot="public">serif::eos::runtime::HasRuntimeQuantityIdentifiers</innerclass>
|
||
|
|
<innerclass refid="structserif_1_1eos_1_1runtime_1_1_has_runtime_quantity_identifiers_3_01relations_1_1_relation_3_cccf8857ab0156cf2afc2677bc16446c" prot="public">serif::eos::runtime::HasRuntimeQuantityIdentifiers< relations::Relation< OutputT, InputTs... > ></innerclass>
|
||
|
|
<innerclass refid="structserif_1_1eos_1_1runtime_1_1_runtime_catalog_dispatch" prot="public">serif::eos::runtime::RuntimeCatalogDispatch</innerclass>
|
||
|
|
<innerclass refid="structserif_1_1eos_1_1runtime_1_1_runtime_catalog_dispatch_3_01_e_o_s_00_01relations_1_1_relatio0166b9bbd8882975b3d1325bcdcd27cb" prot="public">serif::eos::runtime::RuntimeCatalogDispatch< EOS, relations::RelationCatalog< RelationTs... > ></innerclass>
|
||
|
|
<innerclass refid="structserif_1_1eos_1_1runtime_1_1_runtime_catalog_is_supported" prot="public">serif::eos::runtime::RuntimeCatalogIsSupported</innerclass>
|
||
|
|
<innerclass refid="structserif_1_1eos_1_1runtime_1_1_runtime_catalog_is_supported_3_01relations_1_1_relation_cataloe1dd4e8866d49db6ba530e370961bebe" prot="public">serif::eos::runtime::RuntimeCatalogIsSupported< relations::RelationCatalog< RelationTs... > ></innerclass>
|
||
|
|
<innerclass refid="structserif_1_1eos_1_1runtime_1_1_runtime_catalog_storage" prot="public">serif::eos::runtime::RuntimeCatalogStorage</innerclass>
|
||
|
|
<innerclass refid="structserif_1_1eos_1_1runtime_1_1_runtime_catalog_storage_3_01_e_o_s_00_01relations_1_1_relation983e333b4bd596c3958f49a1bba13994" prot="public">serif::eos::runtime::RuntimeCatalogStorage< EOS, relations::RelationCatalog< RelationTs... > ></innerclass>
|
||
|
|
<innerclass refid="structserif_1_1eos_1_1runtime_1_1_runtime_relation_quantities" prot="public">serif::eos::runtime::RuntimeRelationQuantities</innerclass>
|
||
|
|
<innerclass refid="structserif_1_1eos_1_1runtime_1_1_runtime_relation_quantities_3_01relations_1_1_relation_3_01_ou3e28a4892e3a6a07a1f901a4b02b1a2d" prot="public">serif::eos::runtime::RuntimeRelationQuantities< relations::Relation< OutputT, InputTs... > ></innerclass>
|
||
|
|
<innerclass refid="structserif_1_1eos_1_1runtime_1_1_runtime_relations_are_supported" prot="public">serif::eos::runtime::RuntimeRelationsAreSupported</innerclass>
|
||
|
|
<innerclass refid="structserif_1_1eos_1_1runtime_1_1_runtime_relations_are_supported_3_01true_00_01_relation_ts_8_8_8_01_4" prot="public">serif::eos::runtime::RuntimeRelationsAreSupported< true, RelationTs... ></innerclass>
|
||
|
|
<innerclass refid="structserif_1_1eos_1_1runtime_1_1_runtime_relation_storage" prot="public">serif::eos::runtime::RuntimeRelationStorage</innerclass>
|
||
|
|
<innerclass refid="structserif_1_1eos_1_1runtime_1_1_runtime_relation_storage_3_01_e_o_s_00_01relations_1_1_relatio1af2754f79c06f8e77304f983650b533" prot="public">serif::eos::runtime::RuntimeRelationStorage< EOS, relations::Relation< OutputT, InputTs... > ></innerclass>
|
||
|
|
<sectiondef kind="typedef">
|
||
|
|
<memberdef kind="typedef" id="namespaceserif_1_1eos_1_1runtime_1af34d4e019ddbfd7eca9b4c20fddbae2f" prot="public" static="no">
|
||
|
|
<templateparamlist>
|
||
|
|
<param>
|
||
|
|
<type>RuntimeEOSModel</type>
|
||
|
|
<declname>EOSCandidate</declname>
|
||
|
|
<defname>EOSCandidate</defname>
|
||
|
|
</param>
|
||
|
|
</templateparamlist>
|
||
|
|
<type><ref refid="structserif_1_1eos_1_1runtime_1_1_runtime_catalog_dispatch" kindref="compound">RuntimeCatalogDispatch</ref>< EOSCandidate, typename EOSCandidate::Relations ></type>
|
||
|
|
<definition>using serif::eos::runtime::RuntimeEOSAdapter = RuntimeCatalogDispatch<EOSCandidate, typename EOSCandidate::Relations></definition>
|
||
|
|
<argsstring></argsstring>
|
||
|
|
<name>RuntimeEOSAdapter</name>
|
||
|
|
<qualifiedname>serif::eos::runtime::RuntimeEOSAdapter</qualifiedname>
|
||
|
|
<briefdescription>
|
||
|
|
<para>A helper alias to adapt a runtime EOS model to the runtime catalog dispatch system. This is used to simplify the usage of runtime EOS models in the runtime system. </para>
|
||
|
|
</briefdescription>
|
||
|
|
<detaileddescription>
|
||
|
|
<para><parameterlist kind="templateparam"><parameteritem>
|
||
|
|
<parameternamelist>
|
||
|
|
<parametername>EOSCandidate</parametername>
|
||
|
|
</parameternamelist>
|
||
|
|
<parameterdescription>
|
||
|
|
<para>The runtime EOS model type to adapt. </para>
|
||
|
|
</parameterdescription>
|
||
|
|
</parameteritem>
|
||
|
|
</parameterlist>
|
||
|
|
</para>
|
||
|
|
</detaileddescription>
|
||
|
|
<inbodydescription>
|
||
|
|
</inbodydescription>
|
||
|
|
<location file="src/include/serif/eos/runtime/concepts.hpp" line="27" column="5" bodyfile="src/include/serif/eos/runtime/concepts.hpp" bodystart="27" bodyend="-1"/>
|
||
|
|
</memberdef>
|
||
|
|
<memberdef kind="typedef" id="namespaceserif_1_1eos_1_1runtime_1a401a6ebdc70fa8ebcaa52ae6d85088c3" prot="public" static="no">
|
||
|
|
<templateparamlist>
|
||
|
|
<param>
|
||
|
|
<type>typename...</type>
|
||
|
|
<declname>RelationTs</declname>
|
||
|
|
<defname>RelationTs</defname>
|
||
|
|
</param>
|
||
|
|
</templateparamlist>
|
||
|
|
<type>decltype(std::tuple_cat(std::declval< typename <ref refid="structserif_1_1eos_1_1runtime_1_1_runtime_relation_quantities" kindref="compound">RuntimeRelationQuantities</ref>< RelationTs >::Type >()...))</type>
|
||
|
|
<definition>using serif::eos::runtime::RuntimeCatalogQuantityTuple = decltype(std::tuple_cat(std::declval<typename RuntimeRelationQuantities<RelationTs>::Type>()...))</definition>
|
||
|
|
<argsstring></argsstring>
|
||
|
|
<name>RuntimeCatalogQuantityTuple</name>
|
||
|
|
<qualifiedname>serif::eos::runtime::RuntimeCatalogQuantityTuple</qualifiedname>
|
||
|
|
<briefdescription>
|
||
|
|
<para>A helper alias to extract the quantity types from a catalog of relations. This is used to simplify the usage of catalogs in the runtime system. </para>
|
||
|
|
</briefdescription>
|
||
|
|
<detaileddescription>
|
||
|
|
<para><parameterlist kind="templateparam"><parameteritem>
|
||
|
|
<parameternamelist>
|
||
|
|
<parametername>RelationTs</parametername>
|
||
|
|
</parameternamelist>
|
||
|
|
<parameterdescription>
|
||
|
|
<para>The relation types in the catalog. </para>
|
||
|
|
</parameterdescription>
|
||
|
|
</parameteritem>
|
||
|
|
</parameterlist>
|
||
|
|
</para>
|
||
|
|
</detaileddescription>
|
||
|
|
<inbodydescription>
|
||
|
|
</inbodydescription>
|
||
|
|
<location file="src/include/serif/eos/runtime/details.hpp" line="62" column="5" bodyfile="src/include/serif/eos/runtime/details.hpp" bodystart="62" bodyend="-1"/>
|
||
|
|
</memberdef>
|
||
|
|
</sectiondef>
|
||
|
|
<sectiondef kind="func">
|
||
|
|
<memberdef kind="function" id="namespaceserif_1_1eos_1_1runtime_1a25ab7f40da798676afd459e004a8c06d" prot="public" static="no" nodiscard="yes" constexpr="yes" const="no" explicit="no" inline="no" noexcept="yes" virt="non-virtual">
|
||
|
|
<templateparamlist>
|
||
|
|
<param>
|
||
|
|
<type>RuntimeEOSModel</type>
|
||
|
|
<declname>EOSCandidate</declname>
|
||
|
|
<defname>EOSCandidate</defname>
|
||
|
|
</param>
|
||
|
|
</templateparamlist>
|
||
|
|
<type>std::span< const <ref refid="structserif_1_1dimensions_1_1runtime_1_1_runtime_relation_descriptor" kindref="compound">dimensions::runtime::RuntimeRelationDescriptor</ref> ></type>
|
||
|
|
<definition>std::span< const dimensions::runtime::RuntimeRelationDescriptor > serif::eos::runtime::runtimeRelationDescriptors</definition>
|
||
|
|
<argsstring>() noexcept</argsstring>
|
||
|
|
<name>runtimeRelationDescriptors</name>
|
||
|
|
<qualifiedname>serif::eos::runtime::runtimeRelationDescriptors</qualifiedname>
|
||
|
|
<briefdescription>
|
||
|
|
<para>A helper function to get the runtime relation descriptors for a runtime EOS model. This is used to simplify the usage of runtime EOS models in the runtime system. </para>
|
||
|
|
</briefdescription>
|
||
|
|
<detaileddescription>
|
||
|
|
<para><parameterlist kind="templateparam"><parameteritem>
|
||
|
|
<parameternamelist>
|
||
|
|
<parametername>EOSCandidate</parametername>
|
||
|
|
</parameternamelist>
|
||
|
|
<parameterdescription>
|
||
|
|
<para>The runtime EOS model type to get the descriptors for. </para>
|
||
|
|
</parameterdescription>
|
||
|
|
</parameteritem>
|
||
|
|
</parameterlist>
|
||
|
|
<simplesect kind="return"><para>A span of runtime relation descriptors. </para>
|
||
|
|
</simplesect>
|
||
|
|
</para>
|
||
|
|
</detaileddescription>
|
||
|
|
<inbodydescription>
|
||
|
|
</inbodydescription>
|
||
|
|
<location file="src/include/serif/eos/runtime/concepts.hpp" line="35" column="26" bodyfile="src/include/serif/eos/runtime/concepts.hpp" bodystart="35" bodyend="37"/>
|
||
|
|
</memberdef>
|
||
|
|
<memberdef kind="function" id="namespaceserif_1_1eos_1_1runtime_1ad0ac24809585cfe3727b7c54825ee888" prot="public" static="no" nodiscard="yes" consteval="yes" const="no" explicit="no" inline="no" virt="non-virtual">
|
||
|
|
<templateparamlist>
|
||
|
|
<param>
|
||
|
|
<type>typename FirstQuantityT</type>
|
||
|
|
</param>
|
||
|
|
<param>
|
||
|
|
<type>typename SecondQuantityT</type>
|
||
|
|
</param>
|
||
|
|
</templateparamlist>
|
||
|
|
<type>bool</type>
|
||
|
|
<definition>bool serif::eos::runtime::runtimeQuantityIdentifiersAreCompatible</definition>
|
||
|
|
<argsstring>()</argsstring>
|
||
|
|
<name>runtimeQuantityIdentifiersAreCompatible</name>
|
||
|
|
<qualifiedname>serif::eos::runtime::runtimeQuantityIdentifiersAreCompatible</qualifiedname>
|
||
|
|
<briefdescription>
|
||
|
|
<para>A helper function to determine if two runtime quantity identifiers are compatible. This is used to ensure that all relations in a catalog have unique runtime quantity identifiers. </para>
|
||
|
|
</briefdescription>
|
||
|
|
<detaileddescription>
|
||
|
|
<para><parameterlist kind="templateparam"><parameteritem>
|
||
|
|
<parameternamelist>
|
||
|
|
<parametername>FirstQuantityT</parametername>
|
||
|
|
</parameternamelist>
|
||
|
|
<parameterdescription>
|
||
|
|
<para>The first quantity type to check. </para>
|
||
|
|
</parameterdescription>
|
||
|
|
</parameteritem>
|
||
|
|
<parameteritem>
|
||
|
|
<parameternamelist>
|
||
|
|
<parametername>SecondQuantityT</parametername>
|
||
|
|
</parameternamelist>
|
||
|
|
<parameterdescription>
|
||
|
|
<para>The second quantity type to check. </para>
|
||
|
|
</parameterdescription>
|
||
|
|
</parameteritem>
|
||
|
|
</parameterlist>
|
||
|
|
<simplesect kind="return"><para>True if the quantity identifiers are compatible, false otherwise. </para>
|
||
|
|
</simplesect>
|
||
|
|
</para>
|
||
|
|
</detaileddescription>
|
||
|
|
<inbodydescription>
|
||
|
|
</inbodydescription>
|
||
|
|
<location file="src/include/serif/eos/runtime/details.hpp" line="71" column="21" bodyfile="src/include/serif/eos/runtime/details.hpp" bodystart="71" bodyend="78"/>
|
||
|
|
</memberdef>
|
||
|
|
<memberdef kind="function" id="namespaceserif_1_1eos_1_1runtime_1af820c5291bf57d6f96d7394880ae120d" prot="public" static="no" nodiscard="yes" consteval="yes" const="no" explicit="no" inline="no" virt="non-virtual">
|
||
|
|
<templateparamlist>
|
||
|
|
<param>
|
||
|
|
<type>typename QuantityTupleT</type>
|
||
|
|
</param>
|
||
|
|
<param>
|
||
|
|
<type>std::size_t</type>
|
||
|
|
<declname>First</declname>
|
||
|
|
<defname>First</defname>
|
||
|
|
</param>
|
||
|
|
<param>
|
||
|
|
<type>std::size_t...</type>
|
||
|
|
<declname>Offsets</declname>
|
||
|
|
<defname>Offsets</defname>
|
||
|
|
</param>
|
||
|
|
</templateparamlist>
|
||
|
|
<type>bool</type>
|
||
|
|
<definition>bool serif::eos::runtime::runtimeQuantityIdentifierIsUnambiguous</definition>
|
||
|
|
<argsstring>(std::index_sequence< Offsets... >)</argsstring>
|
||
|
|
<name>runtimeQuantityIdentifierIsUnambiguous</name>
|
||
|
|
<qualifiedname>serif::eos::runtime::runtimeQuantityIdentifierIsUnambiguous</qualifiedname>
|
||
|
|
<param>
|
||
|
|
<type>std::index_sequence< Offsets... ></type>
|
||
|
|
</param>
|
||
|
|
<briefdescription>
|
||
|
|
<para>A helper function to determine if the runtime quantity identifiers in a tuple of quantity types are unambiguous. This is used to ensure that all relations in a catalog have unique runtime quantity identifiers. </para>
|
||
|
|
</briefdescription>
|
||
|
|
<detaileddescription>
|
||
|
|
<para><parameterlist kind="templateparam"><parameteritem>
|
||
|
|
<parameternamelist>
|
||
|
|
<parametername>QuantityTupleT</parametername>
|
||
|
|
</parameternamelist>
|
||
|
|
<parameterdescription>
|
||
|
|
<para>The tuple of quantity types to check. </para>
|
||
|
|
</parameterdescription>
|
||
|
|
</parameteritem>
|
||
|
|
<parameteritem>
|
||
|
|
<parameternamelist>
|
||
|
|
<parametername>First</parametername>
|
||
|
|
</parameternamelist>
|
||
|
|
<parameterdescription>
|
||
|
|
<para>The index of the first quantity type to check. </para>
|
||
|
|
</parameterdescription>
|
||
|
|
</parameteritem>
|
||
|
|
<parameteritem>
|
||
|
|
<parameternamelist>
|
||
|
|
<parametername>Offsets</parametername>
|
||
|
|
</parameternamelist>
|
||
|
|
<parameterdescription>
|
||
|
|
<para>The indices of the remaining quantity types to check. </para>
|
||
|
|
</parameterdescription>
|
||
|
|
</parameteritem>
|
||
|
|
</parameterlist>
|
||
|
|
<simplesect kind="return"><para>True if the quantity identifiers are unambiguous, false otherwise. </para>
|
||
|
|
</simplesect>
|
||
|
|
</para>
|
||
|
|
</detaileddescription>
|
||
|
|
<inbodydescription>
|
||
|
|
</inbodydescription>
|
||
|
|
<location file="src/include/serif/eos/runtime/details.hpp" line="88" column="21" bodyfile="src/include/serif/eos/runtime/details.hpp" bodystart="88" bodyend="94"/>
|
||
|
|
</memberdef>
|
||
|
|
<memberdef kind="function" id="namespaceserif_1_1eos_1_1runtime_1a70b84b0bdf6dfd9a32811741eeb5904c" prot="public" static="no" nodiscard="yes" consteval="yes" const="no" explicit="no" inline="no" virt="non-virtual">
|
||
|
|
<templateparamlist>
|
||
|
|
<param>
|
||
|
|
<type>typename QuantityTupleT</type>
|
||
|
|
</param>
|
||
|
|
<param>
|
||
|
|
<type>std::size_t...</type>
|
||
|
|
<declname>Indices</declname>
|
||
|
|
<defname>Indices</defname>
|
||
|
|
</param>
|
||
|
|
</templateparamlist>
|
||
|
|
<type>bool</type>
|
||
|
|
<definition>bool serif::eos::runtime::runtimeQuantityIdentifiersAreUnambiguous</definition>
|
||
|
|
<argsstring>(std::index_sequence< Indices... >)</argsstring>
|
||
|
|
<name>runtimeQuantityIdentifiersAreUnambiguous</name>
|
||
|
|
<qualifiedname>serif::eos::runtime::runtimeQuantityIdentifiersAreUnambiguous</qualifiedname>
|
||
|
|
<param>
|
||
|
|
<type>std::index_sequence< Indices... ></type>
|
||
|
|
</param>
|
||
|
|
<briefdescription>
|
||
|
|
<para>A helper function to determine if the runtime quantity identifiers in a tuple of quantity types are unambiguous. This is used to ensure that all relations in a catalog have unique runtime quantity identifiers. </para>
|
||
|
|
</briefdescription>
|
||
|
|
<detaileddescription>
|
||
|
|
<para><parameterlist kind="templateparam"><parameteritem>
|
||
|
|
<parameternamelist>
|
||
|
|
<parametername>QuantityTupleT</parametername>
|
||
|
|
</parameternamelist>
|
||
|
|
<parameterdescription>
|
||
|
|
<para>The tuple of quantity types to check. </para>
|
||
|
|
</parameterdescription>
|
||
|
|
</parameteritem>
|
||
|
|
<parameteritem>
|
||
|
|
<parameternamelist>
|
||
|
|
<parametername>Indices</parametername>
|
||
|
|
</parameternamelist>
|
||
|
|
<parameterdescription>
|
||
|
|
<para>The indices of the quantity types to check. </para>
|
||
|
|
</parameterdescription>
|
||
|
|
</parameteritem>
|
||
|
|
</parameterlist>
|
||
|
|
<simplesect kind="return"><para>True if the quantity identifiers are unambiguous, false otherwise. </para>
|
||
|
|
</simplesect>
|
||
|
|
</para>
|
||
|
|
</detaileddescription>
|
||
|
|
<inbodydescription>
|
||
|
|
</inbodydescription>
|
||
|
|
<location file="src/include/serif/eos/runtime/details.hpp" line="103" column="21" bodyfile="src/include/serif/eos/runtime/details.hpp" bodystart="103" bodyend="107"/>
|
||
|
|
</memberdef>
|
||
|
|
<memberdef kind="function" id="namespaceserif_1_1eos_1_1runtime_1a6bf81d411b0ecbf037e521c4fd9a73fd" prot="public" static="no" nodiscard="yes" const="no" explicit="no" inline="yes" virt="non-virtual">
|
||
|
|
<type>std::expected< double, <ref refid="namespaceserif_1_1utils_1_1errors_1ab04484c13887f78337c2331fb2911346" kindref="member">utils::errors::SERiFErrorCode</ref> ></type>
|
||
|
|
<definition>std::expected< double, utils::errors::SERiFErrorCode > serif::eos::runtime::runtimeEvaluationFailure</definition>
|
||
|
|
<argsstring>(const utils::errors::SERiFErrorCode code)</argsstring>
|
||
|
|
<name>runtimeEvaluationFailure</name>
|
||
|
|
<qualifiedname>serif::eos::runtime::runtimeEvaluationFailure</qualifiedname>
|
||
|
|
<param>
|
||
|
|
<type>const <ref refid="namespaceserif_1_1utils_1_1errors_1ab04484c13887f78337c2331fb2911346" kindref="member">utils::errors::SERiFErrorCode</ref></type>
|
||
|
|
<declname>code</declname>
|
||
|
|
</param>
|
||
|
|
<briefdescription>
|
||
|
|
<para>A helper function to create a std::unexpected with a <ref refid="views_8cpp_1ab04484c13887f78337c2331fb2911346" kindref="member">SERiFErrorCode</ref>. This is used to simplify the usage of std::expected in the runtime system. </para>
|
||
|
|
</briefdescription>
|
||
|
|
<detaileddescription>
|
||
|
|
<para><parameterlist kind="param"><parameteritem>
|
||
|
|
<parameternamelist>
|
||
|
|
<parametername>code</parametername>
|
||
|
|
</parameternamelist>
|
||
|
|
<parameterdescription>
|
||
|
|
<para>The <ref refid="views_8cpp_1ab04484c13887f78337c2331fb2911346" kindref="member">SERiFErrorCode</ref> to wrap in a std::unexpected. </para>
|
||
|
|
</parameterdescription>
|
||
|
|
</parameteritem>
|
||
|
|
</parameterlist>
|
||
|
|
<simplesect kind="return"><para>A std::unexpected containing the given <ref refid="views_8cpp_1ab04484c13887f78337c2331fb2911346" kindref="member">SERiFErrorCode</ref>. </para>
|
||
|
|
</simplesect>
|
||
|
|
</para>
|
||
|
|
</detaileddescription>
|
||
|
|
<inbodydescription>
|
||
|
|
</inbodydescription>
|
||
|
|
<location file="src/include/serif/eos/runtime/details.hpp" line="238" column="27" bodyfile="src/include/serif/eos/runtime/details.hpp" bodystart="238" bodyend="242"/>
|
||
|
|
</memberdef>
|
||
|
|
<memberdef kind="function" id="namespaceserif_1_1eos_1_1runtime_1ada3bf0e8223991d705767cfedd798d0e" prot="public" static="no" nodiscard="yes" const="no" explicit="no" inline="no" virt="non-virtual">
|
||
|
|
<templateparamlist>
|
||
|
|
<param>
|
||
|
|
<type>typename EOS</type>
|
||
|
|
</param>
|
||
|
|
<param>
|
||
|
|
<type>typename OutputT</type>
|
||
|
|
</param>
|
||
|
|
<param>
|
||
|
|
<type>typename...</type>
|
||
|
|
<declname>InputTs</declname>
|
||
|
|
<defname>InputTs</defname>
|
||
|
|
</param>
|
||
|
|
</templateparamlist>
|
||
|
|
<type>std::expected< double, <ref refid="namespaceserif_1_1utils_1_1errors_1ab04484c13887f78337c2331fb2911346" kindref="member">utils::errors::SERiFErrorCode</ref> ></type>
|
||
|
|
<definition>std::expected< double, utils::errors::SERiFErrorCode > serif::eos::runtime::evaluateRuntimeRelation</definition>
|
||
|
|
<argsstring>(const EOS &eos, relations::Relation< OutputT, InputTs... >, const std::span< const dimensions::runtime::RuntimeQuantityValue > inputValues)</argsstring>
|
||
|
|
<name>evaluateRuntimeRelation</name>
|
||
|
|
<qualifiedname>serif::eos::runtime::evaluateRuntimeRelation</qualifiedname>
|
||
|
|
<param>
|
||
|
|
<type>const EOS &</type>
|
||
|
|
<declname>eos</declname>
|
||
|
|
</param>
|
||
|
|
<param>
|
||
|
|
<type><ref refid="structserif_1_1eos_1_1relations_1_1_relation" kindref="compound">relations::Relation</ref>< OutputT, InputTs... ></type>
|
||
|
|
</param>
|
||
|
|
<param>
|
||
|
|
<type>const std::span< const <ref refid="structserif_1_1dimensions_1_1runtime_1_1_runtime_quantity_value" kindref="compound">dimensions::runtime::RuntimeQuantityValue</ref> ></type>
|
||
|
|
<declname>inputValues</declname>
|
||
|
|
</param>
|
||
|
|
<briefdescription>
|
||
|
|
<para>A helper function to evaluate a relation at runtime. This is used to simplify the usage of std::expected in the runtime system. </para>
|
||
|
|
</briefdescription>
|
||
|
|
<detaileddescription>
|
||
|
|
<para><parameterlist kind="templateparam"><parameteritem>
|
||
|
|
<parameternamelist>
|
||
|
|
<parametername>EOS</parametername>
|
||
|
|
</parameternamelist>
|
||
|
|
<parameterdescription>
|
||
|
|
<para>The EOS model type that supports the relation. </para>
|
||
|
|
</parameterdescription>
|
||
|
|
</parameteritem>
|
||
|
|
<parameteritem>
|
||
|
|
<parameternamelist>
|
||
|
|
<parametername>OutputT</parametername>
|
||
|
|
</parameternamelist>
|
||
|
|
<parameterdescription>
|
||
|
|
<para>The output quantity type of the relation. </para>
|
||
|
|
</parameterdescription>
|
||
|
|
</parameteritem>
|
||
|
|
<parameteritem>
|
||
|
|
<parameternamelist>
|
||
|
|
<parametername>InputTs</parametername>
|
||
|
|
</parameternamelist>
|
||
|
|
<parameterdescription>
|
||
|
|
<para>The input quantity types of the relation.</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>relation</parametername>
|
||
|
|
</parameternamelist>
|
||
|
|
<parameterdescription>
|
||
|
|
<para>The relation to evaluate. </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>A std::expected containing the result of the evaluation or a <ref refid="views_8cpp_1ab04484c13887f78337c2331fb2911346" kindref="member">SERiFErrorCode</ref> if the evaluation failed. </para>
|
||
|
|
</simplesect>
|
||
|
|
</para>
|
||
|
|
</detaileddescription>
|
||
|
|
<inbodydescription>
|
||
|
|
</inbodydescription>
|
||
|
|
<location file="src/include/serif/eos/runtime/details.hpp" line="256" column="20" bodyfile="src/include/serif/eos/runtime/details.hpp" bodystart="256" bodyend="275"/>
|
||
|
|
</memberdef>
|
||
|
|
<memberdef kind="function" id="namespaceserif_1_1eos_1_1runtime_1a7a12dde1e7beb91e5714eb5f058b21b9" prot="public" static="no" nodiscard="yes" const="no" explicit="no" inline="no" virt="non-virtual">
|
||
|
|
<templateparamlist>
|
||
|
|
<param>
|
||
|
|
<type>typename InputQuantityT</type>
|
||
|
|
</param>
|
||
|
|
<param>
|
||
|
|
<type>typename EOS</type>
|
||
|
|
</param>
|
||
|
|
<param>
|
||
|
|
<type>typename OutputT</type>
|
||
|
|
</param>
|
||
|
|
<param>
|
||
|
|
<type>typename...</type>
|
||
|
|
<declname>InputTs</declname>
|
||
|
|
<defname>InputTs</defname>
|
||
|
|
</param>
|
||
|
|
</templateparamlist>
|
||
|
|
<type>bool</type>
|
||
|
|
<definition>bool serif::eos::runtime::tryRuntimePartialDerivative</definition>
|
||
|
|
<argsstring>(const EOS &eos, relations::Relation< OutputT, InputTs... >, const dimensions::runtime::ThermodynamicQuantityID withRespectTo, const std::span< const dimensions::runtime::RuntimeQuantityValue > inputValues, std::expected< double, utils::errors::SERiFErrorCode > &result)</argsstring>
|
||
|
|
<name>tryRuntimePartialDerivative</name>
|
||
|
|
<qualifiedname>serif::eos::runtime::tryRuntimePartialDerivative</qualifiedname>
|
||
|
|
<param>
|
||
|
|
<type>const EOS &</type>
|
||
|
|
<declname>eos</declname>
|
||
|
|
</param>
|
||
|
|
<param>
|
||
|
|
<type><ref refid="structserif_1_1eos_1_1relations_1_1_relation" kindref="compound">relations::Relation</ref>< OutputT, InputTs... ></type>
|
||
|
|
</param>
|
||
|
|
<param>
|
||
|
|
<type>const <ref refid="classserif_1_1dimensions_1_1runtime_1_1_thermodynamic_quantity_i_d" kindref="compound">dimensions::runtime::ThermodynamicQuantityID</ref></type>
|
||
|
|
<declname>withRespectTo</declname>
|
||
|
|
</param>
|
||
|
|
<param>
|
||
|
|
<type>const std::span< const <ref refid="structserif_1_1dimensions_1_1runtime_1_1_runtime_quantity_value" kindref="compound">dimensions::runtime::RuntimeQuantityValue</ref> ></type>
|
||
|
|
<declname>inputValues</declname>
|
||
|
|
</param>
|
||
|
|
<param>
|
||
|
|
<type>std::expected< double, <ref refid="namespaceserif_1_1utils_1_1errors_1ab04484c13887f78337c2331fb2911346" kindref="member">utils::errors::SERiFErrorCode</ref> > &</type>
|
||
|
|
<declname>result</declname>
|
||
|
|
</param>
|
||
|
|
<briefdescription>
|
||
|
|
<para>A helper function to evaluate a partial derivative of a relation at runtime. This is used to simplify the usage of std::expected in the runtime system. </para>
|
||
|
|
</briefdescription>
|
||
|
|
<detaileddescription>
|
||
|
|
<para><parameterlist kind="templateparam"><parameteritem>
|
||
|
|
<parameternamelist>
|
||
|
|
<parametername>InputQuantityT</parametername>
|
||
|
|
</parameternamelist>
|
||
|
|
<parameterdescription>
|
||
|
|
<para>The input quantity type to take the partial derivative with respect to. </para>
|
||
|
|
</parameterdescription>
|
||
|
|
</parameteritem>
|
||
|
|
<parameteritem>
|
||
|
|
<parameternamelist>
|
||
|
|
<parametername>EOS</parametername>
|
||
|
|
</parameternamelist>
|
||
|
|
<parameterdescription>
|
||
|
|
<para>The EOS model type that supports the relation. </para>
|
||
|
|
</parameterdescription>
|
||
|
|
</parameteritem>
|
||
|
|
<parameteritem>
|
||
|
|
<parameternamelist>
|
||
|
|
<parametername>OutputT</parametername>
|
||
|
|
</parameternamelist>
|
||
|
|
<parameterdescription>
|
||
|
|
<para>The output quantity type of the relation. </para>
|
||
|
|
</parameterdescription>
|
||
|
|
</parameteritem>
|
||
|
|
<parameteritem>
|
||
|
|
<parameternamelist>
|
||
|
|
<parametername>InputTs</parametername>
|
||
|
|
</parameternamelist>
|
||
|
|
<parameterdescription>
|
||
|
|
<para>The input quantity types of the relation.</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>relation</parametername>
|
||
|
|
</parameternamelist>
|
||
|
|
<parameterdescription>
|
||
|
|
<para>The relation to evaluate. </para>
|
||
|
|
</parameterdescription>
|
||
|
|
</parameteritem>
|
||
|
|
<parameteritem>
|
||
|
|
<parameternamelist>
|
||
|
|
<parametername>withRespectTo</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>
|
||
|
|
<simplesect kind="return"><para>A std::expected containing the result of the evaluation or a <ref refid="views_8cpp_1ab04484c13887f78337c2331fb2911346" kindref="member">SERiFErrorCode</ref> if the evaluation failed. </para>
|
||
|
|
</simplesect>
|
||
|
|
</para>
|
||
|
|
</detaileddescription>
|
||
|
|
<inbodydescription>
|
||
|
|
</inbodydescription>
|
||
|
|
<location file="src/include/serif/eos/runtime/details.hpp" line="291" column="11" bodyfile="src/include/serif/eos/runtime/details.hpp" bodystart="291" bodyend="317"/>
|
||
|
|
</memberdef>
|
||
|
|
<memberdef kind="function" id="namespaceserif_1_1eos_1_1runtime_1a8b97b3741d11fdc026685bd5c857404d" prot="public" static="no" nodiscard="yes" const="no" explicit="no" inline="no" virt="non-virtual">
|
||
|
|
<templateparamlist>
|
||
|
|
<param>
|
||
|
|
<type>typename EOS</type>
|
||
|
|
</param>
|
||
|
|
<param>
|
||
|
|
<type>typename OutputT</type>
|
||
|
|
</param>
|
||
|
|
<param>
|
||
|
|
<type>typename...</type>
|
||
|
|
<declname>InputTs</declname>
|
||
|
|
<defname>InputTs</defname>
|
||
|
|
</param>
|
||
|
|
</templateparamlist>
|
||
|
|
<type>std::expected< double, <ref refid="namespaceserif_1_1utils_1_1errors_1ab04484c13887f78337c2331fb2911346" kindref="member">utils::errors::SERiFErrorCode</ref> ></type>
|
||
|
|
<definition>std::expected< double, utils::errors::SERiFErrorCode > serif::eos::runtime::evaluateRuntimePartialDerivative</definition>
|
||
|
|
<argsstring>(const EOS &eos, relations::Relation< OutputT, InputTs... > relation, const dimensions::runtime::ThermodynamicQuantityID withRespectTo, const std::span< const dimensions::runtime::RuntimeQuantityValue > inputValues)</argsstring>
|
||
|
|
<name>evaluateRuntimePartialDerivative</name>
|
||
|
|
<qualifiedname>serif::eos::runtime::evaluateRuntimePartialDerivative</qualifiedname>
|
||
|
|
<param>
|
||
|
|
<type>const EOS &</type>
|
||
|
|
<declname>eos</declname>
|
||
|
|
</param>
|
||
|
|
<param>
|
||
|
|
<type><ref refid="structserif_1_1eos_1_1relations_1_1_relation" kindref="compound">relations::Relation</ref>< OutputT, InputTs... ></type>
|
||
|
|
<declname>relation</declname>
|
||
|
|
</param>
|
||
|
|
<param>
|
||
|
|
<type>const <ref refid="classserif_1_1dimensions_1_1runtime_1_1_thermodynamic_quantity_i_d" kindref="compound">dimensions::runtime::ThermodynamicQuantityID</ref></type>
|
||
|
|
<declname>withRespectTo</declname>
|
||
|
|
</param>
|
||
|
|
<param>
|
||
|
|
<type>const std::span< const <ref refid="structserif_1_1dimensions_1_1runtime_1_1_runtime_quantity_value" kindref="compound">dimensions::runtime::RuntimeQuantityValue</ref> ></type>
|
||
|
|
<declname>inputValues</declname>
|
||
|
|
</param>
|
||
|
|
<briefdescription>
|
||
|
|
<para>A helper function to evaluate a partial derivative of a relation at runtime. This is used to simplify the usage of std::expected in the runtime system. </para>
|
||
|
|
</briefdescription>
|
||
|
|
<detaileddescription>
|
||
|
|
<para><parameterlist kind="templateparam"><parameteritem>
|
||
|
|
<parameternamelist>
|
||
|
|
<parametername>EOS</parametername>
|
||
|
|
</parameternamelist>
|
||
|
|
<parameterdescription>
|
||
|
|
<para>The EOS model type that supports the relation. </para>
|
||
|
|
</parameterdescription>
|
||
|
|
</parameteritem>
|
||
|
|
<parameteritem>
|
||
|
|
<parameternamelist>
|
||
|
|
<parametername>OutputT</parametername>
|
||
|
|
</parameternamelist>
|
||
|
|
<parameterdescription>
|
||
|
|
<para>The output quantity type of the relation. </para>
|
||
|
|
</parameterdescription>
|
||
|
|
</parameteritem>
|
||
|
|
<parameteritem>
|
||
|
|
<parameternamelist>
|
||
|
|
<parametername>InputTs</parametername>
|
||
|
|
</parameternamelist>
|
||
|
|
<parameterdescription>
|
||
|
|
<para>The input quantity types of the relation.</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>relation</parametername>
|
||
|
|
</parameternamelist>
|
||
|
|
<parameterdescription>
|
||
|
|
<para>The relation to evaluate. </para>
|
||
|
|
</parameterdescription>
|
||
|
|
</parameteritem>
|
||
|
|
<parameteritem>
|
||
|
|
<parameternamelist>
|
||
|
|
<parametername>withRespectTo</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>
|
||
|
|
<simplesect kind="return"><para>A std::expected containing the result of the evaluation or a <ref refid="views_8cpp_1ab04484c13887f78337c2331fb2911346" kindref="member">SERiFErrorCode</ref> if the evaluation failed. </para>
|
||
|
|
</simplesect>
|
||
|
|
</para>
|
||
|
|
</detaileddescription>
|
||
|
|
<inbodydescription>
|
||
|
|
</inbodydescription>
|
||
|
|
<location file="src/include/serif/eos/runtime/details.hpp" line="332" column="20" bodyfile="src/include/serif/eos/runtime/details.hpp" bodystart="332" bodyend="344"/>
|
||
|
|
</memberdef>
|
||
|
|
<memberdef kind="function" id="namespaceserif_1_1eos_1_1runtime_1a47b57535e125e2a963ff0105c77420fd" prot="public" static="no" nodiscard="yes" const="no" explicit="no" inline="no" virt="non-virtual">
|
||
|
|
<templateparamlist>
|
||
|
|
<param>
|
||
|
|
<type>typename EOS</type>
|
||
|
|
</param>
|
||
|
|
<param>
|
||
|
|
<type>typename RelationT</type>
|
||
|
|
</param>
|
||
|
|
</templateparamlist>
|
||
|
|
<type>bool</type>
|
||
|
|
<definition>bool serif::eos::runtime::runtimeRelationMatches</definition>
|
||
|
|
<argsstring>(const dimensions::runtime::ThermodynamicQuantityID outputQuantityID, const std::span< const dimensions::runtime::RuntimeQuantityValue > inputValues)</argsstring>
|
||
|
|
<name>runtimeRelationMatches</name>
|
||
|
|
<qualifiedname>serif::eos::runtime::runtimeRelationMatches</qualifiedname>
|
||
|
|
<param>
|
||
|
|
<type>const <ref refid="classserif_1_1dimensions_1_1runtime_1_1_thermodynamic_quantity_i_d" kindref="compound">dimensions::runtime::ThermodynamicQuantityID</ref></type>
|
||
|
|
<declname>outputQuantityID</declname>
|
||
|
|
</param>
|
||
|
|
<param>
|
||
|
|
<type>const std::span< const <ref refid="structserif_1_1dimensions_1_1runtime_1_1_runtime_quantity_value" kindref="compound">dimensions::runtime::RuntimeQuantityValue</ref> ></type>
|
||
|
|
<declname>inputValues</declname>
|
||
|
|
</param>
|
||
|
|
<briefdescription>
|
||
|
|
<para>A helper function to determine if a relation matches the given output quantity and input quantities at runtime. This is used to simplify the usage of std::expected in the runtime system. </para>
|
||
|
|
</briefdescription>
|
||
|
|
<detaileddescription>
|
||
|
|
<para><parameterlist kind="templateparam"><parameteritem>
|
||
|
|
<parameternamelist>
|
||
|
|
<parametername>EOS</parametername>
|
||
|
|
</parameternamelist>
|
||
|
|
<parameterdescription>
|
||
|
|
<para>The EOS model type that supports the relation. </para>
|
||
|
|
</parameterdescription>
|
||
|
|
</parameteritem>
|
||
|
|
<parameteritem>
|
||
|
|
<parameternamelist>
|
||
|
|
<parametername>RelationT</parametername>
|
||
|
|
</parameternamelist>
|
||
|
|
<parameterdescription>
|
||
|
|
<para>The relation type to check.</para>
|
||
|
|
</parameterdescription>
|
||
|
|
</parameteritem>
|
||
|
|
</parameterlist>
|
||
|
|
<parameterlist kind="param"><parameteritem>
|
||
|
|
<parameternamelist>
|
||
|
|
<parametername>outputQuantityID</parametername>
|
||
|
|
</parameternamelist>
|
||
|
|
<parameterdescription>
|
||
|
|
<para>The output quantity type to check. </para>
|
||
|
|
</parameterdescription>
|
||
|
|
</parameteritem>
|
||
|
|
<parameteritem>
|
||
|
|
<parameternamelist>
|
||
|
|
<parametername>inputValues</parametername>
|
||
|
|
</parameternamelist>
|
||
|
|
<parameterdescription>
|
||
|
|
<para>The input values to check. </para>
|
||
|
|
</parameterdescription>
|
||
|
|
</parameteritem>
|
||
|
|
</parameterlist>
|
||
|
|
<simplesect kind="return"><para>True if the relation matches the given output quantity and input quantities, false otherwise. </para>
|
||
|
|
</simplesect>
|
||
|
|
</para>
|
||
|
|
</detaileddescription>
|
||
|
|
<inbodydescription>
|
||
|
|
</inbodydescription>
|
||
|
|
<location file="src/include/serif/eos/runtime/details.hpp" line="356" column="11" bodyfile="src/include/serif/eos/runtime/details.hpp" bodystart="356" bodyend="373"/>
|
||
|
|
</memberdef>
|
||
|
|
</sectiondef>
|
||
|
|
<briefdescription>
|
||
|
|
</briefdescription>
|
||
|
|
<detaileddescription>
|
||
|
|
</detaileddescription>
|
||
|
|
<location file="src/include/serif/eos/runtime/concepts.hpp" line="13" column="1"/>
|
||
|
|
</compounddef>
|
||
|
|
</doxygen>
|