Difference between revisions of "User:Tohline/Cylindrical 3D"

From VistrailsWiki
Jump to navigation Jump to search
(→‎Eulerian Formulation: Work on next term in continuity equation)
(→‎Eulerian Formulation: Work on rho*z derivative)
Line 229: Line 229:
<math>~~ \rightarrow ~~</math>
<math>~~ \rightarrow ~~</math>
   </td>
   </td>
   <td align="left">
   <td align="left" bgcolor="lightblue">
<math>
<math>
\cancel{ \frac{\partial (\rho_i) }{\partial t} } + e^{im\varphi} \biggr[ \frac{\partial (\delta\rho) }{\partial t} \biggr]
\cancel{ \frac{\partial (\rho_i) }{\partial t} } + e^{im\varphi} \biggr[ \frac{\partial (\delta\rho) }{\partial t} \biggr]
Line 237: Line 237:
<math>~~~ \rightarrow ~~~</math>
<math>~~~ \rightarrow ~~~</math>
   </td>
   </td>
   <td align="left">
   <td align="left" bgcolor="lightgreen">
<math>
<math>
e^{im\varphi} \biggr[ \frac{\partial (\delta\rho) }{\partial t} \biggr]
e^{im\varphi} \biggr[ \frac{\partial (\delta\rho) }{\partial t} \biggr]
Line 304: Line 304:
<math>~~ \rightarrow ~~</math>
<math>~~ \rightarrow ~~</math>
   </td>
   </td>
   <td align="left">
   <td align="left" bgcolor="lightblue">
<math>
<math>
\frac{ \rho_i \dot\varpi_i}{\varpi}  + \rho_i \frac{\partial \dot\varpi_i}{\partial \varpi} + \dot\varpi_i \frac{ \partial \rho_i}{\partial \varpi}
\frac{ \rho_i \dot\varpi_i}{\varpi}  + \rho_i \frac{\partial \dot\varpi_i}{\partial \varpi} + \dot\varpi_i \frac{ \partial \rho_i}{\partial \varpi}
Line 348: Line 348:
<math>~~~~ \rightarrow ~~~~</math>
<math>~~~~ \rightarrow ~~~~</math>
   </td>
   </td>
   <td align="left">
   <td align="left" bgcolor="lightgreen">
<math>
<math>
+ e^{im\varphi}  \biggl\{ \frac{1}{\varpi} \frac{\partial}{\partial\varpi} \biggl[ \varpi \rho_i (\delta \dot\varpi) \biggr] \biggr\}
+ e^{im\varphi}  \biggl\{ \frac{1}{\varpi} \frac{\partial}{\partial\varpi} \biggl[ \varpi \rho_i (\delta \dot\varpi) \biggr] \biggr\}
Line 401: Line 401:
   <td align="center">
   <td align="center">
&nbsp;
&nbsp;
  </td>
  <td align="center">
<math>~~ \rightarrow ~~</math>
  </td>
  <td align="left" bgcolor="lightblue">
<math>
im  e^{im\varphi} \biggl[ \rho_i ( \delta\dot\varphi) + \dot\varphi_i (\delta\rho) \biggr]
</math>
  </td>
  <td align="center" colspan="1">
<math>~~~ \rightarrow ~~~</math>
  </td>
  <td align="left" bgcolor="lightgreen">
<math>
im  e^{im\varphi} \biggl[ \rho_i ( \delta\dot\varphi) + \dot\varphi_i (\delta\rho) \biggr]
</math>
  </td>
</tr>
<tr>
  <td align="right">
<math>\frac{\partial}{\partial z} \biggl[ \rho \dot{z} \biggr]</math>
   </td>
   </td>
   <td align="center">
   <td align="center">
Line 407: Line 430:
   <td align="left">
   <td align="left">
<math>
<math>
im  e^{im\varphi} \biggl[ \rho_i ( \delta\dot\varphi) + \dot\varphi_i (\delta\rho) \biggr]
(\rho_i + e^{im\varphi} \delta\rho) \frac{\partial ( {\dot{z}_i} + e^{im\varphi} \delta\dot{z})}{\partial\varphi}
+ ( {\dot{z}_i} +e^{im\varphi}  \delta\dot{z}) \frac{\partial (\rho_i + e^{im\varphi} \delta\rho)}{\partial\varphi}  
</math>
  </td>
  <td align="center" colspan="2">
