summaryrefslogtreecommitdiff
path: root/389/CH10/EX10.6/Example10_6.sce
blob: b365b5a23b82a69a58a57f7d0a39cce9746dbfa3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
clear;
clc;

// Illustration 10.6
// Page: 516

printf('Illustration 10.6 - Page: 516\n\n');

// solution

//****Data****//
// a:heptane b:p-chloronitrobenzene c:o-chloronitrobenzene d:aq. methanol
xb = 0.4;// [Wt fraction]
xC = 0.60;// [Wt fraction]
F = 100;// [kg]
// The para isomer(b) favours the heptane(a) and the ortho isomer(c) favours the methanol(d).
// Basis: 1 hour.
A = 2400;// [kg/h]
D = 2760;// [kg/h]
xbW = 0.8;// [Wt fraction]
xbZ = 0.15;// [Wt fraction]
kb=1.35;
kc=0.835;
//*******//

B = xb*F;// [kg]
C = F-B;// [kg]
// W = kg A rich product, after solvent removal
// Z = kg D rich product, after solvent removal
// B balance:
// (1): (0.80*W)+(0.15*Z) = B
// C balance:
// (2): (0.20*W)+(0.85*Z) = C
// Solving (1) & (2) simultaneously:
a = [0.80 0.15;0.20 0.85];
b = [B;C];
soln = a\b;
W = soln(1);
Z = soln(2);
Wb = xbW*W;// [kg]
Wc = W-Wb;// [kg]
Zb = xbZ*Z;// [kg]
Zc = Z-Zb;// [kg]
xB1_prime = Zb/D;
xC1_prime = Zc/D;
yB1_prime = Wb/D;
yC1_prime = Wc/D;
DbyA = D/A;
// Equilibrium curve:
// First distribution coeffecient: yB_star/xB_prime = 1.35
deff('[y] = f68(x1)','y = kb*x1');
x1 = 0:0.01:0.06;
// Second distribution coeffecient: yC_star/xC_prime = 0.835
deff('[y] = f69(x2)','y = kc*x2');
x2 = 0:0.01:0.06;
// Operating Line, corresponding to First distribution coeffecient:
deff('[y] = f70(x3)','y = (DbyA*x3)+yB1_prime');
x3 = 0:0.01:0.06;
deff('[y] = f71(x4)','y = DbyA*(x4-xB1_prime)');
x4 = 0:0.01:0.06;
// Operating Line, corresponding to Second distribution coeffecient:
deff('[y] = f72(x5)','y = (DbyA*x5)+yC1_prime');
x5 = 0:0.01:0.06;
deff('[y] = f73(x6)','y = (DbyA)*(x6-xC1_prime)');
x6 = 0:0.01:0.06;
scf(27);
plot(x1,f68,x3,f70,x4,f71);
xgrid();
legend("Equilibrium curve","Operating curve","Operating curve");
xlabel("xB_prime");
ylabel("yB_prime");
title("yB_star/xB_prime = 1.35");
a1 = gca();
a1.data_bounds = [0 0;0.05 0.07];
scf(28);
plot(x2,f69,x5,f72,x6,f73);
xgrid();
legend("Equilibrium curve","Operating curve","Operating curve");
xlabel("xC_prime");
ylabel("yC_prime");
title("yC_star/xC_prime = 0.835");
a2 = gca();
a2.data_bounds = [0 0;0.06 0.07];
// The stages are constructed.
// The feed matching is shown on Fig. 10.37 (Pg 518):
f_prime = 6.6;
fstage = 4.6;
printf("Number of ideal stage is %f\n",fstage+f_prime-1);
printf("The feed stage is %fth from the solvent-D inlet\n",fstage);