Abstract
When developing, analyzing, and optimizing chemical production technologies, one should first calculate the material and heat balances in order to quantify the products and wastes produced, the reagents and energy consumed, as well as to determine characteristics of equipment required. Thus, balance calculation helps to perform primary analysis of technology feasibility and to obtain initial data for estimation of capital and operational costs. Calculating material balance for the series-connected apparatus working in a steady-state mode is a trivial problem. For the process flowcharts with branching and recycled flows, however, calculations get more complicated. Iterative method of calculation with termination of iterations when convergence condition is met is frequently used to calculate the material balance of flowcharts with recycled flows. This method has several limitations, namely the increase in computational time, iterative accumulation of errors, possible oscillations of solution, etc. In complex flowcharts, branching and recycled flows often lead to internal cycles. For this reason, the more complex is the flowchart, the stronger is the influence of iterative method limitations that are mentioned above. This work is aimed to validate and improve material balance calculation for complex chemical process flowcharts with branching and recycled flows. We introduce the analytical solution instead of iterative algorithm used to perform such calculations and propose methods for convolution of straight, branched, and cycled segments of these flowcharts.
Similar content being viewed by others
Avoid common mistakes on your manuscript.
1 Introduction
Material and heat balance calculation is essential for chemical technology assessment. It helps to quantify all reagents, outputs, wastes, intermediate components, as well as to determine the heat flows between all the process-line nodes. In the simplest case, the balance of the process line comprising apparatus connected in series is calculated straightforward, which means that one knows the quantity of input flows at the first node and can sequentially calculate the quantities of output flows at every next node. For process flowcharts with branching and recycled flows, material balance calculation is more complicated. The most obvious method for calculating material balance with recycled flows is to perform sequential iterative calculation of balances at each node while tracking the changes in estimated values and terminating the computations when certain convergence condition is met. This method has been implemented in the ATEK software platform [1] intended for simulation of nuclear fuel cycle technologies and the ATEK-based software package VIZART [2] that was developed to simulate radiochemical production processes. The limitations of this method include the increase in computational time, iterative accumulation of errors, and possible oscillations of solution that violate convergence condition. These limitations have practically no influence when calculating simple process flowcharts but have a significant effect if system under consideration gets more complex. The analytical solution is proposed in order to improve calculation procedure and to remove the above limitations.
2 Assumptions made
For mathematical representation, let us assign a separate flow in the balance flowchart to each individual component (pure substance or mixing element), heat or energy flow entering or leaving the node. For the sake of simplicity, it is proposed to exclude from consideration time dependences and kinetic aspects of processes. Then, the problem of material and heat balance calculation for the process flows can be stated as follows: calculate the quantities of all intermediate and output flows at each node if the quantities of input flows and the laws of their transformation are known. In the simplest case, transformation at the node can be represented by the linear operator, i.e. the matrix.
This approach can be developed further. If we know the quantities of some reagents needed to run a process at the node and the quantities of other reagents that are available in any amount can be determined stoichiometrically, the corresponding flows can be represented as the output flows with negative quantities.
3 Linear flowchart
Taking into account the assumptions made, we consider a flowchart that consists of several successive nodes each having a number of inputs and outputs. Output flows of some nodes are the input flows of the next following nodes. Flows can arrive at the node from the outside or leave the flowchart. An example of such flowchart is given in Fig. 1.
Flow transformations taking place at each node can be written as
where F is a row-vector of input flows, M is a matrix with coefficients that characterize transformation of flows, P is a row-vector of the output flows. In the general case, the number of input flows is not necessarily equal to the number of output flows. For each node, input flow vector F can be written as a sum
where N is a vector of flows arriving at a certain node from a previous one, B is a vector of flows that arrive at this node from the outside. The flows that come from the outside are considered to be constants. Since the number of flows leaving the kth node is not necessarily equal to the number of flows entering the (k+1)th node, we need to match the dimensions of corresponding vectors and matrices in order to generalize the calculation procedure. For this purpose, we propose to write down both the flows leaving the kth node and the flows entering the (k+1)th node in the form of vectors of general dimension nG
where nO(k) is the number of flows leaving the kth node, nI(k+1) is the number of flows entering the (k+1)th node, nI/O(k) is the number of flows leaving the kth node and entering the (k+1)th node. In this case, components of vector Pk that correspond to the indexes of flows arriving at the next node from the outside are equal to zeroes. If so, at the kth node, the columns of matrix M that correspond to the indexes of flows arriving at the (k+1)th node from the outside should be zeroes. Likewise, at the (k+1)th node, the rows of matrix M that correspond to the flows leaving the flowchart after the kth node should also be zeroes. Components of vector B, except for those that correspond to the indexes of flows arriving at the node from the outside, are equal to zeroes.
So, as the nodes are connected in series, we have
where k is the number of the node. For the first node, vector N1 is a zero vector.
Let us consider an example with a flowchart shown in Fig. 1. According to the flow indexing, vectors N,P, and B, as well as matrices M can be written as
According to Eqs. (1) and (2),
According to Eqs. (17) and (3),
In a similar way, the expression for the kth node of an arbitrary linear flowchart having no recycled flows can be written as
This expression can be written in concise form:
where M* is the matrix that describes transformation of flows at all nodes of linear flowchart segment under consideration, B* is the vector that describes all the flows arriving at the nodes of this linear segment from the outside while taking into account transformations at all the next following nodes:
where k is the number of nodes of the linear segment under consideration.
4 Flowchart with branching
As it was shown earlier, arbitrary linear segment of a flowchart can be represented as a single node with output flows related to the input flows by Eq. (20). For the flowchart with branching (Fig. 2), parallel segments can be replaced by successive ones in such a way that flows bypassing the node would go unchanged through a new ‘effective’ node.
In Fig. 2, flow 2 bypasses the node 2 and enters the node 3 while flow 1 bypasses the node 3 and enters the node 2. After that both flows enters node 4. Figure 3 shows linear analogue of this flowchart when input flow 2 goes through the node 2 without any changes and in a similar manner, input flow 1 goes unchanged through the node 3.
5 Flowchart with cycle
In the previous section we have shown that flowchart segment with branching can be represented as a linear segment which, in its turn, can be represented as a single node. Then, if several output flows of this single node possibly representing a certain complex flowchart are redirected to its input, we can obtain a flowchart similar to that given in Fig. 4.
Let us now apply the above dimensions-matching method proposed for the input and output flow vectors to a single node. We can say that this node is adjacent to itself due to the presence of recycled flows. Then, according to Eq. (20), the expression describing the output flow vector N can be written in the recurrent form as
where k is the step number in the iterative flowchart calculation. Similarly, for (k + 2), we have
Then, the explicit formula for the (k + 1)th step can be written as
According to dimensions-matching method, all the columns of matrix M* that correspond to the indexes of input flows arriving from the outside should contain zeroes. All the rows of matrix M* that correspond to the indexes of flows that leave the flowchart should also contain zeroes.
For notational convenience, let Fo be a set of flows arriving from the outside and To be a set of flows leaving the flowchart. For the flowchart given in Fig. 2, matrix M* is as follows
Then, when raising the matrix M* to the integral power greater that unity, the values of elements \({\left({\mathbf{M}}^{*}\right)}_{i\epsilon Fo,j\epsilon To}^{n}\) are determined by the values of other elements rather than by the values corresponding to (n–1)th power. The values of elements \({\left({\mathbf{M}}^{*}\right)}_{i\epsilon Fo,j\notin (To\cup Fo)}^{n}\) and \({\left({\mathbf{M}}^{*}\right)}_{i\notin \left(To\cup Fo\right),j\epsilon To}^{n}\) are constrained by the values of elements \({\left({\mathbf{M}}^{*}\right)}_{i\notin \left(To\cup Fo\right),j\notin (To\cup Fo)}^{n}\). Hence, all the non-zero elements of matrix (M*)n depend on the elements \({\left({\mathbf{M}}^{*}\right)}_{i\notin \left(To\cup Fo\right),j\notin (To\cup Fo)}^{n}\) that can be used to construct matrix Q of the following form
If spectral radius Q satisfies
we have
Correspondingly, for matrix M*, we have
Then, according to Eq. (25),
Equation (31) represents a sum of geometric series. If Eq. (28) is true, this sum converges:
where I is the unity matrix.
It follows form Eq. (32) that if (28) is true, iterative calculation of material balance of the flowchart with recycled flow reduces to solving Eq. (32) that does not depend on initial values set for recycled flows. If the quantities of recycled flows are of no importance, we can write Eq. (32) in the form of Eq. (1) where F represents B* and M represents \({\left(\mathbf{I}-{\mathbf{M}}^{*}\right)}^{-1}\); this means that the flowchart segment with recycled flows can be represented as a single node having no recycled flows. If the intermediate flow values are needed, one can use Eq. (32) to find an asymptotic solution for the flows that are external with respect to the cycle and perform an iteration of sequential calculations.
In fact, Eq. (28) implies a non-zero take-off from the recycled flows which results in the negative feedback when talking about these flows.
6 Sample calculation for the flowchart with cycle
As an example, we calculated material balance for the flowchart shown in Fig. 4. In our calculations, we used the following initial data:
Figure 5 shows the results obtained both by iterative method and using Eq. (32). Iterative calculations were performed by Eq. (23). The markers (symbols) given in Fig. 5 are used to indicate data calculated by Eq. (32).
Figure 5 shows that when applying iterative method, stationary values obtained using Eq. (32) can be approached by performing 150 iterations. As flows 1 and 2 shown in the flowchart in Fig. 4 arrive from the outside, the corresponding columns of matrix M* are zero columns. Consequently, the values calculated for these flows are also zeroes. In this example, matrix M* satisfies Eq. (28).
7 Conclusions
The paper presents a method to describe steady-state process flowcharts that ignores time dependences and kinetic aspects of the processes. It is shown that linear flowchart segment as well as flowchart segment with branching or recycled flows can be represented as a single node. Formula used to obtain asymptotic solution for iterative calculations is proposed. We introduce a convergence criterion and show that there exists a solution when this convergence condition is satisfied.
Reference
S. Tretyakova, O. Shmidt, T. Podymova, A. Shadrin, V. Tkachenko, I. Makeyeva, O. Verbitskaya, O. Schultz, I. Peshkichev, Spent nuclear fuel reprocessing modeling, International Nuclear Fuel Cycle Conference (GLOBAL 2013: Nuclear Energy at a Crossroads), 1447–1453 (2013)
I.R. Makeeva, O.V. Shmidt, S.G. Tretyakova, YuA Evsyukova, V.G. Dubosarsky, VYu Pugachev, A.A. Rykunova, Software package VIZART for balance calculation of material flows for nuclear fuel cycle technologies. At. Energ. 122(2), 88–92 (2017)
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Shults, O.V. Method for calculating material balance of complex process flowcharts. J Math Chem 58, 1281–1290 (2020). https://doi.org/10.1007/s10910-020-01129-y
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10910-020-01129-y