&nbsp;
  </td>
</tr>
 
<tr>
  <td align="center">
&nbsp;
  </td>
  <td align="center">
<math>~~ \rightarrow ~~</math>
  </td>
  <td align="left">
<math>
(\rho_i + e^{im\varphi} \delta\rho) \cancel{ \frac{\partial ( {\dot{z}_i} )}{\partial\varphi} }
+ im  e^{im\varphi} (\rho_i + e^{im\varphi} \cancel{ \delta\rho })( \delta\dot{z})
</math>
 
<math>
+ ( {\dot{z}_i} +e^{im\varphi}  \delta\dot{z}) \cancel{ \frac{\partial (\rho_i )}{\partial\varphi} }
+ im  e^{im\varphi} ( {\dot{z}_i} +e^{im\varphi}  \cancel{ \delta\dot{z} }) (\delta\rho)
</math>
  </td>
  <td align="center" colspan="2">
&nbsp;
  </td>
</tr>
 
<tr>
  <td align="center">
&nbsp;
  </td>
  <td align="center">
<math>~~ \rightarrow ~~</math>
  </td>
  <td align="left" bgcolor="lightblue">
<math>
im  e^{im\varphi} \biggl[ \rho_i ( \delta\dot{z}) + \dot{z}_i (\delta\rho) \biggr]
</math>
</math>
   </td>
   </td>
Line 415: Line 479:
   <td align="left">
   <td align="left">
<math>
<math>
im  e^{im\varphi} \biggl[ \rho_i ( \delta\dot\varphi) + \dot\varphi_i (\delta\rho) \biggr]
im  e^{im\varphi} \biggl[ \rho_i ( \delta\dot{z}) + \cancel{\dot{z}_i }(\delta\rho) \biggr]
</math>
  </td>
</tr>
 
<tr>
  <td align="center">
&nbsp;
  </td>
  <td align="center">
&nbsp;
  </td>
  <td align="left">
&nbsp;
  </td>
  <td align="center" colspan="1">
<math>~~~ \rightarrow ~~~</math>
  </td>
  <td align="left" bgcolor="lightgreen">
<math>
im  e^{im\varphi} \biggl[ \rho_i ( \delta\dot{z}) \biggr]
</math>
</math>
   </td>
   </td>

Revision as of 00:08, 17 March 2013

Equations Cast in Cylindrical Coordinates

Spatial Operators in Cylindrical Coordinates

<math> \nabla f </math>

=

<math> {\hat{e}}_\varpi \biggl[ \frac{\partial f}{\partial\varpi} \biggr] + {\hat{e}}_\varphi {\biggl[ \frac{1}{\varpi} \frac{\partial f}{\partial\varphi} \biggr]} + {\hat{e}}_z \biggl[ \frac{\partial f}{\partial z} \biggr] ; </math>

<math> \nabla^2 f </math>

=

<math> \frac{1}{\varpi} \frac{\partial }{\partial\varpi} \biggl[ \varpi \frac{\partial f}{\partial\varpi} \biggr] + {\frac{1}{\varpi^2} \frac{\partial^2 f}{\partial\varphi^2}} + \frac{\partial^2 f}{\partial z^2} ; </math>

<math> (\vec{v}\cdot\nabla)f </math>

=

<math> \biggl[ v_\varpi \frac{\partial f}{\partial\varpi} \biggr] + {\biggl[ \frac{v_\varphi}{\varpi} \frac{\partial f}{\partial\varphi} \biggr]} + \biggl[ v_z \frac{\partial f}{\partial z} \biggr] ; </math>

<math> \nabla \cdot \vec{F} </math>

=

<math> \frac{1}{\varpi} \frac{\partial (\varpi F_\varpi)}{\partial\varpi} + {\frac{1}{\varpi} \frac{\partial F_\varphi}{\partial\varphi}} + \frac{\partial F_z}{\partial z} ; </math>

Vector Time-Derivatives in Cylindrical Coordinates

<math> \frac{d}{dt}\vec{F} </math>

=

<math> {\hat{e}}_\varpi \frac{dF_\varpi}{dt} + F_\varpi \frac{d{\hat{e}}_\varpi}{dt} + {\hat{e}}_\varphi \frac{dF_\varphi}{dt} + F_\varphi \frac{d{\hat{e}}_\varphi}{dt} + {\hat{e}}_z \frac{dF_z}{dt} + F_z \frac{d{\hat{e}}_z}{dt} </math>

 

