texlive[60606] Master/texmf-dist: chemplants (25sep21)

commits+karl at tug.org commits+karl at tug.org
Sat Sep 25 23:24:40 CEST 2021


Revision: 60606
          http://tug.org/svn/texlive?view=revision&revision=60606
Author:   karl
Date:     2021-09-25 23:24:39 +0200 (Sat, 25 Sep 2021)
Log Message:
-----------
chemplants (25sep21)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/chemplants/README.md
    trunk/Master/texmf-dist/doc/latex/chemplants/chemplants-changes.pdf
    trunk/Master/texmf-dist/doc/latex/chemplants/chemplants-changes.tex
    trunk/Master/texmf-dist/doc/latex/chemplants/chemplants-doc.pdf
    trunk/Master/texmf-dist/doc/latex/chemplants/chemplants-doc.tex
    trunk/Master/texmf-dist/tex/latex/chemplants/chemplants.sty

Modified: trunk/Master/texmf-dist/doc/latex/chemplants/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/chemplants/README.md	2021-09-25 17:11:59 UTC (rev 60605)
+++ trunk/Master/texmf-dist/doc/latex/chemplants/README.md	2021-09-25 21:24:39 UTC (rev 60606)
@@ -1,10 +1,10 @@
 # The chemplants package
 
-Copyright 2018-2019 Elia Arnese Feffin.
+Copyright 2018-2021 Elia Arnese Feffin.
 
 Contact: <elia24913 at me.com>.
 
-Current version: 0.9.8 - 2019/11/19.
+Current version: 0.9.9 - 2019/09/25.
 
 ## Abstract
 
@@ -27,5 +27,5 @@
 
 The documentation of the package can be found in `chemplants-doc.pdf`, provided
 together with its source code. Changes to the package facilities are collected
-in `chemplants-changes.pdf`, which is provided together with its source code too.
+in `chemplants-changes.pdf`, which is provided together with its source code.
 However, notice that versions prior to 0.9.8 were never officially published.

Modified: trunk/Master/texmf-dist/doc/latex/chemplants/chemplants-changes.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/chemplants/chemplants-changes.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/chemplants/chemplants-changes.tex	2021-09-25 17:11:59 UTC (rev 60605)
+++ trunk/Master/texmf-dist/doc/latex/chemplants/chemplants-changes.tex	2021-09-25 21:24:39 UTC (rev 60606)
@@ -1,6 +1,6 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %% chemplants-changes.tex
-%% Copyright 2018-2019 Elia Arnese Feffin
+%% Copyright 2018-2021 Elia Arnese Feffin
 %
 % This work may be distributed and/or modified under the
 % conditions of the LaTeX Project Public License, either version 1.3c
@@ -8,7 +8,7 @@
 % The latest version of this license is in
 % 	http://www.latex-project.org/lppl.txt
 % and version 1.3c or later is part of all distributions of LaTeX
-% version 2005/12/01 or later.
+% version 2008/05/04 or later.
 %
 % This work has the LPPL maintenance status "maintained".
 % 
@@ -156,7 +156,7 @@
 \subsection*{Version 0.9.3 -- 2019/02/26}
 
 \begin{itemize}
-	\item Review of the \chpp{cyclone} node names
+	\item Review of the \chpp{cyclone} node names.
 	\item New units: \chpp{fluidized bed reactor}, \chpp{steam trap},
 		\chpp{scrubber}, \chpp{stratifier} and \chpp{settler}.
 \end{itemize}
@@ -175,7 +175,7 @@
 \begin{itemize}
 	\item Review of the \chpn{kettle boiler} node names.
 	\item Review of the code to draw packings: no more sharp knees protruding
-		around units
+		around units.
 	\item Added a \TikZ\ library to access to the Hobby's algorithm.
 	\item New units: \chpp{air heat exchanger},
 		\chpp{tube bundle heat exchanger}, \chpp{plates heat exchanger},
@@ -210,10 +210,10 @@
 	\item Review of the \chps{signal} style: the default thickness is now
 		\verb|very thin| and the algorithm to place markings has changed.
 	\item New stream style: \chps{secondary stream} (provided of thickness
-		custumisation command).
+		customisation command).
 	\item Review of \chpp{valve} and \chpp{valve triple}: these units now accept
 		a new argument for \chps{secondary streams} thickness.
-	\item Review of \chpp{actuator}: dimensione of this units are now doubled.
+	\item Review of \chpp{actuator}: dimensions of this units are now doubled.
 	\item New units: \chpp{valve quadruple}, \chpp{safety valve}.
 \end{itemize}
 
@@ -228,6 +228,28 @@
 		embedded into the source file of the documentation.
 \end{itemize}
 
+\subsection*{Version 0.9.9 -- 2021/02/25}
+
+\begin{itemize}
+	\item Added a \TikZ\ library to better manage arrows on curved and slanted
+		paths.
+	\item Liquid handling machines and gas handling machines have been divided
+		into different subsections.
+	\item The \chpp{lamination valve} has been moved among gas handling units.
+	\item New category of units: solid materials processing units.
+	\item Physical separators and thermal separators have been divided into
+		different subsections.
+	\item New units: \chpp{silos}, \chpp{spherical tank}, \chpp{drum},
+		\chpp{compressor}, \chpp{turbine}, \chpp{belt conveyor},
+		\chpp{screw conveyor}, \chpp{roller conveyor}, \chpp{bucket elevator},
+		\chpp{cylinder crusher},\\
+		\chpp{hammer crusher}, \chpp{mill}, \chpp{extruder},
+		\chpp{tube bundle heat exchanger var}, \chpp{tunnel furnace},
+		\chpp{rotary furnace}, \chpp{bag filter}, \chpp{filter press},
+		\chpp{rotary filter}, \chpp{deck screen}, \chpp{rotary screen} and
+		\chpp{check valve}.
+\end{itemize}
+
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 \end{document}										% Document End
\ No newline at end of file

Modified: trunk/Master/texmf-dist/doc/latex/chemplants/chemplants-doc.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/chemplants/chemplants-doc.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/chemplants/chemplants-doc.tex	2021-09-25 17:11:59 UTC (rev 60605)
+++ trunk/Master/texmf-dist/doc/latex/chemplants/chemplants-doc.tex	2021-09-25 21:24:39 UTC (rev 60606)
@@ -1,6 +1,6 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %% chemplants-doc.tex
-%% Copyright 2018-2019 Elia Arnese Feffin
+%% Copyright 2018-2021 Elia Arnese Feffin
 %
 % This work may be distributed and/or modified under the
 % conditions of the LaTeX Project Public License, either version 1.3c
@@ -8,7 +8,7 @@
 % The latest version of this license is in
 % 	http://www.latex-project.org/lppl.txt
 % and version 1.3c or later is part of all distributions of LaTeX
-% version 2005/12/01 or later.
+% version 2008/05/04 or later.
 %
 % This work has the LPPL maintenance status "maintained".
 % 
@@ -859,6 +859,7 @@
 scheme.
 
 \subsection{Fluids and Solids Storage}
+\label{subsec:storag}
 
 \subsubsection{Tank}
 
@@ -900,7 +901,7 @@
 \end{center}
 where the measure on the right indicates the distance from the middle of the tank
 to the point where the curvature begins. This point is identified by the
-\chpn{top right} node and by its analogs.
+\chpn{top right} node and by its analogous.
 
 The \chpp{tank} pic is generic and it is useful to represent process tanks.
 Storage tanks can be represented with the same pic, but there are also some
@@ -1039,6 +1040,42 @@
 the tank to the point where the outlet stream should be connected. This point is
 identified by the \chpn{bottom right} node and by its analogous node on the left.
 
+\subsubsection{Spherical Tank}
+
+A special kind of tank, quite used for gas storage, is shaped like a sphere. It
+is defined as a simple pic called \chpp{spherical tank}:
+\begin{chpcode}
+	\pic at (0,0) {spherical tank};
+\end{chpcode}
+and yields a circle, in which centre there is the anchor, supported by two stems:
+\begin{center}
+\begin{tikzpicture}
+	\pic at (-5,0) {spherical tank};
+	\pic at (0,0) {spherical tank};
+	\measure{(-1.5,-1.7)}{(1.5,-1.7)}{\SI{30}{\mm}}
+	\measure{(-1.7,1.4)}{(-1.7,-1.5)}{\SI{29}{\mm}}
+	\measure[above]{(-1.4,1.6)}{(1.4,1.6)}{\SI{28}{\mm}}
+	\measure[above]{(1.7,0)}{(1.7,-1.5)}{\SI{15}{\mm}}
+	\pic at (0,0) {anchor mark};
+	\pic (T) at (5,0) {spherical tank};
+	\pic at (T-anchor) {anchor mark};
+	\pic at (T-left) {node mark};
+	\pic at (T-bottom) {node mark};
+	\pic at (T-right) {node mark};
+	\pic at (T-top) {node mark};
+	\node[left] at (T-left) {\chpn{l}};
+	\node[below] at (T-bottom) {\chpn{b}};
+	\node[right] at (T-right) {\chpn{r}};
+	\node[above] at (T-top) {\chpn{t}};
+\end{tikzpicture}
+\end{center}
+where the measure on the bottom indicates the total width of the unit (the stands
+protrude by \SI{1}{\mm} each side of the circle), the measure on the right
+indicates the distance from the centre of the circle to its base, while the
+measure on the top indicates the diameter of the circle. Besides the
+\chpn{anchor} node, only \chpn{left}, \chpn{top}, \chpn{bottom} and \chpn{right}
+nodes are defined for this unit.
+
 \subsubsection{Bell GasHolder}
 
 Tanks introduced so far can be used to represent general systems to store either
@@ -1150,19 +1187,114 @@
 example, in a \chpn{dry gasholder} identified as \chpn{G} the node is
 \chpn{G-dome top}.
 
-\subsection{Fluid Handling}
+\subsubsection{Silos}
 
+Also considering solids, more precisely granula materials, some special storage
+unit exist. Among them, the silos is for sure the most iconic. It is defined as a
+simple pic calles \chpp{silos}:
+\begin{chpcode}
+	\pic at (0,0) {silos};
+\end{chpcode}
+and yields a thin vertical tank, in which centre there is the anchor, supported
+by two stems and with a sketch of the outlet hopper:
+\begin{center}
+\begin{tikzpicture}
+	\pic at (-3.6,0) {silos};
+	\pic at (0,0) {silos};
+	\measure{(-0.8,-2.2)}{(0.8,-2.2)}{\SI{16}{\mm}}
+	\measure{(-1.5,2)}{(-1.5,-2)}{\SI{40}{\mm}}
+	\measure{(-1,2)}{(-1,0)}{\SI{20}{\mm}}
+	\measure{(-1,0)}{(-1,-2)}{\SI{20}{\mm}}
+	\measure[above]{(-0.7,2.2)}{(0.7,2.2)}{\SI{14}{\mm}}
+	\measure[above]{(1.5,1.590)}{(1.5,0)}{\SI{15.9}{\mm}}
+	\measure[above]{(1.5,0)}{(1.5,-1.8)}{\SI{18}{\mm}}
+	\measure[above]{(1,0)}{(1,-0.8)}{\SI{8}{\mm}}
+	\pic at (0,0) {anchor mark};
+	\pic (T) at (3.6,0) {silos};
+	\pic at (T-anchor) {anchor mark};
+	\pic at (T-left) {node mark};
+	\pic at (T-bottom left) {node mark};
+	\pic at (T-outlet) {node mark};
+	\pic at (T-bottom right) {node mark};
+	\pic at (T-right) {node mark};
+	\pic at (T-top right) {node mark};
+	\pic at (T-top) {node mark};
+	\pic at (T-top left) {node mark};
+	\node[left] at (T-left) {\chpn{l}};
+	\node[left] at (T-bottom left) {\chpn{bl}};
+	\node[below] at (T-outlet) {\chpn{o}};
+	\node[right] at (T-bottom right) {\chpn{br}};
+	\node[right] at (T-right) {\chpn{r}};
+	\node[right] at (T-top right) {\chpn{tr}};
+	\node[above] at (T-top) {\chpn{t}};
+	\node[left] at (T-top left) {\chpn{tl}};
+\end{tikzpicture}
+\end{center}
+
+Measures concerning this unit are quite complex. The unit has a total width of
+\SI{16}{\mm} and a total height of \SI{40}{\mm}. The \chpn{anchor} node is placed
+halfway the overall height. Since the stands of the units protrudes by
+\SI{1}{\mm} on each side, the silos body has a width of \SI{14}{\mm}. Moving to
+nodes, the \chpn{top right} node and its analogous are placed \SI{15.9}{\mm}
+above the anchor and the \chpn{bottom right} node and its analogous are placed
+\SI{8}{\mm} below the anchor.
+
+No \chpn{bottom} node is defined for the \chpp{silos}, but a special node exists:
+the outlet stream have to be connected to the end of the hopper on the bottom
+of the unit. This special node is called \chpn{outlet} and it is marked in the
+above drawing using the abbreviated name \chpn{o}. This node is placed
+\SI{18}{\mm} below the anchor.
+
+\subsubsection{Drum}
+
+The last storage unit defined by \chemplants\ is a small horizontal tank. It can
+be used to indicate, in general, a surge tank, but its sole purpose is indeed to
+mark reflux drums of distillation columns. It is defined as a simple pic called
+\chpp{drum}:
+\begin{chpcode}
+	\pic at (0,0) {drum};
+\end{chpcode}
+and yields a horizontal tank anchored in its centre:
+\begin{center}
+\begin{tikzpicture}
+	\pic at (-3,0) {drum};
+	\pic at (0,0) {drum};
+	\measure{(-0.5,-0.5)}{(0.5,-0.5)}{\SI{10}{\mm}}
+	\measure{(-0.7,0.3)}{(-0.7,-0.3)}{\SI{6}{\mm}}
+	\measure[above]{(0.324,0.5)}{(0,0.5)}{\SI{3.24}{\mm}}
+	\pic at (0,0) {anchor mark};
+	\pic (T) at (3,0) {drum};
+	\pic at (T-anchor) {anchor mark};
+	\pic at (T-left) {node mark};
+	\pic at (T-bottom left) {node mark};
+	\pic at (T-bottom) {node mark};
+	\pic at (T-bottom right) {node mark};
+	\pic at (T-right) {node mark};
+	\pic at (T-top right) {node mark};
+	\pic at (T-top) {node mark};
+	\pic at (T-top left) {node mark};
+	\node[left] at (T-left) {\chpn{l}};
+	\node[below left] at (T-bottom left) {\chpn{bl}};
+	\node[below] at (T-bottom) {\chpn{b}};
+	\node[below right] at (T-bottom right) {\chpn{br}};
+	\node[right] at (T-right) {\chpn{r}};
+	\node[above right] at (T-top right) {\chpn{tr}};
+	\node[above] at (T-top) {\chpn{t}};
+	\node[above left] at (T-top left) {\chpn{tl}};
+\end{tikzpicture}
+\end{center}
+where the measure on the top indicates the distance from the middle of the tank
+to the point where the curvature begins. This point is identified by the
+\chpn{top right} node and by its analogous.
+
+\subsection{Liquid Handling}
+
 Fluid handling devices are essential to chemical plants because it is always
 necessary to move a fluid, from one place to another against pressure drops
-generated by pipes or units.
+generated by pipes or units. Fluid handling units used in the chemical industry
+are basically classified considering the kind of fluid they can move, either a
+liquid or a gas. Liquid handling units are considered first.
 
