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)
329 lines
38 KiB
TeX
329 lines
38 KiB
TeX
\doxysection{serif\+::operators Namespace Reference}
|
|
\hypertarget{namespaceserif_1_1operators}{}\label{namespaceserif_1_1operators}\index{serif::operators@{serif::operators}}
|
|
\doxysubsubsection*{Namespaces}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
namespace \mbox{\hyperlink{namespaceserif_1_1operators_1_1backend}{backend}}
|
|
\item
|
|
namespace \mbox{\hyperlink{namespaceserif_1_1operators_1_1detail}{detail}}
|
|
\end{DoxyCompactItemize}
|
|
\doxysubsubsection*{Classes}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1operators_1_1_bad_contribution_collection}{Bad\+Contribution\+Collection}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1operators_1_1_bad_contribution_row}{Bad\+Contribution\+Row}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1operators_1_1_contribution_binding}{Contribution\+Binding}}
|
|
\begin{DoxyCompactList}\small\item\em Retain one leaf equation and the constant coefficient of its arithmetic expression. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1operators_1_1_discontinuous_scalar}{Discontinuous\+Scalar}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1operators_1_1_equation_plan}{Equation\+Plan}}
|
|
\item
|
|
struct \mbox{\hyperlink{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}{Equation\+Plan$<$ Equation\+T, utils\+::types\+::\+Type\+List$<$ O... $>$ $>$}}
|
|
\item
|
|
class \mbox{\hyperlink{classserif_1_1operators_1_1_equation_registry}{Equation\+Registry}}
|
|
\begin{DoxyCompactList}\small\item\em A compile-\/time registry of equations. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1operators_1_1_gradient_request}{Gradient\+Request}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1operators_1_1_has_scalar_volume_operands}{Has\+Scalar\+Volume\+Operands}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1operators_1_1_has_scalar_volume_operands_3_01_equation_t_00_01utils_1_1types_1_1_a6e6645520e475d59dc9a1cecc004d8a}{Has\+Scalar\+Volume\+Operands$<$ Equation\+T, utils\+::types\+::\+Type\+List$<$ Operands... $>$ $>$}}
|
|
\item
|
|
class \mbox{\hyperlink{classserif_1_1operators_1_1_linearized_block}{Linearized\+Block}}
|
|
\begin{DoxyCompactList}\small\item\em An accepted physical block with optional efficient diagonal and sparse assembly operations. \end{DoxyCompactList}\item
|
|
class \mbox{\hyperlink{classserif_1_1operators_1_1_linearized_system_view}{Linearized\+System\+View}}
|
|
\begin{DoxyCompactList}\small\item\em Borrow an accepted collection of physical blocks and its independently ordered system layout. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1operators_1_1_nested_bad_collection}{Nested\+Bad\+Collection}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1operators_1_1_nodal_request}{Nodal\+Request}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1operators_1_1_operand_values}{Operand\+Values}}
|
|
\begin{DoxyCompactList}\small\item\em A helper struct to store the values of operands. There is some convention here, specifically if OutputT is void then this struct represents the values of the operands, otherwise it represents the local derivatives of the operands with respect to OutputT. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1operators_1_1_physical_block}{Physical\+Block}}
|
|
\begin{DoxyCompactList}\small\item\em Identify a physical Jacobian block by its equation rows and unknown coordinates. \end{DoxyCompactList}\item
|
|
struct \mbox{\hyperlink{structserif_1_1operators_1_1_volume_contributions}{Volume\+Contributions}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1operators_1_1_volume_contributions_3_01std_1_1tuple_3_01_c_8_8_8_01_4_01_4}{Volume\+Contributions$<$ std\+::tuple$<$ C... $>$ $>$}}
|
|
\item
|
|
struct \mbox{\hyperlink{structserif_1_1operators_1_1_volume_operands}{Volume\+Operands}}
|
|
\item
|
|
struct \mbox{\hyperlink{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}{Volume\+Operands$<$ C, utils\+::types\+::\+Type\+List$<$ O... $>$ $>$}}
|
|
\end{DoxyCompactItemize}
|
|
\doxysubsubsection*{Concepts}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
concept \mbox{\hyperlink{conceptserif_1_1operators_1_1_scalar_value_term}{Scalar\+Value\+Term}}
|
|
\item
|
|
concept \mbox{\hyperlink{conceptserif_1_1operators_1_1_scalar_value_operand}{Scalar\+Value\+Operand}}
|
|
\item
|
|
concept \mbox{\hyperlink{conceptserif_1_1operators_1_1_scalar_gradient_operand}{Scalar\+Gradient\+Operand}}
|
|
\begin{DoxyCompactList}\small\item\em A conforming scalar gradient; discontinuous fields also require face terms. \end{DoxyCompactList}\item
|
|
concept \mbox{\hyperlink{conceptserif_1_1operators_1_1_vector_gradient_operand}{Vector\+Gradient\+Operand}}
|
|
\begin{DoxyCompactList}\small\item\em Full vector gradients are supported for componentwise H1 fields. \end{DoxyCompactList}\item
|
|
concept \mbox{\hyperlink{conceptserif_1_1operators_1_1_scalar_volume_equation}{Scalar\+Volume\+Equation}}
|
|
\begin{DoxyCompactList}\small\item\em Equations executable by the current scalar-\/value volume operator. \end{DoxyCompactList}\item
|
|
concept \mbox{\hyperlink{conceptserif_1_1operators_1_1_mapped_operand}{Mapped\+Operand}}
|
|
\begin{DoxyCompactList}\small\item\em Mathematical operand combinations implemented by the current volume backend. \end{DoxyCompactList}\item
|
|
concept \mbox{\hyperlink{conceptserif_1_1operators_1_1_volume_equation}{Volume\+Equation}}
|
|
\begin{DoxyCompactList}\small\item\em One or more supported weak volume contributions assembled into a single residual row. \end{DoxyCompactList}\end{DoxyCompactItemize}
|
|
\doxysubsubsection*{Typedefs}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_a8ae759fc718c8ccc0804325b10a03b84}{Density}} = \mbox{\hyperlink{structserif_1_1discretization_1_1forms_1_1_operand}{discretization\+::forms\+::\+Operand}}$<$\mbox{\hyperlink{structserif_1_1discretization_1_1blocks_1_1density_1_1mass}{discretization\+::blocks\+::density\+::mass}}$>$
|
|
\item
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_a9a98677dd6eb911f3daa5a4173248c93}{Potential}} = \mbox{\hyperlink{structserif_1_1discretization_1_1forms_1_1_operand}{discretization\+::forms\+::\+Operand}}$<$\mbox{\hyperlink{structserif_1_1discretization_1_1blocks_1_1gravity_1_1potential}{discretization\+::blocks\+::gravity\+::potential}}$>$
|
|
\item
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_af3400cbc42927b9162d39b370273de24}{Constant}} = \mbox{\hyperlink{structserif_1_1discretization_1_1forms_1_1_operand}{discretization\+::forms\+::\+Operand}}$<$\mbox{\hyperlink{structserif_1_1discretization_1_1blocks_1_1barotropic__constant_1_1mass__normalization}{discretization\+::blocks\+::barotropic\+\_\+constant\+::mass\+\_\+normalization}}$>$
|
|
\item
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_ac485dbca2b971ac59f3adda704b5485d}{First\+Order}} = \mbox{\hyperlink{structserif_1_1equations_1_1_operand_values}{equations\+::\+Operand\+Values}}$<$\mbox{\hyperlink{structserif_1_1utils_1_1types_1_1_type_list}{utils\+::types\+::\+Type\+List}}$<$\mbox{\hyperlink{namespaceserif_1_1operators_a8ae759fc718c8ccc0804325b10a03b84}{Density}}, \mbox{\hyperlink{namespaceserif_1_1operators_a9a98677dd6eb911f3daa5a4173248c93}{Potential}}, \mbox{\hyperlink{namespaceserif_1_1operators_af3400cbc42927b9162d39b370273de24}{Constant}}$>$$>$
|
|
\item
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_a1bdabba6c03d61d4f242b8262b045fb0}{Permuted\+Order}} = \mbox{\hyperlink{structserif_1_1equations_1_1_operand_values}{equations\+::\+Operand\+Values}}$<$\mbox{\hyperlink{structserif_1_1utils_1_1types_1_1_type_list}{utils\+::types\+::\+Type\+List}}$<$\mbox{\hyperlink{namespaceserif_1_1operators_af3400cbc42927b9162d39b370273de24}{Constant}}, \mbox{\hyperlink{namespaceserif_1_1operators_a8ae759fc718c8ccc0804325b10a03b84}{Density}}, \mbox{\hyperlink{namespaceserif_1_1operators_a9a98677dd6eb911f3daa5a4173248c93}{Potential}}$>$$>$
|
|
\item
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_a849daf9bd0310ba0f030c323ebdcc7af}{Mass\+Plan}} = \mbox{\hyperlink{structserif_1_1operators_1_1_equation_plan}{Equation\+Plan}}$<$\mbox{\hyperlink{classserif_1_1equations_1_1_mass_normalization}{equations\+::\+Mass\+Normalization}}$>$
|
|
\item
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_a67216629c783b596d9fc92fbbfe959f5}{Balance\+Plan}} = \mbox{\hyperlink{structserif_1_1operators_1_1_equation_plan}{Equation\+Plan}}$<$\mbox{\hyperlink{classserif_1_1equations_1_1_barotropic_density_balance}{equations\+::\+Barotropic\+Density\+Balance}}$<$\mbox{\hyperlink{classserif_1_1eos_1_1models_1_1_polytrope}{eos\+::models\+::\+Polytrope}}$>$$>$
|
|
\item
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_ad169e8c66ddc12c3addd4e551faf1ec2}{Mass\+Point}} = \mbox{\hyperlink{structserif_1_1equations_1_1_equation_point}{equations\+::\+Equation\+Point}}$<$\mbox{\hyperlink{classserif_1_1equations_1_1_mass_normalization_a0cd9c730f6d84b05ee03bac2ff0433bb}{equations\+::\+Mass\+Normalization\+::\+Operands}}$>$
|
|
\item
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_a9bc4fde2b5ab0098aa4600b125c5321d}{Potential\+Contributions}} = \mbox{\hyperlink{namespaceserif_1_1equations_a3d8c1500d535f29fe360f0ab31ac55e3}{equations\+::\+Contributions\+Of}}$<$\mbox{\hyperlink{classserif_1_1equations_1_1_primal_poisson_balance}{equations\+::\+Primal\+Poisson\+Balance}}$>$
|
|
\item
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_ac93808811be69dd6608587eb7b0078e4}{Balance}} = \mbox{\hyperlink{classserif_1_1equations_1_1_barotropic_density_balance}{equations\+::\+Barotropic\+Density\+Balance}}$<$\mbox{\hyperlink{classserif_1_1eos_1_1models_1_1_polytrope}{eos\+::models\+::\+Polytrope}}$>$
|
|
\item
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_add26988897c07a3b976f748f621d779c}{Displacement}} = \mbox{\hyperlink{structserif_1_1discretization_1_1blocks_1_1displacement_1_1vector}{discretization\+::blocks\+::displacement\+::vector}}
|
|
\item
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_a1099b4a7d85fb1e9dd496c451f450a6a}{Schema}} = \mbox{\hyperlink{namespaceserif_1_1discretization_1_1domain_1_1schema_abc22bc3b4f40b417480a061162a3dea2}{discretization\+::domain\+::schema\+::\+Core\+Envelope\+Vacuum\+Domain\+Schema}}
|
|
\item
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_a1990cb90a24314949bd1b5686d8c95f8}{Boundary\+Value}} = \mbox{\hyperlink{structserif_1_1operators_1_1_nodal_request}{Nodal\+Request}}$<$\mbox{\hyperlink{namespaceserif_1_1operators_a9a98677dd6eb911f3daa5a4173248c93}{Potential}}$>$
|
|
\item
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_a84d7e8ff528dc3361769cc6f08e6cd49}{Density\+Value}} = \mbox{\hyperlink{structserif_1_1discretization_1_1forms_1_1_operand}{discretization\+::forms\+::\+Operand}}$<$\mbox{\hyperlink{namespaceserif_1_1operators_a8ae759fc718c8ccc0804325b10a03b84}{Density}}$>$
|
|
\item
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_a4fddf5444606d22742b6fc341880c05a}{Potential\+Value}} = \mbox{\hyperlink{structserif_1_1discretization_1_1forms_1_1_operand}{discretization\+::forms\+::\+Operand}}$<$\mbox{\hyperlink{namespaceserif_1_1operators_a9a98677dd6eb911f3daa5a4173248c93}{Potential}}$>$
|
|
\item
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_ac1416d49e5c3ea87f5a2cdbbf7f6ac1c}{Potential\+Gradient}} = \mbox{\hyperlink{structserif_1_1discretization_1_1forms_1_1_operand}{discretization\+::forms\+::\+Operand}}$<$\mbox{\hyperlink{namespaceserif_1_1operators_a9a98677dd6eb911f3daa5a4173248c93}{Potential}}, \mbox{\hyperlink{structserif_1_1discretization_1_1forms_1_1_operation_1_1_gradient}{discretization\+::forms\+::\+Operation\+::\+Gradient}}$>$
|
|
\item
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_ac94445fb44b80328f7fd8470ded86ab7}{Displacement\+Divergence}} = \mbox{\hyperlink{structserif_1_1discretization_1_1forms_1_1_operand}{discretization\+::forms\+::\+Operand}}$<$\mbox{\hyperlink{structserif_1_1discretization_1_1blocks_1_1displacement_1_1vector}{discretization\+::blocks\+::displacement\+::vector}}, \mbox{\hyperlink{structserif_1_1discretization_1_1forms_1_1_operation_1_1_divergence}{discretization\+::forms\+::\+Operation\+::\+Divergence}}$>$
|
|
\item
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_a028bb2043970f34c7f9c4f8f35d2c996}{Displacement\+Value}} = \mbox{\hyperlink{structserif_1_1discretization_1_1forms_1_1_operand}{discretization\+::forms\+::\+Operand}}$<$\mbox{\hyperlink{namespaceserif_1_1operators_add26988897c07a3b976f748f621d779c}{Displacement}}$>$
|
|
\item
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_abb7387ce5fc8f06e38655f2abf71a05f}{Displacement\+Gradient}} = \mbox{\hyperlink{structserif_1_1discretization_1_1forms_1_1_operand}{discretization\+::forms\+::\+Operand}}$<$\mbox{\hyperlink{namespaceserif_1_1operators_add26988897c07a3b976f748f621d779c}{Displacement}}, \mbox{\hyperlink{structserif_1_1discretization_1_1forms_1_1_operation_1_1_gradient}{discretization\+::forms\+::\+Operation\+::\+Gradient}}$>$
|
|
\item
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_a67047e978d34c67942594c8633d8dc98}{Vector\+Tensor}} = \mbox{\hyperlink{namespaceserif_1_1discretization_1_1forms_aecbaccd35c1209031d60ea7348d6a452}{discretization\+::forms\+::\+Matrix\+Value}}
|
|
\item
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_a6c1bf61c7f8146504e22c9dd5cd214eb}{Cartesian\+Vector}} = \mbox{\hyperlink{namespaceserif_1_1discretization_1_1forms_a19001a41347e243892d7bfef18abd174}{discretization\+::forms\+::\+Vector\+Value}}
|
|
\item
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_a5046a40a9062182dcebcff858e5d744e}{Mixed\+Samples}} = \mbox{\hyperlink{structserif_1_1utils_1_1types_1_1_type_list}{utils\+::types\+::\+Type\+List}}$<$\mbox{\hyperlink{namespaceserif_1_1operators_a028bb2043970f34c7f9c4f8f35d2c996}{Displacement\+Value}}, \mbox{\hyperlink{namespaceserif_1_1operators_ac94445fb44b80328f7fd8470ded86ab7}{Displacement\+Divergence}}, \mbox{\hyperlink{namespaceserif_1_1operators_a84d7e8ff528dc3361769cc6f08e6cd49}{Density\+Value}}$>$
|
|
\item
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_a9cdb279f42fddc853430bddd6fdefad5}{Mass}} = \mbox{\hyperlink{classserif_1_1equations_1_1_mass_normalization}{equations\+::\+Mass\+Normalization}}
|
|
\item
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_abb1de6ae853e4f3c0ed9604304a375c4}{Omega}} = \mbox{\hyperlink{structserif_1_1discretization_1_1blocks_1_1rotation_1_1angular__velocity}{discretization\+::blocks\+::rotation\+::angular\+\_\+velocity}}
|
|
\item
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_a5195fc6ea0fc4a5f67abb26fa627f9ed}{Momentum}} = \mbox{\hyperlink{classserif_1_1equations_1_1_angular_momentum_constraint}{equations\+::\+Angular\+Momentum\+Constraint}}
|
|
\end{DoxyCompactItemize}
|
|
\doxysubsubsection*{Functions}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
{\footnotesize template$<$equations\+::\+Equation EquationT$>$ }\\auto \mbox{\hyperlink{namespaceserif_1_1operators_aedf63524bbbd357b307f77282c9bdb99}{bind\+\_\+contributions}} (std\+::shared\+\_\+ptr$<$ const EquationT $>$ equation)
|
|
\begin{DoxyCompactList}\small\item\em Give each retained leaf a compile-\/time tuple position for independently cached contribution results. \end{DoxyCompactList}\item
|
|
{\footnotesize template$<$equations\+::\+Equation EquationT, typename FunctionT$>$ }\\void \mbox{\hyperlink{namespaceserif_1_1operators_a6fc6c3a2aa8dea2f9aa7758024e43a93}{for\+\_\+each\+\_\+contribution}} (const EquationT \&equation, FunctionT \&\&function)
|
|
\item
|
|
{\footnotesize template$<$discretization\+::blocks\+::\+System\+Layout\+Type Layout, utils\+::dependencies\+::\+Is\+Dependency\+Context Blocks$>$ }\\\mbox{\hyperlink{namespaceserif_1_1operators_a923b82a601cec82833d0802e71b8108e}{Linearized\+System\+View}} (const Layout \&, const Blocks \&) -\/$>$ Linearized\+System\+View$<$ Layout, Blocks $>$
|
|
\begin{DoxyCompactList}\small\item\em Infer canonical owner types while retaining the explicit borrowing lifetime checks. \end{DoxyCompactList}\item
|
|
\mbox{\hyperlink{classserif_1_1operators_1_1backend_1_1mfem_1_1_linearized_block}{Linearized\+Block}} \mbox{\hyperlink{namespaceserif_1_1operators_ab2fbcb6d59eb098097b55cb1cb04b3d9}{linearized\+\_\+block}} (std\+::shared\+\_\+ptr$<$ const \+::mfem\+::\+Sparse\+Matrix $>$ matrix)
|
|
\begin{DoxyCompactList}\small\item\em Retain an already assembled physical block without copying its matrix. \end{DoxyCompactList}\end{DoxyCompactItemize}
|
|
|
|
|
|
\doxysubsection{Typedef Documentation}
|
|
\Hypertarget{namespaceserif_1_1operators_ac93808811be69dd6608587eb7b0078e4}\index{serif::operators@{serif::operators}!Balance@{Balance}}
|
|
\index{Balance@{Balance}!serif::operators@{serif::operators}}
|
|
\doxysubsubsection{\texorpdfstring{Balance}{Balance}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1operators_ac93808811be69dd6608587eb7b0078e4}
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_ac93808811be69dd6608587eb7b0078e4}{serif\+::operators\+::\+Balance}} = \mbox{\hyperlink{classserif_1_1equations_1_1_barotropic_density_balance}{equations\+::\+Barotropic\+Density\+Balance}}$<$\mbox{\hyperlink{classserif_1_1eos_1_1models_1_1_polytrope}{eos\+::models\+::\+Polytrope}}$>$}
|
|
|
|
\Hypertarget{namespaceserif_1_1operators_a67216629c783b596d9fc92fbbfe959f5}\index{serif::operators@{serif::operators}!BalancePlan@{BalancePlan}}
|
|
\index{BalancePlan@{BalancePlan}!serif::operators@{serif::operators}}
|
|
\doxysubsubsection{\texorpdfstring{BalancePlan}{BalancePlan}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1operators_a67216629c783b596d9fc92fbbfe959f5}
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_a67216629c783b596d9fc92fbbfe959f5}{serif\+::operators\+::\+Balance\+Plan}} = \mbox{\hyperlink{structserif_1_1operators_1_1_equation_plan}{Equation\+Plan}}$<$\mbox{\hyperlink{classserif_1_1equations_1_1_barotropic_density_balance}{equations\+::\+Barotropic\+Density\+Balance}}$<$\mbox{\hyperlink{classserif_1_1eos_1_1models_1_1_polytrope}{eos\+::models\+::\+Polytrope}}$>$$>$}
|
|
|
|
\Hypertarget{namespaceserif_1_1operators_a1990cb90a24314949bd1b5686d8c95f8}\index{serif::operators@{serif::operators}!BoundaryValue@{BoundaryValue}}
|
|
\index{BoundaryValue@{BoundaryValue}!serif::operators@{serif::operators}}
|
|
\doxysubsubsection{\texorpdfstring{BoundaryValue}{BoundaryValue}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1operators_a1990cb90a24314949bd1b5686d8c95f8}
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_a1990cb90a24314949bd1b5686d8c95f8}{serif\+::operators\+::\+Boundary\+Value}} = \mbox{\hyperlink{structserif_1_1operators_1_1_nodal_request}{Nodal\+Request}}$<$\mbox{\hyperlink{namespaceserif_1_1operators_a9a98677dd6eb911f3daa5a4173248c93}{Potential}}$>$}
|
|
|
|
\Hypertarget{namespaceserif_1_1operators_a6c1bf61c7f8146504e22c9dd5cd214eb}\index{serif::operators@{serif::operators}!CartesianVector@{CartesianVector}}
|
|
\index{CartesianVector@{CartesianVector}!serif::operators@{serif::operators}}
|
|
\doxysubsubsection{\texorpdfstring{CartesianVector}{CartesianVector}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1operators_a6c1bf61c7f8146504e22c9dd5cd214eb}
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_a6c1bf61c7f8146504e22c9dd5cd214eb}{serif\+::operators\+::\+Cartesian\+Vector}} = \mbox{\hyperlink{namespaceserif_1_1discretization_1_1forms_a19001a41347e243892d7bfef18abd174}{discretization\+::forms\+::\+Vector\+Value}}}
|
|
|
|
\Hypertarget{namespaceserif_1_1operators_af3400cbc42927b9162d39b370273de24}\index{serif::operators@{serif::operators}!Constant@{Constant}}
|
|
\index{Constant@{Constant}!serif::operators@{serif::operators}}
|
|
\doxysubsubsection{\texorpdfstring{Constant}{Constant}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1operators_af3400cbc42927b9162d39b370273de24}
|
|
typedef \mbox{\hyperlink{structserif_1_1discretization_1_1blocks_1_1barotropic__constant_1_1mass__normalization}{discretization\+::blocks\+::barotropic\+\_\+constant\+::mass\+\_\+normalization}} \mbox{\hyperlink{namespaceserif_1_1operators_af3400cbc42927b9162d39b370273de24}{serif\+::operators\+::\+Constant}} = \mbox{\hyperlink{structserif_1_1discretization_1_1forms_1_1_operand}{discretization\+::forms\+::\+Operand}}$<$\mbox{\hyperlink{structserif_1_1discretization_1_1blocks_1_1barotropic__constant_1_1mass__normalization}{discretization\+::blocks\+::barotropic\+\_\+constant\+::mass\+\_\+normalization}}$>$}
|
|
|
|
\Hypertarget{namespaceserif_1_1operators_a8ae759fc718c8ccc0804325b10a03b84}\index{serif::operators@{serif::operators}!Density@{Density}}
|
|
\index{Density@{Density}!serif::operators@{serif::operators}}
|
|
\doxysubsubsection{\texorpdfstring{Density}{Density}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1operators_a8ae759fc718c8ccc0804325b10a03b84}
|
|
typedef \mbox{\hyperlink{structserif_1_1discretization_1_1blocks_1_1density_1_1mass}{discretization\+::blocks\+::density\+::mass}} \mbox{\hyperlink{namespaceserif_1_1operators_a8ae759fc718c8ccc0804325b10a03b84}{serif\+::operators\+::\+Density}} = \mbox{\hyperlink{structserif_1_1discretization_1_1forms_1_1_operand}{discretization\+::forms\+::\+Operand}}$<$\mbox{\hyperlink{structserif_1_1discretization_1_1blocks_1_1density_1_1mass}{discretization\+::blocks\+::density\+::mass}}$>$}
|
|
|
|
\Hypertarget{namespaceserif_1_1operators_a84d7e8ff528dc3361769cc6f08e6cd49}\index{serif::operators@{serif::operators}!DensityValue@{DensityValue}}
|
|
\index{DensityValue@{DensityValue}!serif::operators@{serif::operators}}
|
|
\doxysubsubsection{\texorpdfstring{DensityValue}{DensityValue}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1operators_a84d7e8ff528dc3361769cc6f08e6cd49}
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_a84d7e8ff528dc3361769cc6f08e6cd49}{serif\+::operators\+::\+Density\+Value}} = \mbox{\hyperlink{structserif_1_1discretization_1_1forms_1_1_operand}{discretization\+::forms\+::\+Operand}}$<$\mbox{\hyperlink{namespaceserif_1_1operators_a8ae759fc718c8ccc0804325b10a03b84}{Density}}$>$}
|
|
|
|
\Hypertarget{namespaceserif_1_1operators_add26988897c07a3b976f748f621d779c}\index{serif::operators@{serif::operators}!Displacement@{Displacement}}
|
|
\index{Displacement@{Displacement}!serif::operators@{serif::operators}}
|
|
\doxysubsubsection{\texorpdfstring{Displacement}{Displacement}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1operators_add26988897c07a3b976f748f621d779c}
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_add26988897c07a3b976f748f621d779c}{serif\+::operators\+::\+Displacement}} = \mbox{\hyperlink{structserif_1_1discretization_1_1blocks_1_1displacement_1_1vector}{discretization\+::blocks\+::displacement\+::vector}}}
|
|
|
|
\Hypertarget{namespaceserif_1_1operators_ac94445fb44b80328f7fd8470ded86ab7}\index{serif::operators@{serif::operators}!DisplacementDivergence@{DisplacementDivergence}}
|
|
\index{DisplacementDivergence@{DisplacementDivergence}!serif::operators@{serif::operators}}
|
|
\doxysubsubsection{\texorpdfstring{DisplacementDivergence}{DisplacementDivergence}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1operators_ac94445fb44b80328f7fd8470ded86ab7}
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_ac94445fb44b80328f7fd8470ded86ab7}{serif\+::operators\+::\+Displacement\+Divergence}} = \mbox{\hyperlink{structserif_1_1discretization_1_1forms_1_1_operand}{discretization\+::forms\+::\+Operand}}$<$\mbox{\hyperlink{structserif_1_1discretization_1_1blocks_1_1displacement_1_1vector}{discretization\+::blocks\+::displacement\+::vector}}, \mbox{\hyperlink{structserif_1_1discretization_1_1forms_1_1_operation_1_1_divergence}{discretization\+::forms\+::\+Operation\+::\+Divergence}}$>$}
|
|
|
|
\Hypertarget{namespaceserif_1_1operators_abb7387ce5fc8f06e38655f2abf71a05f}\index{serif::operators@{serif::operators}!DisplacementGradient@{DisplacementGradient}}
|
|
\index{DisplacementGradient@{DisplacementGradient}!serif::operators@{serif::operators}}
|
|
\doxysubsubsection{\texorpdfstring{DisplacementGradient}{DisplacementGradient}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1operators_abb7387ce5fc8f06e38655f2abf71a05f}
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_abb7387ce5fc8f06e38655f2abf71a05f}{serif\+::operators\+::\+Displacement\+Gradient}} = \mbox{\hyperlink{structserif_1_1discretization_1_1forms_1_1_operand}{discretization\+::forms\+::\+Operand}}$<$\mbox{\hyperlink{namespaceserif_1_1operators_add26988897c07a3b976f748f621d779c}{Displacement}}, \mbox{\hyperlink{structserif_1_1discretization_1_1forms_1_1_operation_1_1_gradient}{discretization\+::forms\+::\+Operation\+::\+Gradient}}$>$}
|
|
|
|
\Hypertarget{namespaceserif_1_1operators_a028bb2043970f34c7f9c4f8f35d2c996}\index{serif::operators@{serif::operators}!DisplacementValue@{DisplacementValue}}
|
|
\index{DisplacementValue@{DisplacementValue}!serif::operators@{serif::operators}}
|
|
\doxysubsubsection{\texorpdfstring{DisplacementValue}{DisplacementValue}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1operators_a028bb2043970f34c7f9c4f8f35d2c996}
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_a028bb2043970f34c7f9c4f8f35d2c996}{serif\+::operators\+::\+Displacement\+Value}} = \mbox{\hyperlink{structserif_1_1discretization_1_1forms_1_1_operand}{discretization\+::forms\+::\+Operand}}$<$\mbox{\hyperlink{namespaceserif_1_1operators_add26988897c07a3b976f748f621d779c}{Displacement}}$>$}
|
|
|
|
\Hypertarget{namespaceserif_1_1operators_ac485dbca2b971ac59f3adda704b5485d}\index{serif::operators@{serif::operators}!FirstOrder@{FirstOrder}}
|
|
\index{FirstOrder@{FirstOrder}!serif::operators@{serif::operators}}
|
|
\doxysubsubsection{\texorpdfstring{FirstOrder}{FirstOrder}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1operators_ac485dbca2b971ac59f3adda704b5485d}
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_ac485dbca2b971ac59f3adda704b5485d}{serif\+::operators\+::\+First\+Order}} = \mbox{\hyperlink{structserif_1_1equations_1_1_operand_values}{equations\+::\+Operand\+Values}}$<$\mbox{\hyperlink{structserif_1_1utils_1_1types_1_1_type_list}{utils\+::types\+::\+Type\+List}}$<$\mbox{\hyperlink{namespaceserif_1_1operators_a8ae759fc718c8ccc0804325b10a03b84}{Density}}, \mbox{\hyperlink{namespaceserif_1_1operators_a9a98677dd6eb911f3daa5a4173248c93}{Potential}}, \mbox{\hyperlink{namespaceserif_1_1operators_af3400cbc42927b9162d39b370273de24}{Constant}}$>$$>$}
|
|
|
|
\Hypertarget{namespaceserif_1_1operators_a9cdb279f42fddc853430bddd6fdefad5}\index{serif::operators@{serif::operators}!Mass@{Mass}}
|
|
\index{Mass@{Mass}!serif::operators@{serif::operators}}
|
|
\doxysubsubsection{\texorpdfstring{Mass}{Mass}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1operators_a9cdb279f42fddc853430bddd6fdefad5}
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_a9cdb279f42fddc853430bddd6fdefad5}{serif\+::operators\+::\+Mass}} = \mbox{\hyperlink{classserif_1_1equations_1_1_mass_normalization}{equations\+::\+Mass\+Normalization}}}
|
|
|
|
\Hypertarget{namespaceserif_1_1operators_a849daf9bd0310ba0f030c323ebdcc7af}\index{serif::operators@{serif::operators}!MassPlan@{MassPlan}}
|
|
\index{MassPlan@{MassPlan}!serif::operators@{serif::operators}}
|
|
\doxysubsubsection{\texorpdfstring{MassPlan}{MassPlan}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1operators_a849daf9bd0310ba0f030c323ebdcc7af}
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_a849daf9bd0310ba0f030c323ebdcc7af}{serif\+::operators\+::\+Mass\+Plan}} = \mbox{\hyperlink{structserif_1_1operators_1_1_equation_plan}{Equation\+Plan}}$<$\mbox{\hyperlink{classserif_1_1equations_1_1_mass_normalization}{equations\+::\+Mass\+Normalization}}$>$}
|
|
|
|
\Hypertarget{namespaceserif_1_1operators_ad169e8c66ddc12c3addd4e551faf1ec2}\index{serif::operators@{serif::operators}!MassPoint@{MassPoint}}
|
|
\index{MassPoint@{MassPoint}!serif::operators@{serif::operators}}
|
|
\doxysubsubsection{\texorpdfstring{MassPoint}{MassPoint}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1operators_ad169e8c66ddc12c3addd4e551faf1ec2}
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_ad169e8c66ddc12c3addd4e551faf1ec2}{serif\+::operators\+::\+Mass\+Point}} = \mbox{\hyperlink{structserif_1_1equations_1_1_equation_point}{equations\+::\+Equation\+Point}}$<$\mbox{\hyperlink{classserif_1_1equations_1_1_mass_normalization_a0cd9c730f6d84b05ee03bac2ff0433bb}{equations\+::\+Mass\+Normalization\+::\+Operands}}$>$}
|
|
|
|
\Hypertarget{namespaceserif_1_1operators_a5046a40a9062182dcebcff858e5d744e}\index{serif::operators@{serif::operators}!MixedSamples@{MixedSamples}}
|
|
\index{MixedSamples@{MixedSamples}!serif::operators@{serif::operators}}
|
|
\doxysubsubsection{\texorpdfstring{MixedSamples}{MixedSamples}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1operators_a5046a40a9062182dcebcff858e5d744e}
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_a5046a40a9062182dcebcff858e5d744e}{serif\+::operators\+::\+Mixed\+Samples}} = \mbox{\hyperlink{structserif_1_1utils_1_1types_1_1_type_list}{utils\+::types\+::\+Type\+List}}$<$\mbox{\hyperlink{namespaceserif_1_1operators_a028bb2043970f34c7f9c4f8f35d2c996}{Displacement\+Value}}, \mbox{\hyperlink{namespaceserif_1_1operators_ac94445fb44b80328f7fd8470ded86ab7}{Displacement\+Divergence}}, \mbox{\hyperlink{namespaceserif_1_1operators_a84d7e8ff528dc3361769cc6f08e6cd49}{Density\+Value}}$>$}
|
|
|
|
\Hypertarget{namespaceserif_1_1operators_a5195fc6ea0fc4a5f67abb26fa627f9ed}\index{serif::operators@{serif::operators}!Momentum@{Momentum}}
|
|
\index{Momentum@{Momentum}!serif::operators@{serif::operators}}
|
|
\doxysubsubsection{\texorpdfstring{Momentum}{Momentum}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1operators_a5195fc6ea0fc4a5f67abb26fa627f9ed}
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_a5195fc6ea0fc4a5f67abb26fa627f9ed}{serif\+::operators\+::\+Momentum}} = \mbox{\hyperlink{classserif_1_1equations_1_1_angular_momentum_constraint}{equations\+::\+Angular\+Momentum\+Constraint}}}
|
|
|
|
\Hypertarget{namespaceserif_1_1operators_abb1de6ae853e4f3c0ed9604304a375c4}\index{serif::operators@{serif::operators}!Omega@{Omega}}
|
|
\index{Omega@{Omega}!serif::operators@{serif::operators}}
|
|
\doxysubsubsection{\texorpdfstring{Omega}{Omega}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1operators_abb1de6ae853e4f3c0ed9604304a375c4}
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_abb1de6ae853e4f3c0ed9604304a375c4}{serif\+::operators\+::\+Omega}} = \mbox{\hyperlink{structserif_1_1discretization_1_1blocks_1_1rotation_1_1angular__velocity}{discretization\+::blocks\+::rotation\+::angular\+\_\+velocity}}}
|
|
|
|
\Hypertarget{namespaceserif_1_1operators_a1bdabba6c03d61d4f242b8262b045fb0}\index{serif::operators@{serif::operators}!PermutedOrder@{PermutedOrder}}
|
|
\index{PermutedOrder@{PermutedOrder}!serif::operators@{serif::operators}}
|
|
\doxysubsubsection{\texorpdfstring{PermutedOrder}{PermutedOrder}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1operators_a1bdabba6c03d61d4f242b8262b045fb0}
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_a1bdabba6c03d61d4f242b8262b045fb0}{serif\+::operators\+::\+Permuted\+Order}} = \mbox{\hyperlink{structserif_1_1equations_1_1_operand_values}{equations\+::\+Operand\+Values}}$<$\mbox{\hyperlink{structserif_1_1utils_1_1types_1_1_type_list}{utils\+::types\+::\+Type\+List}}$<$\mbox{\hyperlink{namespaceserif_1_1operators_af3400cbc42927b9162d39b370273de24}{Constant}}, \mbox{\hyperlink{namespaceserif_1_1operators_a8ae759fc718c8ccc0804325b10a03b84}{Density}}, \mbox{\hyperlink{namespaceserif_1_1operators_a9a98677dd6eb911f3daa5a4173248c93}{Potential}}$>$$>$}
|
|
|
|
\Hypertarget{namespaceserif_1_1operators_a9a98677dd6eb911f3daa5a4173248c93}\index{serif::operators@{serif::operators}!Potential@{Potential}}
|
|
\index{Potential@{Potential}!serif::operators@{serif::operators}}
|
|
\doxysubsubsection{\texorpdfstring{Potential}{Potential}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1operators_a9a98677dd6eb911f3daa5a4173248c93}
|
|
typedef \mbox{\hyperlink{structserif_1_1discretization_1_1blocks_1_1gravity_1_1potential}{discretization\+::blocks\+::gravity\+::potential}} \mbox{\hyperlink{namespaceserif_1_1operators_a9a98677dd6eb911f3daa5a4173248c93}{serif\+::operators\+::\+Potential}} = \mbox{\hyperlink{structserif_1_1discretization_1_1forms_1_1_operand}{discretization\+::forms\+::\+Operand}}$<$\mbox{\hyperlink{structserif_1_1discretization_1_1blocks_1_1gravity_1_1potential}{discretization\+::blocks\+::gravity\+::potential}}$>$}
|
|
|
|
\Hypertarget{namespaceserif_1_1operators_a9bc4fde2b5ab0098aa4600b125c5321d}\index{serif::operators@{serif::operators}!PotentialContributions@{PotentialContributions}}
|
|
\index{PotentialContributions@{PotentialContributions}!serif::operators@{serif::operators}}
|
|
\doxysubsubsection{\texorpdfstring{PotentialContributions}{PotentialContributions}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1operators_a9bc4fde2b5ab0098aa4600b125c5321d}
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_a9bc4fde2b5ab0098aa4600b125c5321d}{serif\+::operators\+::\+Potential\+Contributions}} = \mbox{\hyperlink{namespaceserif_1_1equations_a3d8c1500d535f29fe360f0ab31ac55e3}{equations\+::\+Contributions\+Of}}$<$\mbox{\hyperlink{classserif_1_1equations_1_1_primal_poisson_balance}{equations\+::\+Primal\+Poisson\+Balance}}$>$}
|
|
|
|
\Hypertarget{namespaceserif_1_1operators_ac1416d49e5c3ea87f5a2cdbbf7f6ac1c}\index{serif::operators@{serif::operators}!PotentialGradient@{PotentialGradient}}
|
|
\index{PotentialGradient@{PotentialGradient}!serif::operators@{serif::operators}}
|
|
\doxysubsubsection{\texorpdfstring{PotentialGradient}{PotentialGradient}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1operators_ac1416d49e5c3ea87f5a2cdbbf7f6ac1c}
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_ac1416d49e5c3ea87f5a2cdbbf7f6ac1c}{serif\+::operators\+::\+Potential\+Gradient}} = \mbox{\hyperlink{structserif_1_1discretization_1_1forms_1_1_operand}{discretization\+::forms\+::\+Operand}}$<$\mbox{\hyperlink{namespaceserif_1_1operators_a9a98677dd6eb911f3daa5a4173248c93}{Potential}}, \mbox{\hyperlink{structserif_1_1discretization_1_1forms_1_1_operation_1_1_gradient}{discretization\+::forms\+::\+Operation\+::\+Gradient}}$>$}
|
|
|
|
\Hypertarget{namespaceserif_1_1operators_a4fddf5444606d22742b6fc341880c05a}\index{serif::operators@{serif::operators}!PotentialValue@{PotentialValue}}
|
|
\index{PotentialValue@{PotentialValue}!serif::operators@{serif::operators}}
|
|
\doxysubsubsection{\texorpdfstring{PotentialValue}{PotentialValue}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1operators_a4fddf5444606d22742b6fc341880c05a}
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_a4fddf5444606d22742b6fc341880c05a}{serif\+::operators\+::\+Potential\+Value}} = \mbox{\hyperlink{structserif_1_1discretization_1_1forms_1_1_operand}{discretization\+::forms\+::\+Operand}}$<$\mbox{\hyperlink{namespaceserif_1_1operators_a9a98677dd6eb911f3daa5a4173248c93}{Potential}}$>$}
|
|
|
|
\Hypertarget{namespaceserif_1_1operators_a1099b4a7d85fb1e9dd496c451f450a6a}\index{serif::operators@{serif::operators}!Schema@{Schema}}
|
|
\index{Schema@{Schema}!serif::operators@{serif::operators}}
|
|
\doxysubsubsection{\texorpdfstring{Schema}{Schema}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1operators_a1099b4a7d85fb1e9dd496c451f450a6a}
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_a1099b4a7d85fb1e9dd496c451f450a6a}{serif\+::operators\+::\+Schema}} = \mbox{\hyperlink{namespaceserif_1_1discretization_1_1domain_1_1schema_abc22bc3b4f40b417480a061162a3dea2}{discretization\+::domain\+::schema\+::\+Core\+Envelope\+Vacuum\+Domain\+Schema}}}
|
|
|
|
\Hypertarget{namespaceserif_1_1operators_a67047e978d34c67942594c8633d8dc98}\index{serif::operators@{serif::operators}!VectorTensor@{VectorTensor}}
|
|
\index{VectorTensor@{VectorTensor}!serif::operators@{serif::operators}}
|
|
\doxysubsubsection{\texorpdfstring{VectorTensor}{VectorTensor}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1operators_a67047e978d34c67942594c8633d8dc98}
|
|
using \mbox{\hyperlink{namespaceserif_1_1operators_a67047e978d34c67942594c8633d8dc98}{serif\+::operators\+::\+Vector\+Tensor}} = \mbox{\hyperlink{namespaceserif_1_1discretization_1_1forms_aecbaccd35c1209031d60ea7348d6a452}{discretization\+::forms\+::\+Matrix\+Value}}}
|
|
|
|
|
|
|
|
\doxysubsection{Function Documentation}
|
|
\Hypertarget{namespaceserif_1_1operators_aedf63524bbbd357b307f77282c9bdb99}\index{serif::operators@{serif::operators}!bind\_contributions@{bind\_contributions}}
|
|
\index{bind\_contributions@{bind\_contributions}!serif::operators@{serif::operators}}
|
|
\doxysubsubsection{\texorpdfstring{bind\_contributions()}{bind\_contributions()}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1operators_aedf63524bbbd357b307f77282c9bdb99}
|
|
template$<$equations\+::\+Equation EquationT$>$ \\
|
|
auto serif\+::operators\+::bind\+\_\+contributions (\begin{DoxyParamCaption}\item[{std\+::shared\+\_\+ptr$<$ const EquationT $>$}]{equation}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [nodiscard]}}
|
|
|
|
|
|
|
|
Give each retained leaf a compile-\/time tuple position for independently cached contribution results.
|
|
|
|
\Hypertarget{namespaceserif_1_1operators_a6fc6c3a2aa8dea2f9aa7758024e43a93}\index{serif::operators@{serif::operators}!for\_each\_contribution@{for\_each\_contribution}}
|
|
\index{for\_each\_contribution@{for\_each\_contribution}!serif::operators@{serif::operators}}
|
|
\doxysubsubsection{\texorpdfstring{for\_each\_contribution()}{for\_each\_contribution()}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1operators_a6fc6c3a2aa8dea2f9aa7758024e43a93}
|
|
template$<$equations\+::\+Equation EquationT, typename FunctionT$>$ \\
|
|
void serif\+::operators\+::for\+\_\+each\+\_\+contribution (\begin{DoxyParamCaption}\item[{const EquationT \&}]{equation}{, }\item[{FunctionT \&\&}]{function}{}\end{DoxyParamCaption})}
|
|
|
|
Visit leaves in declaration order, multiplying constant coefficients along each path. The callback receives (leaf equation, unique contribution index, coefficient). \Hypertarget{namespaceserif_1_1operators_ab2fbcb6d59eb098097b55cb1cb04b3d9}\index{serif::operators@{serif::operators}!linearized\_block@{linearized\_block}}
|
|
\index{linearized\_block@{linearized\_block}!serif::operators@{serif::operators}}
|
|
\doxysubsubsection{\texorpdfstring{linearized\_block()}{linearized\_block()}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1operators_ab2fbcb6d59eb098097b55cb1cb04b3d9}
|
|
\mbox{\hyperlink{classserif_1_1operators_1_1backend_1_1mfem_1_1_linearized_block}{Linearized\+Block}} serif\+::operators\+::backend\+::mfem\+::linearized\+\_\+block (\begin{DoxyParamCaption}\item[{std\+::shared\+\_\+ptr$<$ const \+::mfem\+::\+Sparse\+Matrix $>$}]{matrix}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [nodiscard]}}
|
|
|
|
|
|
|
|
Retain an already assembled physical block without copying its matrix.
|
|
|
|
\Hypertarget{namespaceserif_1_1operators_a923b82a601cec82833d0802e71b8108e}\index{serif::operators@{serif::operators}!LinearizedSystemView@{LinearizedSystemView}}
|
|
\index{LinearizedSystemView@{LinearizedSystemView}!serif::operators@{serif::operators}}
|
|
\doxysubsubsection{\texorpdfstring{LinearizedSystemView()}{LinearizedSystemView()}}
|
|
{\footnotesize\ttfamily \label{namespaceserif_1_1operators_a923b82a601cec82833d0802e71b8108e}
|
|
template$<$discretization\+::blocks\+::\+System\+Layout\+Type Layout, utils\+::dependencies\+::\+Is\+Dependency\+Context Blocks$>$ \\
|
|
serif\+::operators\+::\+Linearized\+System\+View (\begin{DoxyParamCaption}\item[{const Layout \&}]{}{, }\item[{const Blocks \&}]{}{}\end{DoxyParamCaption}) -\/$>$ Linearized\+System\+View$<$ Layout, Blocks $>$}
|
|
|
|
|
|
|
|
Infer canonical owner types while retaining the explicit borrowing lifetime checks.
|
|
|