=

<math> {\hat{e}}_\varpi \biggl[ \frac{dF_\varpi}{dt} - F_\varphi \dot\varphi \biggr] + {\hat{e}}_\varphi \biggl[ \frac{dF_\varphi}{dt} + F_\varpi \dot\varphi \biggr] + {\hat{e}}_z \frac{dF_z}{dt} ; </math>

<math> \vec{v} = \frac{d\vec{x}}{dt} = \frac{d}{dt}\biggl[ \hat{e}_\varpi \varpi + \hat{e}_z z \biggr] </math>

=

<math> {\hat{e}}_\varpi \biggl[ \dot\varpi \biggr] + {\hat{e}}_\varphi \biggl[ \varpi \dot\varphi \biggr] + {\hat{e}}_z \biggl[ \dot{z} \biggr] . </math>

Governing Equations

Introducing the above expressions into the principal governing equations gives,

Equation of Continuity

<math>\frac{d\rho}{dt} + \frac{\rho}{\varpi} \frac{\partial}{\partial\varpi} \biggl[ \varpi \dot\varpi \biggr] + \frac{1}{\varpi} \frac{\partial}{\partial \varphi} \biggl[ \varpi \dot\varphi \biggr] + \rho \frac{\partial}{\partial z} \biggl[ \dot{z} \biggr] = 0 </math>


Euler Equation

<math> {\hat{e}}_\varpi \biggl[ \frac{d \dot\varpi}{dt} - \varpi {\dot\varphi}^2 \biggr] + {\hat{e}}_\varphi \biggl[ \frac{d(\varpi\dot\varphi)}{dt} + \dot\varpi \dot\varphi \biggr] + {\hat{e}}_z \biggl[ \frac{d \dot{z}}{dt} \biggr] = - {\hat{e}}_\varpi \biggl[ \frac{1}{\rho}\frac{\partial P}{\partial\varpi} + \frac{\partial \Phi}{\partial\varpi}\biggr] - {\hat{e}}_\varphi \frac{1}{\varpi} \biggl[ \frac{1}{\rho}\frac{\partial P}{\partial \varphi} + \frac{\partial \Phi}{\partial \varphi} \biggr] - {\hat{e}}_z \biggl[ \frac{1}{\rho}\frac{\partial P}{\partial z} + \frac{\partial \Phi}{\partial z} \biggr] </math>


Adiabatic Form of the
First Law of Thermodynamics

<math>~\frac{d\epsilon}{dt} + P \frac{d}{dt} \biggl(\frac{1}{\rho}\biggr) = 0</math>


Poisson Equation

<math> \frac{1}{\varpi} \frac{\partial }{\partial\varpi} \biggl[ \varpi \frac{\partial \Phi}{\partial\varpi} \biggr] + \frac{1}{\varpi^2} \frac{\partial^2 \Phi}{\partial \varphi^2} + \frac{\partial^2 \Phi}{\partial z^2} = 4\pi G \rho . </math>

Eulerian Formulation

Each of the above simplified governing equations has been written in terms of Lagrangian time derivatives. An Eulerian formulation of each equation can be obtained by replacing each Lagrangian time derivative by its Eulerian counterpart. Specifically, for any scalar function, <math>f</math>,


<math> \frac{df}{dt} \rightarrow \frac{\partial f}{\partial t} + (\vec{v}\cdot \nabla)f = \frac{\partial f}{\partial t} + \biggl[ \dot\varpi \frac{\partial f}{\partial\varpi} \biggr] + \biggl[ \dot\varphi \frac{\partial f}{\partial\varphi} \biggr] + \biggl[ \dot{z} \frac{\partial f}{\partial z} \biggr] . </math>

Hence,

Equation of Continuity

<math> \frac{\partial\rho}{\partial t} + \biggl[ \dot\varpi \frac{\partial \rho}{\partial\varpi} \biggr] + \frac{\rho}{\varpi} \frac{\partial}{\partial\varpi} \biggl[ \varpi \dot\varpi \biggr] + \biggl[ \dot\varphi \frac{\partial \rho}{\partial\varphi} \biggr] + \frac{1}{\varpi} \frac{\partial}{\partial \varphi} \biggl[ \varpi \dot\varphi \biggr] + \biggl[ \dot{z} \frac{\partial \rho}{\partial z} \biggr] + \rho \frac{\partial}{\partial z} \biggl[ \dot{z} \biggr] = 0 </math>

