summaryrefslogtreecommitdiff
path: root/Mass_Transfer_Operations_by_R_E_Treybal/5-Interphase_Mass_Transfer.ipynb
diff options
context:
space:
mode:
Diffstat (limited to 'Mass_Transfer_Operations_by_R_E_Treybal/5-Interphase_Mass_Transfer.ipynb')
-rw-r--r--Mass_Transfer_Operations_by_R_E_Treybal/5-Interphase_Mass_Transfer.ipynb264
1 files changed, 264 insertions, 0 deletions
diff --git a/Mass_Transfer_Operations_by_R_E_Treybal/5-Interphase_Mass_Transfer.ipynb b/Mass_Transfer_Operations_by_R_E_Treybal/5-Interphase_Mass_Transfer.ipynb
new file mode 100644
index 0000000..03ca1da
--- /dev/null
+++ b/Mass_Transfer_Operations_by_R_E_Treybal/5-Interphase_Mass_Transfer.ipynb
@@ -0,0 +1,264 @@
+{
+"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 5: Interphase Mass Transfer"
+ ]
+ },
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 5.1: Local_overall_mass_transfer_coeffecient.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"clear;\n",
+"clc;\n",
+"\n",
+"// Illustration 5.1\n",
+"// Page: 114\n",
+"\n",
+"printf('Illustration 5.1 - Page: 114\n\n');\n",
+"\n",
+"// solution\n",
+"\n",
+"//***Data***//\n",
+"// a = NH3, b = H2O\n",
+"d = 2.54*10^(-2);// [m]\n",
+"Yag = 0.80;\n",
+"Xal = 0.05;\n",
+"T = 273+26.7;// [K]\n",
+"Kl = 2.87*10^(-5);// [kmol/square m.s.(kmol/cubic m)]\n",
+"Sh = 40;\n",
+"Da = 2.297*10^(-5);// [square m.s]\n",
+"P = 1.0133*10^(5);// [N/square m]\n",
+"Xbm = 1.0;\n",
+"//*********//\n",
+"\n",
+"Ma = 18;// [kg/kmol]\n",
+"// Liquid:\n",
+"// Because of large conc. of ammonia in gas F's rather than k's are used.\n",
+"// Molecular weight of water and ammonia are nearly same.\n",
+"// The density of the solution is practically that of water.\n",
+"MolarDensity1 = 1000/Ma;// [kmol/cubic m]\n",
+"// Kl is determined for dilute soln. where Xbm is practically 1.0\n",
+"Fl = Kl*Xbm*MolarDensity1;// [kmol/square m.s]\n",
+"Ma = 18;// [kg-/kmol]\n",
+"// Gas:\n",
+"MolarDensity2 = (1/22.41)*(273/(273+26.7));// [kmol/cubic m]\n",
+"Fg = Sh*MolarDensity2*Da/d;// [kmol/square m.s]\n",
+"\n",
+"// Mass Transfer Flux\n",
+"// Th eqb. distribuion data for NH3 from 'The Chemical Engineers Handbook' 5th Edt. p3-68:\n",
+"// Data = [Xa,pa]\n",
+"// Xa = NH3 mole fraction in gas phas\n",
+"// pa = NH3 partial pressure in N/square m\n",
+"Data = [0 0;0.05 7171;0.10 13652;0.25 59917;0.30 93220];\n",
+"// Ya_star = mole fraction of NH3 in gas phase at eqb.\n",
+"Ya_star = zeros(5);\n",
+"for i = 1:5\n",
+" Ya_star(i) = (Data(i,2)/P);\n",
+"end\n",
+"// For transfer of only one component\n",
+"Na_by_SummationN = 1.0;\n",
+"Ya = zeros(5);\n",
+"for i = 1:5\n",
+" Ya(i) = 1-((1-Yag)*(1-Xal)/(1-Data(i)));\n",
+"end\n",
+"scf(0);\n",
+"plot(Data(:,1),Ya_star,Data(:,1),Ya);\n",
+"xgrid();\n",
+"xlabel('Xa = mole fraction of NH3 in liquid phase');\n",
+"ylabel('Ya = mole fraction of NH3 in gas phase');\n",
+"legend('equilibrium line','operating line');\n",
+"title('Ya Vs Xa');\n",
+"\n",
+"// From intersection of operating line & Eqb. line\n",
+"Xai = 0.274;\n",
+"Yai = 0.732;\n",
+"\n",
+"// From Eqn.5.20\n",
+"Na = Na_by_SummationN*Fg*log((Na_by_SummationN-Yai)/(Na_by_SummationN-Yag));// [kmol NH3 absorbed/square m.s]\n",
+"printf('Local mass transfer flux for ammonia is %e kmol/square m.s',Na);"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 5.2: Stages_and_Mass_Transfer_Rates.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"clear;\n",
+"clc;\n",
+"\n",
+"// Illustration 5.2\n",
+"// Page: 130\n",
+"\n",
+"printf('Illustration 5.2 - Page: 130\n\n');\n",
+"\n",
+"// solution\n",
+"\n",
+"//****Data***//\n",
+"// Eqb. data\n",
+"// Data = [Wt% of moisture in the soap,Partial pressure of water in air(mm Hg)]\n",
+"Data = [0 0;2.40 9.66;3.76 19.20;4.76 28.4;6.10 37.2;7.83 46.4;9.90 55.0; 12.63 63.2;15.40 71.9;19.02 79.5];\n",
+"P = 760;// [mm Hg]\n",
+"// Initial air\n",
+"p1 = 12;// [mm Hg]\n",
+"T = 273+75;// [K]\n",
+"//******//\n",
+"\n",
+"// Y = kg water/kg dry air\n",
+"// X = kg water/kg dry soap\n",
+"// E = Air water phase\n",
+"// R = Soap water phase\n",
+"Y = zeros(10);\n",
+"X = zeros(10);\n",
+"for i = 1:10\n",
+" Y(i) = Data(i,2)/(P-Data(i,2))*(18.02/29);\n",
+" X(i) = Data(i,1)/(100-Data(i,1));\n",
+"end\n",
+"\n",
+"printf('Illustration 5.2 (a)\n\n');\n",
+"\n",
+"// Soln. (a)\n",
+"// First operation\n",
+"Y1 = p1/(P-p1);// [kg water/kg dry soap]\n",
+"// Initial Soap\n",
+"S1 = 16.7/(100-16.7);// [kg water/kg dry soap]\n",
+"// Final soap\n",
+"S2 = 13/(100-13);// [kg water/kg dry soap]\n",
+"Rs = 10*(1-0.167);// [kg dry soap]\n",
+"// Using ideal gas law\n",
+"Es = 10*((760-p1)/760)*(273/T)*(29/22.41);// [kg dry air]\n",
+"slopeOperat = -Rs/Es;\n",
+"\n",
+"deff('[y] = f2(x)','y = slopeOperat*(x-S1)+Y1')\n",
+"x = S1:-0.01:S2;\n",
+"\n",
+"// Second Operation\n",
+"X1 = S2;\n",
+"scf(1);\n",
+"deff('[y] = f3(S)','y = slopeOperat*(S-X1)+Y1');\n",
+"S = 0:0.01:S1;\n",
+"plot(X,Y,x,f2,S,f3);\n",
+"xlabel('kg water / kg dry soap');\n",
+"ylabel('kg water / kg dry air');\n",
+"legend('Equilibrium line','First Process','Second Process');\n",
+"a = get('current_axes');\n",
+"tight_limits = 'on';\n",
+"a.data_bounds = [0 0;0.24 0.08];\n",
+"xgrid();\n",
+"title('Illustration 5.2(a)')\n",
+"// Results for First Process\n",
+"// The condition at abcissa S2 correspond to the end of first operation\n",
+"printf('Conditions corresponding to First Operation \n')\n",
+"printf('X = %f kg water/kg dry soap\n',S2);\n",
+"printf('Y = %f kg water/kg dry air\n',f2(S2));\n",
+"\n",
+"// Results for Second Process\n",
+"// The point at which the line meets the equilibrium line corresponds to the final value\n",
+"X2 = 0.103;\n",
+"Y2 = (X2/(1+X2));\n",
+"printf('Final moisture content of soap is %f %%\n\n',Y2*100);\n",
+"\n",
+"printf('Illustration 5.2 (b)\n\n');\n",
+"\n",
+"// Solution (b)\n",
+"\n",
+"Rs = 1*(1-0.167);// [kg dry soap/h]\n",
+"// Entering soap\n",
+"X1 = 0.20;// [kg water/kg dry soap]\n",
+"// Leaving soap\n",
+"x = 0.04;\n",
+"X2 = x/(1-x);// [kg water/kg dry soap]\n",
+"// Entering air\n",
+"Y2 = 0.00996;// [from Illustration 5.2(a), kg water/kg dry air]\n",
+"// The operating line of least slope giving rise to eqb. condition will indicate least amount of air usable.\n",
+"// At X1 = 0.20; the eqb. condition:\n",
+"Y1 = 0.0675;// [kg water/kg dry air]\n",
+"scf(2);\n",
+"deff('[y] = f4(x)','y = ((Y1-Y2)/(X1-X2))*(x-X1)+Y1');\n",
+"x = X2:0.01:0.24;\n",
+"plot(X,Y,x,f4);\n",
+"xlabel('kg water / kg dry soap');\n",
+"ylabel('kg water / kg dry air');\n",
+"a = get('current_axes');\n",
+"tight_limits = 'on';\n",
+"a.data_bounds = [0 0;0.24 0.08];\n",
+"xgrid();\n",
+"title('Illustration 5.2(b)')\n",
+"legend('Equilibrium line','Operating Line');\n",
+"// By Eqn. 5.35\n",
+"Es = Rs*(X1-X2)/(Y1-Y2);// [kg dry air/h]\n",
+"Esv = (Es/29)*22.41*(P/(P-p1))*(T/273);// [cubic m/kg dry soap]\n",
+"printf('Minimum amount of air required is %f cubic m/kg dry soap\n\n',Esv);\n",
+"\n",
+"printf('Illustration 5.2 (c)\n\n');\n",
+"\n",
+"// solution (c)\n",
+"\n",
+"Esnew = 1.30*Es;// [kg dry air/h]\n",
+"Y1 = Rs*((X1-X2)/Esnew)+Y2;\n",
+"scf(3);\n",
+"deff('[y] = f5(x)','y = ((Y1-Y2)/(X1-X2))*(x-X1)+Y1');\n",
+"x = X2:0.01:0.24;\n",
+"plot(X,Y,x,f5);\n",
+"xlabel('kg water / kg dry soap');\n",
+"ylabel('kg water / kg dry air');\n",
+"a = get('current_axes');\n",
+"tight_limits = 'on';\n",
+"a.data_bounds = [0 0;0.24 0.08];\n",
+"xgrid();\n",
+"title('Illustration 5.2(c)')\n",
+"legend('Equilibrium line','Operating Line');\n",
+"// with final coordinates X = X1 & y = Y1\n",
+"// From figure, Total number of eqb . stages = 3\n",
+"N = 3;\n",
+"printf('Moisture content of air leaving the drier is %f kg water/kg dry air\n',Y1);\n",
+"printf('Total number of eqb. stages = %d\n',N);"
+ ]
+ }
+],
+"metadata": {
+ "kernelspec": {
+ "display_name": "Scilab",
+ "language": "scilab",
+ "name": "scilab"
+ },
+ "language_info": {
+ "file_extension": ".sce",
+ "help_links": [
+ {
+ "text": "MetaKernel Magics",
+ "url": "https://github.com/calysto/metakernel/blob/master/metakernel/magics/README.md"
+ }
+ ],
+ "mimetype": "text/x-octave",
+ "name": "scilab",
+ "version": "0.7.1"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 0
+}