-Fluid handling units used in the chemical industry are basically classified
-considering the kind of fluid they can move, either a liquid or a gas. On the
-basis of this classification, there is a main distinction between pumps for
-liquids and equipments to move gases. The latter are furthermore distinguished
-with respect to the pressure rise a unit can achieve: fans, blowers and
-compressors.
-
 \subsubsection{Centrifugal Pump}
 
 A pump is a mechanical machine useful to move a liquid and to increase its
@@ -1322,12 +1454,18 @@
 (placed on its boundary) to its base, while the measure on the top indicates the
 length of the side side of the square.
 
-\subsubsection{Fan}
+\subsection{Gas Handling}
+\label{subsec:gashan}
 
 Liquid handling equipments are done, so the description can move to gas handling
 units. As told before, these are mainly distinguished on the basis of the
-pressure rise they can achieve, but also on their working principle.
+pressure rise they can achieve, but also on their working principle. Considering
+the pressure rise, there are: fans, blowers and compressors. Discussing gas
+handling units is also a good opportunity to introduce pressure reduction
+operations.
 
+\subsubsection{Fan}
+
 If it is simply required to move a gas, without a significant pressure rise, a
 fan or, at most, a blower, is enough. These two units are simple kinetic machines
 similar to a centrifugal pump and both of them are defined by \UNICHIM\ as a
@@ -1370,13 +1508,66 @@
 as \chpn{o} in the above representation. As for the centrifugal pump, the
 \chpn{anchor} node should be used to snap the inlet stream to the fan.
 
-\subsubsection{Centrifugal Compressor}
+\subsubsection{Compressor}
 
 When a gas needs a high pressure rise, there is no other way but using a
-compressor. The only kinetic machine useful to compress a gas that has a
-symbol defined by \chemplants\ is the centrifugal compressor. It is defined as a
-simple pic called \chpp{centrifugal compressor}:
+compressor. If one has the need to represent a generic compression operations
+rather than a specific compressor, a general symbol can be used. It is defined
+as a simple pic called \chpp{compressor}:
 \begin{chpcode}
+	\pic at (0,0) {compressor};
+\end{chpcode}
+and yields a cone frustum, in which middle there is the anchor:
+\begin{center}
+\begin{tikzpicture}
+	\pic at (-2.8,0) {compressor};
+	\pic at (0,0) {compressor};
+	\measure{(-0.4,-0.7)}{(0.4,-0.7)}{\SI{8}{\mm}}
+	\measure{(-0.6,0.5)}{(-0.6,-0.5)}{\SI{10}{\mm}}
+	\measure[above]{(0.6,0.2)}{(0.6,-0.2)}{\SI{4}{\mm}}
+	\pic at (0,0) {anchor mark};
+	\pic (C) at (2.8,0) {compressor};
+	\pic at (C-anchor) {anchor mark};
+	\pic at (C-left) {node mark};
+	\pic at (C-right) {node mark};
+	\pic at (C-inlet bottom) {node mark};
+	\pic at (C-outlet bottom) {node mark};
+	\pic at (C-outlet top) {node mark};
+	\pic at (C-inlet top) {node mark};
+	\node[left] at (C-left) {\chpn{l}};
+	\node[right] at (C-right) {\chpn{r}};
+	\node[below] at (C-inlet bottom) {\chpn{ib}};
+	\node[below] at (C-outlet bottom) {\chpn{ob}};
+	\node[above] at (C-outlet top) {\chpn{ot}};
+	\node[above] at (C-inlet top) {\chpn{it}};
+\end{tikzpicture}
+\end{center}
+where the measure on the right indicates the height of the smallar base of the
+cone frustum.
+
+Nodes require some clarifications. The shape of the \chpp{compressor} recalls a
+volume reduction, hence entering streams should be attached to the larger base of
+the unit, while leaving streams should be connected to the smaller one. Besides
+the usual \chpn{left} and \chpn{right} nodes, four special nodes are defined:
+\begin{itemize}
+	\item a node called \chpn{inlet bottom}, abbreviated in the picture above as
+		\chpn{ib};
+	\item a node called \chpn{outlet bottom}, abbreviated in the picture above as
+		\chpn{ob};
+	\item a node called \chpn{outlet top}, abbreviated in the picture above as
+		\chpn{ot};
+	\item a node called \chpn{inlet top}, abbreviated in the picture above as
+		\chpn{it}.
+\end{itemize}
+
+\subsubsection{Centrifugal Compressor}
+
+Besides the two ``generic'' units introduced above, \chemplants\ defines also
+more specific symbols to be used to represent particular compressors. The only
+kinetic machine useful to compress a gas that has a symbol defined by
+\chemplants\ is the centrifugal compressor. It is defined as a simple pic called
+\chpp{centrifugal compressor}:
+\begin{chpcode}
 	\pic at (0,0) {centrifugal compressor};
 \end{chpcode}
 and yields a cone frustum, in which middle there is the anchor, supported by a
@@ -1416,14 +1607,15 @@
 all of the other symbols defined as fluid handling units), its larger base has
 a height of \SI{8}{\mm} and the smaller one of \SI{4}{\mm}.
 
-Also nodes are not that easy to understand. As always, the \chpn{bottom} node is
-defined to labelling purposes. The \chpn{left} and \chpn{right} nodes should
-not be used to connect streams, but can be exploited to connect control
-instrumentation or to represent the shaft of the compressor. Streams should be
-connected on the sides of the cone frustum: more precisely the inlet stream has
-to enter the unit on the side of the larger base and the outlet one has to leave
-the unit on the side of the smaller one, both of them vertically, in the
-direction perpendicular to the axis of the cone frustum. To this aim, four
+Nodes have to be interpreted similarly to the one of the \chpp{compressor}. As
+always, the \chpn{bottom} node is defined to labelling purposes. This time, the
+\chpn{left} and \chpn{right} nodes should not be used to connect streams, but can
+be exploited to connect control instrumentation or to represent the shaft of the
+compressor. Given the operations principle of a centrifugal compressor, streams
+should be connected on the sides of the cone frustum: more precisely the inlet
+stream has to enter the unit on the side of the larger base and the outlet one
+has to leave the unit on the side of the smaller one, both of them vertically, in
+the direction perpendicular to the axis of the cone frustum. To this aim, four
 special nodes are defined:
 \begin{itemize}
 	\item a node called \chpn{inlet bottom}, abbreviated in the picture above as
@@ -1435,9 +1627,9 @@
 	\item a node called \chpn{inlet top}, abbreviated in the picture above as
 		\chpn{it}.
 \end{itemize}
-(At most, it is possible to tolerate the inlet
-placed on the left side of the unit, on the \chpn{left} node, but the outlet has
-to be compulsorily on the side of the smaller base.)
+(At most, it is possible to tolerate the inlet placed on the left side of the
+unit, on the \chpn{left} node, but the outlet has to be compulsorily on the side
+of the smaller base.)
 
 \subsubsection{Rotary Compressor}
 
@@ -1681,15 +1873,109 @@
 outlets to represent cooling operations applied to the fluid and interposed
 between compression stages.
 
+\subsubsection{Lamination Valve}
+
+A completely different kind of gas handling units is not aimed at increasing
+the pressure of the gas, but at reducing it. The simplest way in which this
+pressure reduction can be accomplished is passing the gas through a valve with
+high pressure drop, hence achieving an operation known as lamination. In fact, a
+lamination valve is a unit useful to expand a fluid. It can be represented using
+a simple pic called \chpp{lamination valve}:
+\begin{chpcode}
+	\pic at (0,0) {lamination valve};
+\end{chpcode}
+which yields a rectangle anchored in its centre in which there is an arrow
+sketch:
+\begin{center}
+\begin{tikzpicture}
+	\pic at (-2.4,0) {lamination valve};
+	\pic at (0,0) {lamination valve};
+	\measure{(-0.2,-0.3)}{(0.2,-0.3)}{\SI{4}{\mm}}
+	\measure{(-0.4,0.1)}{(-0.4,-0.1)}{\SI{2}{\mm}}
+	\pic at (0,0) {anchor mark};
+	\pic (V) at (2.4,0) {lamination valve};
+	\pic at (V-anchor) {anchor mark};
+	\pic at (V-inlet) {node mark};
+	\pic at (V-outlet) {node mark};
+	\node[left] at (V-inlet) {\chpn{i}};
+	\node[right] at (V-outlet) {\chpn{o}};
+\end{tikzpicture}
+\end{center}
+
+Nodes defined for the \chpp{lamination valve} are particular. A lamination
+valve is a unit much more similar to a simple electric bipole, in fact it has
+only two nodes (plus the \chpn{anchor}); moreover this unit is a ``one way
+operation'', so the nodes have a simple logic: one \chpn{inlet} and one
+\chpn{outlet}. These two are indicated in the drawing above as \chpn{i} and
+\chpn{o} respectively.
+
+\subsubsection{Turbine}
+
+Another way to reduce the pressure of a gas also allows to recover a part of the
+energy released. In a sense, this operations is the exact opposite of
+compression: expansion in a turbine. A generic symbols to represent this is made
+available by \chemplants. It is defined as a simple pic called \chpp{turbine}:
+\begin{chpcode}
+	\pic at (0,0) {turbine};
+\end{chpcode}
+and yields a ``reversed'' cone frustum, in which middle there is the anchor:
+\begin{center}
+\begin{tikzpicture}
+	\pic at (-2.8,0) {turbine};
+	\pic at (0,0) {turbine};
+	\measure{(-0.4,-0.7)}{(0.4,-0.7)}{\SI{8}{\mm}}
+	\measure{(-0.6,0.2)}{(-0.6,-0.2)}{\SI{4}{\mm}}
+	\measure[above]{(0.6,0.5)}{(0.6,-0.5)}{\SI{10}{\mm}}
+	\pic at (0,0) {anchor mark};
+	\pic (T) at (2.8,0) {turbine};
+	\pic at (T-anchor) {anchor mark};
+	\pic at (T-left) {node mark};
+	\pic at (T-right) {node mark};
+	\pic at (T-inlet bottom) {node mark};
+	\pic at (T-outlet bottom) {node mark};
+	\pic at (T-outlet top) {node mark};
+	\pic at (T-inlet top) {node mark};
+	\node[left] at (T-left) {\chpn{l}};
+	\node[right] at (T-right) {\chpn{r}};
+	\node[below] at (T-inlet bottom) {\chpn{ib}};
+	\node[below] at (T-outlet bottom) {\chpn{ob}};
+	\node[above] at (T-outlet top) {\chpn{ot}};
+	\node[above] at (T-inlet top) {\chpn{it}};
+\end{tikzpicture}
+\end{center}
+where the measure on the right indicates the height of the larger base of the
+cone frustum.
+
+Nodes have to be used in a similar was to the one just outlined for the
+\chpp{compressor}. This time, the shape of the \chpp{turbine} recalls a volume
+expansion, hence entering streams should be attached to the smaller base of
+the unit, while leaving streams should be connected to the larger one. Besides
+the usual \chpn{left} and \chpn{right} nodes, four special nodes are defined:
+\begin{itemize}
+	\item a node called \chpn{inlet bottom}, abbreviated in the picture above as
+		\chpn{ib};
+	\item a node called \chpn{outlet bottom}, abbreviated in the picture above as
+		\chpn{ob};
+	\item a node called \chpn{outlet top}, abbreviated in the picture above as
+		\chpn{ot};
+	\item a node called \chpn{inlet top}, abbreviated in the picture above as
+		\chpn{it}.
+\end{itemize}
+
+A turbine is usually associated to a mechanical work production: the \chpn{right}
+node (or the \chpn{left} node) comes in hand in this situation, since it can be
+exploited to symbolise the connection of the shaft of a generator.
+
 \subsubsection{Ejector}
 
-The last fluid handling unit defined by \chemplants\ is neither a kinetic nor
+The last gas handling unit defined by \chemplants\ is neither a kinetic nor
 a volumetric machine, but it belongs to (and is the most remarkable example of)
-static machines category. The ejector works thanks to the relation of the
-pressure energy with the kinetic energy of a fluid, usually a gas, and most of
-the time is used to suck a secondary fluid into a driving stream or to generate
-vacuum thanks to this effect. It is defined as a simple pic called
-\chpp{ejector}:
+static machines category. Properly, it is not even a gas handling machine as
+classically intended (which means using mechanical work to move a gas). The
+ejector works thanks to the relation of the pressure energy with the kinetic
+energy of a fluid, usually a gas, and most of the time is used to suck a
+secondary fluid into a driving stream or to generate vacuum thanks to this
+effect. It is defined as a simple pic called \chpp{ejector}:
 \begin{chpcode}
 	\pic at (0,0) {ejector};
 \end{chpcode}
@@ -1726,7 +2012,421 @@
 respectively. The two streams, mixed together, leave the unit from the
 \chpn{outlet} node, identified as \chpn{o} in the above drawing.
 