<math> \Rightarrow ~~~ \frac{\partial\rho}{\partial t} + \frac{1}{\varpi} \frac{\partial}{\partial\varpi} \biggl[ \rho \varpi \dot\varpi \biggr] + \frac{1}{\varpi} \frac{\partial}{\partial \varphi} \biggl[ \rho \varpi \dot\varphi \biggr] + \frac{\partial}{\partial z} \biggl[ \rho \dot{z} \biggr] = 0 </math>

Linearize each term of the Continuity Equation assuming ...

<math> Q(\varpi, \phi, z, t) = [q_i(\varpi, z) + \delta q(\varpi, z, t) e^{i m \varphi}] ~~~ \mathrm{and} ~~~ \delta q/q_i \ll 1 </math>

<math> \mathrm{and} ~~~ \dot\varpi_i = \dot z_i = 0 </math>

<math>\frac{\partial\rho}{\partial t}</math>

<math>~~ \rightarrow ~~</math>

<math> \cancel{ \frac{\partial (\rho_i) }{\partial t} } + e^{im\varphi} \biggr[ \frac{\partial (\delta\rho) }{\partial t} \biggr] </math>

<math>~~~ \rightarrow ~~~</math>

<math> e^{im\varphi} \biggr[ \frac{\partial (\delta\rho) }{\partial t} \biggr] </math>

<math>\frac{1}{\varpi} \frac{\partial}{\partial\varpi} \biggl[ \rho \varpi \dot\varpi \biggr] = \frac{\rho \dot\varpi}{\varpi} + \rho\frac{\partial \dot\varpi}{\partial\varpi} + \dot\varpi \frac{\partial \rho}{\partial\varpi} </math>

<math>~~ \rightarrow ~~</math>

<math> \frac{ (\rho_i + e^{im\varphi} \delta\rho) ( {\dot\varpi_i} + e^{im\varphi} \delta\dot\varpi)}{\varpi} </math>

<math> + (\rho_i + e^{im\varphi} \delta\rho) \frac{\partial ( {\dot\varpi_i} + e^{im\varphi} \delta\dot\varpi)}{\partial\varpi} </math>

<math> + ( {\dot\varpi_i} + e^{im\varphi} \delta\dot\varpi) \frac{\partial (\rho_i + e^{im\varphi} \delta\rho)}{\partial\varpi} </math>

 

 

<math>~~ \rightarrow ~~</math>

<math> \frac{ \rho_i \dot\varpi_i}{\varpi} + e^{im\varphi} \biggl[ \frac{ \rho_i }{\varpi} ( \delta\dot\varpi ) + \frac{ \dot\varpi_i }{\varpi} ( \delta\rho ) \biggr] + e^{2im\varphi} \biggl[ \cancel{ \frac{ (\delta\rho) ( \delta\dot\varpi)}{\varpi} } \biggr] </math>

<math> + (\rho_i + e^{im\varphi} \delta\rho) \frac{\partial {\dot\varpi_i} }{\partial\varpi} + e^{im\varphi} \biggl[ (\rho_i + e^{im\varphi} \cancel{\delta\rho}) \frac{\partial ( \delta\dot\varpi)}{\partial\varpi} \biggr] </math>

<math> + ( {\dot\varpi_i} + e^{im\varphi} \delta\dot\varpi) \frac{\partial \rho_i }{\partial\varpi} + e^{im\varphi}\biggl[ ( {\dot\varpi_i} + e^{im\varphi} \cancel{\delta\dot\varpi}) \frac{\partial (\delta\rho)}{\partial\varpi} \biggr] </math>

 

 

<math>~~ \rightarrow ~~</math>

<math> \frac{ \rho_i \dot\varpi_i}{\varpi} + \rho_i \frac{\partial \dot\varpi_i}{\partial \varpi} + \dot\varpi_i \frac{ \partial \rho_i}{\partial \varpi} </math>

