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

83 lines
5.6 KiB
TeX

\doxysection{src/include/serif/dimensions/quantities.hpp File Reference}
\hypertarget{quantities_8hpp}{}\label{quantities_8hpp}\index{src/include/serif/dimensions/quantities.hpp@{src/include/serif/dimensions/quantities.hpp}}
This file contains the code to associate numeric data to a dimension. We call this a Quantity and a Quantity\+Value.
{\ttfamily \#include $<$type\+\_\+traits$>$}\newline
{\ttfamily \#include $<$compare$>$}\newline
{\ttfamily \#include $<$concepts$>$}\newline
{\ttfamily \#include $<$tuple$>$}\newline
{\ttfamily \#include "{}serif/utils/misc/std\+\_\+helper/cleaning.\+hpp"{}}\newline
{\ttfamily \#include "{}serif/utils/misc/concepts/numeric.\+hpp"{}}\newline
Include dependency graph for quantities.\+hpp\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{quantities_8hpp__incl}
\end{center}
\end{figure}
This graph shows which files directly or indirectly include this file\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{quantities_8hpp__dep__incl}
\end{center}
\end{figure}
\doxysubsubsection*{Classes}
\begin{DoxyCompactItemize}
\item
struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_physical_quantity}{serif\+::dimensions\+::\+Physical\+Quantity}}
\item
struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_thermodynamic_quantity}{serif\+::dimensions\+::\+Thermodynamic\+Quantity}}
\item
class \mbox{\hyperlink{classserif_1_1dimensions_1_1_quantity_value}{serif\+::dimensions\+::\+Quantity\+Value$<$ Quantity $>$}}
\begin{DoxyCompactList}\small\item\em This is the non derivative equivalent to \doxylink{classserif_1_1dimensions_1_1_partial_derivative}{Partial\+Derivative}. This associates a dimension with a value and, if that value can be determined at compile time, can be decomposed to a transparent double through .\doxylink{classserif_1_1dimensions_1_1_quantity_value_a901278a0b1d317587dbad496b1527fb5}{value()} \end{DoxyCompactList}\item
struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_is_quantity_value}{serif\+::dimensions\+::\+Is\+Quantity\+Value$<$ Candidate $>$}}
\item
struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_is_quantity_value_3_01_quantity_value_3_01_quantity_01_4_01_4}{serif\+::dimensions\+::\+Is\+Quantity\+Value$<$ Quantity\+Value$<$ Quantity $>$ $>$}}
\item
struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_quantity_of_3_01_quantity_value_3_01_quantity_01_4_01_4}{serif\+::dimensions\+::\+Quantity\+Of$<$ Quantity\+Value$<$ Quantity $>$ $>$}}
\item
struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_quantity_list}{serif\+::dimensions\+::\+Quantity\+List$<$ Quantities $>$}}
\item
struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_quantity_at_3_01_index_00_01_quantity_list_3_01_quantities_8_8_8_01_4_01_4}{serif\+::dimensions\+::\+Quantity\+At$<$ Index, Quantity\+List$<$ Quantities... $>$ $>$}}
\end{DoxyCompactItemize}
\doxysubsubsection*{Namespaces}
\begin{DoxyCompactItemize}
\item
namespace \mbox{\hyperlink{namespaceserif}{serif}}
\item
namespace \mbox{\hyperlink{namespaceserif_1_1dimensions}{serif\+::dimensions}}
\end{DoxyCompactItemize}
\doxysubsubsection*{Concepts}
\begin{DoxyCompactItemize}
\item
concept \mbox{\hyperlink{conceptserif_1_1dimensions_1_1_physical_quantity_type}{serif\+::dimensions\+::\+Physical\+Quantity\+Type}}
\begin{DoxyCompactList}\small\item\em Is compile-\/time true of the Quantity\+Candidate can have any const / volatile stripped and if its derived from Physical\+Quantity. Note all Thermodynamic\+Quantities will also satisfy this concept. \end{DoxyCompactList}\item
concept \mbox{\hyperlink{conceptserif_1_1dimensions_1_1_thermodynamic_quantity_type}{serif\+::dimensions\+::\+Thermodynamic\+Quantity\+Type}}
\begin{DoxyCompactList}\small\item\em Is compile-\/time true of the Quantity\+Candidate can have any const / volatile stripped and if its derived from Physical\+Quantity (both enforced through checking Physical\+Quantity\+Type) and then that is is also derived from Thermodynamic\+Quantity. Note not all physical quanties will satisfy this. \end{DoxyCompactList}\item
concept \mbox{\hyperlink{conceptserif_1_1dimensions_1_1_quantity_value_type}{serif\+::dimensions\+::\+Quantity\+Value\+Type}}
\begin{DoxyCompactList}\small\item\em Turn those compile time structs into a concept that can be used to constrain a template parameter. \end{DoxyCompactList}\item
concept \mbox{\hyperlink{conceptserif_1_1dimensions_1_1_thermodynamic_quantity_value_type}{serif\+::dimensions\+::\+Thermodynamic\+Quantity\+Value\+Type}}
\end{DoxyCompactItemize}
\doxysubsubsection*{Typedefs}
\begin{DoxyCompactItemize}
\item
{\footnotesize template$<$Quantity\+Value\+Type Value$>$ }\\using \mbox{\hyperlink{namespaceserif_1_1dimensions_a726ea17ab3c500d045d2605915ecfcd6}{serif\+::dimensions\+::\+Quantity\+OfT}} = typename \mbox{\hyperlink{structserif_1_1dimensions_1_1_quantity_of}{Quantity\+Of}}$<$\mbox{\hyperlink{namespaceserif_1_1utils_1_1misc_1_1std__helper_a1a18295f7407fe00ade70a9a850788c8}{Neither\+Const\+Nor\+Volatile\+Reference}}$<$Value$>$$>$\+::\+Type
\item
{\footnotesize template$<$class T$>$ }\\using \mbox{\hyperlink{namespaceserif_1_1dimensions_acf1a7ad8f60290ead71c5b1509481e3a}{serif\+::dimensions\+::\+Neither\+Const\+Nor\+Volatile}}
\item
{\footnotesize template$<$class T$>$ }\\using \mbox{\hyperlink{namespaceserif_1_1dimensions_a1a18295f7407fe00ade70a9a850788c8}{serif\+::dimensions\+::\+Neither\+Const\+Nor\+Volatile\+Reference}}
\end{DoxyCompactItemize}
\doxysubsection{Detailed Description}
This file contains the code to associate numeric data to a dimension. We call this a Quantity and a Quantity\+Value.
\begin{DoxyAuthor}{Author}
Emily M. Boudreaux
\end{DoxyAuthor}