# Example: Diagram for the Bernoulli Principle

Published 2018-03-20 | Author: Roland Puntaier

This diagram is for the Bernoulli Principle in physics.

See:

Do you have a question regarding this example, TikZ or LaTeX in general? Just ask in the LaTeX Forum.
Oder frag auf Deutsch auf TeXwelt.de. En français: TeXnique.fr.

% Diagram for the Bernoulli Principle
% Author: Roland Puntaier
\documentclass[tikz,border=10pt]{standalone}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}
\def\XSTART{0}
\def\YSTART{3}
\def\YDIAONE{2.5}
\def\YDIATWO{2}
\def\YCURVE{2}
\def\XCURVE{2}
\def\XEND{15}
\def\XONESTART{2}
\def\XONEDELTA{2}
\def\DD{0.5}

\def\YEND{\YSTART+\YCURVE+\YDIATWO}
\def\XCURVESTART{\XEND/2-\XSTART/2-\XCURVE/2}
\def\XCURVESTARTUP{\XEND/2-\XSTART/2-\XCURVE}
\def\XCURVEEND{\XEND/2-\XSTART/2 + \XCURVE/2}
\def\XONEEND{\XONESTART+\XONEDELTA}
\def\XTWOSTART{\XCURVEEND+\XONESTART}
\def\XTWODELTA{\XONEDELTA*\YDIAONE*\YDIAONE/\YDIATWO/\YDIATWO}
\def\XTWOEND{\XTWOSTART+\XTWODELTA}
\def\YTWOMIDDLE{\YSTART+\YCURVE+\YDIATWO/2}
\def\YONEMIDDLE{\YSTART+\YDIAONE/2}
\def\GROUND{\YSTART/4}

\tikzset{
partial ellipse/.style args={#1:#2:#3}{
insert path={+ (#1:#3) arc (#1:#2:#3)}
},
dimen/.style={<->,>=latex,thin,
every rectangle node/.style={fill=white,midway,font=\sffamily}},
}

\draw (\XSTART,\YSTART) -- (\XCURVESTART,\YSTART)
to[out=0, in=180, looseness=0.75]
(\XCURVEEND,{\YSTART+\YCURVE}) -- (\XEND,{\YSTART+\YCURVE});
\draw (\XSTART,{\YSTART+\YDIAONE}) -- (\XCURVESTARTUP,{\YSTART+\YDIAONE})
to[out=0, in=180, looseness=0.75] (\XCURVEEND,\YEND) -- (\XEND,\YEND);

\draw [fill=gray] (\XONESTART,\YSTART) coordinate (BA)
rectangle (\XONEEND,{\YSTART+\YDIAONE}) coordinate (BB);
\draw [fill=lightgray](\XONESTART,\YONEMIDDLE) node [below] {$A_1$}
ellipse ({\YDIAONE/6} and {\YDIAONE/2});
\draw [fill=gray,dashed](\XONEEND,\YONEMIDDLE)
ellipse ({\YDIAONE/6} and {\YDIAONE/2});
\draw (\XONEEND,\YONEMIDDLE)
[partial ellipse=-90:90:{\YDIAONE/6} and {\YDIAONE/2}];

\draw [fill=gray] (\XTWOSTART,{\YSTART+\YCURVE}) coordinate (CA)
rectangle (\XTWOEND,{\YSTART+\YCURVE+\YDIATWO}) coordinate (CB);
\draw [fill=lightgray] (\XTWOSTART,\YTWOMIDDLE) node [below] {$A_2$}
ellipse ({\YDIATWO/6} and {\YDIATWO/2});
\draw [fill=gray,dashed](\XTWOEND,\YTWOMIDDLE)
ellipse ({\YDIATWO/6} and {\YDIATWO/2});
\draw (\XTWOEND,{\YSTART+\YCURVE+\YDIATWO/2})
[partial ellipse=-90:90:{\YDIATWO/6} and {\YDIATWO/2}];

\draw [fill=gray] (0,0) rectangle  (\XEND,\GROUND);

\draw ($(BA)+(0,\YDIAONE)$) -- ++(0,\DD) coordinate (D1) -- +(0,5pt);
\draw (BB) -- ++(0,\DD) coordinate (D2) -- +(0,5pt);
\draw [dimen] (D1) -- (D2) node {$v_1dt$};

\draw ($(BA)!0.5!(BB)$) -- ++(5pt,0) coordinate (E) -- +(5pt,0);
\draw [dimen] let \p{E}=(E) in (\x{E},\GROUND) -- (E) node {$h_1$};
\draw [style=->](\XSTART,\YONEMIDDLE) -- (\XONESTART,\YONEMIDDLE)
node [midway,above] {$p_1$};

\draw ($(CA)+(0,\YDIATWO)$) -- ++(0,\DD) coordinate (D1) -- +(0,5pt);
\draw (CB) -- ++(0,\DD) coordinate (D2) -- +(0,5pt);
\draw [dimen] (D1) -- (D2) node {$v_2dt$};

\draw ($(CA)!0.5!(CB)$) -- ++(5pt,0) coordinate (D) -- +(5pt,0);
\draw [dimen] let \p{D}=(D) in (\x{D},\GROUND) -- (D) node {$h_2$};
\draw [style=->](\XCURVEEND,\YTWOMIDDLE) -- (\XTWOSTART,\YTWOMIDDLE)
node [midway,above] {$p_2$};
\end{tikzpicture}
\end{document}