[Commits] [svn:einsteintoolkit] incoming/EOS_Omni/doc/ (Rev. 2)

cott at tapir.caltech.edu cott at tapir.caltech.edu
Fri Jul 2 16:41:37 CDT 2010


User: cott
Date: 2010/07/02 04:41 PM

Modified:
 /EOS_Omni/doc/
  documentation.tex

Log:
 * add prelim documentation

File Changes:

Directory: /EOS_Omni/doc/
=========================

File [modified]: documentation.tex
Delta lines: +69 -14
===================================================================
--- EOS_Omni/doc/documentation.tex	2010-06-29 14:59:02 UTC (rev 1)
+++ EOS_Omni/doc/documentation.tex	2010-07-02 21:41:36 UTC (rev 2)
@@ -99,7 +99,9 @@
 
 % Add an abstract for this thorn's documentation
 \begin{abstract}
-
+This Thorn provides a unified EOS interface and implements
+multiple EOS. These currently are the polytropic EOS, the
+gamma-law EOS, and the hybrid EOS.
 \end{abstract}
 
 % The following sections are suggestive only.
@@ -107,36 +109,89 @@
 
 \section{Introduction}
 
-\section{Physical System}
+Equations of State (EOS) are crucial for hydrodynamics and hydro
+codes (as well as other codes needing/providing microphysics)
+are closely coupled to EOS and call EOS routines many times for
+each grid point during the caculation of a time update.
 
-\section{Numerical Implementation}
+{\tt EOS\_Omni} is presently coded for cold and hot EOS, 
+including those based on microphysical models. It does currently
+assume nuclear statistical equilibrium (NSE) with density,
+specific internal energy (or temperature), and electron fraction
+being the independent variables. {\tt EOS\_Omni} may be called
+on vectors or on single points.
 
 \section{Using This Thorn}
 
-\subsection{Obtaining This Thorn}
 
 \subsection{Basic Usage}
 
-\subsection{Special Behaviour}
+{\tt EOS\_Omni} works via the aliased-function interface and
+EOS functions to be used must be declared in {\tt interface.ccl}.
+Here is an example call/{interface.ccl} entry:
+\begin{verbatim}
+void FUNCTION EOS_Omni_press(CCTK_INT IN eoskey,         \
+                             CCTK_INT IN havetemp,       \
+                             CCTK_INT IN npoints,        \
+                             CCTK_REAL IN ARRAY rho,     \
+                             CCTK_REAL INOUT ARRAY eps,  \
+                             CCTK_REAL INOUT ARRAY temp, \
+                             CCTK_REAL IN ARRAY ye,      \
+                             CCTK_REAL OUT ARRAY press,  \
+                             CCTK_INT OUT ARRAY keyerr,  \
+                             CCTK_INT OUT anyerr)
+\end{verbatim}
 
-\subsection{Interaction With Other Thorns}
+Here, 
+\begin{itemize}
+\item {\tt eoskey} is the type of EOS to be used in this call.
+  \begin{itemize}
+    \item {\tt eoskey = 1}: Polytropic EOS
+    \item {\tt eoskey = 2}: Gamma-Law EOS
+    \item {\tt eoskey = 3}: Hybrid EOS (2 Polys, 1 Gamma-Law), used
+      for core-collapse simulations.
+  \end{itemize}
+\item {\tt havetemp} tells the EOS if the call is $X=X(\rho,T,Y_e)$
+  ({\tt havetemp = 1}) or $X=X(\rho,\epsilon,Y_e)$  ({\tt havetemp = 0}),
+\item {\tt npoints} tells the EOS how many data points are passed
+  in,
+\item {\tt rho,eps,temp,ye,press} are obvious,
+\item {\tt keyerr} is an array (with n entries for n data points)
+  containing error codes (relevant only for tabular EOS),
+\item {\tt anyerr} is an integer that is .gt. 0 in the case
+  any error occured.
+\end{itemize}
 
-\subsection{Examples}
+\subsection{Parameter Settings}
 
-\subsection{Support and Feedback}
+Many hydro codes require a fallback EOS in case something goes
+wrong. This is also true for the Einstein Toolkit GR hydro code {\tt
+EinsteinEvolve/GRHydro}. If you want to use {\tt EOS\_Omni} with {\tt
+GRHydro}, you must set parameters for the EOS of your choice and, {\bf
+in addition}, the following parameters must be set to sensible values:
 
-\section{History}
+\begin{verbatim}
+eos_omni::poly_gamma 
+eos_omni::poly_gamma_ini 
+eos_omni::poly_k 
+\end{verbatim}
 
-\subsection{Thorn Source Code}
+The only non-obvious parameter here is {\tt poly\_gamma\_ini}.
+In most simulations it should be set equal to {\tt poly\_gamma}.
+In simulations that are run with a different adiabatic index than
+what was used to set up the initial data, {\tt poly\_gamma} should
+be the evolution value, and {\tt poly\_gamma\_ini} should be the initial
+data value.
 
-\subsection{Thorn Documentation}
+Check out {\tt param.ccl} for parameters for other EOS.
 
-\subsection{Acknowledgements}
+\subsection{Special Behavior}
 
+If special behavior occurs, please report it to {\tt cott at tapir.caltech.edu}.
 
-\begin{thebibliography}{9}
+%\begin{thebibliography}{9}
 
-\end{thebibliography}
+%\end{thebibliography}
 
 % Do not delete next line
 % END CACTUS THORNGUIDE



More information about the Commits mailing list