+\subsection{Solid Handling}
+
+Solids, especially if under the form of granular material, are very common in the
+chemical industry. Processing granular materials require some special
+machines and even some special unit operations exist for solids. Also moving
+granular materials is not an easy task and, clearly, pumps and compressors are
+useless to this purpose (except for some very special case of suspended
+transport). The \chemplants\ package defines some special symbols to denote
+``pure'' solid handling units.
+
+\subsubsection{Hopper}
+
+The hopper is a simple ``funnel'' which channel granular materials to their
+destinations. The most common place where one can find a hopper is below a silos,
+in fact the \chpp{silos} introduced in subsection~\ref{subsec:storag} ends in a
+hopper. Sometimes, a hopper can exist by itself and a special symbol is defined
+to indicate such case. It is defined as a simple pic called \chpp{hopper}:
+\begin{chpcode}
+	\pic at (0,0) {hopper};
+\end{chpcode}
+and yields the sketch of a hopper anchored at its top:
+\begin{center}
+\begin{tikzpicture}
+	\pic at (-3,0) {hopper};
+	\pic at (0,0) {hopper};
+	\measure{(-0.4,-1.7)}{(0.4,-1.7)}{\SI{8}{\mm}}
+	\measure{(-0.3,-1.2)}{(0,-1.2)}{\SI{3}{\mm}}
+	\measure{(-1.2,0)}{(-1.2,-1)}{\SI{10}{\mm}}
+	\measure{(-0.7,0)}{(-0.7,-0.5)}{\SI{5}{\mm}}
+	\measure[above]{(-0.5,0.2)}{(0.5,0.2)}{\SI{10}{\mm}}
+	\measure[above]{(0.7,0)}{(0.7,-0.4)}{\SI{4}{\mm}}
+	\pic at (0,0) {anchor mark};
+	\pic (H) at (3,0) {hopper};
+	\pic at (H-anchor) {anchor mark};
+	\pic at (H-left) {node mark};
+	\pic at (H-outlet) {node mark};
+	\pic at (H-right) {node mark};
+	\node[left] at (H-left) {\chpn{l}};
+	\node[below] at (H-outlet) {\chpn{o}};
+	\node[right] at (H-right) {\chpn{r}};
+\end{tikzpicture}
+\end{center}
+
+Measures require some clarifications. The unit has a total width of \SI{10}{\mm}
+and a total height of \SI{10}{\mm}. Since the top line protrudes by \SI{1}{\mm}
+on each side, the hopper body has a width of \SI{8}{\mm}. Moving to
+nodes, the \chpn{right} node is placed \SI{4}{\mm} below the anchor and the
+\chpn{left} node is placed \SI{5}{\mm} below the anchor.
+
+The inlet stream should be connected to the top of the hopper (use the
+\chpn{anchor} node  to snap purposes), while the outlet stream should leave the
+unit from the bottom. A special node is defined to this last purpose: the
+\chpn{outlet} node, \chpn{o} in the above representation. This node is placed
+\SI{3}{\mm} to the left of the anchor.
+
+\subsubsection{Conveyor Belt}
+
+Carrying solids around a plant is an operation accomplished by special mechanical
+units. The simplest one is the conveyor belt. It is defined as a simple pic
+called \chpp{conveyor belt}:
+\begin{chpcode}
+	\pic at (0,0) {conveyor belt};
+\end{chpcode}
+and yields the sketch of a conveyor belt at its centre:
+\begin{center}
+\begin{tikzpicture}
+	\pic at (-4,0) {conveyor belt};
+	\pic at (0,0) {conveyor belt};
+	\measure{(-1,-0.4)}{(1,-0.4)}{\SI{20}{\mm}}
+	\measure{(-1.2,0.2)}{(-1.2,-0.2)}{\SI{4}{\mm}}
+	\measure[above]{(0,0.4)}{(0.6,0.4)}{\SI{6}{\mm}}
+	\pic at (0,0) {anchor mark};
+	\pic (C) at (4,0) {conveyor belt};
+	\pic at (C-anchor) {anchor mark};
+	\pic at (C-outlet left) {node mark};
+	\pic at (C-bottom) {node mark};
+	\pic at (C-outlet right) {node mark};
+	\pic at (C-inlet right) {node mark};
+	\pic at (C-top) {node mark};
+	\pic at (C-inlet left) {node mark};
+	\node[left] at (C-outlet left) {\chpn{ol}};
+	\node[below] at (C-bottom) {\chpn{b}};
+	\node[right] at (C-outlet right) {\chpn{or}};
+	\node[above] at (C-inlet right) {\chpn{ir}};
+	\node[above] at (C-top) {\chpn{t}};
+	\node[above] at (C-inlet left) {\chpn{il}};
+\end{tikzpicture}
+\end{center}
+where the measure on the top indicates the distance from the middle of the
+unit to the point where the inlet stream should be connected.
+
+Nodes require some clarifications. The entering stream should be attached to the
+upper part of the unit on one side, while the leaving stream should be connected
+to opposite side. Both streams should be pointed downwards. Besides the usual
+\chpn{bottom} and \chpn{top} nodes, four special nodes are defined:
+\begin{itemize}
+	\item a node called \chpn{outlet left}, abbreviated in the picture above as
+		\chpn{ol};
+	\item a node called \chpn{outlet right}, abbreviated in the picture above as
+		\chpn{or};
+	\item a node called \chpn{inlet right}, abbreviated in the picture above as
+		\chpn{ir};
+	\item a node called \chpn{inlet left}, abbreviated in the picture above as
+		\chpn{il}.
+\end{itemize}
+
+\subsubsection{Screw Conveyor}
+
+Another kind of solid handling unit, especially suitable to carry around granular
+materials, is the screw conveyor. It is defined as a simple pic called
+\chpp{screw conveyor}:
+\begin{chpcode}
+	\pic at (0,0) {screw conveyor};
+\end{chpcode}
+and yields a rectangle, in which centre there is the anchor, with a sketch of
+the screw:
+\begin{center}
+\begin{tikzpicture}
+	\pic at (-4,0) {screw conveyor};
+	\pic at (0,0) {screw conveyor};
+	\measure{(-1,-0.4)}{(1,-0.4)}{\SI{20}{\mm}}
+	\measure{(-1.2,0.2)}{(-1.2,-0.2)}{\SI{4}{\mm}}
+	\measure[above]{(0,0.4)}{(0.8,0.4)}{\SI{8}{\mm}}
+	\pic at (0,0) {anchor mark};
+	\pic (C) at (4,0) {screw conveyor};
+	\pic at (C-anchor) {anchor mark};
+	\pic at (C-left) {node mark};
+	\pic at (C-outlet left) {node mark};
+	\pic at (C-bottom) {node mark};
+	\pic at (C-outlet right) {node mark};
+	\pic at (C-right) {node mark};
+	\pic at (C-inlet right) {node mark};
+	\pic at (C-top) {node mark};
+	\pic at (C-inlet left) {node mark};
+	\node[left] at (C-left) {\chpn{l}};
+	\node[below] at (C-outlet left) {\chpn{ol}};
+	\node[below] at (C-bottom) {\chpn{b}};
+	\node[below] at (C-outlet right) {\chpn{or}};
+	\node[right] at (C-right) {\chpn{r}};
+	\node[above] at (C-inlet right) {\chpn{ir}};
+	\node[above] at (C-top) {\chpn{t}};
+	\node[above] at (C-inlet left) {\chpn{il}};
+\end{tikzpicture}
+\end{center}
+where the measure on the top indicates the distance from the middle of the
+unit to the point where the inlet stream should be connected.
+
+Nodes require some clarifications. The entering stream should be attached to the
+upper part of the unit on one side, while the leaving stream should be connected
+to the lower part and on the opposite side. Both streams should be pointed
+downwards. Besides the usual \chpn{left}, \chpn{bottom}, \chpn{right} and
+\chpn{top} nodes, four special nodes are defined:
+\begin{itemize}
+	\item a node called \chpn{outlet left}, abbreviated in the picture above as
+		\chpn{ol};
+	\item a node called \chpn{outlet right}, abbreviated in the picture above as
+		\chpn{or};
+	\item a node called \chpn{inlet right}, abbreviated in the picture above as
+		\chpn{ir};
+	\item a node called \chpn{inlet left}, abbreviated in the picture above as
+		\chpn{il}.
+\end{itemize}
+
+\subsubsection{Roller Conveyor}
+
+A roller conveyor can be use if slabs of bars of solid materials have to be
+moved. It is defined as a simple pic called \chpp{roller conveyor}:
+\begin{chpcode}
+	\pic at (0,0) {roller conveyor};
+\end{chpcode}
+and yields a series of circles placed on a planar support anchored at its top:
+\begin{center}
+\begin{tikzpicture}
+	\pic at (-4,0) {roller conveyor};
+	\pic at (0,0) {roller conveyor};
+	\measure{(-1,-0.4)}{(1,-0.4)}{\SI{20}{\mm}}
+	\measure{(-1.2,0.2)}{(-1.2,-0.2)}{\SI{4}{\mm}}
+	\measure[above]{(0,0.4)}{(0.9,0.4)}{\SI{9}{\mm}}
+	\pic at (0,0) {anchor mark};
+	\pic (C) at (4,0) {roller conveyor};
+	\pic at (C-anchor) {anchor mark};
+	\pic at (C-left) {node mark};
+	\pic at (C-right) {node mark};
+	\pic at (C-top right) {node mark};
+	\pic at (C-top) {node mark};
+	\pic at (C-top left) {node mark};
+	\node[left] at (C-left) {\chpn{l}};
+	\node[right] at (C-right) {\chpn{r}};
+	\node[above] at (C-top right) {\chpn{tr}};
+	\node[above] at (C-top) {\chpn{t}};
+	\node[above] at (C-top left) {\chpn{tl}};
+\end{tikzpicture}
+\end{center}
+where the measure on the top indicates the distance from the middle of the
+unit to the point where the streams should be connected.
+
+Only common nodes are defined for \chpp{roller conveyor}, but it should be
+noticed that the only nodes to be used to connect streams are \chpn{top left} and
+\chpn{top left}.
+
+\subsubsection{Bucket Elevator}
+
+A special kind of solid handling machines can be used not to cover horizontal
+paths, but to elevate a granular material. The most common one is the bucket
+elevator. It is defined as a simple pic called \chpp{bucket elevator}:
+\begin{chpcode}
+	\pic at (0,0) {bucket elevator};
+\end{chpcode}
+and yields the sketch of a bucket elevator anchored in its centre:
+\begin{center}
+\begin{tikzpicture}
+	\pic at (-3,0) {bucket elevator};
+	\pic at (0,0) {bucket elevator};
+	\measure{(-0.5,-1.7)}{(0.5,-1.7)}{\SI{10}{\mm}}
+	\measure{(-0.15,-1.2)}{(0.15,-1.2)}{\SI{3}{\mm}}
+	\measure{(-0.7,1)}{(-0.7,-1)}{\SI{20}{\mm}}
+	\measure[above]{(0,1.2)}{(0.4,1.2)}{\SI{4}{\mm}}
+	\measure[above]{(0.7,0.7)}{(0.7,0)}{\SI{7}{\mm}}
+	\pic at (0,0) {anchor mark};
+	\pic (C) at (3,0) {bucket elevator};
+	\pic at (C-anchor) {anchor mark};
+	\pic at (C-left) {node mark};
+	\pic at (C-outlet) {node mark};
+	\pic at (C-bottom) {node mark};
+	\pic at (C-right) {node mark};
+	\pic at (C-inlet) {node mark};
+	\pic at (C-top) {node mark};
+	\node[left] at (C-left) {\chpn{l}};
+	\node[above] at (C-inlet) {\chpn{i}};
+	\node[below] at (C-bottom) {\chpn{b}};
+	\node[right] at (C-right) {\chpn{r}};
+	\node[below] at (C-outlet) {\chpn{o}};
+	\node[above] at (C-top) {\chpn{t}};
+\end{tikzpicture}
+\end{center}
+
+Measures require some clarifications. The unit has a total width of \SI{10}{\mm}
+and a total height of \SI{20}{\mm}. The central body has a width of \SI{3}{\mm}.
+
+The inlet and outlet streams should be connected to specific points of the unit.
+Two special nodes are defined to this purpose:  the \chpn{inlet} node, \chpn{i}
+in the above representation, and the \chpn{outlet} node, \chpn{o} in the above
+representation. Considering this last node, it is placed \SI{4}{\mm} to the left
+of the anchor and \SI{7}{\mm} above it. Similar considerations hold true for the
+\chpn{inlet} node.
+
+\subsubsection{Cylinder Crusher}
+
+Pure solid handling units are done, but \chemplants\ defines some more symbols
+useful to denote operations concerning solids. Some of them represent size
+reduction operations, the most common of which is carried out in a cylinder
+crusher. It is defined as a simple pic called \chpp{cylinder crusher}:
+\begin{chpcode}
+	\pic at (0,0) {cylinder crusher};
+\end{chpcode}
+and yields two circles, in which middle point there is the anchor, with a sketch
+of the machine structure:
+\begin{center}
+\begin{tikzpicture}
+	\pic at (-4,0) {cylinder crusher};
+	\pic at (0,0) {cylinder crusher};
+	\measure{(-1,-0.8)}{(1,-0.8)}{\SI{20}{\mm}}
+	\measure{(-1.2,0.6)}{(-1.2,-0.6)}{\SI{12}{\mm}}
+	\measure[above]{(1.2,0.5)}{(1.2,-0.5)}{\SI{10}{\mm}}
+	\pic at (0,0) {anchor mark};
+	\pic (C) at (4,0) {cylinder crusher};
+	\pic at (C-anchor) {anchor mark};
+	\pic at (C-left) {node mark};
+	\pic at (C-outlet) {node mark};
+	\pic at (C-right) {node mark};
+	\pic at (C-inlet) {node mark};
+	\node[left] at (C-left) {\chpn{l}};
+	\node[below] at (C-outlet) {\chpn{o}};
+	\node[right] at (C-right) {\chpn{r}};
+	\node[above] at (C-inlet) {\chpn{i}};
+\end{tikzpicture}
+\end{center}
+where the measure on the right indicates the height of the unit without the
+little protruding lines which marks the inlet and outlet conveying channels.
+
+Besides the usual \chpn{left} and \chpn{right} nodes, two special nodes are
+defined: the \chpn{inlet} node, \chpn{i} in the above representation, and the
+\chpn{outlet} node, \chpn{o} in the above representation.
+
+\subsubsection{Hammer Crusher}
+
+Another rather common size reduction unit is the hammer crusher. It is defined as
+a simple pic called \chpp{hammer crusher}:
+\begin{chpcode}
+	\pic at (0,0) {hammer crusher};
+\end{chpcode}
+and yields the sketch of a hammer crusher anchored in its centre:
+\begin{center}
+\begin{tikzpicture}
+	\pic at (-4,0) {hammer crusher};
+	\pic at (0,0) {hammer crusher};
+	\measure{(-0.5,-1.2)}{(0.6,-1.2)}{\SI{11}{\mm}}
+	\measure{(-0.3,-0.7)}{(0,-0.7)}{\SI{3}{\mm}}
+	\measure{(-1.2,0.6)}{(-1.2,-0.5)}{\SI{11}{\mm}}
+	\measure{(-0.7,0)}{(-0.7,-0.5)}{\SI{5}{\mm}}
+	\measure[above]{(0,0.8)}{(0.3,0.8)}{\SI{3}{\mm}}
+	\measure[above]{(0.8,0.5)}{(0.8,0)}{\SI{5}{\mm}}
+	\pic at (0,0) {anchor mark};
+	\pic (C) at (4,0) {hammer crusher};
+	\pic at (C-anchor) {anchor mark};
+	\pic at (C-left) {node mark};
+	\pic at (C-outlet) {node mark};
+	\pic at (C-bottom) {node mark};
+	\pic at (C-right) {node mark};
+	\pic at (C-inlet) {node mark};
+	\node[left] at (C-left) {\chpn{l}};
+	\node[below] at (C-outlet) {\chpn{o}};
+	\node[below] at (C-bottom) {\chpn{b}};
+	\node[right] at (C-right) {\chpn{r}};
+	\node[above] at (C-inlet) {\chpn{i}};
+\end{tikzpicture}
+
+\end{center}
+
+Besides the usual \chpn{left}, \chpn{bottom} and \chpn{right} nodes, two special
+nodes are defined: the \chpn{inlet} node, \chpn{i} in the above representation,
+and the \chpn{outlet} node, \chpn{o} in the above representation. These nodes are
+both \SI{3}{\mm} far from the anchor in the horizontal direction and \SI{5}{\mm}
+far from the anchor in the vertical direction.
+
+\subsubsection{Mill}
+
+While a crusher is a rough operation, a fine particle size reduction can be
+achieved in a mill. A single mill is defined by \chemplants, a symbol to be used
+to denote a general milling operation. It is defined as a simple pic called
+\chpp{mill}:
+\begin{chpcode}
+	\pic at (0,0) {mill};
+\end{chpcode}
+and yields a rectangle, in which centre there is the anchor with some
+``decoration lines'':
+\begin{center}
+\begin{tikzpicture}
+	\pic at (-4,0) {mill};
+	\pic at (0,0) {mill};
+	\measure{(-1,-0.7)}{(1.1,-0.7)}{\SI{21}{\mm}}
+	\measure{(-1.2,0.5)}{(-1.2,-0.5)}{\SI{10}{\mm}}
+	\measure[above]{(-1,0.7)}{(1,0.7)}{\SI{20}{\mm}}
+	\measure[above]{(1.3,0.4)}{(1.3,-0.4)}{\SI{8}{\mm}}
+	\pic at (0,0) {anchor mark};
+	\pic (C) at (4,0) {mill};
+	\pic at (C-anchor) {anchor mark};
+	\pic at (C-inlet) {node mark};
+	\pic at (C-bottom) {node mark};
+	\pic at (C-outlet) {node mark};
+	\pic at (C-top) {node mark};
+	\node[left] at (C-inlet) {\chpn{i}};;
+	\node[below] at (C-bottom) {\chpn{b}};
+	\node[right] at (C-outlet) {\chpn{o}};
+	\node[above] at (C-top) {\chpn{t}};
+\end{tikzpicture}
+\end{center}
+where measure on the top and on the right both refers to the dimensions of the
+unit without the protruding ``decoration lines''.
+
+Besides the usual \chpn{bottom} and \chpn{right} nodes, two special
+nodes are defined: the \chpn{inlet} node, \chpn{i} in the above representation,
+and the \chpn{outlet} node, \chpn{o} in the above representation.
+
+\subsubsection{Extruder}
+
+The last solid handling unit defined by \chemplants\ represents a special
+process: extrusion. The operation is denoted in general as a screw extruder.
+It is defined as a simple pic called \chpp{extruder}:
+\begin{chpcode}
+	\pic at (0,0) {extruder};
+\end{chpcode}
+and yields the sketch of an extruder anchored in its centre:
+\begin{center}
+\begin{tikzpicture}
+	\pic at (-4,0) {extruder};
+	\pic at (0,0) {extruder};
+	\measure{(-1,-1)}{(1,-1)}{\SI{20}{\mm}}
+	\measure{(-1,-0.5)}{(0,-0.5)}{\SI{10}{\mm}}
+	\measure{(0,-0.5)}{(1,-0.5)}{\SI{10}{\mm}}
+	\measure{(-1.7,0.5)}{(-1.7,-0.3)}{\SI{8}{\mm}}
+	\measure{(-1.2,0.5)}{(-1.2,0)}{\SI{5}{\mm}}
+	\measure[above]{(-0.7,0.7)}{(0,0.7)}{\SI{7}{\mm}}
+	\measure[above]{(1.2,0.2)}{(1.2,-0.2)}{\SI{4}{\mm}}
+	\pic at (0,0) {anchor mark};
+	\pic (C) at (4,0) {extruder};
+	\pic at (C-anchor) {anchor mark};
+	\pic at (C-left) {node mark};
+	\pic at (C-bottom) {node mark};
+	\pic at (C-outlet) {node mark};
+	\pic at (C-top) {node mark};
+	\pic at (C-inlet) {node mark};
+	\node[left] at (C-left) {\chpn{l}};
+	\node[below] at (C-bottom) {\chpn{b}};
+	\node[right] at (C-outlet) {\chpn{o}};
+	\node[above] at (C-top) {\chpn{t}};
+	\node[above] at (C-inlet) {\chpn{i}};
+\end{tikzpicture}
+\end{center}
+
+Measures require some clarifications. The unit has a total width of \SI{20}{\mm}
+and a total height of \SI{8}{\mm}. A hopper is sketched on the extruder, which
+main body has a height of \SI{4}{\mm}.
+
+The inlet stream should be connected to the top of the hopper, while the outlet
+stream should leave the unit from the end on the right. Two special nodes are
+defined: the \chpn{inlet} node, \chpn{i} in the above representation, and the
+\chpn{outlet} node, \chpn{o} in the above representation. The former is placed
+\SI{7}{\mm} to the left of the anchor and \SI{5}{\mm} above it.
+
+As a last remark, notice that the \chpn{left} node can be exploited to attach
+something to the shaft of the screw, like a motor or a control signal.
+
 \subsection{Heat Exchangers}
