Message Boards Message Boards


Solve a metallurgical mass balance (system of 7 equations with 7 unknowns)?

Posted 5 years ago
3 Replies
0 Total Likes

I'm currently trying to solve a mass balance useful in metallurgical processing.

There are 4 ingoing streams (streams "c", "f","h" and "o") and 3 outgoing streams ("m", "e" and "s") and 5 chemical elements: Cu, Fe, S, O, and Si. The components are written as moles/100g of the respective stream.

The compositions of streams "m", "s", "o", "f" and "h" are known, but the Fe, Si and O content of stream "e" is unknown. The O content of it can be obtained by charge balance, given that the oxidation states are: Cu =+1, Fe= x (+2<x<+3), Si=+4, S= -2, O = -2.

Note: The vector "A" is the vector of atomic weights, useful because the dot product of it and the composition vector of any stream must be 1 (i.e the sum of mass % of all components must be 100%). The factor "R" is the (known) iron/silicon ratio of stream "e"

The equation I am trying to solve is the following lineal system:

Fee = Sie*R
Oe = (Cue*1 + Fee*x + Sie*4 - Se*2)/2
m = {Cum, Fem, Sm, Om, Sim }
e = {Cue,  Fee, Se, Oe, Sie }
c = {Cuc, Fec, Sc, Oc, Sic }
f = {Cuf, Fef, Sf, Of, Sif }
h = {Cuh, Feh, Sh, Oh, Sih }
s = {0, 0, Ss, 2 Ss, 0 }
o = {0, 0, 0, Oo, 0 }
A = {ACu,  AFe, AS, AO, ASi }
Solve[{Mm*m + Me*e + Ms*s == Mc*c +Mf*f +Mh*h +Mo*o, 
  Mm + Me + Ms == Mc +Mf +Mh +Mo , e.A == 1}, {Mm, Me, Mf, Mh, Ms, 
  Mo, Sie}, Reals]

Unfortunately, the program does not run, even after a week of trying to symplify/rearrange the equations. I cannot find the mistake, it should run as a system of 7 equations with 7 unknowns. Perhaps there is some (implicit) unknown variable or equation redundant or missing in the system of equations. The unknown variables should be the following:

Mm, Me, Ms, Mo, Mf, Mh = masses Mi of the streams "m", "s", "o", "f" , "h" and "e"

Sie = silicon concentration in stream "e"

Thank you in advance for your help,


3 Replies

You're looking for an analytic solution to something with ~30 variables?

What I want is to obtain a solution for just 7 unknowns, all the other "variables" are fixed, either assumed or taken from the periodic table. For the purposes of calculation in Mathematica, the ~30 "variables" should be treated as input constants:

The vector A = {ACu, AFe, AS, AO, ASi } contain the fixed atomic weights from the periodic table, and all the concentrations are input data, except the following 3 ones: Oe, Sie and Fee.

What I want is a a general solution so I can copy it to an EXCEL worksheet (after symplifying the resulting expressions, of course). There I could put as input the values of the element concentrations and the other parameters.



If you don't fill in those other 20-something 'variables' it will need to invert a large symbolic matrix, which is very very complicated (perhaps impossible?). You need those atomic weights and so on filled in.

Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
or Discard

Group Abstract Group Abstract