[Commits] [svn:einsteintoolkit] Paper_EinsteinToolkit_2010/ (Rev. 47)

knarf at cct.lsu.edu knarf at cct.lsu.edu
Mon Apr 4 09:54:56 CDT 2011


User: knarf
Date: 2011/04/04 09:54 AM

Modified:
 /
  ET.tex

Log:
 extend Base Modules

File Changes:

Directory: /
============

File [modified]: ET.tex
Delta lines: +94 -22
===================================================================
--- ET.tex	2011-04-04 14:35:53 UTC (rev 46)
+++ ET.tex	2011-04-04 14:54:56 UTC (rev 47)
@@ -319,7 +319,7 @@
 The Einstein Toolkit now collects the widely used parts of CactusEinstein,
 combined with contributions from the community.
 
-\subsection{Adaptive Mesh Refinement\pages{1}}
+\subsection{Adaptive Mesh Refinement\pages{1 Erik}}
 
 In Cactus, infrastructure capabilities such as memory management,
 parallelisation, time evolution, mesh refinement, and I/O are
@@ -380,7 +380,7 @@
 world-wide. To date, more than 90 peer-reviewed publication and more
 than 15 student theses are based on Carpet \cite{CarpetCode:web}.
 
-\subsection{Simulation Factory\pages{1}}
+\subsection{Simulation Factory\pages{1 Erik}}
 
 Today's supercomputers differ significantly in
 their hardware configuration, available software, directory structure,
@@ -478,6 +478,10 @@
 enforce on a technical level. Examples for these are the exact
 definitions of physical variables, their units, but also on the more
 technical level the variable names used for the physical quantities.
+In addition, even distinct simulation codes typically use very similar
+scheduling schemes. Conventions on the level of the scheduler can help
+coordinating the order different modules are called.
+
 The Einstein Toolkit provides modules with the sole purpose to
 declare commonly used variables, and to define their meaning and units.
 The latter is not strictly enforced, and instead documented as part of the
@@ -485,8 +489,9 @@
 following in more detail, because especially these quantities might be
 defined differently in various simulation codes.
 
+\subsubsection{ADMBase}
 Relativistic spacetime evolution methods used within the Cactus framework use
-different formulations, but essentially all are based on the ADM
+different formulations, but essentially all are based on the $3+1$ ADM
 construction~\cite{Arnowitt:1962hi}. This makes this formulation the
 natural choice of a common denominator to exchange data between
 modules using different formulations. The following variables are
@@ -499,30 +504,97 @@
 between different modules, like which type of initial data should
 be setup or which evolution method should be used.
 
+The variables provided by {\tt ADMBase} are:
+
+\begin{itemize}
+ \item
+  The 3-metric tensor, $g_{ij}$
+  {\tt gxx}, {\tt gxy}, {\tt gxz},{\tt gyy}, {\tt gyz},{\tt gzz}
+ \item The extrinsic curvature tensor, $K_{ij}$
+  {\tt kxx}, {\tt kxy}, {\tt kxz},{\tt kyy},{\tt kyz},{\tt kzz}
+ \item The lapse function, $\alpha$
+  {\tt alp}
+ \item The shift vector $\beta^i$
+  {\tt betax}, {\tt betay},{\tt betaz}
+\end{itemize}
+
+The type of chosen initial data for a simulation is specified by the {\tt
+initial\_data} (3-metric and extrinsic curvature),
+{\tt initial\_lapse}, {\tt initial\_shift} parameters, and
+parameters for their first time derivatives {\tt initial\_dtlapse} and
+{\tt initial\_dtshift} respectively.
+By default, {\tt ADMBase} initialises the 3-metric and extrinsic
+curvature to Minkowski and the lapse to one. Initial data thorns
+override these defaults by extending the parameters.
+
+Analogous to specifying initial data, evolution methods are chosen by
+the {\tt evolution\_method} (3-metric and extrinsic curvature),
+{\tt lapse\_evolution\_method}, {\tt shift\_evolution\_method},
+{\tt dtlapse\_evolution\_method} and {\tt dtshift\_evolution\_method}
+parameters. {\tt ADMBase} does not evolve the
+3-metric or extrinsic curvature, and holds the lapse and shift static.
+Evolution thorns typically extend the ranges of these parameters and
+contain the evolution code.
+
+\subsubsection{HydroBase}
 Similar to \codename{ADMBase}, the module \codename{HydroBase} defines the common
 basis for interactions between relativistic hydrodynamics modules.