+\label{subsec:heahex}
 
 Many variants of heat exchangers are defined by \chemplants. Among ``simple
 symbols'', two heat exchangers are available to general purposes, while three
@@ -1974,7 +2674,7 @@
 rounded end and a sketch of the internal pipes:
 \begin{center}
 \begin{tikzpicture}
-		\pic at (-3.6,0) {tube bundle heat exchanger};
+	\pic at (-3.6,0) {tube bundle heat exchanger};
 %	\pic at (0,0) {tube bundle heat exchanger};
 %	\measure{(-1.0,-0.5)}{(1.0,-0.5)}{\SI{20}{\mm}}
 %	\measure{(-1.2,0.35)}{(-1.2,-0.35)}{\SI{7}{\mm}}
@@ -1985,7 +2685,7 @@
 %	\pic (E) at (3.6,0) {tube bundle heat exchanger};
 %	\pic at (E-anchor) {anchor mark};
 %	\pic at (E-right) {node mark};
-%	\pic at (E-head left) {node mark};
+%	\pic at (E-left) {node mark};
 %	\pic at (E-head bottom) {node mark};
 %	\pic at (E-head top) {node mark};
 %	\pic at (E-shell bottom left) {node mark};
@@ -1995,7 +2695,7 @@
 %	\pic at (E-shell top) {node mark};
 %	\pic at (E-shell top left) {node mark};
 %	\node[right] at (E-right) {\chpn{r}};
-%	\node[left] at (E-head left) {\chpn{hl}};
+%	\node[left] at (E-left) {\chpn{l}};
 %	\node[below left] at (E-head bottom) {\chpn{hb}};
 %	\node[above left] at (E-head top) {\chpn{ht}};
 %	\node[below] at (E-shell bottom left) {\chpn{sbl}};
@@ -2072,6 +2772,56 @@
 the heat exchanger performances and it is often useful to represent it also
 graphically.
 
+\subsubsection{Tube Bundle Heat Exchanger (Variant)}
+
+The \chpp{tube bundle heat exchanger} has a single head, thus it can be used to
+represent units with an even number of tube-side passes. A variant of this heat
+exchanger is defined by \chemplants\ to better denote machines with an odd number
+of tube-side passes (note that \UNICHIM\ uses the same symbol in both cases, the
+\chpp{tube bundle heat exchanger}). It is defined as a simple pic called
+\chpp{tube bundle heat exchanger var}:
+\begin{chpcode}
+	\pic at (0,0) {tube bundle heat exchanger var};
+\end{chpcode}
+and yields a horizontal rectangle, in which centre there is the anchor, with
+rounded ends and a sketch of the internal pipes:
+\begin{center}
+\begin{tikzpicture}
+	\pic at (-3.6,0) {tube bundle heat exchanger var};
+	\pic at (0,0) {tube bundle heat exchanger var};
+	\measure{(-1.0,-0.5)}{(1.0,-0.5)}{\SI{20}{\mm}}
+	\measure{(-1.2,0.35)}{(-1.2,-0.35)}{\SI{7}{\mm}}
+	\measure[above]{(0,0.5)}{(0.5,0.5)}{\SI{5}{\mm}}
+	\measure[above]{(1.2,0.3)}{(1.2,-0.3)}{\SI{6}{\mm}}
+	\pic at (0,0) {anchor mark};
+	\pic (E) at (3.6,0) {tube bundle heat exchanger var};
+	\pic at (E-anchor) {anchor mark};
+	\pic at (E-head left) {node mark};
+	\pic at (E-head right) {node mark};
+	\pic at (E-shell bottom left) {node mark};
+	\pic at (E-shell bottom) {node mark};
+	\pic at (E-shell bottom right) {node mark};
+	\pic at (E-shell top right) {node mark};
+	\pic at (E-shell top) {node mark};
+	\pic at (E-shell top left) {node mark};
+	\node[left] at (E-head left) {\chpn{hl}};
+	\node[right] at (E-head right) {\chpn{hr}};
+	\node[below left] at (E-shell bottom left) {\chpn{sbl}};
+	\node[below] at (E-shell bottom) {\chpn{sb}};
+	\node[below right] at (E-shell bottom right) {\chpn{sbr}};
+	\node[above right] at (E-shell top right) {\chpn{str}};
+	\node[above] at (E-shell top) {\chpn{st}};
+	\node[above left] at (E-shell top left) {\chpn{stl}};
+\end{tikzpicture}
+\end{center}
+
+Measures are totally analogous to the ones of the
+\chpp{tube bundle heat exchanger} just discussed. Also nodes concerning the shell
+are the same, but there are no more \chpn{left} and \chpn{right nodes}. These are
+replaced by the \chpn{head left} node, shown above as \chpn{hl}, and by the
+\chpn{head right} node, shown above as \chpn{hr}. The fluid that passes through
+the internal pipes have to be connected using these nodes
+
 \subsubsection{Plate Heat Exchanger}
 
 The tube bundle heat exchanger is the most widely used, but it is not the only
@@ -2169,9 +2919,10 @@
 
 \subsubsection{Pipe Furnace}
 
-The last heat transfer equipment defined by \chemplants\ (at least in this
-section of the manual) is not properly a heat exchanger, but it is a furnace.
-It is defined as a simple pic called \chpp{pipe furnace}:
+The last heat transfer equipments defined by \chemplants\ (at least in this
+section of the manual) are not heat exchanger as properly intended, but furnaces.
+The first one is a pipe furnace useful to heat liquids and gases. It is defined
+as a simple pic called \chpp{pipe furnace}:
 \begin{chpcode}
 	\pic at (0,0) {pipe furnace};
 \end{chpcode}
@@ -2208,17 +2959,105 @@
 called \chpn{pipes left}, abbreviated in the picture above as \chpn{pl}, and a
 node called \chpn{pipes right}, abbreviated in the picture above as \chpn{pr}.
 
-\subsection{Separators}
+\subsubsection{Tunnel Furnace}
 
+If one has to represent a solid drying operation, a tunnel furnace may come in
+hand. It is defined as a simple pic called \chpp{tunnel furnace}:
+\begin{chpcode}
+	\pic at (0,0) {tunnel furnace};
+\end{chpcode}
+and yields a rectangle, in which lower centre there is the anchor, with a sketch
+of the tunnel entrance and exit:
+\begin{center}
+\begin{tikzpicture}
+	\pic at (-4.4,0) {tunnel furnace};
+	\pic at (0,0) {tunnel furnace};
+	\measure{(-1.2,-0.7)}{(1.2,-0.7)}{\SI{24}{\mm}}
+	\measure{(-1.4,1)}{(-1.4,-0.5)}{\SI{15}{\mm}}
+	\measure[above]{(0,1.2)}{(0.9,1.2)}{\SI{9}{\mm}}
+	\measure[above]{(1.4,1)}{(1.4,0)}{\SI{10}{\mm}}
+	\pic at (0,0) {anchor mark};
+	\pic (E) at (4.4,0) {tunnel furnace};
+	\pic at (E-anchor) {anchor mark};
+	\pic at (E-bottom) {node mark};
+	\pic at (E-top right) {node mark};
+	\pic at (E-top) {node mark};
+	\pic at (E-top left) {node mark};
+	\pic at (E-tunnel left) {node mark};
+	\pic at (E-tunnel right) {node mark};
+	\node[below] at (E-bottom) {\chpn{b}};
+	\node[above] at (E-top right) {\chpn{tr}};
+	\node[above] at (E-top) {\chpn{t}};
+	\node[above] at (E-top left) {\chpn{tl}};
+	\node[left] at (E-tunnel left) {\chpn{tul}};
+	\node[right] at (E-tunnel right) {\chpn{tur}};
+\end{tikzpicture}
+\end{center}
+where the measure on the right indicates the distance from the anchor point to
+the top of the unit, while the measure on the top concern nodes.
+
+The \chpp{tunnel furnace} has some special nodes. Among the common ones, only
+\chpn{bottom} and \chpn{top} are defined and they may be useful to represent
+fuel inlet and stack gases outlet. Also \chpn{top left} and \chpn{top right} may
+serve this cause. In addition, there are two nodes more: a node called
+\chpn{tunnel left}, abbreviated in the picture above as \chpn{tul}, and a
+node called \chpn{tunnel right}, abbreviated in the picture above as \chpn{tur}.
+
+\subsubsection{Rotary Furnace}
+
+Granular materials can be thermally treated into a unit called rotary furnace. It
+is defined as a simple pic called \chpp{rotary furnace}:
+\begin{chpcode}
+	\pic at (0,0) {rotary furnace};
+\end{chpcode}
+and yields a slanted rectangle, in which centre there is the anchor, with a
+sketch of the revolution movement:
+\begin{center}
+\begin{tikzpicture}
+	\pic at (0,0) {rotary furnace};
+\end{tikzpicture}
+\end{center}
+
+No measures or nodes are shown in the above drawing, that is the pure symbol.
+Marking measures on a slanted unit like this one is not trivial, thus the
+\chpp{rotary furnace} is reproduced as rotated here:
+\begin{center}
+\begin{tikzpicture}
+	\pic[rotate=10] (F) at (0,0) {rotary furnace};
+	\measure{(-1,-0.8)}{(1,-0.8)}{\SI{20}{\mm}}
+	\measure{(-1.7,0.4)}{(-1.7,-0.4)}{\SI{8}{\mm}}
+	\measure[above]{(-0.9,0.8)}{(0,0.8)}{\SI{9}{\mm}}
+	\measure[above]{(1.7,0.3)}{(1.7,-0.3)}{\SI{6}{\mm}}
+	\pic at (F-anchor) {anchor mark};
+	\pic at (F-gas outlet) {node mark};
+	\pic at (F-solid outlet) {node mark};
+	\pic at (F-gas inlet) {node mark};
+	\pic at (F-solid inlet) {node mark};
+	\node[left] at (F-gas outlet) {\chpn{go}};
+	\node[below] at (F-solid outlet) {\chpn{so}};
+	\node[right] at (F-gas inlet) {\chpn{gi}};
+	\node[above] at (F-solid inlet) {\chpn{si}};
+\end{tikzpicture}
+\end{center}
+The measure on the right indicates the height of the rotation drum without the
+motion sketch, while the measure on the top concern nodes.
+
+None of the common nodes are defined for the \chpn{rotary furnace}, but there are
+special nodes to be used to connect specific streams. In the above drawing,
+\chpn{gi} and \chpn{si} indicate respectively the \chpn{gas inlet} node and the
+\chpn{solid inlet} node, which should be used to connect the inlet streams. On
+the left of the unit there is the \chpn{gas outlet} node, abbreviated as
+\chpn{go} in the figure, while on its bottom right there is the
+\chpn{solid outlet} node, abbreviated as \chpn{so} in the figure. Names should be
+self-explicative.
+
+\subsection{Physical Separators}
+
 Separation unit operations are some of the most important operations in chemical
 engineering. Besides the separation of homogenous mixtures, that is usually done
 in ``simple'' equipments which will be introduced in the following, the
 separation of heterogeneous mixtures is practically much more simple and some
-specific equipments based on mechanical principles exist. Also more complex
-separation units will be introduced after the mechanical ones, mainly the ones
-based on thermal energy supply or removal and aimed to separate special kinds of
-homogenous mixtures. (Notice that the terms gas and vapour will be used
-indiscriminately, although not properly correct.)
+specific equipments based on mechanical principles exist.
 
 \subsubsection{Steam Trap}
 
@@ -2406,6 +3245,7 @@
 	\pic at (0,0) {settler};
 	\measure{(-1.5,-1.0)}{(1.5,-1.0)}{\SI{30}{\mm}}
 	\measure{(-1.7,0.8)}{(-1.7,-0.8)}{\SI{16}{\mm}}
+	\measure[above]{(2.2,0.8)}{(2.2,0)}{\SI{8}{\mm}}
 	\measure[above]{(1.7,0)}{(1.7,-0.2)}{\SI{2}{\mm}}
 	\pic at (0,0) {anchor mark};
 	\pic (S) at (5,0) {settler};
@@ -2424,8 +3264,9 @@
 	\node[below] at (S-solid outlet) {\chpn{so}};
 \end{tikzpicture}
 \end{center}
