# Fluid Flow

Rolf H. Sabersky, Allen J. Acosta, Edward G. Hauptmann, E.M. Gates. Fluid Flow: A First Course in Fluid Mechanics (4th Edition). Prentice Hall. (August 22, 1998). ISBN-13: 978-0135763728

Open up this jupyter notebook in the working directory with all your files you want to work with, with the Sage Math kernel (with sagemanifolds installed): I did this with the command:
`~/Public/sage/sage -n jupyter`
so that we run the `sage` program/command in the directory with the files you need (such as `EuclideanManifold.py`; otherwise, jupyter will treat as the "tree" directory to be the current working directory and you won't be able to go "up" the directory tree (EY : 20160509 please tell me otherwise).

``````

In [6]:

``````
``````

In [10]:

R3eg = R3()
print R3eg.transit_sph_to_cart.display();
print R3eg.transit_cyl_to_cart.display();
R3eg.equip_metric()
print R3eg.g.display(R3eg.sph_ch.frame(),R3eg.sph_ch);
R3eg.g.display(R3eg.cyl_ch.frame(),R3eg.cyl_ch)

``````
``````

x = rh*cos(ph)*sin(th)
y = rh*sin(ph)*sin(th)
z = rh*cos(th)
x = r*cos(phi)
y = r*sin(phi)
z = zc
g = drh*drh + rh^2 dth*dth + rh^2*sin(th)^2 dph*dph

Out[10]:

g = dr*dr + r^2 dphi*dphi + dzc*dzc

``````
``````

In [11]:

to_orthonormal3sph, e3sph, Jacobians3sph = R3eg.make_orthon_frames(R3eg.sph_ch)
to_orthonormal3cyl, e3cyl, Jacobians3cyl = R3eg.make_orthon_frames(R3eg.cyl_ch)
print to_orthonormal3sph.display(R3eg.sph_ch.frame(),R3eg.sph_ch);
to_orthonormal3cyl.display(R3eg.cyl_ch.frame(),R3eg.cyl_ch)

``````
``````

d/drh*drh + 1/rh d/dth*dth + 1/(rh*sin(th)) d/dph*dph

Out[11]:

d/dr*dr + 1/r d/dphi*dphi + d/dzc*dzc

``````
``````

In [ ]:

``````