Files
MeanField_SERiF/docs/latex/actions_8cpp.tex
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

43 lines
5.2 KiB
TeX

\doxysection{src/lib/serif/backend/mfem/operators/actions.cpp File Reference}
\hypertarget{actions_8cpp}{}\label{actions_8cpp}\index{src/lib/serif/backend/mfem/operators/actions.cpp@{src/lib/serif/backend/mfem/operators/actions.cpp}}
{\ttfamily \#include "{}serif/utils/error/nonfinite.\+hpp"{}}\newline
{\ttfamily \#include "{}serif/backend/mfem/operators/actions.\+hpp"{}}\newline
{\ttfamily \#include $<$algorithm$>$}\newline
{\ttfamily \#include $<$utility$>$}\newline
{\ttfamily \#include "{}serif/backend/mfem/shared/finite.\+hpp"{}}\newline
{\ttfamily \#include "{}serif/utils/error/errors.\+hpp"{}}\newline
Include dependency graph for actions.\+cpp\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{actions_8cpp__incl}
\end{center}
\end{figure}
\doxysubsubsection*{Namespaces}
\begin{DoxyCompactItemize}
\item
namespace \mbox{\hyperlink{namespaceserif}{serif}}
\item
namespace \mbox{\hyperlink{namespaceserif_1_1operators}{serif\+::operators}}
\item
namespace \mbox{\hyperlink{namespaceserif_1_1operators_1_1backend}{serif\+::operators\+::backend}}
\item
namespace \mbox{\hyperlink{namespaceserif_1_1operators_1_1backend_1_1mfem}{serif\+::operators\+::backend\+::mfem}}
\end{DoxyCompactItemize}
\doxysubsubsection*{Functions}
\begin{DoxyCompactItemize}
\item
\mbox{\hyperlink{classserif_1_1operators_1_1backend_1_1mfem_1_1_linearized_block}{Linearized\+Block}} \mbox{\hyperlink{namespaceserif_1_1operators_1_1backend_1_1mfem_ad500ee5ad4ef471ae431b8c4dc3c6c53}{serif\+::operators\+::backend\+::mfem\+::linearized\+\_\+action}} (int rows, int columns, \mbox{\hyperlink{namespaceserif_1_1operators_1_1backend_1_1mfem_a3b3bf723bb9a0f99d88bd6fad6d6cee8}{Matrix\+Action}} action, \mbox{\hyperlink{namespaceserif_1_1operators_1_1backend_1_1mfem_a3b3bf723bb9a0f99d88bd6fad6d6cee8}{Matrix\+Action}} transpose)
\begin{DoxyCompactList}\small\item\em Wrap owned callbacks with checked dimensions, finite results, and overlap-\/safe application. \end{DoxyCompactList}\item
\mbox{\hyperlink{classserif_1_1operators_1_1backend_1_1mfem_1_1_linearized_block}{Linearized\+Block}} \mbox{\hyperlink{namespaceserif_1_1operators_1_1backend_1_1mfem_a26fc2a51b90bb3b53b0367a28d508080}{serif\+::operators\+::backend\+::mfem\+::linearized\+\_\+action}} (int rows, int columns, \mbox{\hyperlink{namespaceserif_1_1operators_1_1backend_1_1mfem_a3b3bf723bb9a0f99d88bd6fad6d6cee8}{Matrix\+Action}} action, \mbox{\hyperlink{namespaceserif_1_1operators_1_1backend_1_1mfem_a3b3bf723bb9a0f99d88bd6fad6d6cee8}{Matrix\+Action}} transpose, \mbox{\hyperlink{namespaceserif_1_1operators_1_1backend_1_1mfem_a6b0cdfb3c2b7760075cc756317204db8}{Matrix\+Array\+Action}} batch)
\begin{DoxyCompactList}\small\item\em As above, with a batched forward action used by the operator\textquotesingle{}s Array\+Mult. \end{DoxyCompactList}\item
void \mbox{\hyperlink{namespaceserif_1_1operators_1_1backend_1_1mfem_a4c162ddfd57ca8b33e4f55537f0269ac}{serif\+::operators\+::backend\+::mfem\+::apply\+\_\+many}} (const \+::mfem\+::\+Operator \&action, std\+::span$<$ const \mbox{\hyperlink{namespaceserif_1_1operators_1_1backend_1_1mfem_a317d4e0bea2ef8780ac3747cfe62bf72}{\+::mfem\+::\+Vector}} \texorpdfstring{$\ast$}{*}const $>$ inputs, std\+::span$<$\mbox{\hyperlink{namespaceserif_1_1operators_1_1backend_1_1mfem_a317d4e0bea2ef8780ac3747cfe62bf72}{\+::mfem\+::\+Vector}} \texorpdfstring{$\ast$}{*}const $>$ outputs)
\begin{DoxyCompactList}\small\item\em Apply an operator to several directions; Array\+Mult for SERiF actions, otherwise one Mult per direction. \end{DoxyCompactList}\item
\mbox{\hyperlink{classserif_1_1operators_1_1backend_1_1mfem_1_1_linearized_block}{Linearized\+Block}} \mbox{\hyperlink{namespaceserif_1_1operators_1_1backend_1_1mfem_a17d55109fe81202a9dbff5f0cd921e5f}{serif\+::operators\+::backend\+::mfem\+::transpose\+\_\+block}} (\mbox{\hyperlink{classserif_1_1operators_1_1backend_1_1mfem_1_1_linearized_block}{Linearized\+Block}} block)
\begin{DoxyCompactList}\small\item\em Transpose a linearized block without discarding efficient assembly and diagonal operations. \end{DoxyCompactList}\item
\mbox{\hyperlink{classserif_1_1operators_1_1backend_1_1mfem_1_1_linearized_block}{Linearized\+Block}} \mbox{\hyperlink{namespaceserif_1_1operators_1_1backend_1_1mfem_a33094e2a1e4dfb26dec4a1dfde0ed843}{serif\+::operators\+::backend\+::mfem\+::compose\+\_\+blocks}} (\mbox{\hyperlink{classserif_1_1operators_1_1backend_1_1mfem_1_1_linearized_block}{Linearized\+Block}} left, \mbox{\hyperlink{classserif_1_1operators_1_1backend_1_1mfem_1_1_linearized_block}{Linearized\+Block}} right)
\begin{DoxyCompactList}\small\item\em Compose linearized blocks in their written mathematical order. \end{DoxyCompactList}\item
\mbox{\hyperlink{classserif_1_1operators_1_1backend_1_1mfem_1_1_linearized_block}{Linearized\+Block}} \mbox{\hyperlink{namespaceserif_1_1operators_1_1backend_1_1mfem_a346dd7c66908876a5373191c02ce6809}{serif\+::operators\+::backend\+::mfem\+::sum\+\_\+blocks}} (int rows, int columns, std\+::vector$<$ \mbox{\hyperlink{classserif_1_1operators_1_1backend_1_1mfem_1_1_linearized_block}{Linearized\+Block}} $>$ blocks)
\begin{DoxyCompactList}\small\item\em Sum compatible linearized blocks while retaining their native diagonal and sparse assembly operations. \end{DoxyCompactList}\end{DoxyCompactItemize}