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

499 lines
36 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_1operators" kind="namespace" language="C++">
<compoundname>serif::operators</compoundname>
<innerclass refid="structserif_1_1operators_1_1_bad_contribution_collection" prot="public">serif::operators::BadContributionCollection</innerclass>
<innerclass refid="structserif_1_1operators_1_1_bad_contribution_row" prot="public">serif::operators::BadContributionRow</innerclass>
<innerclass refid="structserif_1_1operators_1_1_contribution_binding" prot="public">serif::operators::ContributionBinding</innerclass>
<innerclass refid="structserif_1_1operators_1_1_discontinuous_scalar" prot="public">serif::operators::DiscontinuousScalar</innerclass>
<innerclass refid="structserif_1_1operators_1_1_equation_plan" prot="public">serif::operators::EquationPlan</innerclass>
<innerclass refid="structserif_1_1operators_1_1_equation_plan_3_01_equation_t_00_01utils_1_1types_1_1_type_list_3_01_o_8_8_8_01_4_01_4" prot="public">serif::operators::EquationPlan&lt; EquationT, utils::types::TypeList&lt; O... &gt; &gt;</innerclass>
<innerclass refid="classserif_1_1operators_1_1_equation_registry" prot="public">serif::operators::EquationRegistry</innerclass>
<innerclass refid="structserif_1_1operators_1_1_gradient_request" prot="public">serif::operators::GradientRequest</innerclass>
<innerclass refid="structserif_1_1operators_1_1_has_scalar_volume_operands" prot="public">serif::operators::HasScalarVolumeOperands</innerclass>
<innerclass refid="structserif_1_1operators_1_1_has_scalar_volume_operands_3_01_equation_t_00_01utils_1_1types_1_1_a6e6645520e475d59dc9a1cecc004d8a" prot="public">serif::operators::HasScalarVolumeOperands&lt; EquationT, utils::types::TypeList&lt; Operands... &gt; &gt;</innerclass>
<innerclass refid="classserif_1_1operators_1_1_linearized_block" prot="public">serif::operators::LinearizedBlock</innerclass>
<innerclass refid="classserif_1_1operators_1_1_linearized_system_view" prot="public">serif::operators::LinearizedSystemView</innerclass>
<innerclass refid="structserif_1_1operators_1_1_nested_bad_collection" prot="public">serif::operators::NestedBadCollection</innerclass>
<innerclass refid="structserif_1_1operators_1_1_nodal_request" prot="public">serif::operators::NodalRequest</innerclass>
<innerclass refid="structserif_1_1operators_1_1_operand_values" prot="public">serif::operators::OperandValues</innerclass>
<innerclass refid="structserif_1_1operators_1_1_physical_block" prot="public">serif::operators::PhysicalBlock</innerclass>
<innerclass refid="structserif_1_1operators_1_1_volume_contributions" prot="public">serif::operators::VolumeContributions</innerclass>
<innerclass refid="structserif_1_1operators_1_1_volume_contributions_3_01std_1_1tuple_3_01_c_8_8_8_01_4_01_4" prot="public">serif::operators::VolumeContributions&lt; std::tuple&lt; C... &gt; &gt;</innerclass>
<innerclass refid="structserif_1_1operators_1_1_volume_operands" prot="public">serif::operators::VolumeOperands</innerclass>
<innerclass refid="structserif_1_1operators_1_1_volume_operands_3_01_c_00_01utils_1_1types_1_1_type_list_3_01_o_8_8_8_01_4_01_4" prot="public">serif::operators::VolumeOperands&lt; C, utils::types::TypeList&lt; O... &gt; &gt;</innerclass>
<innernamespace refid="namespaceserif_1_1operators_1_1backend">serif::operators::backend</innernamespace>
<innernamespace refid="namespaceserif_1_1operators_1_1detail">serif::operators::detail</innernamespace>
<sectiondef kind="typedef">
<memberdef kind="typedef" id="namespaceserif_1_1operators_1a8ae759fc718c8ccc0804325b10a03b84" prot="public" static="no">
<type><ref refid="structserif_1_1discretization_1_1forms_1_1_operand" kindref="compound">discretization::forms::Operand</ref>&lt; <ref refid="structserif_1_1discretization_1_1blocks_1_1density_1_1mass" kindref="compound">discretization::blocks::density::mass</ref> &gt;</type>
<definition>typedef discretization::blocks::density::mass serif::operators::Density = discretization::forms::Operand&lt;discretization::blocks::density::mass&gt;</definition>
<argsstring></argsstring>
<name>Density</name>
<qualifiedname>serif::operators::Density</qualifiedname>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/compile_time_checks/serif/operators/coordinate_identity_meanfield.cpp" line="15" column="5" bodyfile="src/compile_time_checks/serif/operators/coordinate_identity_meanfield.cpp" bodystart="15" bodyend="-1"/>
</memberdef>
<memberdef kind="typedef" id="namespaceserif_1_1operators_1a9a98677dd6eb911f3daa5a4173248c93" prot="public" static="no">
<type><ref refid="structserif_1_1discretization_1_1forms_1_1_operand" kindref="compound">discretization::forms::Operand</ref>&lt; <ref refid="structserif_1_1discretization_1_1blocks_1_1gravity_1_1potential" kindref="compound">discretization::blocks::gravity::potential</ref> &gt;</type>
<definition>typedef discretization::blocks::gravity::potential serif::operators::Potential = discretization::forms::Operand&lt;discretization::blocks::gravity::potential&gt;</definition>
<argsstring></argsstring>
<name>Potential</name>
<qualifiedname>serif::operators::Potential</qualifiedname>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/compile_time_checks/serif/operators/coordinate_identity_meanfield.cpp" line="16" column="5" bodyfile="src/compile_time_checks/serif/operators/coordinate_identity_meanfield.cpp" bodystart="16" bodyend="-1"/>
</memberdef>
<memberdef kind="typedef" id="namespaceserif_1_1operators_1af3400cbc42927b9162d39b370273de24" prot="public" static="no">
<type><ref refid="structserif_1_1discretization_1_1forms_1_1_operand" kindref="compound">discretization::forms::Operand</ref>&lt; <ref refid="structserif_1_1discretization_1_1blocks_1_1barotropic__constant_1_1mass__normalization" kindref="compound">discretization::blocks::barotropic_constant::mass_normalization</ref> &gt;</type>
<definition>typedef discretization::blocks::barotropic_constant::mass_normalization serif::operators::Constant = discretization::forms::Operand&lt;discretization::blocks::barotropic_constant::mass_normalization&gt;</definition>
<argsstring></argsstring>
<name>Constant</name>
<qualifiedname>serif::operators::Constant</qualifiedname>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/compile_time_checks/serif/operators/coordinate_identity_meanfield.cpp" line="17" column="5" bodyfile="src/compile_time_checks/serif/operators/coordinate_identity_meanfield.cpp" bodystart="17" bodyend="-1"/>
</memberdef>
<memberdef kind="typedef" id="namespaceserif_1_1operators_1ac485dbca2b971ac59f3adda704b5485d" prot="public" static="no">
<type><ref refid="structserif_1_1equations_1_1_operand_values" kindref="compound">equations::OperandValues</ref>&lt; <ref refid="structserif_1_1utils_1_1types_1_1_type_list" kindref="compound">utils::types::TypeList</ref>&lt; <ref refid="namespaceserif_1_1operators_1a8ae759fc718c8ccc0804325b10a03b84" kindref="member">Density</ref>, <ref refid="namespaceserif_1_1operators_1a9a98677dd6eb911f3daa5a4173248c93" kindref="member">Potential</ref>, <ref refid="namespaceserif_1_1operators_1af3400cbc42927b9162d39b370273de24" kindref="member">Constant</ref> &gt; &gt;</type>
<definition>using serif::operators::FirstOrder = equations::OperandValues&lt;utils::types::TypeList&lt;Density, Potential, Constant&gt;&gt;</definition>
<argsstring></argsstring>
<name>FirstOrder</name>
<qualifiedname>serif::operators::FirstOrder</qualifiedname>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/compile_time_checks/serif/operators/coordinate_identity_meanfield.cpp" line="18" column="5" bodyfile="src/compile_time_checks/serif/operators/coordinate_identity_meanfield.cpp" bodystart="18" bodyend="-1"/>
</memberdef>
<memberdef kind="typedef" id="namespaceserif_1_1operators_1a1bdabba6c03d61d4f242b8262b045fb0" prot="public" static="no">
<type><ref refid="structserif_1_1equations_1_1_operand_values" kindref="compound">equations::OperandValues</ref>&lt; <ref refid="structserif_1_1utils_1_1types_1_1_type_list" kindref="compound">utils::types::TypeList</ref>&lt; <ref refid="namespaceserif_1_1operators_1af3400cbc42927b9162d39b370273de24" kindref="member">Constant</ref>, <ref refid="namespaceserif_1_1operators_1a8ae759fc718c8ccc0804325b10a03b84" kindref="member">Density</ref>, <ref refid="namespaceserif_1_1operators_1a9a98677dd6eb911f3daa5a4173248c93" kindref="member">Potential</ref> &gt; &gt;</type>
<definition>using serif::operators::PermutedOrder = equations::OperandValues&lt;utils::types::TypeList&lt;Constant, Density, Potential&gt;&gt;</definition>
<argsstring></argsstring>
<name>PermutedOrder</name>
<qualifiedname>serif::operators::PermutedOrder</qualifiedname>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/compile_time_checks/serif/operators/coordinate_identity_meanfield.cpp" line="19" column="5" bodyfile="src/compile_time_checks/serif/operators/coordinate_identity_meanfield.cpp" bodystart="19" bodyend="-1"/>
</memberdef>
<memberdef kind="typedef" id="namespaceserif_1_1operators_1a849daf9bd0310ba0f030c323ebdcc7af" prot="public" static="no">
<type><ref refid="structserif_1_1operators_1_1_equation_plan" kindref="compound">EquationPlan</ref>&lt; <ref refid="classserif_1_1equations_1_1_mass_normalization" kindref="compound">equations::MassNormalization</ref> &gt;</type>
<definition>using serif::operators::MassPlan = EquationPlan&lt;equations::MassNormalization&gt;</definition>
<argsstring></argsstring>
<name>MassPlan</name>
<qualifiedname>serif::operators::MassPlan</qualifiedname>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/compile_time_checks/serif/operators/coordinate_identity_meanfield.cpp" line="30" column="5" bodyfile="src/compile_time_checks/serif/operators/coordinate_identity_meanfield.cpp" bodystart="30" bodyend="-1"/>
</memberdef>
<memberdef kind="typedef" id="namespaceserif_1_1operators_1a67216629c783b596d9fc92fbbfe959f5" prot="public" static="no">
<type><ref refid="structserif_1_1operators_1_1_equation_plan" kindref="compound">EquationPlan</ref>&lt; <ref refid="classserif_1_1equations_1_1_barotropic_density_balance" kindref="compound">equations::BarotropicDensityBalance</ref>&lt; <ref refid="classserif_1_1eos_1_1models_1_1_polytrope" kindref="compound">eos::models::Polytrope</ref> &gt; &gt;</type>
<definition>using serif::operators::BalancePlan = EquationPlan&lt;equations::BarotropicDensityBalance&lt;eos::models::Polytrope&gt;&gt;</definition>
<argsstring></argsstring>
<name>BalancePlan</name>
<qualifiedname>serif::operators::BalancePlan</qualifiedname>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/compile_time_checks/serif/operators/coordinate_identity_meanfield.cpp" line="31" column="5" bodyfile="src/compile_time_checks/serif/operators/coordinate_identity_meanfield.cpp" bodystart="31" bodyend="-1"/>
</memberdef>
<memberdef kind="typedef" id="namespaceserif_1_1operators_1ad169e8c66ddc12c3addd4e551faf1ec2" prot="public" static="no">
<type><ref refid="structserif_1_1equations_1_1_equation_point" kindref="compound">equations::EquationPoint</ref>&lt; <ref refid="classserif_1_1equations_1_1_mass_normalization_1a0cd9c730f6d84b05ee03bac2ff0433bb" kindref="member">equations::MassNormalization::Operands</ref> &gt;</type>
<definition>using serif::operators::MassPoint = equations::EquationPoint&lt;equations::MassNormalization::Operands&gt;</definition>
<argsstring></argsstring>
<name>MassPoint</name>
<qualifiedname>serif::operators::MassPoint</qualifiedname>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/compile_time_checks/serif/operators/coordinate_identity_meanfield.cpp" line="38" column="5" bodyfile="src/compile_time_checks/serif/operators/coordinate_identity_meanfield.cpp" bodystart="38" bodyend="-1"/>
</memberdef>
<memberdef kind="typedef" id="namespaceserif_1_1operators_1a9bc4fde2b5ab0098aa4600b125c5321d" prot="public" static="no">
<type><ref refid="namespaceserif_1_1equations_1a3d8c1500d535f29fe360f0ab31ac55e3" kindref="member">equations::ContributionsOf</ref>&lt; <ref refid="classserif_1_1equations_1_1_primal_poisson_balance" kindref="compound">equations::PrimalPoissonBalance</ref> &gt;</type>
<definition>using serif::operators::PotentialContributions = equations::ContributionsOf&lt;equations::PrimalPoissonBalance&gt;</definition>
<argsstring></argsstring>
<name>PotentialContributions</name>
<qualifiedname>serif::operators::PotentialContributions</qualifiedname>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/compile_time_checks/serif/operators/coordinate_identity_meanfield.cpp" line="43" column="5" bodyfile="src/compile_time_checks/serif/operators/coordinate_identity_meanfield.cpp" bodystart="43" bodyend="-1"/>
</memberdef>
<memberdef kind="typedef" id="namespaceserif_1_1operators_1ac93808811be69dd6608587eb7b0078e4" prot="public" static="no">
<type><ref refid="classserif_1_1equations_1_1_barotropic_density_balance" kindref="compound">equations::BarotropicDensityBalance</ref>&lt; <ref refid="classserif_1_1eos_1_1models_1_1_polytrope" kindref="compound">eos::models::Polytrope</ref> &gt;</type>
<definition>using serif::operators::Balance = equations::BarotropicDensityBalance&lt;eos::models::Polytrope&gt;</definition>
<argsstring></argsstring>
<name>Balance</name>
<qualifiedname>serif::operators::Balance</qualifiedname>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/compile_time_checks/serif/operators/plan.cpp" line="15" column="5" bodyfile="src/compile_time_checks/serif/operators/plan.cpp" bodystart="15" bodyend="-1"/>
</memberdef>
<memberdef kind="typedef" id="namespaceserif_1_1operators_1add26988897c07a3b976f748f621d779c" prot="public" static="no">
<type><ref refid="structserif_1_1discretization_1_1blocks_1_1displacement_1_1vector" kindref="compound">discretization::blocks::displacement::vector</ref></type>
<definition>using serif::operators::Displacement = discretization::blocks::displacement::vector</definition>
<argsstring></argsstring>
<name>Displacement</name>
<qualifiedname>serif::operators::Displacement</qualifiedname>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/compile_time_checks/serif/operators/plan.cpp" line="18" column="5" bodyfile="src/compile_time_checks/serif/operators/plan.cpp" bodystart="18" bodyend="-1"/>
</memberdef>
<memberdef kind="typedef" id="namespaceserif_1_1operators_1a1099b4a7d85fb1e9dd496c451f450a6a" prot="public" static="no">
<type><ref refid="namespaceserif_1_1discretization_1_1domain_1_1schema_1abc22bc3b4f40b417480a061162a3dea2" kindref="member">discretization::domain::schema::CoreEnvelopeVacuumDomainSchema</ref></type>
<definition>using serif::operators::Schema = discretization::domain::schema::CoreEnvelopeVacuumDomainSchema</definition>
<argsstring></argsstring>
<name>Schema</name>
<qualifiedname>serif::operators::Schema</qualifiedname>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/compile_time_checks/serif/operators/plan.cpp" line="19" column="5" bodyfile="src/compile_time_checks/serif/operators/plan.cpp" bodystart="19" bodyend="-1"/>
</memberdef>
<memberdef kind="typedef" id="namespaceserif_1_1operators_1a1990cb90a24314949bd1b5686d8c95f8" prot="public" static="no">
<type><ref refid="structserif_1_1operators_1_1_nodal_request" kindref="compound">NodalRequest</ref>&lt; <ref refid="namespaceserif_1_1operators_1a9a98677dd6eb911f3daa5a4173248c93" kindref="member">Potential</ref> &gt;</type>
<definition>using serif::operators::BoundaryValue = NodalRequest&lt;Potential&gt;</definition>
<argsstring></argsstring>
<name>BoundaryValue</name>
<qualifiedname>serif::operators::BoundaryValue</qualifiedname>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/compile_time_checks/serif/operators/plan.cpp" line="39" column="5" bodyfile="src/compile_time_checks/serif/operators/plan.cpp" bodystart="39" bodyend="-1"/>
</memberdef>
<memberdef kind="typedef" id="namespaceserif_1_1operators_1a84d7e8ff528dc3361769cc6f08e6cd49" prot="public" static="no">
<type><ref refid="structserif_1_1discretization_1_1forms_1_1_operand" kindref="compound">discretization::forms::Operand</ref>&lt; <ref refid="namespaceserif_1_1operators_1a8ae759fc718c8ccc0804325b10a03b84" kindref="member">Density</ref> &gt;</type>
<definition>using serif::operators::DensityValue = discretization::forms::Operand&lt;Density&gt;</definition>
<argsstring></argsstring>
<name>DensityValue</name>
<qualifiedname>serif::operators::DensityValue</qualifiedname>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/compile_time_checks/serif/operators/plan.cpp" line="64" column="5" bodyfile="src/compile_time_checks/serif/operators/plan.cpp" bodystart="64" bodyend="-1"/>
</memberdef>
<memberdef kind="typedef" id="namespaceserif_1_1operators_1a4fddf5444606d22742b6fc341880c05a" prot="public" static="no">
<type><ref refid="structserif_1_1discretization_1_1forms_1_1_operand" kindref="compound">discretization::forms::Operand</ref>&lt; <ref refid="namespaceserif_1_1operators_1a9a98677dd6eb911f3daa5a4173248c93" kindref="member">Potential</ref> &gt;</type>
<definition>using serif::operators::PotentialValue = discretization::forms::Operand&lt;Potential&gt;</definition>
<argsstring></argsstring>
<name>PotentialValue</name>
<qualifiedname>serif::operators::PotentialValue</qualifiedname>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/compile_time_checks/serif/operators/plan.cpp" line="65" column="5" bodyfile="src/compile_time_checks/serif/operators/plan.cpp" bodystart="65" bodyend="-1"/>
</memberdef>
<memberdef kind="typedef" id="namespaceserif_1_1operators_1ac1416d49e5c3ea87f5a2cdbbf7f6ac1c" prot="public" static="no">
<type><ref refid="structserif_1_1discretization_1_1forms_1_1_operand" kindref="compound">discretization::forms::Operand</ref>&lt; <ref refid="namespaceserif_1_1operators_1a9a98677dd6eb911f3daa5a4173248c93" kindref="member">Potential</ref>, <ref refid="structserif_1_1discretization_1_1forms_1_1_operation_1_1_gradient" kindref="compound">discretization::forms::Operation::Gradient</ref> &gt;</type>
<definition>using serif::operators::PotentialGradient = discretization::forms::Operand&lt;Potential, discretization::forms::Operation::Gradient&gt;</definition>
<argsstring></argsstring>
<name>PotentialGradient</name>
<qualifiedname>serif::operators::PotentialGradient</qualifiedname>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/compile_time_checks/serif/operators/plan.cpp" line="66" column="5" bodyfile="src/compile_time_checks/serif/operators/plan.cpp" bodystart="66" bodyend="-1"/>
</memberdef>
<memberdef kind="typedef" id="namespaceserif_1_1operators_1ac94445fb44b80328f7fd8470ded86ab7" prot="public" static="no">
<type><ref refid="structserif_1_1discretization_1_1forms_1_1_operand" kindref="compound">discretization::forms::Operand</ref>&lt; <ref refid="structserif_1_1discretization_1_1blocks_1_1displacement_1_1vector" kindref="compound">discretization::blocks::displacement::vector</ref>, <ref refid="structserif_1_1discretization_1_1forms_1_1_operation_1_1_divergence" kindref="compound">discretization::forms::Operation::Divergence</ref> &gt;</type>
<definition>using serif::operators::DisplacementDivergence = discretization::forms::Operand&lt;discretization::blocks::displacement::vector, discretization::forms::Operation::Divergence&gt;</definition>
<argsstring></argsstring>
<name>DisplacementDivergence</name>
<qualifiedname>serif::operators::DisplacementDivergence</qualifiedname>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/compile_time_checks/serif/operators/plan.cpp" line="74" column="5" bodyfile="src/compile_time_checks/serif/operators/plan.cpp" bodystart="74" bodyend="-1"/>
</memberdef>
<memberdef kind="typedef" id="namespaceserif_1_1operators_1a028bb2043970f34c7f9c4f8f35d2c996" prot="public" static="no">
<type><ref refid="structserif_1_1discretization_1_1forms_1_1_operand" kindref="compound">discretization::forms::Operand</ref>&lt; <ref refid="namespaceserif_1_1operators_1add26988897c07a3b976f748f621d779c" kindref="member">Displacement</ref> &gt;</type>
<definition>using serif::operators::DisplacementValue = discretization::forms::Operand&lt;Displacement&gt;</definition>
<argsstring></argsstring>
<name>DisplacementValue</name>
<qualifiedname>serif::operators::DisplacementValue</qualifiedname>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/compile_time_checks/serif/operators/plan.cpp" line="95" column="5" bodyfile="src/compile_time_checks/serif/operators/plan.cpp" bodystart="95" bodyend="-1"/>
</memberdef>
<memberdef kind="typedef" id="namespaceserif_1_1operators_1abb7387ce5fc8f06e38655f2abf71a05f" prot="public" static="no">
<type><ref refid="structserif_1_1discretization_1_1forms_1_1_operand" kindref="compound">discretization::forms::Operand</ref>&lt; <ref refid="namespaceserif_1_1operators_1add26988897c07a3b976f748f621d779c" kindref="member">Displacement</ref>, <ref refid="structserif_1_1discretization_1_1forms_1_1_operation_1_1_gradient" kindref="compound">discretization::forms::Operation::Gradient</ref> &gt;</type>
<definition>using serif::operators::DisplacementGradient = discretization::forms::Operand&lt;Displacement, discretization::forms::Operation::Gradient&gt;</definition>
<argsstring></argsstring>
<name>DisplacementGradient</name>
<qualifiedname>serif::operators::DisplacementGradient</qualifiedname>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/compile_time_checks/serif/operators/plan.cpp" line="98" column="5" bodyfile="src/compile_time_checks/serif/operators/plan.cpp" bodystart="98" bodyend="-1"/>
</memberdef>
<memberdef kind="typedef" id="namespaceserif_1_1operators_1a67047e978d34c67942594c8633d8dc98" prot="public" static="no">
<type><ref refid="namespaceserif_1_1discretization_1_1forms_1aecbaccd35c1209031d60ea7348d6a452" kindref="member">discretization::forms::MatrixValue</ref></type>
<definition>using serif::operators::VectorTensor = discretization::forms::MatrixValue</definition>
<argsstring></argsstring>
<name>VectorTensor</name>
<qualifiedname>serif::operators::VectorTensor</qualifiedname>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/compile_time_checks/serif/operators/plan.cpp" line="99" column="5" bodyfile="src/compile_time_checks/serif/operators/plan.cpp" bodystart="99" bodyend="-1"/>
</memberdef>
<memberdef kind="typedef" id="namespaceserif_1_1operators_1a6c1bf61c7f8146504e22c9dd5cd214eb" prot="public" static="no">
<type><ref refid="namespaceserif_1_1discretization_1_1forms_1a19001a41347e243892d7bfef18abd174" kindref="member">discretization::forms::VectorValue</ref></type>
<definition>using serif::operators::CartesianVector = discretization::forms::VectorValue</definition>
<argsstring></argsstring>
<name>CartesianVector</name>
<qualifiedname>serif::operators::CartesianVector</qualifiedname>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/compile_time_checks/serif/operators/plan.cpp" line="100" column="5" bodyfile="src/compile_time_checks/serif/operators/plan.cpp" bodystart="100" bodyend="-1"/>
</memberdef>
<memberdef kind="typedef" id="namespaceserif_1_1operators_1a5046a40a9062182dcebcff858e5d744e" prot="public" static="no">
<type><ref refid="structserif_1_1utils_1_1types_1_1_type_list" kindref="compound">utils::types::TypeList</ref>&lt; <ref refid="namespaceserif_1_1operators_1a028bb2043970f34c7f9c4f8f35d2c996" kindref="member">DisplacementValue</ref>, <ref refid="namespaceserif_1_1operators_1ac94445fb44b80328f7fd8470ded86ab7" kindref="member">DisplacementDivergence</ref>, <ref refid="namespaceserif_1_1operators_1a84d7e8ff528dc3361769cc6f08e6cd49" kindref="member">DensityValue</ref> &gt;</type>
<definition>using serif::operators::MixedSamples = utils::types::TypeList&lt;DisplacementValue, DisplacementDivergence, DensityValue&gt;</definition>
<argsstring></argsstring>
<name>MixedSamples</name>
<qualifiedname>serif::operators::MixedSamples</qualifiedname>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/compile_time_checks/serif/operators/plan.cpp" line="115" column="5" bodyfile="src/compile_time_checks/serif/operators/plan.cpp" bodystart="115" bodyend="-1"/>
</memberdef>
<memberdef kind="typedef" id="namespaceserif_1_1operators_1a9cdb279f42fddc853430bddd6fdefad5" prot="public" static="no">
<type><ref refid="classserif_1_1equations_1_1_mass_normalization" kindref="compound">equations::MassNormalization</ref></type>
<definition>using serif::operators::Mass = equations::MassNormalization</definition>
<argsstring></argsstring>
<name>Mass</name>
<qualifiedname>serif::operators::Mass</qualifiedname>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/compile_time_checks/serif/operators/plan.cpp" line="159" column="5" bodyfile="src/compile_time_checks/serif/operators/plan.cpp" bodystart="159" bodyend="-1"/>
</memberdef>
<memberdef kind="typedef" id="namespaceserif_1_1operators_1abb1de6ae853e4f3c0ed9604304a375c4" prot="public" static="no">
<type><ref refid="structserif_1_1discretization_1_1blocks_1_1rotation_1_1angular__velocity" kindref="compound">discretization::blocks::rotation::angular_velocity</ref></type>
<definition>using serif::operators::Omega = discretization::blocks::rotation::angular_velocity</definition>
<argsstring></argsstring>
<name>Omega</name>
<qualifiedname>serif::operators::Omega</qualifiedname>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/compile_time_checks/serif/operators/plan.cpp" line="161" column="5" bodyfile="src/compile_time_checks/serif/operators/plan.cpp" bodystart="161" bodyend="-1"/>
</memberdef>
<memberdef kind="typedef" id="namespaceserif_1_1operators_1a5195fc6ea0fc4a5f67abb26fa627f9ed" prot="public" static="no">
<type><ref refid="classserif_1_1equations_1_1_angular_momentum_constraint" kindref="compound">equations::AngularMomentumConstraint</ref></type>
<definition>using serif::operators::Momentum = equations::AngularMomentumConstraint</definition>
<argsstring></argsstring>
<name>Momentum</name>
<qualifiedname>serif::operators::Momentum</qualifiedname>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/compile_time_checks/serif/operators/plan.cpp" line="162" column="5" bodyfile="src/compile_time_checks/serif/operators/plan.cpp" bodystart="162" bodyend="-1"/>
</memberdef>
</sectiondef>
<sectiondef kind="func">
<memberdef kind="function" id="namespaceserif_1_1operators_1aedf63524bbbd357b307f77282c9bdb99" prot="public" static="no" nodiscard="yes" const="no" explicit="no" inline="no" virt="non-virtual">
<templateparamlist>
<param>
<type>equations::Equation</type>
<declname>EquationT</declname>
<defname>EquationT</defname>
</param>
</templateparamlist>
<type>auto</type>
<definition>auto serif::operators::bind_contributions</definition>
<argsstring>(std::shared_ptr&lt; const EquationT &gt; equation)</argsstring>
<name>bind_contributions</name>
<qualifiedname>serif::operators::bind_contributions</qualifiedname>
<param>
<type>std::shared_ptr&lt; const EquationT &gt;</type>
<declname>equation</declname>
</param>
<briefdescription>
<para>Give each retained leaf a compile-time tuple position for independently cached contribution results. </para>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/include/serif/operators/contributions.hpp" line="71" column="11" bodyfile="src/include/serif/operators/contributions.hpp" bodystart="71" bodyend="73"/>
</memberdef>
<memberdef kind="function" id="namespaceserif_1_1operators_1a6fc6c3a2aa8dea2f9aa7758024e43a93" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
<templateparamlist>
<param>
<type>equations::Equation</type>
<declname>EquationT</declname>
<defname>EquationT</defname>
</param>
<param>
<type>typename FunctionT</type>
</param>
</templateparamlist>
<type>void</type>
<definition>void serif::operators::for_each_contribution</definition>
<argsstring>(const EquationT &amp;equation, FunctionT &amp;&amp;function)</argsstring>
<name>for_each_contribution</name>
<qualifiedname>serif::operators::for_each_contribution</qualifiedname>
<param>
<type>const EquationT &amp;</type>
<declname>equation</declname>
</param>
<param>
<type>FunctionT &amp;&amp;</type>
<declname>function</declname>
</param>
<briefdescription>
</briefdescription>
<detaileddescription>
<para>Visit leaves in declaration order, multiplying constant coefficients along each path. The callback receives (leaf equation, unique contribution index, coefficient). </para>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/include/serif/operators/contributions.hpp" line="78" column="10" bodyfile="src/include/serif/operators/contributions.hpp" bodystart="78" bodyend="84"/>
</memberdef>
<memberdef kind="function" id="namespaceserif_1_1operators_1a923b82a601cec82833d0802e71b8108e" prot="public" static="no" 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>utils::dependencies::IsDependencyContext</type>
<declname>Blocks</declname>
<defname>Blocks</defname>
</param>
</templateparamlist>
<type></type>
<definition>serif::operators::LinearizedSystemView</definition>
<argsstring>(const Layout &amp;, const Blocks &amp;) -&gt; LinearizedSystemView&lt; Layout, Blocks &gt;</argsstring>
<name>LinearizedSystemView</name>
<qualifiedname>serif::operators::LinearizedSystemView</qualifiedname>
<param>
<type>const Layout &amp;</type>
</param>
<param>
<type>const Blocks &amp;</type>
</param>
<briefdescription>
<para>Infer canonical owner types while retaining the explicit borrowing lifetime checks. </para>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/include/serif/operators/linearized_system_view.hpp" line="63" column="5" declfile="src/include/serif/operators/linearized_system_view.hpp" declline="63" declcolumn="5"/>
</memberdef>
<memberdef kind="function" id="namespaceserif_1_1operators_1ab2fbcb6d59eb098097b55cb1cb04b3d9" prot="public" static="no" nodiscard="yes" const="no" explicit="no" inline="no" virt="non-virtual">
<type><ref refid="classserif_1_1operators_1_1backend_1_1mfem_1_1_linearized_block" kindref="compound">LinearizedBlock</ref></type>
<definition>LinearizedBlock serif::operators::backend::mfem::linearized_block</definition>
<argsstring>(std::shared_ptr&lt; const ::mfem::SparseMatrix &gt; matrix)</argsstring>
<name>linearized_block</name>
<qualifiedname>serif::operators::linearized_block</qualifiedname>
<param>
<type>std::shared_ptr&lt; const ::mfem::SparseMatrix &gt;</type>
<declname>matrix</declname>
</param>
<briefdescription>
<para>Retain an already assembled physical block without copying its matrix. </para>
</briefdescription>
<detaileddescription>
</detaileddescription>
<inbodydescription>
</inbodydescription>
<location file="src/include/serif/operators/linearized_block.hpp" line="7" column="5" bodyfile="src/lib/serif/backend/mfem/operators/linearized_block.cpp" bodystart="68" bodyend="81"/>
</memberdef>
</sectiondef>
<briefdescription>
</briefdescription>
<detaileddescription>
</detaileddescription>
<location file="src/compile_time_checks/serif/operators/computation_owners.cpp" line="12" column="1"/>
</compounddef>
</doxygen>