+HydroBase extends the CactusEinstein framework to include an interface for magnetohydrodynamics to
+work within.  HydroBase's main function is to store the primitive variables, common among
+hydrodynamic simulations, commonly needed parameters, and schedule groups for the main
+functions of a hydrodynamics code.
+HydroBase only stores variables which
+are common to most if not all hydrodynamics codes solving the Euler
+equations, the so called primitive variables. These are also the variables which are needed
+to couple to a spacetime solver and which are usually needed by analysis thorns. The usage of
+a common set of variables by different hydrodynamics codes creates the possibility to share
+parts of the code, e.g.\ initial data solvers or analysis routines.
+
 It is using the conventions of the Valencia
 formulation~\cite{Marti:1991wi,Banyuls:1997zz,Ibanez:2001:godunov}.
-In particular, it defines the rest-mass density $\varrho$, the gas
-pressure $p$, internal energy density $\epsilon$, the
-contravariant gas three velocity defined as
-\begin{equation}
- v^i = \frac{u^i}{\alpha u^0} + \frac{\beta^i}{\alpha}
-\end{equation}
-the electron
-fraction $Y_e$, the temperature $T$, the specific entropy per
-particle $s$ and the contravariant magnetic field vector $B^i$, defined
-as
-\begin{equation}
- B^i = \frac{1}{\sqrt{4\pi}} n_{\nu} F^{*\nu i}
-\end{equation}
-in terms of the dual
-\begin{equation}
- F^{*\mu\nu} = \frac{1}{2}\varepsilon^{\mu\nu\alpha\beta}F_{\alpha\beta}
-\end{equation}
-to the Faraday tensor and the unit normal of the foliation of spacetime
-$n^\mu$.
+In particular, HydroBase defines the primitive variables (see~\cite{livrevgrfd} for
+details):
+\begin{itemize}
+ \item \verb|rho|: rest mass density $\varrho$
+ \item \verb|press|: pressure $p$
+ \item \verb|eps|: internal energy density $\epsilon$
+ \item \verb|vel[3]|: contravariant gas/fluid three velocity $v^i$ defined as
+  \begin{equation}
+      v^i = \frac{u^i}{\alpha u^0} + \frac{\beta^i}{\alpha}
+  \end{equation}
+  in terms of the four-velocity $u^\mu$, lapse $\alpha$, and shift vector
+  $\beta^i$.
+ \item \verb|Y_e|: electron fraction $Y_e$
+ \item \verb|temperature|: temperature $T$
+ \item \verb|entropy|: specific entropy per particle $s$
+ \item \verb|Bvec[3]|: contravariant magnetic field vector defined as
+  \begin{equation}
+      B^i = \frac{1}{\sqrt{4\pi}} n_{\nu} F^{*\nu i}
+  \end{equation}
+  in terms of the dual
+  $F^{*\mu\nu} = \frac{1}{2}\varepsilon^{\mu\nu\alpha\beta}F_{\alpha\beta}$
+  to the Faraday tensor and the unit normal of the foliation of spacetime
+  $n^\mu$.
+\end{itemize}
 
+HydroBase also sets up scheduling blocks that organize the main functions which modules of a
+hydrodynamics code may need. All of those scheduling blocks are optional, however if used,
+they might simplify existing codes and make them more interoperable. HydroBase itself does
+not schedule something inside most of the groups which it provides.
+
+Currently the scheduling blocks are:
+\begin{itemize}
+ \item Initializing the primitive variables
+ \item Converting primitive variables to conservative variables
+ \item Calculating the right hand side (RHS) in the method of lines (MoL)
+ \item Setting and updating an excision mask
+ \item Applying boundary conditions
+\end{itemize}
+
+In this way the initiation of the primitive variables, methods to recover the conservative
+variables, and basic atmosphere handling can be implemented in different thorns while allowing
+a central access point for analysis thorns.
+
 \subsection{Initial Data\pages{4 Josh/Bruno}}
 The Einstein Toolkit contains many modules used to generate initial data for 
 general relativistic simulations, including both vacuum and hydrodynamical



More information about the Commits mailing list