<math> + e^{im\varphi} \biggl[ \frac{ \rho_i }{\varpi} ( \delta\dot\varpi ) + \frac{ \dot\varpi_i }{\varpi} ( \delta\rho ) + (\delta\rho) \frac{\partial {\dot\varpi_i} }{\partial\varpi} </math>

<math> + (\rho_i ) \frac{\partial ( \delta\dot\varpi)}{\partial\varpi} + ( \delta\dot\varpi) \frac{\partial \rho_i }{\partial\varpi} + ( {\dot\varpi_i} ) \frac{\partial (\delta\rho)}{\partial\varpi} \biggr] </math>

<math>~~~~ \rightarrow ~~~~</math>

<math> \cancel{ \frac{ \rho_i \dot\varpi_i}{\varpi} } + \cancel{ \rho_i \frac{\partial \dot\varpi_i}{\partial \varpi} } + \cancel{ \dot\varpi_i \frac{ \partial \rho_i}{\partial \varpi} } </math>

<math> + e^{im\varphi} \biggl[ \frac{ \rho_i }{\varpi} ( \delta\dot\varpi ) + \cancel{ \frac{ \dot\varpi_i }{\varpi} ( \delta\rho ) } + \cancel{ (\delta\rho) \frac{\partial {\dot\varpi_i} }{\partial\varpi} } </math>

<math> + (\rho_i ) \frac{\partial ( \delta\dot\varpi)}{\partial\varpi} + ( \delta\dot\varpi) \frac{\partial \rho_i }{\partial\varpi} + \cancel{ ( {\dot\varpi_i} ) \frac{\partial (\delta\rho)}{\partial\varpi} } \biggr] </math>

 

<math>~~~~ \rightarrow ~~~~</math>

<math> + e^{im\varphi} \biggl\{ \frac{1}{\varpi} \frac{\partial}{\partial\varpi} \biggl[ \varpi \rho_i (\delta \dot\varpi) \biggr] \biggr\} </math>

<math>\frac{1}{\varpi} \frac{\partial}{\partial\varphi} \biggl[ \rho \varpi \dot\varphi \biggr] = \frac{\rho}{\varpi} \frac{\partial (\varpi \dot\varphi) }{\partial\varphi} + \dot\varphi \frac{\partial \rho}{\partial\varphi} </math>

<math>~~ \rightarrow ~~</math>

<math> (\rho_i + e^{im\varphi} \delta\rho) \frac{\partial ( {\dot\varphi_i} + e^{im\varphi} \delta\dot\varphi)}{\partial\varphi} + ( {\dot\varphi_i} +e^{im\varphi} \delta\dot\varphi) \frac{\partial (\rho_i + e^{im\varphi} \delta\rho)}{\partial\varphi} </math>

 

 

<math>~~ \rightarrow ~~</math>

<math> (\rho_i + e^{im\varphi} \delta\rho) \cancel{ \frac{\partial ( {\dot\varphi_i} )}{\partial\varphi} } + im e^{im\varphi} (\rho_i + e^{im\varphi} \cancel{ \delta\rho })( \delta\dot\varphi) </math>

<math> + ( {\dot\varphi_i} +e^{im\varphi} \delta\dot\varphi) \cancel{ \frac{\partial (\rho_i )}{\partial\varphi} } + im e^{im\varphi} ( {\dot\varphi_i} +e^{im\varphi} \cancel{ \delta\dot\varphi }) (\delta\rho) </math>

 

 

<math>~~ \rightarrow ~~</math>

<math> im e^{im\varphi} \biggl[ \rho_i ( \delta\dot\varphi) + \dot\varphi_i (\delta\rho) \biggr] </math>

<math>~~~ \rightarrow ~~~</math>

<math> im e^{im\varphi} \biggl[ \rho_i ( \delta\dot\varphi) + \dot\varphi_i (\delta\rho) \biggr] </math>

<math>\frac{\partial}{\partial z} \biggl[ \rho \dot{z} \biggr]</math>

<math>~~ \rightarrow ~~</math>

<math> (\rho_i + e^{im\varphi} \delta\rho) \frac{\partial ( {\dot{z}_i} + e^{im\varphi} \delta\dot{z})}{\partial\varphi} + ( {\dot{z}_i} +e^{im\varphi} \delta\dot{z}) \frac{\partial (\rho_i + e^{im\varphi} \delta\rho)}{\partial\varphi} </math>

 

 

<math>~~ \rightarrow ~~</math>