-where the measure on the right indicates the distance from the middle of the unit
-to the point where the funnel begins.
+where the measure on the inner right indicates the distance from the middle of
+the unit to the point where the funnel begins, while the measure on the outer
+right indicates the distance from the middle of the unit to its top.
 
 None of the common nodes are defined for the \chpp{settler}, but there are
 special nodes to be used to connect specific streams. In the above drawing,
@@ -2440,6 +3281,229 @@
 flexibility to the representation, in fact the same symbol can be used to
 indicate circular settling basins as well as rectangular settling basins.
 
+\subsubsection{Bag Filter}
+
+A bag filter can be used to separate particulate solids entrained by a fluid,
+either a gas or a liquid. It is defined as a simple pic called \chpp{bag filter}:
+\begin{chpcode}
+	\pic at (0,0) {bag filter};
+\end{chpcode}
+and yields a little rectangle, on which base there is the anchor, attached to a
+sketch of the filtering bags which ends in a triangular funnel:
+\begin{center}
+\begin{tikzpicture}
+	\pic at (-2.9,0) {bag filter};
+	\pic at (0,0) {bag filter};
+	\measure{(-0.45,-1.6)}{(0.45,-1.6)}{\SI{9}{\mm}}
+	\measure{(-0.65,0.2)}{(-0.65,-1.4)}{\SI{16}{\mm}}
+	\measure[above]{(0.65,0.2)}{(0.65,0)}{\SI{2}{\mm}}
+	\measure[above]{(1.3,0)}{(1.3,-1)}{\SI{10}{\mm}}
+	\pic at (0,0) {anchor mark};
+	\pic (F) at (2.9,0) {bag filter};
+	\pic at (F-anchor) {anchor mark};
+	\pic at (F-top) {node mark};
+	\pic at (F-inlet left) {node mark};
+	\pic at (F-inlet right) {node mark};
+	\pic at (F-fluid outlet left) {node mark};
+	\pic at (F-fluid outlet right) {node mark};
+	\pic at (F-solid outlet) {node mark};
+	\node[above] at (F-top) {\chpn{t}};
+	\node[left] at (F-inlet left) {\chpn{il}};
+	\node[right] at (F-inlet right) {\chpn{ir}};
+	\node[left] at (F-fluid outlet left) {\chpn{fol}};
+	\node[right] at (F-fluid outlet right) {\chpn{for}};
+	\node[below] at (F-solid outlet) {\chpn{so}};
+\end{tikzpicture}
+\end{center}
+
+Besides the common nodes, special nodes are defined for stream connections. In
+the above drawing, \chpn{il} and \chpn{ir} indicate respectively the
+\chpn{inlet left} node and the \chpn{inlet right} node, which should be used to
+connect the inlet stream. On the bottom left and on the bottom right of the unit
+there are respectively the \chpn{fluid outlet left} node and the
+\chpn{fluid outlet right} node, abbreviated as \chpn{fol} and \chpn{for} in the
+figure, while on its bottom there is the \chpn{solid outlet} node, abbreviated as
+\chpn{so} in the figure. Names should be self-explicative.
+
+\subsubsection{Filter Press}
+
+Quite common in the food industry, a filter press can be used to separate
+particulate solids suspended in a liquid. It is defined as a simple pic called
+\chpp{filter press}:
+\begin{chpcode}
+	\pic at (0,0) {filter press};
+\end{chpcode}
+and yields a little rectangle, in which centre there is the anchor, with a sketch
+of the filtering layers and the plate used to collect solids beneath it:
+\begin{center}
+\begin{tikzpicture}
+	\pic at (-4,0) {filter press};
+	\pic at (0,0) {filter press};
+	\measure{(-1,-0.7)}{(1,-0.7)}{\SI{20}{\mm}}
+	\measure{(-1.2,0.4)}{(-1.2,-0.5)}{\SI{9}{\mm}}
+	\measure[above]{(-0.9,0.6)}{(0.9,0.6)}{\SI{18}{\mm}}
+	\measure[above]{(1.2,0.4)}{(1.2,-0.4)}{\SI{8}{\mm}}
+	\pic at (0,0) {anchor mark};
+	\pic (F) at (4,0) {filter press};
+	\pic at (F-anchor) {anchor mark};
+	\pic at (F-left) {node mark};
+	\pic at (F-right) {node mark};
+	\pic at (F-top) {node mark};
+	\pic at (F-solid outlet) {node mark};
+	\node[left] at (F-left) {\chpn{l}};
+	\node[right] at (F-right) {\chpn{r}};
+	\node[above] at (F-top) {\chpn{t}};
+	\node[below] at (F-solid outlet) {\chpn{so}};
+\end{tikzpicture}
+\end{center}
+where measures on the right and on the top refers to the dimension of the unit
+without the underlying tray.
+
+Besides the common nodes, special nodes are defined for stream connections, but
+this time also common nodes should be used wisely. The \chpn{top} node is
+defined to labelling purposes, while the \chpn{left} and \chpn{right} nodes have
+a scope: one must be used to connect the entering mixture, while the other
+represents the liquid outlet. On the bottom of the unit there is the \chpn{solid
+outlet} node, abbreviated as \chpn{so} in the figure, which is used to represent
+the outlet of filtered solids.
+
+\subsubsection{Rotary Filter}
+
+A quite ingenious machine is the rotary filter. It is defined as a simple pic
+called \chpp{rotary filter}:
+\begin{chpcode}
+	\pic at (0,0) {rotary filter};
+\end{chpcode}
+and yields a circle, in which centre there is the anchor, with a sketch of the
+liquid feeding system:
+\begin{center}
+\begin{tikzpicture}
+	\pic at (-3.3,0) {rotary filter};
+	\pic at (0,0) {rotary filter};
+	\measure{(-0.7,-0.8)}{(0.6,-0.8)}{\SI{13}{\mm}}
+	\measure{(-0.9,0.5)}{(-0.9,-0.6)}{\SI{11}{\mm}}
+	\measure[above]{(-0.6,0.7)}{(0.6,0.7)}{\SI{12}{\mm}}
+	\measure[above]{(0.8,0.5)}{(0.8,-0.5)}{\SI{10}{\mm}}
+	\pic at (0,0) {anchor mark};
+	\pic (F) at (3.3,0) {rotary filter};
+	\pic at (F-anchor) {anchor mark};
+	\pic at (F-bottom) {node mark};
+	\pic at (F-top) {node mark};
+	\pic at (F-inlet) {node mark};
+	\pic at (F-solid outlet) {node mark};
+	\node[below] at (F-bottom) {\chpn{b}};
+	\node[above] at (F-top) {\chpn{t}};
+	\node[left] at (F-inlet) {\chpn{i}};
+	\node[right] at (F-solid outlet) {\chpn{so}};
+\end{tikzpicture}
+\end{center}
+where measures on the right and on the top refers to the dimension of the unit
+without the underlying liquid feeding system.
+
+Besides the common nodes, special nodes are defined for stream connections.
+The inlet stream should enter from the \chpn{inlet} node, marked as \chpn{i} in
+the figure. Recalling that the separation achieved in such unit is driven by the
+vacuum generated in the internal channel, sketched in the symbol as a filled
+black circle, the liquid outlet stream should be connected to the \chpn{anchor}
+node. Solids form a cake on the outside of the revolving cylinder and are
+scraped away by a blade. The special node \chpn{solid outlet}, abbreviated as
+\chpn{so} in the figure, is defined to this purpose.
+
+\subsubsection{Deck Screen}
+
+The last two physical separation units defined by \chemplants\ are used to
+fractionate granular materials by dimension. One of these units is the deck
+screen. It is defined as a simple pic called \chpp{deck screen}:
+\begin{chpcode}
+	\pic at (0,0) {deck screen};
+\end{chpcode}
+and yields a little rectangle, on which base there is the anchor, with a sketch
+of the screening mesh and attached to a triangular funnel:
+\begin{center}
+\begin{tikzpicture}
+	\pic at (-4,0) {deck screen};
+	\pic at (0,0) {deck screen};
+	\measure{(-1,-1.2)}{(1,-1.2)}{\SI{20}{\mm}}
+	\measure{(-1.2,0.5)}{(-1.2,-1)}{\SI{15}{\mm}}
+	\measure[above]{(1.2,0.5)}{(1.2,0)}{\SI{5}{\mm}}
+	\pic at (0,0) {anchor mark};
+	\pic (S) at (4,0) {deck screen};
+	\pic at (S-anchor) {anchor mark};
+	\pic at (S-undersize outlet) {node mark};
+	\pic at (S-oversize outlet) {node mark};
+	\pic at (S-top) {node mark};
+	\pic at (S-inlet) {node mark};
+	\node[below] at (S-undersize outlet) {\chpn{uo}};
+	\node[right] at (S-oversize outlet) {\chpn{oo}};
+	\node[above] at (S-top) {\chpn{t}};
+	\node[above] at (S-inlet) {\chpn{i}};
+\end{tikzpicture}
+\end{center}
+
+Besides the common nodes, special nodes are defined for stream connections. In
+the above drawing, \chpn{i} indicate the \chpn{inlet} node, which should be used
+to connect the inlet stream. On the bottom right of the unit there is the
+\chpn{oversize outlet} node, abbreviated as \chpn{oo} in the figure, while on its
+bottom there is the \chpn{undersize outlet} node, abbreviated as \chpn{uo} in the
+figure. The former have to be used to connect the leaving oversize stream, while
+the latter is for the undersize stream.
+
+\subsubsection{Rotary Screen}
+
+Another common screen is a close friend of the rotary furnace introduced in
+subsection~\ref{subsec:heahex}: the rotary screen. It is defined as a simple
+pic called \chpp{rotary screen}:
+\begin{chpcode}
+	\pic at (0,0) {rotary screen};
+\end{chpcode}
+and yields a slanted rectangle, in which centre there is the anchor, with
+sketches of the screening mesh and of the revolution movement:
+\begin{center}
+\begin{tikzpicture}
+	\pic at (0,0) {rotary screen};
+\end{tikzpicture}
+\end{center}
+
+No measures or nodes are shown in the above drawing, that is the pure symbol.
+Marking measures on a slanted unit like this one is not trivial, thus the
+\chpp{rotary screen} is reproduced as rotated here:
+\begin{center}
+\begin{tikzpicture}
+	\pic[rotate=10] (S) at (0,0) {rotary screen};
+	\measure{(-1,-0.8)}{(1,-0.8)}{\SI{20}{\mm}}
+	\measure{(-1.5,0.4)}{(-1.5,-0.4)}{\SI{8}{\mm}}
+	\measure[above]{(-0.9,0.6)}{(0,0.6)}{\SI{9}{\mm}}
+	\measure[above]{(1.7,0.3)}{(1.7,-0.3)}{\SI{6}{\mm}}
+	\pic at (S-anchor) {anchor mark};
+	\pic at (S-inlet) {node mark};
+	\pic at (S-undersize outlet left) {node mark};
+	\pic at (S-undersize outlet right) {node mark};
+	\pic at (S-oversize outlet) {node mark};
+	\node[left] at (S-inlet) {\chpn{i}};
+	\node[below] at (S-undersize outlet left) {\chpn{uol}};
+	\node[below] at (S-undersize outlet right) {\chpn{uor}};
+	\node[right] at (S-oversize outlet) {\chpn{oo}};
+\end{tikzpicture}
+\end{center}
+The measure on the right indicates the height of the rotation drum without the
+motion sketch, while the measure on the top concerns nodes.
+
+None of the common nodes are defined for the \chpn{rotary furnace}, but there are
+special nodes to be used to connect specific streams. In the above drawing,
+\chpn{i} indicates the \chpn{inlet} node, which should be used to connect the
+inlet streams. On the right of the unit there is the \chpn{oversize outlet} node,
+abbreviated as \chpn{oo} in the figure, while on its bottom there are the
+\chpn{undersize outlet left} node and the \chpn{undersize outlet right} node,
+abbreviated as \chpn{uol} and \chpn{uor} in the figure. Outlets have to be used
+as already outlined discussing the \chpn{deck screen}.
+
+\subsection{Thermal Separators}
+
+After physical separation unit operations, some more complex separation units are
+to be introduced, mainly the ones based on thermal energy supply or removal and
+aimed at separating special kinds of homogenous mixtures. (Notice that the terms
+gas and vapour will be used indiscriminately, although not properly correct.)
+
 \subsubsection{Scrubber}
 
 Another case in which the separation of a ``gas-liquid'' mixture is needed is
@@ -2793,7 +3857,7 @@
 	\measure{(-2.9,3.0)}{(-2.9,-3.0)}{\SI{30}{\mm}}
 	\measure{(-2.4,2.064)}{(-2.4,0)}{\SI{10.32}{\mm}}
 	\measure[above]{(-1.6,3.7)}{(1.6,3.7)}{\SI{16}{\mm}}
-	\measure[above]{(3.4,0)}{(3.4,-1.8)}{\SI{9}{\mm}}
+	\measure[above]{(3.4,0)}{(3.4,-1.6)}{\SI{8}{\mm}}
 	\measure[above]{(2.9,0)}{(2.9,-1.0)}{\SI{5}{\mm}}
 	\measure[above]{(2.4,0)}{(2.4,-0.4)}{\SI{2}{\mm}}
 	\draw[dashed] (4,5) -- (4,-5);
@@ -3371,7 +4435,7 @@
 where the measure on the right indicates the distance from the middle of the tank
 to the point where the curvature begins.
 
-This pic is formally analogue to the \chpp{tank}, the very first pic
+This pic is formally analogous to the \chpp{tank}, the very first pic
 introduced, but smaller. It is useful to know that the scale factor to
 ``convert'' a \chpp{tank reactor} into a \chpp{tank} is \num{1.25}. The reason
 why it is useful to know it will be explained in the future, when pics
@@ -3672,41 +4736,10 @@
 happens). Despite the extremely common fact that the same symbol is used for
 both the units, for the sake of clearance \UNICHIM\ indicates the lamination of
 a fluid through a valve using a different symbol with respect to the one used
-for regulation or interception valves.
+for regulation or interception valves. The \chpp{lamination valve} has already
+been introduced in subsection~\ref{subsec:gashan}, while this section is reserved
+to utility valves.
 
-\subsubsection{Lamination Valve}
-
-A lamination valve is a unit useful to expand a fluid, hence to reduce its
-pressure. It can be represented using a simple pic called
-\chpp{lamination valve}:
-\begin{chpcode}
-	\pic at (0,0) {lamination valve};
-\end{chpcode}
-which yields a rectangle anchored in its centre in which there is an arrow
-sketch:
-\begin{center}
-\begin{tikzpicture}
-	\pic at (-2.4,0) {lamination valve};
-	\pic at (0,0) {lamination valve};
-	\measure{(-0.2,-0.3)}{(0.2,-0.3)}{\SI{4}{\mm}}
-	\measure{(-0.4,0.1)}{(-0.4,-0.1)}{\SI{2}{\mm}}
-	\pic at (0,0) {anchor mark};
-	\pic (V) at (2.4,0) {lamination valve};
-	\pic at (V-anchor) {anchor mark};
-	\pic at (V-inlet) {node mark};
-	\pic at (V-outlet) {node mark};
-	\node[left] at (V-inlet) {\chpn{i}};
-	\node[right] at (V-outlet) {\chpn{o}};
-\end{tikzpicture}
-\end{center}
-
-Nodes defined for the \chpp{lamination valve} are particular. A lamination
-valve is a unit much more similar to a simple electric bipole, in fact it has
-only two nodes (plus the \chpn{anchor}); moreover this unit is a ``one way
-operation'', so the nodes have a simple logic: one \chpn{inlet} and one
-\chpn{outlet}. These two are indicated in the drawing above as \chpn{i} and
-\chpn{o} respectively.
-
 \subsubsection{Valve}
 
 A generic valve, intended as a a regulation valve or as an interception valve,
