Skip to content

Commit

Permalink
Add Flexi report document.
Browse files Browse the repository at this point in the history
Co-authored-by: Rod Douglass <douglass@strallc.com>
Co-authored-by: Glen Hansen <hansen@strallc.com>
  • Loading branch information
rwdlnk and gahansen committed Aug 2, 2023
1 parent 2a36c2d commit 24adc6c
Show file tree
Hide file tree
Showing 189 changed files with 25,446 additions and 1 deletion.
117 changes: 117 additions & 0 deletions doc/flexiReport/Centroid.pdftex
Original file line number Diff line number Diff line change
@@ -0,0 +1,117 @@
%PDF-1.7
%�쏢
%%Invocation: gs -q -dSAFER -dAutoRotatePages=/None -sDEVICE=pdfwrite -dPDFSETTINGS=/prepress ? ? -
5 0 obj
<</Length 6 0 R/Filter /FlateDecode>>
stream
x�eVK�1 ��Y�`�8�Ng�xB���A#@h����.�3�Yt�.��q�6�A~�<��?NM��GG�4K���qnO)�Qx/(���8⾄`�Z�R�Tc��Ե1�'��,!����p_\�U$�RA�
�v^s���<]dg>l9٦p:��39�
��tCW�m�ې�����(ũ���;���Cfe���D����ɡ�"a! (e�L��:k-6 �X�lq�e�8�8��5�!a��0�!�Zh�HG[C�C�s�NY�4Lx����c2��Y�Q�8�-!Xd�6�c�z�qt-A�eI�8֐ch����w���w
�����ws�5$�����<���v-A��p }Y.��N*i�iI�Ь�ruR�g�����jF�"�@ u�$�@z u�Nn��z:e����kF��J�UO���5.lc1CP�5o�p��^Y�gY�q�[a:���"��I�v�(5���,�^F��l= ��:������u����4YC�XX�0��'G{0eQ�� #���$ʘ�m��iHI�꽑���i��Τ��V���Co���H�T���0���ֆʎ����&EZز�
X���4��� Ĕ�j�V�s�뫽̀Q��3��0no����psػ*P����oj%�� �~�@_(6�A�04�}j�q[X6�P���_=�Mn#�C-S�1��zSx��t����w�—I�=λu�>WO��~s��C��M������^�y}�ɉ������W3�԰��ĸ�ț&Q�$�p^����!N
i��&�'z�I�̌O��Q�R�i���f �;��=�=���/| a�5��[!.�1Q(��pu�������endstream
endobj
6 0 obj
838
endobj
4 0 obj
<</Type/Page/MediaBox [0 0 430 407]
/Parent 3 0 R
/Resources<</ProcSet[/PDF /Text]
/Font 9 0 R
>>
/Contents 5 0 R
>>
endobj
3 0 obj
<< /Type /Pages /Kids [
4 0 R
] /Count 1
>>
endobj
1 0 obj
<</Type /Catalog /Pages 3 0 R
/Metadata 11 0 R
>>
endobj
9 0 obj
<</R7
7 0 R>>
endobj
7 0 obj
<</BaseFont/MZMFDL+Times-Bold/FontDescriptor 8 0 R/Type/Font
/FirstChar 32/LastChar 110/Widths[
250 0 0 0 0 0 0 0 0 0 0 570 250 0 0 0
0 500 500 500 500 0 0 0 0 0 0 0 0 0 0 0
0 722 0 722 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 556]
/Encoding/WinAnsiEncoding/Subtype/Type1>>
endobj
8 0 obj
<</Type/FontDescriptor/FontName/MZMFDL+Times-Bold/FontBBox[0 -158 689 691]/Flags 131104
/Ascent 691
/CapHeight 691
/Descent -158
/ItalicAngle 0
/StemV 103
/MissingWidth 250
/XHeight 473
/CharSet(/A/C/comma/four/n/one/plus/space/three/two)/FontFile3 10 0 R>>
endobj
10 0 obj
<</Filter/FlateDecode
/Subtype/Type1C/Length 1021>>stream
x���kLSw��i�3�L{v����Q6n��86dj��!L.2n=��r��B�la�*�\)�#�s�qQ�ð1q�-��dJ��H�0��O{O���ʲd��o����ɓ�%�A�dT������in�o��R<)%Ȥg�g��C�#%��@
9RDL�T��vp<Ƿ$�ҁ�s)%EGS�Ҵy�{��`l�ded�hj�6�}��d4�ᢝo2�4�B[����j���kͦ����� �-oyY�9�4m&A�"tD"��A
b+�$����@�J"oȞ���:dd�仠/:T�Dȟ���P~��B���vl�&b�nݸͧw9*\q�P�u�V����� VjjψY���2~x���8<L+��=���g���hi�Ҏ`��� Ԡu [*����^��&���_���4֫��� =wj��f�<��>�:�X�����1t��F}���a�]��L�O_h9�Ƨi�|��',���l����$��|y( �\��FK�M�jp��AthZ�#,:~D� ��(�o��9�g��8����B�0�>hG.����}���p*N�5��q�^���:Z�A'��EH�K�`�,���۝�ap/��??���q���e�J��0�s�O�kKׯ�Esh�v�0�>dFm��V�X^��X��q�&��aǂ���f 9���7����~r�b�f�o4���N��0�9cb��ׄ��U���+u����~VkB �b1�|g��@,P�<�0�nt��.2��{���~�s��ˤ�ܲ�b�f:��\�� B��c�u)�8)�5�p/V��ku�8 ^�H�O �@N�Op��S��Bdt��`�� �59�a���l�c~-�Яa=��TX�퐭��c������h��_;�+kh,U��+�6��E޳*���׋z�}C�.��&���C " �"�
�\��>�V)�I�LF������^ �GL�g=���h���c���h�%�f�F��-���P(@5��J \��
endstream
endobj
11 0 obj
<</Type/Metadata
/Subtype/XML/Length 1190>>stream
<?xpacket begin='' id='W5M0MpCehiHzreSzNTczkc9d'?>
<?adobe-xap-filters esc="CRLF"?>
<x:xmpmeta xmlns:x='adobe:ns:meta/' x:xmptk='XMP toolkit 2.9.1-13, framework 1.6'>
<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:iX='http://ns.adobe.com/iX/1.0/'>
<rdf:Description rdf:about="" xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 9.55.0'/>
<rdf:Description rdf:about="" xmlns:xmp='http://ns.adobe.com/xap/1.0/'><xmp:ModifyDate>2023-03-08T15:49:57-06:00</xmp:ModifyDate>
<xmp:CreateDate>2023-03-08T15:49:57-06:00</xmp:CreateDate>
<xmp:CreatorTool>fig2dev Version 3.2.8b</xmp:CreatorTool></rdf:Description>
<rdf:Description rdf:about="" xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='uuid:b7940791-f617-11f8-0000-cce0751aacfb'/>
<rdf:Description rdf:about="" xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Centroid.fig</rdf:li></rdf:Alt></dc:title></rdf:Description>
</rdf:RDF>
</x:xmpmeta>


<?xpacket end='w'?>
endstream
endobj
2 0 obj
<</Producer(GPL Ghostscript 9.55.0)
/CreationDate(D:20230308154957-06'00')
/ModDate(D:20230308154957-06'00')
/Title(Centroid.fig)
/Creator(fig2dev Version 3.2.8b)>>endobj
xref
0 12
0000000000 65535 f
0000001233 00000 n
0000004305 00000 n
0000001174 00000 n
0000001042 00000 n
0000000115 00000 n
0000001023 00000 n
0000001327 00000 n
0000001659 00000 n
0000001298 00000 n
0000001932 00000 n
0000003038 00000 n
trailer
<< /Size 12 /Root 1 0 R /Info 2 0 R
/ID [<A4E6A68A3C6E8DE9CA3D7787AAB13FDF><A4E6A68A3C6E8DE9CA3D7787AAB13FDF>]
>>
startxref
4484
%%EOF
Expand Down
15 changes: 15 additions & 0 deletions doc/flexiReport/Centroid.pdftex_t
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
\begin{picture}(0,0)%
\includegraphics{Centroid.pdftex}%
\end{picture}%
\setlength{\unitlength}{3947sp}%
%
\begingroup\makeatletter\ifx\SetFigFont\undefined%
\gdef\SetFigFont#1#2#3#4#5{%
\reset@font\fontsize{#1}{#2pt}%
\fontfamily{#3}\fontseries{#4}\fontshape{#5}%
\selectfont}%
\fi\endgroup%
\begin{picture}(7155,6780)(1111,-6451)
\put(6301,-3286){\makebox(0,0)[lb]{\smash{{\SetFigFont{12}{14.4}{\familydefault}{\mddefault}{\updefault}{\color[rgb]{0,0,0}$\int_0^9 f(\eta) d\eta$}%
}}}}
\end{picture}%
107 changes: 107 additions & 0 deletions doc/flexiReport/Intro.tex
Original file line number Diff line number Diff line change
@@ -0,0 +1,107 @@

\section{Introduction}\label{sec:Intro}

Flexi\cite{flexigeneral} is a transient, multi-dimensional fluid dynamics simulation code framework using both the discontinuous Galerkin method and Finite Volume method for discretizing the equations of mass, momentum, and energy conservation. The equations include conservation of mass, momentum, and energy and allows for linear or nonlinear, compressible, viscous or inviscid flows, and RANS turbulence modeling\cite{flexiles}. Full documentation and code is available at \url{github.com/flexi-framework/flexi}. The currently implemented features of Flexi include (\textit{c.f.,} Section 2.3 of the Flexi Project Documentation as compiled from the flexi-framework github site and given in the \textbf{references directory}):

\begin{itemize}
\item Equation systems:
\begin{itemize}
\item compressible Euler equations
\item compressible Navier-Stokes equations
\item linear scalar advection and diffusion
\end{itemize}
\item Space discretization: DGSEM method:
\begin{itemize}
\item Legendre Gauss
\item Legendre Gauss Lobatto
\end{itemize}
\item Time discretization - explicit Runge-Kutta methods:
\begin{itemize}
\item standard RK methods
\item low storage RK methods
\item strong stability preserving RK methods
\end{itemize}
\item Two- or three-dimensional domains
\item Riemann solvers:
\begin{itemize}
\item local Lax-Friedrichs
\item HLL
\item HLLC
\item Roe-Pike
\end{itemize}
\item Curved Meshes
\item Nonconforming Meshes via mortar interfaces
\item Shock capturing
\begin{itemize}
\item Employing finite volume subcells by either
\begin{itemize}
\item switching to finite volume subcells
\item blending the finite volume operator
\end{itemize}
\item Several shock indicators available
\end{itemize}
\item Boundary conditions
\begin{itemize}
\item Various subsonic inflow and outflow conditions
\item exact boundaries (Dirichlet)
\item periodic boundaries
\item slip wall (Euler wall)
\item non-slip walls (Navier-Stokes wall)
\item adiabatic
\item isothermal
\end{itemize}
\item Splitform discontinuous Galerkin schemes
\end{itemize}

The focus of the results presented here is running Flexi on classic Riemann problems in one- and two-dimensions. These include the Sod[\cite{sod1,sod2}] problem, the LeBlanc problem, the Einfeldt problem (also known as the 1-2-3 problem)\cite{einfeldt}, and the two-dimensional Sedov\cite{Sedov} and Hui\cite{Hui} problems. These problems are well documented and some have exact mathematical solutions so that the Flexi results may be compared to these solutions. Those without exact solutions will be compared to relevant published results. In presenting results no attempt has been made to determine the set of Flexi's many available parameters and their values for optimal results.

Although Flexi is a general viscous thermo-fluid dynamics code, this report focuses on Riemann problems and so has been setup to solve the following equation system for the dependent variables density, momentum, and energy $F_i(x, y, z) = [\rho, m_i, E]$ in conservative form:

\begin{eqnarray}
\partial_{,t} \rho + \partial_{,i} \left( m_i \right) & = & 0, \\
\partial_{,t} m_i + \partial_{,j} \left( (m_i*m_j/\rho) + P \delta_{ij}) \right) & = & 0, \\
\partial_{,t} E + \partial_{,i} \left( (m_i/\rho)(E + P) \right) & = & 0
\end{eqnarray}
\noindent where $\rho$ is the density, $m_i = \rho v_i$ is the momentum vector ($v_i$ the velocity vector), and the total energy per unit volume, $E = \rho u + \rho v_i v_i/2$, where $u$ is the specific internal energy and $\delta_{ij}$ is the Kronecker delta function. The current Flexi release has only an ideal gas equation of state so that $P = (\gamma - 1) \rho u$, where $\gamma = C_p/C_v$ is the ideal gas ratio of specific heats.


\begin{table}[h!]
\begin{center}
\caption{Conserved and Primitive Variable names used in Flexi for a \texorpdfstring{$\gamma$}-Law Ideal gas where \texorpdfstring{$R$} is the gas constant.}
\label{tab:flexiVars}
\begin{tabular}{|c|c|c|} \hline
\textbf{Physical Symbol} & \parbox{0.3\linewidth}{\centering \textbf{Conserved Variable}} & \parbox{0.3\linewidth}{\centering \textbf{Primitive Variable}} \\ \hline
$\rho$ & Density & \\
$m_x = \rho v_x$ & MomentumX & \\
$m_y = \rho v_y$ & MomentumY & \\
$m_z = \rho v_z$ & MomentumZ & \\
$E_{sd} = \rho u + \rho V^2/2$ & EnergyStagnationDensity & \\
$v_x = M_x / \rho$ & & VelocityX \\
$v_y = M_y / \rho$ & & VelocityY \\
$v_z = M_z / \rho$ & & VelocityZ \\
$E_s = E_{sd}/\rho = u + V^2/2 $ & & EnergyStagnation \\
$h = u + P/\rho$ & & EnthalpyStagnation \\
$s = R \left[ \frac{\ln(T)}{\gamma-1} - \ln(\rho) \right]$ & & Entropy \\
$P = (\gamma - 1) \rho u$ & & Pressure \\
$T = P/(\rho R) $ & & Temperature \\
$V = \sqrt{v_i v_i}$ & & VelocityMagnitude \\
$C = \sqrt{\gamma P/\rho}$ & & VelocitySound \\
$ Ma = V/C$ & & Mach \\
$T_0 = T \left[ 1+\frac{\gamma - 1}{2} Ma^2 \right]$
& & TotalTemperature \\
$P_0 = P \left[1+\frac{\gamma-1}{2} Ma^2 \right]^{\frac{\gamma}{\gamma-1}} $
& &TotalPressure \\
$\frac{\partial P}{\partial t}$ & & PressureTimeDeriv \\ \hline
\end{tabular}
\end{center}
\end{table}

\noindent The primitive variables listed in Table \ref{tab:flexiVars} are calculated from the Flexi conserved variables whose names as listed may be used in post processing as described in \ref{sec:posti} to call out desired quantities to be written into the solution files.

When comparing Flexi results with an available exact solution, the average $L_2$-norm of the difference, $\bar{\epsilon}$, will be used where

\begin{eqnarray}\label{eq:error}
\Delta_i & = & f_i - f_{{\mathrm{exact}}_i} \\
\bar{\epsilon}(\Delta_i) & = & \frac{1}{N} \sqrt{ \Delta_i \Delta_i} \label{eq:avgerr}
\end{eqnarray}
\noindent where $f$ and $f_{\mathrm{exact}}$ are vectors of the Flexi and exact variables of length $N$ being examined.
Loading

0 comments on commit 24adc6c

Please sign in to comment.