Files
MeanField_SERiF/docs/xml/namespaceserif_1_1model_1_1computations.xml

345 lines
19 KiB
XML
Raw Normal View History

<?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_1model_1_1computations" kind="namespace" language="C++">
<compoundname>serif::model::computations</compoundname>
<innerclass refid="structserif_1_1model_1_1computations_1_1_contributions" prot="public">serif::model::computations::Contributions</innerclass>
<innerclass refid="structserif_1_1model_1_1computations_1_1_interior_contribution" prot="public">serif::model::computations::InteriorContribution</innerclass>
<innerclass refid="structserif_1_1model_1_1computations_1_1_potential_infinity_contribution" prot="public">serif::model::computations::PotentialInfinityContribution</innerclass>
<innerclass refid="structserif_1_1model_1_1computations_1_1_pressure_boundary_contribution" prot="public">serif::model::computations::PressureBoundaryContribution</innerclass>
<innerclass refid="structserif_1_1model_1_1computations_1_1_scalar_residual_row" prot="public">serif::model::computations::ScalarResidualRow</innerclass>
<innerclass refid="structserif_1_1model_1_1computations_1_1_shape_contribution" prot="public">serif::model::computations::ShapeContribution</innerclass>
<innerclass refid="structserif_1_1model_1_1computations_1_1_shape_derivatives" prot="public">serif::model::computations::ShapeDerivatives</innerclass>
<innernamespace refid="namespaceserif_1_1model_1_1computations_1_1detail">serif::model::computations::detail</innernamespace>
<sectiondef kind="func">
<memberdef kind="function" id="namespaceserif_1_1model_1_1computations_1a9e46f414aef900d44b0dd2fd5574fd3a" prot="public" static="no" nodiscard="yes" const="no" explicit="no" inline="no" virt="non-virtual">
<templateparamlist>
<param>
<type>typename Equation</type>
</param>
<param>
<type>typename Schema</type>
</param>
<param>
<type>typename Layout</type>
</param>
</templateparamlist>
<type><ref refid="structserif_1_1model_1_1computations_1_1_contributions" kindref="compound">Contributions</ref></type>
<definition>Contributions serif::model::computations::volume_contribution</definition>
<argsstring>(std::shared_ptr&lt; const operators::backend::mfem::VolumeData&lt; Equation, Schema &gt; &gt; accepted, const Layout &amp;layout, std::optional&lt; backend::mfem::ColumnContribution &gt; geometry={})</argsstring>
<name>volume_contribution</name>
<qualifiedname>serif::model::computations::volume_contribution</qualifiedname>
<param>
<type>std::shared_ptr&lt; const <ref refid="structserif_1_1operators_1_1backend_1_1mfem_1_1_volume_data" kindref="compound">operators::backend::mfem::VolumeData</ref>&lt; Equation, Schema &gt; &gt;</type>
<declname>accepted</declname>
</param>
<param>
<type>const Layout &amp;</type>
<declname>layout</declname>
</param>
<param>
<type>std::optional&lt; <ref refid="structserif_1_1model_1_1backend_1_1mfem_1_1_column_contribution" kindref="compound">backend::mfem::ColumnContribution</ref> &gt;</type>
<declname>geometry</declname>
<defval>{}</defval>
</param>
<briefdescription>
<para>Assemble field and optional geometry columns from the same retained volume result. </para>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/include/serif/backend/mfem/model/computations/interior.hpp" line="33" column="20" bodyfile="src/include/serif/backend/mfem/model/computations/interior.hpp" bodystart="33" bodyend="53"/>
</memberdef>
<memberdef kind="function" id="namespaceserif_1_1model_1_1computations_1a5600e8e13f635774406929efd4082748" prot="public" static="no" nodiscard="yes" const="no" explicit="no" inline="no" virt="non-virtual">
<templateparamlist>
<param>
<type>typename Equation</type>
</param>
<param>
<type>typename Layout</type>
</param>
</templateparamlist>
<type>auto</type>
<definition>auto serif::model::computations::interior_contribution</definition>
<argsstring>(Layout layout)</argsstring>
<name>interior_contribution</name>
<qualifiedname>serif::model::computations::interior_contribution</qualifiedname>
<param>
<type>Layout</type>
<declname>layout</declname>
</param>
<briefdescription>
<para>Declare one owning contribution per equation; shape coordinates add one explicit shared prerequisite. </para>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/include/serif/backend/mfem/model/computations/interior.hpp" line="57" column="11" bodyfile="src/include/serif/backend/mfem/model/computations/interior.hpp" bodystart="57" bodyend="83"/>
</memberdef>
<memberdef kind="function" id="namespaceserif_1_1model_1_1computations_1a15a3dad726975a3353a9f5337708194a" prot="public" static="no" nodiscard="yes" const="no" explicit="no" inline="no" virt="non-virtual">
<templateparamlist>
<param>
<type>typename Equation</type>
</param>
<param>
<type>typename Layout</type>
</param>
</templateparamlist>
<type>auto</type>
<definition>auto serif::model::computations::interior_computations</definition>
<argsstring>(const Layout &amp;layout)</argsstring>
<name>interior_computations</name>
<qualifiedname>serif::model::computations::interior_computations</qualifiedname>
<param>
<type>const Layout &amp;</type>
<declname>layout</declname>
</param>
<briefdescription>
<para>Scalar equations publish a reusable functional before joining ordinary system assembly. </para>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/include/serif/backend/mfem/model/computations/interior.hpp" line="87" column="11" bodyfile="src/include/serif/backend/mfem/model/computations/interior.hpp" bodystart="87" bodyend="93"/>
</memberdef>
<memberdef kind="function" id="namespaceserif_1_1model_1_1computations_1a0660915b0bac2fc2ce2012e70bcd4e07" prot="public" static="no" nodiscard="yes" const="no" explicit="no" inline="no" virt="non-virtual">
<templateparamlist>
<param>
<type>typename Block</type>
</param>
<param>
<type>discretization::blocks::SystemLayoutType</type>
<declname>Layout</declname>
<defname>Layout</defname>
</param>
</templateparamlist>
<type>auto</type>
<definition>auto serif::model::computations::physical_block</definition>
<argsstring>(const Layout &amp;layout)</argsstring>
<name>physical_block</name>
<qualifiedname>serif::model::computations::physical_block</qualifiedname>
<param>
<type>const Layout &amp;</type>
<declname>layout</declname>
</param>
<briefdescription>
<para>Publish a requested physical block from the same physical root used for residual and Jacobian actions. </para>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/include/serif/backend/mfem/model/computations/physical_blocks.hpp" line="29" column="11" bodyfile="src/include/serif/backend/mfem/model/computations/physical_blocks.hpp" bodystart="29" bodyend="42"/>
</memberdef>
<memberdef kind="function" id="namespaceserif_1_1model_1_1computations_1a4ff124ec28d7784bd444fee234bad18e" prot="public" static="no" nodiscard="yes" const="no" explicit="no" inline="no" virt="non-virtual">
<templateparamlist>
<param>
<type>discretization::blocks::SystemLayoutType</type>
<declname>Layout</declname>
<defname>Layout</defname>
</param>
<param>
<type>typename...</type>
<declname>Blocks</declname>
<defname>Blocks</defname>
</param>
</templateparamlist>
<type>auto</type>
<definition>auto serif::model::computations::make_physical_block_computations</definition>
<argsstring>(const Layout &amp;layout, utils::dependencies::KeyList&lt; Blocks... &gt;)</argsstring>
<name>make_physical_block_computations</name>
<qualifiedname>serif::model::computations::make_physical_block_computations</qualifiedname>
<param>
<type>const Layout &amp;</type>
<declname>layout</declname>
</param>
<param>
<type><ref refid="structserif_1_1utils_1_1dependencies_1_1_key_list" kindref="compound">utils::dependencies::KeyList</ref>&lt; Blocks... &gt;</type>
</param>
<briefdescription>
<para>Supply precisely the requested physical couplings to existing preconditioner computations. </para>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/include/serif/backend/mfem/model/computations/physical_blocks.hpp" line="46" column="11" bodyfile="src/include/serif/backend/mfem/model/computations/physical_blocks.hpp" bodystart="46" bodyend="48"/>
</memberdef>
<memberdef kind="function" id="namespaceserif_1_1model_1_1computations_1ad1541fee1dc9566753a4df55e3d177d7" prot="public" static="no" nodiscard="yes" const="no" explicit="no" inline="no" virt="non-virtual">
<templateparamlist>
<param>
<type>typename Layout</type>
</param>
<param>
<type>typename Binding</type>
</param>
</templateparamlist>
<type>auto</type>
<definition>auto serif::model::computations::potential_infinity_contribution</definition>
<argsstring>(Layout layout, const Binding &amp;binding)</argsstring>
<name>potential_infinity_contribution</name>
<qualifiedname>serif::model::computations::potential_infinity_contribution</qualifiedname>
<param>
<type>Layout</type>
<declname>layout</declname>
</param>
<param>
<type>const Binding &amp;</type>
<declname>binding</declname>
</param>
<briefdescription>
<para>Replace only the compactified-infinity potential rows by the zero physical trace. </para>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/include/serif/backend/mfem/model/computations/potential_infinity.hpp" line="12" column="11" bodyfile="src/include/serif/backend/mfem/model/computations/potential_infinity.hpp" bodystart="12" bodyend="39"/>
</memberdef>
<memberdef kind="function" id="namespaceserif_1_1model_1_1computations_1a3a40d4e2b6f9007024cf9ad7d0b24c2b" prot="public" static="no" nodiscard="yes" const="no" explicit="no" inline="no" virt="non-virtual">
<templateparamlist>
<param>
<type>geometry::surface::backend::mfem::PressureBoundaryFormulation</type>
<declname>Formulation</declname>
<defname>Formulation</defname>
</param>
<param>
<type>discretization::blocks::SystemLayoutType</type>
<declname>Layout</declname>
<defname>Layout</defname>
</param>
</templateparamlist>
<type>auto</type>
<definition>auto serif::model::computations::pressure_boundary_contribution</definition>
<argsstring>(Layout layout)</argsstring>
<name>pressure_boundary_contribution</name>
<qualifiedname>serif::model::computations::pressure_boundary_contribution</qualifiedname>
<param>
<type>Layout</type>
<declname>layout</declname>
</param>
<requiresclause>utils::dependencies::ContainsKey&lt;typename Formulation::CarrierTerm, typename Layout::Residuals&gt; </requiresclause>
<briefdescription>
<para>Publish accepted pressure rows and their solved-field derivatives in system coordinates. </para>
</briefdescription>
<detaileddescription>
<para><simplesect kind="note"><para>Prescribed EOS inputs still participate in surface evaluation, but have no Newton column. The compiled surface formulation selects its physical carrier; no enthalpy assumption enters assembly. </para>
</simplesect>
</para>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/include/serif/backend/mfem/model/computations/pressure_boundary.hpp" line="24" column="11" bodyfile="src/include/serif/backend/mfem/model/computations/pressure_boundary.hpp" bodystart="24" bodyend="68"/>
</memberdef>
<memberdef kind="function" id="namespaceserif_1_1model_1_1computations_1a6cc3c063b45f722bf8d0739ce53b47ca" prot="public" static="no" nodiscard="yes" const="no" explicit="no" inline="no" virt="non-virtual">
<templateparamlist>
<param>
<type>typename Equation</type>
</param>
<param>
<type>typename Layout</type>
</param>
</templateparamlist>
<type>auto</type>
<definition>auto serif::model::computations::scalar_residual_row</definition>
<argsstring>(Layout layout)</argsstring>
<name>scalar_residual_row</name>
<qualifiedname>serif::model::computations::scalar_residual_row</qualifiedname>
<param>
<type>Layout</type>
<declname>layout</declname>
</param>
<requiresclause>discretization::blocks::GlobalScalarTerm&lt;typename Equation::Test&gt; </requiresclause>
<briefdescription>
<para>Rebuild a scalar functional only when its physical equation or shape derivative changes. </para>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/include/serif/backend/mfem/model/computations/scalar_row.hpp" line="17" column="11" bodyfile="src/include/serif/backend/mfem/model/computations/scalar_row.hpp" bodystart="17" bodyend="33"/>
</memberdef>
<memberdef kind="function" id="namespaceserif_1_1model_1_1computations_1a336eecda912a227c066bccb2ae6f1a22" prot="public" static="no" nodiscard="yes" const="no" explicit="no" inline="yes" virt="non-virtual">
<type>auto</type>
<definition>auto serif::model::computations::shape_derivatives</definition>
<argsstring>(const discretization::backend::mfem::DofMap &amp;binding)</argsstring>
<name>shape_derivatives</name>
<qualifiedname>serif::model::computations::shape_derivatives</qualifiedname>
<param>
<type>const <ref refid="classserif_1_1discretization_1_1backend_1_1mfem_1_1_dof_map" kindref="compound">discretization::backend::mfem::DofMap</ref> &amp;</type>
<declname>binding</declname>
</param>
<briefdescription>
<para>Prepare the projected shape derivative once per evaluated geometry, retaining its computed owner. </para>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/include/serif/backend/mfem/model/computations/shape_derivatives.hpp" line="11" column="18" bodyfile="src/include/serif/backend/mfem/model/computations/shape_derivatives.hpp" bodystart="11" bodyend="19"/>
</memberdef>
<memberdef kind="function" id="namespaceserif_1_1model_1_1computations_1af86649ee0630f0316604c92d4ba2ac44" prot="public" static="no" nodiscard="yes" const="no" explicit="no" inline="no" virt="non-virtual">
<templateparamlist>
<param>
<type>discretization::blocks::SystemLayoutType</type>
<declname>Layout</declname>
<defname>Layout</defname>
</param>
</templateparamlist>
<type>auto</type>
<definition>auto serif::model::computations::make_solver_layout_computations</definition>
<argsstring>(const Layout &amp;layout)</argsstring>
<name>make_solver_layout_computations</name>
<qualifiedname>serif::model::computations::make_solver_layout_computations</qualifiedname>
<param>
<type>const Layout &amp;</type>
<declname>layout</declname>
</param>
<briefdescription>
<para>Give normalization and preconditioning one producer for their shared coordinate layout. </para>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/include/serif/backend/mfem/model/computations/solver_layout.hpp" line="12" column="11" bodyfile="src/include/serif/backend/mfem/model/computations/solver_layout.hpp" bodystart="12" bodyend="18"/>
</memberdef>
<memberdef kind="function" id="namespaceserif_1_1model_1_1computations_1a1f91d15e661d43a2a8e9a6b8111e6fc3" prot="public" static="no" nodiscard="yes" const="no" explicit="no" inline="no" virt="non-virtual">
<templateparamlist>
<param>
<type>typename Layout</type>
</param>
</templateparamlist>
<type>auto</type>
<definition>auto serif::model::computations::surface_potential_contribution</definition>
<argsstring>(equations::SurfacePotentialBalance equation, Layout layout)</argsstring>
<name>surface_potential_contribution</name>
<qualifiedname>serif::model::computations::surface_potential_contribution</qualifiedname>
<param>
<type><ref refid="classserif_1_1equations_1_1_surface_potential_balance" kindref="compound">equations::SurfacePotentialBalance</ref></type>
<declname>equation</declname>
</param>
<param>
<type>Layout</type>
<declname>layout</declname>
</param>
<briefdescription>
<para>Replace the volume force pullback by scalar effective-potential moments on the same surface. </para>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/include/serif/backend/mfem/model/computations/surface_potential.hpp" line="13" column="11" bodyfile="src/include/serif/backend/mfem/model/computations/surface_potential.hpp" bodystart="13" bodyend="44"/>
</memberdef>
</sectiondef>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<location file="src/include/serif/backend/mfem/model/computations/interior.hpp" line="16" column="1"/>
</compounddef>
</doxygen>