@@ -3843,12 +4876,47 @@
 with \verb|semithick| lines, \verb|thin| lines and \verb|very thin| lines. These
 keys should be used as arguments of the \chpp{valve quadruple} pic.
 
+\subsubsection{Check Valve}
+
+Another kind of valve allows the flow in one direction only and it is known as
+check valve. It is defined as a pic with arguments called \chpp{check valve}:
+\begin{chpcode}
+	\pic at (0,0) {check valve=main};
+\end{chpcode}
+which yields a horizontal lid valve anchored in its centre:
+\begin{center}
+\begin{tikzpicture}
+	\pic at (-2.4,0) {check valve=main};
+	\pic at (0,0) {check valve=main};
+	\measure{(-0.2,-0.3)}{(0.2,-0.3)}{\SI{4}{\mm}}
+	\measure{(-0.4,0.1)}{(-0.4,-0.1)}{\SI{2}{\mm}}
+	\pic at (0,0) {anchor mark};
+	\pic (V) at (2.4,0) {check valve=main};
+	\pic at (V-anchor) {anchor mark};
+	\pic at (V-inlet) {node mark};
+	\pic at (V-outlet) {node mark};
+	\node[left] at (V-inlet) {\chpn{i}};
+	\node[right] at (V-outlet) {\chpn{o}};
+\end{tikzpicture}
+\end{center}
+
+Nodes defined for the \chpp{check valve} follow the same logic of the ones
+defined for the \chpp{lamination valve}. Being a check valve a ``directional''
+unit, the nodes have a simple logic: one \chpn{inlet} and one \chpn{outlet}.
+These two are indicated in the drawing above as \chpn{i} and \chpn{o}
+respectively.
+
+Just like for the valve, three kinds of safety valves are defined: \chpa{main},
+\chpa{secondary} and \chpa{utility}, which are drawn respectively with
+\verb|semithick| lines, \verb|thin| lines and \verb|very thin| lines. These keys
+should be used as arguments of the \chpp{check valve} pic.
+
 \subsubsection{Safety Valve}
 
 A special kind of valve is the one used to protect a vessel against pressure
 anomalies: the safety valve. The \chemplants\ package defines a single symbols to
 represent both safety valves and relief valves. It is defined as a pic with
-arguments called \chpp{safety quadruple}:
+arguments called \chpp{safety valve}:
 \begin{chpcode}
 	\pic at (0,0) {safety valve=main};
 \end{chpcode}
@@ -3876,8 +4944,7 @@
 from the anchor to the vent.
 
 Nodes defined for the \chpp{safety valve} follow the same logic of the ones
-defined for the \chpp{lamination valve}. Being a safety valve a ``directional''
-unit, the nodes have a simple logic: one \chpn{inlet} and one \chpn{outlet}.
+defined for the \chpp{check valve}: one \chpn{inlet} and one \chpn{outlet}.
 These two are indicated in the drawing above as \chpn{i} and \chpn{o}
 respectively. The \chpn{outlet} node may be used to represent the collection of
 the discharged stream into a particular treatment circuit.
@@ -4077,7 +5144,7 @@
 \end{center}
 while an outlet is defined as a simple pic called \chpp{outlet}:
 \begin{chpcode}
-	\pic at (0,0) {output};
+	\pic at (0,0) {outlet};
 \end{chpcode}
 and yields a circle, in which centre there is the anchor, with an empty arrow
 sketch:
@@ -4418,7 +5485,7 @@
 
 Finally, some special considerations concerning associative pics used to give
 flexible representation of reactors. It has been specified that the
-\chpp{tank reactor} is analogue to the \chpp{tank} and that the scale factor to
+\chpp{tank reactor} is analogous to the \chpp{tank} and that the scale factor to
 ``convert'' the first into the second is \num{1.25}. This is useful, for
 example, if one has to represent a stirrer within a tank. The code:
 \begin{chpcode}
@@ -5530,6 +6597,35 @@
 \label{fig:absstr}
 \end{figure}
 
+\section{Acknowledgments}
+
+There is a quite long list of people I wish to thank concerning \chemplants.
+Although this project is rather personal, the package and its documentation would
+not have been what they are now without the help of the people listed here.
+
+Desi Costa offered her support on linguistics, allowing me to yield a document
+written in a decent english.
+
+Massimiliano Cailotto, Marco Sandrin and Stefano Peschiutta were perhaps the
+first users of the package when it was not of public domain yet and
+helped me spotting errors in the documentation, suggesting improvements and
+providing some complete diagrams. The experience of Massimiliano also proved
+to be very useful in selecting the most common units for processing granular
+materials.
+
+Alberto Saccardo, Nicolò Soave and Michele Cherubin were my recurring fellows
+during most of the homework we had to carry out during the Master's Degree and
+always tolerated my maniacal desiare to produce diagrams using \chemplants.
+
+I also wish to thank all of the members of the \GuIT, the Italian \TeX\ and
+\LaTeX\ users group, in particular the ones who take charge of the organisation
+of the annual group meeting. Editions of the \GuITmeeting[style=inline] have
+inspired me from the very first time I attended them and keep increasing my
+knowledge of the \TeX\ and \LaTeX\ world and my appetite for a continuous
+improvement. The passion and the support of some members I had the pleasure to
+know during the meeting are largely responsible of the development of of the
+\chemplants\ package and of its presence on the public \TeX\ distributions.
+
 \section{What Happens Next}
 
 As conceived, \chemplants\ is just a toolbox to draw in an easier way chemical
@@ -5542,7 +6638,13 @@
 define, but users are free (and invited) to send suggestion about new units
 which they would like to see in the \chemplants\ palette.
 
-Besides the mentioned modifications, I am always opened to suggestions which can
+The documentation file will also be subject to a deep review. It started out as a
+simple list of units, basically for my own use. However, as the package grew and
+new features got added, it became clear that the current structure of the
+documentation was bounding the ease of use. Hopefully, this constraint will be
+removed in future releases.
+
+Besides the mentioned modifications, I am always open to suggestions which can
 improve the functionality and usability of \chemplants. Users who have something
 to suggest, find errors and bugs or are simply happy to use this package can
 contact me writing to \mail{elia24913 at me.com} and possibly placing

Modified: trunk/Master/texmf-dist/tex/latex/chemplants/chemplants.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/chemplants/chemplants.sty	2021-09-25 17:11:59 UTC (rev 60605)
+++ trunk/Master/texmf-dist/tex/latex/chemplants/chemplants.sty	2021-09-25 21:24:39 UTC (rev 60606)
@@ -1,6 +1,6 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %% chemplants.sty
-%% Copyright 2018-2019 Elia Arnese Feffin
+%% Copyright 2018-2021 Elia Arnese Feffin
 %
 % This work may be distributed and/or modified under the
 % conditions of the LaTeX Project Public License, either version 1.3c
@@ -8,7 +8,7 @@
 % The latest version of this license is in
 % 	http://www.latex-project.org/lppl.txt
 % and version 1.3c or later is part of all distributions of LaTeX
-% version 2005/12/01 or later.
+% version 2008/05/04 or later.
 %
 % This work has the LPPL maintenance status "maintained".
 % 
@@ -22,10 +22,10 @@
 
 %:File chemplants.sty
 \NeedsTeXFormat{LaTeX2e}
-\def\chpversion{0.9.8}
-\def\chpdate{2019/11/19}
+\def\chpversion{0.9.9}
+\def\chpdate{2021/09/25}
 \ProvidesPackage{chemplants}[%
-	2019/11/19 v0.9.8 Symbology to draw chemical plants with TikZ%
+	2021/09/25 v0.9.9 Symbology to draw chemical plants with TikZ%
 ]
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -36,6 +36,7 @@
 \RequirePackage{tikz}								% The Mother of Them All
 	\usetikzlibrary{decorations.markings}			% Patch Patterns
 	\usetikzlibrary{hobby}							% Hobby's Algorithm
+	\usetikzlibrary{bending}							% Better Slanted Arrows
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
@@ -237,9 +238,9 @@
 \tikzset{tank/.pic=%
 	{%
 	\draw [chpunitstyle]
-		(-1,-0.915) to [out=270,in=270]
+		(-1,-0.915) to [out=270, in=270]
 		(1,-0.915) --
-		(1,0.915) to [out=90,in=90]
+		(1,0.915) to [out=90, in=90]
 		(-1,0.915) -- cycle;
 	\begin{scope} [scale=\chp at UnitScale]
 		\coordinate (-anchor) at (0,0);
@@ -282,8 +283,8 @@
 	\draw [chpunitstyle]
 		(-1.5,-1.5) --
 		(1.5,-1.5) --
-		(1.5,0.7) to [out=90,in=0]
-		(0,1.5) to [out=180,in=90]
+		(1.5,0.7) to [out=90, in=0]
+		(0,1.5) to [out=180, in=90]
 		(-1.5,0.7) -- cycle;
 	\begin{scope} [scale=\chp at UnitScale]
 		\coordinate (-anchor) at (0,0);
@@ -323,6 +324,25 @@
 	\end{scope}
 	}%
 }
+%:		Spherical Tank
+\tikzset{spherical tank/.pic=%
+	{%
+	\draw [chpunitstyle]
+		(0,0) circle (1.4);
+	\draw [chpunitstyle]
+		(-1.4,0) -- (-1.4,-1.5)
+		(-1.5,-1.5) -- (-1.3,-1.5)
+		(1.4,0) -- (1.4,-1.5)
+		(1.3,-1.5) -- (1.5,-1.5);
+	\begin{scope} [scale=\chp at UnitScale]
+		\coordinate (-anchor) at (0,0);
+		\coordinate (-left) at (-1.4,0);
+		\coordinate (-bottom) at (0,-1.4);
+		\coordinate (-right) at (1.4,0);
+		\coordinate (-top) at (0,1.4);
+	\end{scope}
+	}%
+}
 %:		Bell Gasholder
 \tikzset{bell gasholder/.pic=%
 	{%
@@ -333,8 +353,8 @@
 		(1.5,0.5);
 	\draw [chpunitstyle]
 		(1.45,-0.5) --
-		(1.45,0.7) to [out=90,in=0]
-		(0,1.45) to [out=180,in=90]
+		(1.45,0.7) to [out=90, in=0]
+		(0,1.45) to [out=180, in=90]
 		(-1.45,0.7) -- (-1.45,-0.50);
 	\begin{scope} [scale=\chp at UnitScale]
 		\coordinate (-anchor) at (0,0);
@@ -374,8 +394,56 @@
 	\end{scope}
 	}%
 }
+%:		Silos
+\tikzset{silos/.pic=%
+	{%
+	\draw [chpunitstyle]
+		(-0.7,-0.8) --
+		(0,-1.8) --
+		(0.7,-0.8) --
+		(0.7,1.590) to [out=90, in=90]
+		(-0.7,1.590) -- cycle;
+	\draw [chpunitstyle]
+		(-0.7,-0.8) -- (-0.7,-2)
+		(-0.8,-2) -- (-0.6,-2)
+		(0.7,-0.8) -- (0.7,-2)
+		(0.6,-2) -- (0.8,-2);
+	\begin{scope} [scale=\chp at UnitScale]
+		\coordinate (-anchor) at (0,0);
+		\coordinate (-left) at (-0.7,0);
+		\coordinate (-bottom left) at (-0.7,-0.8);
+		\coordinate (-outlet) at (0,-1.8);
+		\coordinate (-bottom right) at (0.7,-0.8);
+		\coordinate (-right) at (0.7,0);
+		\coordinate (-top right) at (0.7,1.590);
+		\coordinate (-top) at (0,2);
+		\coordinate (-top left) at (-0.7,1.590);
+	\end{scope}
+	}%
+}
+%:		Drum
+\tikzset{drum/.pic=%
+	{%
+	\draw [chpunitstyle]
+		(0.324,-0.3) to [out=0, in=0]
+		(0.324,0.3) --
+		(-0.324,0.3) to [out=180, in=180]
+		(-0.324,-0.3) -- cycle;
+	\begin{scope} [scale=\chp at UnitScale]
+		\coordinate (-anchor) at (0,0);
+		\coordinate (-left) at (-0.5,0);
+		\coordinate (-bottom left) at (-0.324,-0.3);
+		\coordinate (-bottom) at (0,-0.3);
+		\coordinate (-bottom right) at (0.324,-0.3);
+		\coordinate (-right) at (0.5,0);
+		\coordinate (-top right) at (0.324,0.3);
+		\coordinate (-top) at (0,0.3);
+		\coordinate (-top left) at (-0.324,0.3);
+	\end{scope}
+	}%
+}
 
-%:	Fluids Handling
+%:	Liquid Handling
 %:		Centrifugal Pump
 \tikzset{centrifugal pump/.pic=%
 	{%
@@ -453,6 +521,8 @@
 	\end{scope}
 	}%
 }
+
+%:	Gas Handling
 %:		Fan
 \tikzset{fan/.pic=%
 	{%
@@ -475,6 +545,25 @@
 	\end{scope}
 	}%
 }
+%:		Compressor
+\tikzset{compressor/.pic=%
+	{%
+	\draw [chpunitstyle]
+		(-0.4,-0.5) --
+		(0.4,-0.2) --
+		(0.4,0.2) --
+		(-0.4,0.5) -- cycle;
+	\begin{scope} [scale=\chp at UnitScale]
+		\coordinate (-anchor) at (0,0);
+		\coordinate (-left) at (-0.4,0);
+		\coordinate (-right) at (0.4,0);
+		\coordinate (-inlet bottom) at (-0.4,-0.5);
+		\coordinate (-outlet bottom) at (0.4,-0.2);
+		\coordinate (-outlet top) at (0.4,0.2);
+		\coordinate (-inlet top) at (-0.4,0.5);
+	\end{scope}
+	}%
+}
 %:		Centrifugal Compressor
 \tikzset{centrifugal compressor/.pic=%
 	{%
@@ -508,7 +597,7 @@
 		(0.4,0.5) arc
 		(0:180:0.4) -- cycle
 		(0.325,0.5) arc
-		(0:180:0.325) to [out=270,in=90]
+		(0:180:0.325) to [out=270, in=90]
 		(0.325,0) arc (360:180:0.325);
 	\draw [chpunitstyle]
 		(230.19:0.4) --
@@ -582,6 +671,39 @@
 	\end{scope}
 	}%
 }
