\doxysection{src/include/serif/dimensions/dimensions.hpp File Reference} \hypertarget{dimensions_8hpp}{}\label{dimensions_8hpp}\index{src/include/serif/dimensions/dimensions.hpp@{src/include/serif/dimensions/dimensions.hpp}} File containing prue dimensions. Note that this is not intended to be (nor does it have the capability to be) a general dimensional analysis library. There is no understanding here that, for example, a dimension of length\texorpdfstring{$^\wedge$}{\string^}2 is an area. Rather, the purpose of this is to force developers to be explicit about what values they are passing to what functions. Further, most of this system is built to be compile time constant. This means that the compiler can still apply many optimizations. Note that the dimensions here do not contain a value, rather these are {\itshape just} the concept of a dimension. To store a value you must use a Quantity and Quantity\+Value. {\ttfamily \#include $<$string\+\_\+view$>$}\newline {\ttfamily \#include "{}serif/dimensions/quantities.\+hpp"{}}\newline Include dependency graph for dimensions.\+hpp\+:\nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=350pt]{dimensions_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]{dimensions_8hpp__dep__incl} \end{center} \end{figure} \doxysubsubsection*{Classes} \begin{DoxyCompactItemize} \item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_dimensionless}{serif\+::dimensions\+::\+Dimensionless}} \begin{DoxyCompactList}\small\item\em Non dimensional type. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_mass}{serif\+::dimensions\+::\+Mass}} \begin{DoxyCompactList}\small\item\em Dimension of mass. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_length}{serif\+::dimensions\+::\+Length}} \begin{DoxyCompactList}\small\item\em Dimension of \doxylink{structserif_1_1dimensions_1_1_length}{Length}. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_time}{serif\+::dimensions\+::\+Time}} \begin{DoxyCompactList}\small\item\em Dimension of \doxylink{structserif_1_1dimensions_1_1_time}{Time}. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_inverse_time_squared}{serif\+::dimensions\+::\+Inverse\+Time\+Squared}} \begin{DoxyCompactList}\small\item\em Inverse time squared, the physical dimension of a Poisson residual. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_mass_density_rate}{serif\+::dimensions\+::\+Mass\+Density\+Rate}} \begin{DoxyCompactList}\small\item\em \doxylink{structserif_1_1dimensions_1_1_mass}{Mass} density divided by time,. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_force_density}{serif\+::dimensions\+::\+Force\+Density}} \begin{DoxyCompactList}\small\item\em \doxylink{structserif_1_1dimensions_1_1_force}{Force} per unit volume. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_pressure_laplacian}{serif\+::dimensions\+::\+Pressure\+Laplacian}} \begin{DoxyCompactList}\small\item\em \doxylink{structserif_1_1dimensions_1_1_pressure}{Pressure} divided by length squared. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_gravitational_constant}{serif\+::dimensions\+::\+Gravitational\+Constant}} \begin{DoxyCompactList}\small\item\em Newton\textquotesingle{}s gravitational constant, expressed in the selected system of units. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_area}{serif\+::dimensions\+::\+Area}} \begin{DoxyCompactList}\small\item\em Dimension of \doxylink{structserif_1_1dimensions_1_1_area}{Area}. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_volume}{serif\+::dimensions\+::\+Volume}} \begin{DoxyCompactList}\small\item\em Dimension of \doxylink{structserif_1_1dimensions_1_1_volume}{Volume}. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_mass_density}{serif\+::dimensions\+::\+Mass\+Density}} \begin{DoxyCompactList}\small\item\em Dimension of \doxylink{structserif_1_1dimensions_1_1_mass}{Mass} Density. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_number_density}{serif\+::dimensions\+::\+Number\+Density}} \begin{DoxyCompactList}\small\item\em Dimension of Number Density. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_pressure}{serif\+::dimensions\+::\+Pressure}} \begin{DoxyCompactList}\small\item\em Dimension of \doxylink{structserif_1_1dimensions_1_1_pressure}{Pressure}. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_temperature}{serif\+::dimensions\+::\+Temperature}} \begin{DoxyCompactList}\small\item\em Dimension of \doxylink{structserif_1_1dimensions_1_1_temperature}{Temperature}. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_entropy}{serif\+::dimensions\+::\+Entropy}} \begin{DoxyCompactList}\small\item\em Dimension of \doxylink{structserif_1_1dimensions_1_1_entropy}{Entropy}. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_specific_entropy}{serif\+::dimensions\+::\+Specific\+Entropy}} \begin{DoxyCompactList}\small\item\em Dimension of Specific \doxylink{structserif_1_1dimensions_1_1_entropy}{Entropy}. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_chemical_potential}{serif\+::dimensions\+::\+Chemical\+Potential}} \begin{DoxyCompactList}\small\item\em Dimension of Chemical Potential. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_energy}{serif\+::dimensions\+::\+Energy}} \begin{DoxyCompactList}\small\item\em Dimension of \doxylink{structserif_1_1dimensions_1_1_energy}{Energy}. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_internal_energy}{serif\+::dimensions\+::\+Internal\+Energy}} \begin{DoxyCompactList}\small\item\em Dimension of Internal \doxylink{structserif_1_1dimensions_1_1_energy}{Energy}. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_specific_energy}{serif\+::dimensions\+::\+Specific\+Energy}} \begin{DoxyCompactList}\small\item\em Dimension of Specific \doxylink{structserif_1_1dimensions_1_1_energy}{Energy}. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_specific_internal_energy}{serif\+::dimensions\+::\+Specific\+Internal\+Energy}} \begin{DoxyCompactList}\small\item\em Dimension of Specific Internal \doxylink{structserif_1_1dimensions_1_1_energy}{Energy}. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_specific_enthalpy}{serif\+::dimensions\+::\+Specific\+Enthalpy}} \begin{DoxyCompactList}\small\item\em Dimension of Specific Enthalpy. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_barotropic_pressure_potential}{serif\+::dimensions\+::\+Barotropic\+Pressure\+Potential}} \begin{DoxyCompactList}\small\item\em The barotropic pressure primitive A with d\+A/density = (d\+P/density)/density. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_energy_density}{serif\+::dimensions\+::\+Energy\+Density}} \begin{DoxyCompactList}\small\item\em Dimension of \doxylink{structserif_1_1dimensions_1_1_energy}{Energy} Density. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_gravitational_potential}{serif\+::dimensions\+::\+Gravitational\+Potential}} \begin{DoxyCompactList}\small\item\em Dimension of Gravitational Potential. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_velocity}{serif\+::dimensions\+::\+Velocity}} \begin{DoxyCompactList}\small\item\em Dimension of \doxylink{structserif_1_1dimensions_1_1_velocity}{Velocity}. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_acceleration}{serif\+::dimensions\+::\+Acceleration}} \begin{DoxyCompactList}\small\item\em Dimension of \doxylink{structserif_1_1dimensions_1_1_acceleration}{Acceleration}. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_frequency}{serif\+::dimensions\+::\+Frequency}} \begin{DoxyCompactList}\small\item\em Dimension of \doxylink{structserif_1_1dimensions_1_1_frequency}{Frequency}. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_angular_velocity}{serif\+::dimensions\+::\+Angular\+Velocity}} \begin{DoxyCompactList}\small\item\em Dimension of Angular \doxylink{structserif_1_1dimensions_1_1_velocity}{Velocity}. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_angular_acceleration}{serif\+::dimensions\+::\+Angular\+Acceleration}} \begin{DoxyCompactList}\small\item\em Angular acceleration, distinct from angular velocity despite sharing its chosen axis. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_momentum}{serif\+::dimensions\+::\+Momentum}} \begin{DoxyCompactList}\small\item\em Dimension of \doxylink{structserif_1_1dimensions_1_1_momentum}{Momentum}. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_angular_momentum}{serif\+::dimensions\+::\+Angular\+Momentum}} \begin{DoxyCompactList}\small\item\em Dimension of Angular \doxylink{structserif_1_1dimensions_1_1_momentum}{Momentum}. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_moment_of_inertia}{serif\+::dimensions\+::\+Moment\+Of\+Inertia}} \begin{DoxyCompactList}\small\item\em Dimension of Moment Of Inertia. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_force}{serif\+::dimensions\+::\+Force}} \begin{DoxyCompactList}\small\item\em Dimension of \doxylink{structserif_1_1dimensions_1_1_force}{Force}. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_torque}{serif\+::dimensions\+::\+Torque}} \begin{DoxyCompactList}\small\item\em Dimension of \doxylink{structserif_1_1dimensions_1_1_torque}{Torque}. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_power}{serif\+::dimensions\+::\+Power}} \begin{DoxyCompactList}\small\item\em Dimension of \doxylink{structserif_1_1dimensions_1_1_power}{Power}. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_luminosity}{serif\+::dimensions\+::\+Luminosity}} \begin{DoxyCompactList}\small\item\em Dimension of \doxylink{structserif_1_1dimensions_1_1_luminosity}{Luminosity}. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_mass_flow_rate}{serif\+::dimensions\+::\+Mass\+Flow\+Rate}} \begin{DoxyCompactList}\small\item\em Dimension of \doxylink{structserif_1_1dimensions_1_1_mass}{Mass} Flow Rate. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_opacity}{serif\+::dimensions\+::\+Opacity}} \begin{DoxyCompactList}\small\item\em Dimension of \doxylink{structserif_1_1dimensions_1_1_opacity}{Opacity}. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_dynamic_viscosity}{serif\+::dimensions\+::\+Dynamic\+Viscosity}} \begin{DoxyCompactList}\small\item\em Dimension of Dynamic Viscosity. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_kinematic_viscosity}{serif\+::dimensions\+::\+Kinematic\+Viscosity}} \begin{DoxyCompactList}\small\item\em Dimension of Kinematic Viscosity. \end{DoxyCompactList}\item struct \mbox{\hyperlink{structserif_1_1dimensions_1_1_magnetic_flux_density}{serif\+::dimensions\+::\+Magnetic\+Flux\+Density}} \begin{DoxyCompactList}\small\item\em Dimension of Magnetic Flux Density. \end{DoxyCompactList}\end{DoxyCompactItemize} \doxysubsubsection*{Namespaces} \begin{DoxyCompactItemize} \item namespace \mbox{\hyperlink{namespaceserif}{serif}} \item namespace \mbox{\hyperlink{namespaceserif_1_1dimensions}{serif\+::dimensions}} \end{DoxyCompactItemize} \doxysubsection{Detailed Description} File containing prue dimensions. Note that this is not intended to be (nor does it have the capability to be) a general dimensional analysis library. There is no understanding here that, for example, a dimension of length\texorpdfstring{$^\wedge$}{\string^}2 is an area. Rather, the purpose of this is to force developers to be explicit about what values they are passing to what functions. Further, most of this system is built to be compile time constant. This means that the compiler can still apply many optimizations. Note that the dimensions here do not contain a value, rather these are {\itshape just} the concept of a dimension. To store a value you must use a Quantity and Quantity\+Value. \begin{DoxyAuthor}{Author} Emily M. Boudreaux \end{DoxyAuthor}