<math> (\rho_i + e^{im\varphi} \delta\rho) \cancel{ \frac{\partial ( {\dot{z}_i} )}{\partial\varphi} } + im e^{im\varphi} (\rho_i + e^{im\varphi} \cancel{ \delta\rho })( \delta\dot{z}) </math>

<math> + ( {\dot{z}_i} +e^{im\varphi} \delta\dot{z}) \cancel{ \frac{\partial (\rho_i )}{\partial\varphi} } + im e^{im\varphi} ( {\dot{z}_i} +e^{im\varphi} \cancel{ \delta\dot{z} }) (\delta\rho) </math>

 

 

<math>~~ \rightarrow ~~</math>

<math> im e^{im\varphi} \biggl[ \rho_i ( \delta\dot{z}) + \dot{z}_i (\delta\rho) \biggr] </math>

<math>~~~ \rightarrow ~~~</math>

<math> im e^{im\varphi} \biggl[ \rho_i ( \delta\dot{z}) + \cancel{\dot{z}_i }(\delta\rho) \biggr] </math>

 

 

 

<math>~~~ \rightarrow ~~~</math>

<math> im e^{im\varphi} \biggl[ \rho_i ( \delta\dot{z}) \biggr] </math>


<math>\varpi</math> Component of Euler Equation

<math> \frac{d \dot\varpi}{dt} - \varpi {\dot\varphi}^2 = - \frac{1}{\rho}\frac{\partial P}{\partial\varpi} - \frac{\partial \Phi}{\partial\varpi} </math>

<math> \rightarrow ~~~ \frac{\partial \dot\varpi}{\partial t} + \biggl[ \dot\varpi \frac{\partial \dot\varpi}{\partial\varpi} \biggr] + \biggl[ \dot\varphi \frac{\partial \dot\varpi}{\partial\varphi} \biggr] + \biggl[ \dot{z} \frac{\partial \dot\varpi}{\partial z} \biggr] - \varpi {\dot\varphi}^2 = - \frac{1}{\rho}\frac{\partial P}{\partial\varpi} - \frac{\partial \Phi}{\partial\varpi} </math>


<math>\varphi</math> Component of Euler Equation

<math> \frac{d (\varpi\dot\varphi) }{dt} + \dot\varpi \dot\varphi = - \frac{1}{\varpi} \biggl[ \frac{1}{\rho}\frac{\partial P}{\partial \varphi} + \frac{\partial \Phi}{\partial \varphi} \biggr] </math>

<math> \rightarrow ~~~ \frac{\partial (\varpi\dot\varphi)}{\partial t} + \biggl[ \dot\varpi \frac{\partial (\varpi\dot\varphi)}{\partial\varpi} \biggr] + \biggl[ \dot\varphi \frac{\partial (\varpi\dot\varphi)}{\partial\varphi} \biggr] + \biggl[ \dot{z} \frac{\partial (\varpi\dot\varphi)}{\partial z} \biggr] + \dot\varpi \dot\varphi = - \frac{1}{\varpi} \biggl[ \frac{1}{\rho}\frac{\partial P}{\partial \varphi} + \frac{\partial \Phi}{\partial \varphi} \biggr] </math>


<math>z</math> Component of Euler Equation

<math> \frac{d \dot{z} }{dt} = - \frac{1}{\rho}\frac{\partial P}{\partial z} - \frac{\partial \Phi}{\partial z} </math>

<math> \rightarrow ~~~ \frac{\partial \dot{z}}{\partial t} + \biggl[ \dot\varpi \frac{\partial \dot{z}}{\partial\varpi} \biggr] + \biggl[ \dot\varphi \frac{\partial \dot{z}}{\partial\varphi} \biggr] +\biggl[ \dot{z} \frac{\partial \dot{z}}{\partial z} \biggr] = - \frac{1}{\rho}\frac{\partial P}{\partial z} - \frac{\partial \Phi}{\partial z} </math>


See Also

Whitworth's (1981) Isothermal Free-Energy Surface

© 2014 - 2021 by Joel E. Tohline
|   H_Book Home   |   YouTube   |
Appendices: | Equations | Variables | References | Ramblings | Images | myphys.lsu | ADS |
Recommended citation:   Tohline, Joel E. (2021), The Structure, Stability, & Dynamics of Self-Gravitating Fluids, a (MediaWiki-based) Vistrails.org publication, https://www.vistrails.org/index.php/User:Tohline/citation