+%:		Lamination Valve
+\tikzset{lamination valve/.pic=%
+	{%
+	\draw [chpunitstyle]
+		(-0.2,-0.1) rectangle (0.2,0.1)
+		(-0.2,0.1) -- (0.2,0)
+		(-0.2,-0.1) -- (0.2,0);
+	\begin{scope} [scale=\chp at UnitScale]
+		\coordinate (-anchor) at (0,0);
+		\coordinate (-inlet) at (-0.2,0);
+		\coordinate (-outlet) at (0.2,0);
+	\end{scope}
+	}%
+}
+%:		Turbine
+\tikzset{turbine/.pic=%
+	{%
+	\draw [chpunitstyle]
+		(-0.4,-0.2) --
+		(0.4,-0.5) --
+		(0.4,0.5) --
+		(-0.4,0.2) -- cycle;
+	\begin{scope} [scale=\chp at UnitScale]
+		\coordinate (-anchor) at (0,0);
+		\coordinate (-left) at (-0.4,0);
+		\coordinate (-right) at (0.4,0);
+		\coordinate (-inlet bottom) at (-0.4,-0.2);
+		\coordinate (-outlet bottom) at (0.4,-0.5);
+		\coordinate (-outlet top) at (0.4,0.5);
+		\coordinate (-inlet top) at (-0.4,0.2);
+	\end{scope}
+	}%
+}
 %:		Ejector
 \tikzset{ejector/.pic=%
 	{%
@@ -604,6 +726,224 @@
 	}%
 }
 
+%:	Solid Handling
+%:		Hopper
+\tikzset{hopper/.pic=%
+	{%
+	\draw [chpunitstyle]
+		(-0.4,0) --
+		(-0.4,-1) --
+		(-0.2,-1) --
+		(0.4,-0.4) -- (0.4,0)
+		(-0.5,0) -- (0.5,0);
+	\begin{scope} [scale=\chp at UnitScale]
+		\coordinate (-anchor) at (0,0);
+		\coordinate (-left) at (-0.4,-0.5);
+		\coordinate (-outlet) at (-0.3,-1);
+		\coordinate (-right) at (0.4,-0.4);
+	\end{scope}
+	}%
+}
+%:		Conveyor Belt
+\tikzset{conveyor belt/.pic=%
+	{%
+	\draw [chpunitstyle]
+		(-0.8,0) circle (0.2)
+		(0.8,0) circle (0.2)
+		(-0.8,-0.2) -- (0.8,-0.2)
+		(-0.8,0.2) -- (0.8,0.2);
+	\begin{scope} [scale=\chp at UnitScale]
+		\coordinate (-anchor) at (0,0);
+		\coordinate (-outlet left) at (-1,0);
+		\coordinate (-bottom) at (0,-0.2);
+		\coordinate (-outlet right) at (1,0);
+		\coordinate (-inlet right) at (0.6,0.2);
+		\coordinate (-top) at (0,0.2);
+		\coordinate (-inlet left) at (-0.6,0.2);
+	\end{scope}
+	}%
+}
+%:		Screw Conveyor
+\tikzset{screw conveyor/.pic=%
+	{%
+	\draw [chpunitstyle]
+		(-1,-0.2) rectangle (1,0.2)
+		(-1,0) -- (1,0)
+		(-0.85,0.05) --
+		(-0.7,-0.1) --
+		(-0.5,0.1) --
+		(-0.3,-0.1) --
+		(-0.1,0.1) -- 
+		(0.1,-0.1) --
+		(0.3,0.1) --
+		(0.5,-0.1) --
+		(0.7,0.1) -- (0.85,-0.05);
+	\begin{scope} [scale=\chp at UnitScale]
+		\coordinate (-anchor) at (0,0);
+		\coordinate (-left) at (-1,0);
+		\coordinate (-outlet left) at (-0.8,-0.2);
+		\coordinate (-bottom) at (0,-0.2);
+		\coordinate (-outlet right) at (0.8,-0.2);
+		\coordinate (-right) at (1,0);
+		\coordinate (-inlet right) at (0.8,0.2);
+		\coordinate (-top) at (0,0.2);
+		\coordinate (-inlet left) at (-0.8,0.2);
+	\end{scope}
+	}%
+}
+%:		Roller Conveyor
+\tikzset{roller conveyor/.pic=%
+	{%
+	\draw [chpunitstyle]
+		(-1,-0.2) --
+		(-1,0) --
+		(1,0) -- (1,-0.2)
+		(-0.9,0.1) circle (0.1)
+		(-0.6,0.1) circle (0.1)
+		(-0.3,0.1) circle (0.1)
+		(0,0.1) circle (0.1)
+		(0.3,0.1) circle (0.1)
+		(0.6,0.1) circle (0.1)
+		(0.9,0.1) circle (0.1);
+	\begin{scope} [scale=\chp at UnitScale]
+		\coordinate (-anchor) at (0,0);
+		\coordinate (-left) at (-1,0);
+		\coordinate (-right) at (1,0);
+		\coordinate (-top right) at (0.9,0.2);
+		\coordinate (-top) at (0,0.2);
+		\coordinate (-top left) at (-0.9,0.2);
+	\end{scope}
+	}%
+}
+%:		Bucket Elevator
+\tikzset{bucket elevator/.pic=%
+	{%
+	\draw [chpunitstyle]
+		(-0.15,-1) --
+		(0.15,-1) --
+		(0.15,0.7) --
+		(0.5,0.7) --
+		(0.15,1) --
+		(-0.15,1) --
+		(-0.15,-0.7) --
+		(-0.5,-0.7) -- cycle;
+	\begin{scope} [scale=\chp at UnitScale]
+		\coordinate (-anchor) at (0,0);
+		\coordinate (-left) at (-0.15,0);
+		\coordinate (-inlet) at (-0.4,-0.7);
+		\coordinate (-bottom) at (0,-1);
+		\coordinate (-right) at (0.15,0);
+		\coordinate (-outlet) at (0.4,0.7);
+		\coordinate (-top) at (0,1);
+	\end{scope}
+	}%
+}
+%:		Cylinder Crusher
+\tikzset{cylinder crusher/.pic=%
+	{%
+	\draw [chpunitstyle]
+		(-0.5,0) circle (0.4)
+		(-0.5,0.6) --
+		(-0.4,0.5) --
+		(-0.5,0.5) arc
+		(90:270:0.5) --
+		(-0.3,-0.5) -- (-0.2,-0.6)
+		(0.5,0) circle (0.4)
+		(0.2,-0.6) --
+		(0.3,-0.5) --
+		(0.5,-0.5) arc
+		(270:450:0.5) --
+		(0.4,0.5) --
+		(0.5,0.6);
+	\begin{scope} [scale=\chp at UnitScale]
+		\coordinate (-anchor) at (0,0);
+		\coordinate (-left) at (-1,0);
+		\coordinate (-outlet) at (0,-0.6);
+		\coordinate (-right) at (1,0);
+		\coordinate (-inlet) at (0,0.6);
+	\end{scope}
+	}%
+}
+%:		Hammer Crusher
+\tikzset{hammer crusher/.pic=%
+	{%
+	\draw [chpunitstyle]
+		(-0.1,0.6) --
+		(0,0.5) arc
+		(90:180:0.5) --
+		(-0.5,-0.5) --
+		(0.5,-0.5) --
+		(0.5,0.5) -- (0.6,0.6);
+	\draw [chpunitstyle, fill]
+		(0,0) circle (0.05);
+	\draw [chpunitstyle]
+		(0,0) --
+		(135:0.4)
+		++(225:0.1) -- ++(45:0.2);
+	\begin{scope} [scale=\chp at UnitScale]
+		\coordinate (-anchor) at (0,0);
+		\coordinate (-left) at (-0.5,0);
+		\coordinate (-outlet) at (-0.3,-0.5);
+		\coordinate (-bottom) at (0,-0.5);
+		\coordinate (-right) at (0.5,0);
+		\coordinate (-inlet) at (0.3,0.5);
+	\end{scope}
+	}%
+}
+%:		Mill
+\tikzset{mill/.pic=%
+	{%
+	\draw [chpunitstyle]
+		(-1,-0.4) rectangle (1,0.4)
+		(-0.5,-0.5) -- (-0.5,0.5)
+		(1,0.05) -- (1.1,0.15)
+		(1,-0.05) -- (1.1,-0.15);
+	\begin{scope} [scale=\chp at UnitScale]
+		\coordinate (-anchor) at (0,0);
+		\coordinate (-inlet) at (-1,0);
+		\coordinate (-bottom) at (0,-0.5);
+		\coordinate (-outlet) at (1,0);
+		\coordinate (-top) at (0,0.5);
+	\end{scope}
+	}%
+}
+%:		Extruder
+\tikzset{extruder/.pic=%
+	{%
+	\draw [chpunitstyle]
+		(-1,-0.3) --
+		(-0.5,-0.3) --
+		(-0.5,-0.2) --
+		(0.7,-0.2) --
+		(1,-0.15) --
+		(1,0.15) --
+		(0.7,0.2) --
+		(-0.5,0.2) --
+		(-0.5,0.5) --
+		(-0.9,0.5) --
+		(-0.75,0.2) --
+		(-1,0.2) -- cycle
+		(-1,0) -- (-0.5,0)
+		(-0.5,-0.1) --
+		(-0.5,0.1) --
+		(-0.3,-0.1) --
+		(-0.1,0.1) --
+		(0.1,-0.1) --
+		(0.3,0.1) --
+		(0.5,-0.1) --
+		(0.7,0.1) --
+		(0.8,0);
+	\begin{scope} [scale=\chp at UnitScale]
+		\coordinate (-anchor) at (0,0);
+		\coordinate (-left) at (-1,0);
+		\coordinate (-bottom) at (0,-0.2);
+		\coordinate (-outlet) at (1,0);
+		\coordinate (-top) at (0,0.2);
+		\coordinate (-inlet) at (-0.7,0.5);
+	\end{scope}
+	}%
+}
+
 %:	Heat Exchangers
 %:		Heat Exchanger
 \tikzset{heat exchanger/.pic=%
@@ -709,10 +1049,9 @@
 	{%
 	\draw [chpunitstyle]
 		(-1.0,-0.3) --
-		(0.7,-0.3) arc
-		(270:450:0.3) --
+		(0.7,-0.3) arc (270:450:0.3) --
 		(-1.0,0.3) -- cycle;
-	\foreach \i in {1, 2, ...,10} {%
+	\foreach \i in {1, 2, ..., 10} {%
 		\draw [chpunitstyle]
 			(-0.6,-0.3 + 0.06*\i) -- ++(1.2,0);
 	}
@@ -736,6 +1075,32 @@
 	\end{scope}
 	}%
 }
+%:		Tube Bundle Heat Exchanger Var
+\tikzset{tube bundle heat exchanger var/.pic=%
+	{%
+	\draw [chpunitstyle]
+		(0.7,-0.3) arc (270:450:0.3) --
+		(-0.7,0.3) arc (90:270:0.3) -- cycle;
+	\foreach \i in {1, 2, ..., 10} {%
+		\draw [chpunitstyle]
+			(-0.6,-0.3 + 0.06*\i) -- ++(1.2,0);
+	}
+	\draw [chpunitstyle]
+		(-0.6,-0.35) -- (-0.6,0.35)
+		(0.6,-0.35) -- (0.6,0.35);
+	\begin{scope} [scale=\chp at UnitScale]
+		\coordinate (-anchor) at (0,0);
+		\coordinate (-head left) at (-1.0,0);
+		\coordinate (-head right) at (1.0,0);
+		\coordinate (-shell bottom left) at (-0.5,-0.3);
+		\coordinate (-shell bottom) at (0,-0.3);
+		\coordinate (-shell bottom right) at (0.5,-0.3);
+		\coordinate (-shell top right) at (0.5,0.3);
+		\coordinate (-shell top) at (0,0.3);
+		\coordinate (-shell top left) at (-0.5,0.3);
+	\end{scope}
+	}%
+}
 %:		Plate Heat Exchanger
 \tikzset{plate heat exchanger/.pic=%
 	{%
@@ -817,8 +1182,57 @@
 	\end{scope}
 	}%
 }
+%:		Tunnel Furnace
+\tikzset{tunnel furnace/.pic=%
+	{%
+	\draw [chpunitstyle]
+		(-1.0,-0.5) --
+		(1,-0.5) --
+		(1,-0.1) --
+		(1.2,-0.1) --
+		(1.2,0.1) --
+		(1,0.1) --
+		(1,1) --
+		(-1,1) --
+		(-1,0.1) --
+		(-1.2,0.1) --
+		(-1.2,-0.1) --
+		(-1,-0.1) -- cycle;
+	\begin{scope} [scale=\chp at UnitScale]
+		\coordinate (-anchor) at (0,0);
+		\coordinate (-bottom) at (0,-0.5);
+		\coordinate (-top right) at (0.9,1);
+		\coordinate (-top) at (0,1);
+		\coordinate (-top left) at (-0.9,1);
+		\coordinate (-tunnel left) at (-1.2,0);
+		\coordinate (-tunnel right) at (1.2,0);
+	\end{scope}
+	}%
+}
+%:		Rotary Furnace
+\tikzset{rotary furnace/.pic=%
+	{%
+	\begin{scope} [rotate=-10]
+		\draw [chpunitstyle]
+			(-1,-0.3) rectangle (1,0.3);
+		\draw [chpunitstyle]
+			(-0.14772,0.069459) arc (170:50:0.15 and 0.4);
+		\draw [chpunitstyle, dotted]
+			(0.096418,0.30642) arc (50:-50:0.15 and 0.4);
+		\draw [chpunitstyle, -{\chp at StreamTip[flex]}]
+			(0.096418,-0.30642) arc (310:190:0.15 and 0.4);
+		\begin{scope} [scale=\chp at UnitScale]
+			\coordinate (-anchor) at (0,0);
+			\coordinate (-gas outlet) at (-1.0,0);
+			\coordinate (-solid outlet) at (0.9,-0.3);
+			\coordinate (-gas inlet) at (1,0);
+			\coordinate (-solid inlet) at (-0.9,0.3);
+		\end{scope}
+	\end{scope}
+	}%
+}
 
-%:	Separators
+%:	Physical Separators
 %:		Steam Trap
 \tikzset{steam trap/.pic=%
 	{%
@@ -839,9 +1253,9 @@
 \tikzset{gas-liquid separator/.pic=%
 	{%
 	\draw [chpunitstyle]
-		(-0.8,-1.032) to [out=270,in=270]
+		(-0.8,-1.032) to [out=270, in=270]
 		(0.8,-1.032) --
-		(0.8,1.032) to [out=90,in=90]
+		(0.8,1.032) to [out=90, in=90]
 		(-0.8,1.032) -- cycle;
 	\draw [chpunitstyle, densely dotted]
 			(-0.755,1.2) -- (0.755,1.2);
@@ -879,9 +1293,9 @@
 \tikzset{stratifier/.pic=%
 	{%
 	\draw [chpunitstyle]
-		(1.032,-0.8) to [out=0,in=0]
+		(1.032,-0.8) to [out=0, in=0]
 		(1.032,0.8) --
-		(-1.032,0.8) to [out=180,in=180]
+		(-1.032,0.8) to [out=180, in=180]
 		(-1.032,-0.8) -- cycle;
 	\draw [chpunitstyle]
 		(-0.9,-0.85) -- (-0.9,0.3)
@@ -921,6 +1335,122 @@
 	\end{scope}
 	}%
 }
+%:		Bag Filter
+\tikzset{bag filter/.pic=%
+	{%
+	\draw [chpunitstyle]
+		(-0.45,-1) --
+		(0,-1.4) --
+		(0.45,-1) --
+		(0.45,0.2) --
+		(-0.45,0.2) -- cycle
+		(-0.45,-1) -- (0.45,-1)
+		(-0.45,0) -- (0.45,0)
+		(-0.15,0) -- (-0.15,-1)
+		(0.15,0) -- (0.15,-1);
+	\begin{scope} [scale=\chp at UnitScale]
+		\coordinate (-anchor) at (0,0);
+		\coordinate (-top) at (0,0.2);
+		\coordinate (-inlet left) at (-0.45,0.1);
+		\coordinate (-inlet right) at (0.45,0.1);
+		\coordinate (-fluid outlet left) at (-0.45,-1);
+		\coordinate (-fluid outlet right) at (0.45,-1);
+		\coordinate (-solid outlet) at (0,-1.4);
+	\end{scope}
+	}%
+}
+%:		Filter Press
+\tikzset{filter press/.pic=%
+	{%
+	\draw [chpunitstyle]
+		(-0.9,-0.4) rectangle (0.9,0.4);
+	\foreach \i in {1, 2, ..., 17} {%
+		\draw [chpunitstyle]
+			(-0.9 + 0.1*\i,-0.4) -- ++(0,0.8);
+	}
+	\draw [chpunitstyle]
+		(-1,-0.4) --
+		(-1,-0.5) --
+		(1,-0.5) --
+		(1,-0.4);
+	\begin{scope} [scale=\chp at UnitScale]
+		\coordinate (-anchor) at (0,0);
+		\coordinate (-left) at (-0.9,0);
+		\coordinate (-right) at (0.9,0);
+		\coordinate (-top) at (0,0.4);
+		\coordinate (-solid outlet) at (0,-0.5);
+	\end{scope}
+	}%
+}
+%:		Rotary Filter
+\tikzset{rotary filter/.pic=%
+	{%
+	\draw [chpunitstyle]
+		(0,0) circle (0.5);
+	\draw [chpunitstyle, fill]
+		(0,0) circle (0.05);
+	\draw [chpunitstyle]
+		(-0.7,0) --
+		(-0.6,0) arc
+		(180:360:0.6) -- (0.5,0);
+	\begin{scope} [scale=\chp at UnitScale]
+		\coordinate (-anchor) at (0,0);
+		\coordinate (-bottom) at (0,-0.6);
+		\coordinate (-top) at (0,0.5);
+		\coordinate (-inlet) at (-0.6,0);
+		\coordinate (-solid outlet) at (0.6,0);
+	\end{scope}
+	}%
+}
+%:		Deck Screen
+\tikzset{deck screen/.pic=%
+	{%
+	\draw [chpunitstyle]
+		(-1,0) --
+		(0,-1) --
+		(1,0) --
+		(1,0.5) --
+		(-1,0.5) -- cycle
+		(-1,0) -- (1,0);
+	\draw [chpunitstyle, densely dotted]
+		(-1,0.5) -- (1,0);
+	\begin{scope} [scale=\chp at UnitScale]
+		\coordinate (-anchor) at (0,0);
+		\coordinate (-undersize outlet) at (0,-1);
+		\coordinate (-oversize outlet) at (1,0);
+		\coordinate (-top) at (0,0.5);
+		\coordinate (-inlet) at (-1,0.5);
+	\end{scope}
+	}%
+}
+%:		Rotary Screen
+\tikzset{rotary screen/.pic=%
+	{%
+	\begin{scope} [rotate=-10]
+		\draw [chpunitstyle]
+			(-1,-0.3) -- (-1,0.3)
+			(1,-0.3) -- (1,0.3);
+		\draw [chpunitstyle, densely dotted]
+			(-1,-0.3) -- (1,-0.3)
+			(-1,0.3) -- (1,0.3);
+		\draw [chpunitstyle]
+			(-0.14772,0.069459) arc (170:50:0.15 and 0.4);
+		\draw [chpunitstyle, dotted]
+			(0.096418,0.30642) arc (50:-50:0.15 and 0.4);
+		\draw [chpunitstyle, -{\chp at StreamTip[flex]}]
+			(0.096418,-0.30642) arc (310:190:0.15 and 0.4);
+		\begin{scope} [scale=\chp at UnitScale]
+			\coordinate (-anchor) at (0,0);
+			\coordinate (-inlet) at (-1,0);
+			\coordinate (-undersize outlet left) at (-0.9,-0.3);
+			\coordinate (-undersize outlet right) at (0.9,-0.3);
+			\coordinate (-oversize outlet) at (1,0);
+		\end{scope}
+	\end{scope}
+	}%
+}
+
+%:	Thermal Separators
 %:		Scrubber
 \tikzset{scrubber/.pic=%
 	{%
@@ -928,8 +1458,8 @@
 		(-0.3,-0.25) --
 		(0,-0.75) --
 		(0.3,-0.25) --
-		(0.3,0.55) to [out=90,in=0]
-		(0,0.75) to [out=180,in=90]
+		(0.3,0.55) to [out=90, in=0]
+		(0,0.75) to [out=180, in=90]
 		(-0.3,0.55) -- cycle;
 	\begin{scope} [scale=\chp at UnitScale]
 		\coordinate (-anchor) at (0,0);
@@ -947,8 +1477,8 @@
 	{%
 	\draw [chpunitstyle]
 		(-1.0,-0.3) --
-		(0.7,-0.3) to [out=0,in=270]
-		(1.0,0.2) to [out=90,in=0]
+		(0.7,-0.3) to [out=0, in=270]
+		(1.0,0.2) to [out=90, in=0]
 		(0.7,0.7) --
 		(-0.3,0.7) --
 		(-0.6,0.3) --
@@ -974,9 +1504,9 @@
 \tikzset{tube bundle evaporator/.pic=%
 	{%
 	\draw [chpunitstyle]
-		(-0.8,-1.032) to [out=270,in=270]
+		(-0.8,-1.032) to [out=270, in=270]
 		(0.8,-1.032) --
-		(0.8,1.032) to [out=90,in=90]
+		(0.8,1.032) to [out=90, in=90]
 		(-0.8,1.032) -- cycle;
 	\foreach \i in {0, 1, ..., 10} {%
 		\draw [chpunitstyle]
@@ -1006,11 +1536,11 @@
 \tikzset{basket evaporator/.pic=%
 	{%
 	\draw [chpunitstyle]
-		(-0.8,-1.032) to [out=270,in=270]
+		(-0.8,-1.032) to [out=270, in=270]
 		(0.8,-1.032) --
-		(0.8,1.032) to [out=90,in=90]
+		(0.8,1.032) to [out=90, in=90]
 		(-0.8,1.032) -- cycle;
-	\foreach \i in {1, 2, ...,19} {%
+	\foreach \i in {1, 2, ..., 19} {%
 		\draw [chpunitstyle]
 			(-0.8 + 0.08*\i,-0.9) -- ++(0,0.8);
 	}
@@ -1043,15 +1573,15 @@
 	{%
 	\draw [chpunitstyle]
 		(-0.4,0.4) --
-		(-0.4,-1.2) to [out=270,in=180]
-		(0,-1.5) to [out=0,in=270]
+		(-0.4,-1.2) to [out=270, in=180]
+		(0,-1.5) to [out=0, in=270]
 		(0.4,-1.2) -- (0.4,0.4)
 		(0.4,0.3) --
 		(0.8,0.6) --
-		(0.8,1.032) to [out=90,in=90]
+		(0.8,1.032) to [out=90, in=90]
 		(-0.8,1.032) --
 		(-0.8,0.6) -- (-0.4,0.3);
-	\foreach \i in {1, 2, ...,10} {%
+	\foreach \i in {1, 2, ..., 10} {%
 		\draw [chpunitstyle]
 			(-0.4 + 0.08*\i,-1.2) -- ++(0,1.5);
 	}
@@ -1088,7 +1618,7 @@
 		(-0.8,-1.032) --
 		(0,-1.5) --
 		(0.8,-1.032) --
-		(0.8,1.032) to [out=90,in=90]
+		(0.8,1.032) to [out=90, in=90]
 		(-0.8,1.032) -- cycle;
 	\foreach \i in {0, 1, ..., 10} {%
 		\draw [chpunitstyle]
@@ -1119,14 +1649,14 @@
 		(-0.8,-1.032) --
 		(0,-1.5) --
 		(0.8,-1.032) --
-		(0.8,1.032) to [out=90,in=90]
+		(0.8,1.032) to [out=90, in=90]
 		(-0.8,1.032) -- cycle;
 	\draw [chpunitstyle, yshift=-0.25cm, xslant=0.285]
 		(0,1.75) --
-		(0,0) to [out=150,in=90]
-		(-0.5,0) to [out=270,in=210]
-		(0,0) to [out=30,in=90]
-		(0.5,0) to [out=270,in=330] (0,0);
+		(0,0) to [out=150, in=90]
+		(-0.5,0) to [out=270, in=210]
+		(0,0) to [out=30, in=90]
+		(0.5,0) to [out=270, in=330] (0,0);
 	\begin{scope} [scale=\chp at UnitScale]
 		\coordinate (-anchor) at (0,0);
 		\coordinate (-bottom left) at (-0.8,-1.032);
@@ -1149,9 +1679,9 @@
 	code=%
 		{%
 		\draw [chpunitstyle]
-			(-0.5,-2.7) to [out=270,in=270]
+			(-0.5,-2.7) to [out=270, in=270]
 			(0.5,-2.7) --
-			(0.5,2.7) to [out=90,in=90]
+			(0.5,2.7) to [out=90, in=90]
 			(-0.5,2.7) -- cycle;
 		\ifthenelse{\equal{#1}{empty}}{%
 			\relax%
@@ -1213,16 +1743,16 @@
 \tikzset{stirred reactor/.pic=%
 	{%
 	\draw [chpunitstyle]
-		(-0.8,-0.732) to [out=270,in=270]
+		(-0.8,-0.732) to [out=270, in=270]
 		(0.8,-0.732) --
-		(0.8,0.732) to [out=90,in=90]
+		(0.8,0.732) to [out=90, in=90]
 		(-0.8,0.732) -- cycle;
 	\draw [chpunitstyle, yshift=-0.25cm, xslant=0.285]
 		(0,1.75) --
-		(0,0) to [out=150,in=90]
-		(-0.5,0) to [out=270,in=210]
-		(0,0) to [out=30,in=90]
-		(0.5,0) to [out=270,in=330] (0,0);
+		(0,0) to [out=150, in=90]
+		(-0.5,0) to [out=270, in=210]
+		(0,0) to [out=30, in=90]
+		(0.5,0) to [out=270, in=330] (0,0);
 	\begin{scope} [scale=\chp at UnitScale]
 		\coordinate (-anchor) at (0,0);
 		\coordinate (-left) at (-0.8,0);
@@ -1272,7 +1802,7 @@
 		(0.2,-1.2) --
 		(0.2,-0.8) --
 		(0.8,-0.4) --
-		(0.8,0.732) to [out=90,in=90]
+		(0.8,0.732) to [out=90, in=90]
 		(-0.8,0.732) -- cycle;
 	\begin{scope} [scale=\chp at UnitScale]
 		\coordinate (-anchor) at (0,0);
@@ -1291,9 +1821,9 @@
 \tikzset{tube bundle reactor/.pic=%
 	{%
 	\draw [chpunitstyle]
-		(-0.8,-0.732) to [out=270,in=270]
+		(-0.8,-0.732) to [out=270, in=270]
 		(0.8,-0.732) --
-		(0.8,0.732) to [out=90,in=90]
+		(0.8,0.732) to [out=90, in=90]
 		(-0.8,0.732) -- cycle;
 	\foreach \i in {1, 2, ...,19} {%
 		\draw [chpunitstyle]
@@ -1320,9 +1850,9 @@
 \tikzset{tank reactor/.pic=%
 	{%
 	\draw [chpunitstyle]
-		(-0.8,-0.732) to [out=270,in=270]
+		(-0.8,-0.732) to [out=270, in=270]
 		(0.8,-0.732) --
-		(0.8,0.732) to [out=90,in=90]
+		(0.8,0.732) to [out=90, in=90]
 		(-0.8,0.732) -- cycle;
 	\begin{scope} [scale=\chp at UnitScale]
 		\coordinate (-anchor) at (0,0);
@@ -1343,11 +1873,11 @@
 	\draw [chpunitstyle]
 		(-0.8,0.7) --
 		(-1.0,0.5) --
-		(-1.0,-0.732) to [out=270,in=180]
+		(-1.0,-0.732) to [out=270, in=180]
 		(-0.15,-1.3) -- (-0.1,-1.2)
 		(0.8,0.7) --
 		(1.0,0.5) --
-		(1.0,-0.732) to [out=270,in=0]
+		(1.0,-0.732) to [out=270, in=0]
 		(0.15,-1.3) -- (0.1,-1.2);
 	\begin{scope} [scale=\chp at UnitScale]
 		\coordinate (-anchor) at (0,0);
@@ -1365,10 +1895,10 @@
 	{%
 	\draw [chpunitstyle, yshift=-0.25cm, xslant=0.285]
 		(0,1.75) --
-		(0,0) to [out=150,in=90]
-		(-0.5,0) to [out=270,in=210]
-		(0,0) to [out=30,in=90]
-		(0.5,0) to [out=270,in=330] (0,0);
+		(0,0) to [out=150, in=90]
+		(-0.5,0) to [out=270, in=210]
+		(0,0) to [out=30, in=90]
+		(0.5,0) to [out=270, in=330] (0,0);
 	\begin{scope} [scale=\chp at UnitScale]
 		\coordinate (-anchor) at (0,0);
 		\coordinate (-shaft) at (0.5,1.5);
@@ -1449,20 +1979,6 @@
 %: Process Utilities
 
 %:	Valves
-%:		Lamination Valve
-\tikzset{lamination valve/.pic=%
-	{%
-	\draw [chpunitstyle]
-		(-0.2,-0.1) rectangle (0.2,0.1)
-		(-0.2,0.1) -- (0.2,0)
-		(-0.2,-0.1) -- (0.2,0);
-	\begin{scope} [scale=\chp at UnitScale]
-		\coordinate (-anchor) at (0,0);
-		\coordinate (-inlet) at (-0.2,0);
-		\coordinate (-outlet) at (0.2,0);
-	\end{scope}
-	}%
-}
 %:		Valve
 \tikzset{pics/valve/.style=%
 	{%
@@ -1583,6 +2099,44 @@
 		}%
 	}%
 }
+%:		Check Valve
+\tikzset{pics/check valve/.style=%
+	{%
+	code=%
+		{%
+		\ifthenelse{\equal{#1}{main}}{%
+			\let\chp at ValveThickness\chp at MainStreamThickness%
+		}%
+		{%
+			\relax%
+		}
+		\ifthenelse{\equal{#1}{secondary}}{%
+			\let\chp at ValveThickness\chp at SecondaryStreamThickness%
+		}%
+		{%
+			\relax%
+		}
+		\ifthenelse{\equal{#1}{utility}}{%
+			\let\chp at ValveThickness\chp at UtilityStreamThickness%
+		}%
+		{%
+			\relax%
+		}
+		\draw [\chp at ValveThickness, scale=\chp at UnitScale]
+			(-0.2,-0.1) --
+			(-0.2,0.1) -- 
+			(0.2,-0.1) --
+			(0.2,0.1);
+		\draw [\chp at ValveThickness, fill, scale=\chp at UnitScale]
+			(-0.2,0.1) circle (0.05);
+		\begin{scope} [scale=\chp at UnitScale]
+			\coordinate (-anchor) at (0,0);
+			\coordinate (-inlet) at (-0.2,0);
+			\coordinate (-outlet) at (0.2,0);
+		\end{scope}
+		}%
+	}%
+}
 %:		Safety Valve
 \tikzset{pics/safety valve/.style=%
 	{%



More information about the tex-live-commits mailing list.