diff options
21 files changed, 8038 insertions, 0 deletions
diff --git a/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter1.ipynb b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter1.ipynb new file mode 100644 index 00000000..5d2a4f3d --- /dev/null +++ b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter1.ipynb @@ -0,0 +1,543 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 1 - Particulate Solids" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 13 Example 1.1" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f3e970f93d0>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " The surface mean diameter is 21.668 um\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "%matplotlib inline\n", + "from matplotlib.pyplot import plot,title,xlabel,ylabel,show\n", + "from sympy.mpmath import quad\n", + "#Given size analysis of a powdered material\n", + "d=[1,101]##diameter of the powdered particles\n", + "x=[0,1]##mass fractions of the particles\n", + "plot(d,x)\n", + "title(\"size analysis of powder\")\n", + "xlabel(\"particle size(um)\")\n", + "ylabel(\"mass fraction(x)\")\n", + "show()\n", + "#d=100*x+1# # from the given plot\n", + "#calculation of surface mean diameter\n", + "def surface_mean_diameter(x0,x1):\n", + " ds=1/(quad(lambda x:1/(100*x+1),[x0,x1]))\n", + " return ds\n", + "\n", + "ds=surface_mean_diameter(0,1)##deduced surface mean diameter according to def.\n", + "print\"\\n The surface mean diameter is %.3f um\"%(ds)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 14 Example 1.2" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f3e96009b90>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " tot_n1d12 =13513 \n", + " tot_n1d13=423975\n" + ] + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f3e95e57550>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "the surface mean diameter is: 31.374 um\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "%matplotlib inline\n", + "from matplotlib.pyplot import plot,title,xlabel,ylabel,show\n", + "\n", + "#from given differential eq we get these functions\n", + "#particle number distribution for the size range 0-10um\n", + "\n", + "\n", + "#n=0.5*d**2#\n", + "#const of integration is0 since at n=0,d=0\n", + "\n", + "#particle number distribution for the size range 10-100um\n", + "#n=83-(0.33*(10**(5))*d**(-3))\n", + "#c2=83,since at d=10um,n=50\n", + "\n", + "#number distribution plot for the powdered material of size range 0-100um\n", + "def number_distribution(d):\n", + " if(d<=10):\n", + " n=0.5*d**2#\n", + " else:\n", + " n=83-(0.33*(10**(5))*d**(-3))#\n", + " return n \n", + "d=0#\n", + "n=[]\n", + "while(d<=100):\n", + " n.append(number_distribution(d))\n", + " d=d+1# \n", + "plot(range(0,101),n)\n", + "title(\"number_distribution_plot\")\n", + "xlabel(\"diameter(um)\")\n", + "ylabel(\"number distribution\")\n", + "show()\n", + "\n", + "\n", + "ps=[0, 6.2, 9.0 ,10.0, 11.4, 12.1, 13.6 ,14.7 ,16.0 ,17.5 ,19.7 ,22.7, 25.5, 31.5 ,100]\n", + "def difference(i):\n", + " #ps=[0 6.2 9.0 10.0 11.4 12.1 13.6 14.7 16.0 17.5 19.7 22.7 25.5 31.5 10]#\n", + " #according to the given particle sizes particle sizes are in um\n", + " n1=number_distribution(ps[i])-number_distribution(ps[i-1])#\n", + " return n1\n", + "def average(i):\n", + " da= (ps[i]+ps[i-1])/2#\n", + " return da\n", + "tot_n1d12=0#\n", + "tot_n1d13=0#\n", + "i=1#\n", + "for i in range(1,15):\n", + " tot_n1d12=tot_n1d12+difference(i)*(average(i))**2\n", + " tot_n1d13=tot_n1d13+difference(i)*(average(i))**3\n", + "\n", + "print\"\\n tot_n1d12 =%d \\n tot_n1d13=%d\"%(tot_n1d12,tot_n1d13)\n", + "def surface_area(j):\n", + " s=(difference(j)*(average(j))**2)/tot_n1d12\n", + " return s\n", + "\n", + "j=0#\n", + "\n", + "\n", + "plot(0,0)\n", + "su=[0]\n", + "for j in range(1,15):\n", + " su.append(su[j-1]+surface_area(j))\n", + "plot(ps[0:15],su)\n", + "\n", + "title(\"surface area and mass distribution plot\")\n", + "xlabel(\"diameter(um)\")\n", + "ylabel(\"surface area or mass distribution\")\n", + "\n", + "#mass distribution plot\n", + "def mass_distribution(k):\n", + " x=(difference(k)*(average(k))**3)/tot_n1d13#\n", + " return x\n", + "\n", + "ma=[0]#\n", + "k=0#\n", + "plot(0,0)\n", + "for k in range(1,15):\n", + " ma.append(ma[k-1]+mass_distribution(k))\n", + "plot(ps[0:15],ma)\n", + "show()\n", + "#evaluating surface mean diameter\n", + "def surface_mean_diameter():\n", + " e=0#\n", + " for l in range(1,15):\n", + " n=(mass_distribution(l)/average(l))#\n", + " e=e+n#\n", + " \n", + " d=1/e#\n", + " return d\n", + "print\"\\nthe surface mean diameter is: %.3f um\"%(surface_mean_diameter())\n", + " " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 32 Example 1.3" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " degree of mixing is :\n", + "\n", + " 0.89015\n" + ] + }, + { + "data": { + "image/png": "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\nw8zMuuT/A0V/e9OnX9eGAAAAAElFTkSuQmCC\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f3e96125d90>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\nNbwm+7p0EJkZVTC1illHVc6E0p3Pd5eczRe7LDZ2Tg9IJRxJk0h1t//K6qohDRir70Y5F+hW6sCt\nNkVEXUQ0ORrczMqrnAml2L8UG/bSWdrgmFV59QB2zOrHP39iagDyX6RmZlWgnJO5vUoaeFWvJ6kE\nsqxzemT7loqIdyXdAnwDqCMNjFs3IuZkg+PeaOzhkpxozMxaKCJaPYFqOUsojwH9JPWW1Jk0/cWE\nBudMIOuqKWkgMD8i5kpaR1LXbP/KwLdJ/eHrrzk8e384cENTAbR2Ppq8X7/+9a9zj8Hx5x+H46/N\nVy3H31ZlK6FExCJJw0kTx3UCLomIqZKOyY6PjohbJQ2RNJ00IvfI7PL1gLHZ9BLLkbqC3pMd+wNw\nTTYD6kyyfvdmZpavsq5fEBG3kSbvK9w3usH28Eaue5o0C21j93wH2K2EYZqZWQl4pHwVGjRoUN4h\ntInjz5fjz1etx98WZR0pnydJ0V4/m5lZOUgiqrRR3szMOhAnFDMzKwknFDMzKwknFDMzKwknFDMz\nKwknFDMzKwknFDMzKwknFDMzKwknFDMzKwknFDMzKwknFDMzKwknFDMzKwknFDMzKwknFDMzKwkn\nFDMzKwknFDMzKwknFDMzKwknFDMzKwknFDMzKwknFDMzKwknFDMzKwknFDMzKwknFDMzKwknFDMz\nKwknFDMzKwknFDMzKwknFDMzKwknFDMzKwknFDMzKwknFDMzKwknFDMzKwknFDMzKwknFDMzKwkn\nFDMzK4myJhRJgyVNk/SCpFOaOOf87PhkSf2zfT0l/UvSFEnPSPpJwfkjJM2W9GT2GlzOz2BmZsVZ\nvlw3ltQJGAnsBrwKPCppQkRMLThnCLBRRPSTtC0wChgILAROiohJklYDHpd0Z0RMAwI4NyLOLVfs\nZmbWcuUsoQwApkfEzIhYCIwH9m1wzj7AWICIeAToKqlbRMyJiEnZ/g+AqUD3gutUxrjNzKwVyplQ\nugOvFGzP5vNJoalzehSeIKk30B94pGD3CVkV2SWSupYq4GJEwAsvVPKJZma1oWxVXqSqqWI0LG0s\nvS6r7roOODErqUCqFvtN9v4M4BzgqMZuPGLEiKXvBw0axKBBg4oMqWkffwwDB8KTT8IGG7T5dmZm\nuamrq6Ourq5k91NEsb/3W3hjaSAwIiIGZ9unAUsi4qyCc/4G1EXE+Gx7GrBTRMyVtAJwM3BbRJzX\nxDN6AzdFxOaNHItyfbaTToKVV4bf/74stzczy4UkIqLVTQrlrPJ6DOgnqbekzsD3gAkNzpkADIOl\nCWh+lkwEXAI82zCZSFqvYPO7wNPl+gBNOe44uOQS+OSTSj/ZzKx6lS2hRMQiYDhwB/AscHVETJV0\njKRjsnNuBV6SNB0YDRyXXb49cBiwcyPdg8+S9JSkycBOwEnl+gxN6dcPttoKrrmm0k82M6teZavy\nyls5q7wAbrkFRoyAiRNB7nNmZu1ANVd5tWt77gnvvJMSipmZOaG02nLLwfHHw8iReUdiZlYdXOXV\nBvPmwYYbwrRp0K1bWR9lZlZ2rvLK0ZprwkEHwUUX5R2JmVn+XEJpo6eegiFDYMYMWGGFsj/OzKxs\nXELJ2RZbQN++cOONeUdiZpYvJ5QSGD7cjfNmZk4oJbDffjB9eqr+MjPrqJxQSmCFFeDHP4a//jXv\nSMzM8uNG+RKZOxe++lV46aXU+8vMrNa4Ub5KdOsG3/kOXHZZ3pGYmeXDJZQSeuQROOSQtADXck7V\nZlZjXEKpIgMGwFprwe235x2JmVnlOaGUkOQuxGbWcbnKq8Q++QR69YIHHkjrppiZ1QpXeVWZlVaC\no46CCy/MOxIzs8pyCaUMZs2C/v3h5ZdhtdVyCcHMrMVcQqlCG2wAO+0E//hH3pGYmVWOE0qZnHBC\napxvpwVAM7MvcEIpk0GDUjK57768IzEzqwwnlDJxF2Iz62jcKF9GH3yQuhBPmgQ9e+YaiplZs9wo\nX8VWWw2+/33429/yjsTMrPyaTSiSviLpHklTsu0tJP2q/KG1D8cdBxdfnAY8mpm1Z8WUUC4Cfgl8\nmm0/DQwtW0TtzMYbpzEp116bdyRmZuVVTEJZJSIeqd/IGiYWli+k9mf4cLjggryjMDMrr2ISypuS\nNqrfkHQg8Hr5Qmp/9twT3n4bJk7MOxIzs/JptpeXpL7A34FvAvOBGcChETGz7NG1QTX08ip0zjkw\neTJcfnnekZiZNa6tvbyK7jYsaTVguYh4r7UPq6RqSyjvvAN9+8Jzz8GXv5x3NGZmX1T2bsOSzpTU\nNSI+iIj3JK0p6betfWBHtdZacOCBcNFFeUdiZlYexVR5TYqILRvsezIi+pc1sjaqthIKpCqvvfaC\nGTNg+eXzjsbM7PMqMbBxOUkrFTxwZaBzax/YkX3969CnD9x4Y96RmJmVXjEJZRxwj6SjJP0QuBtw\n03IruQuxmbVXRTXKS9oT2A0I4K6IuKPcgbVVNVZ5ASxcCL17w+23w+ab5x2NmdlnKtbLq9ZUa0IB\nOOMMePVVz/FlZtWlEr28DpD0gqT3JL2fvYrqOixpsKRp2fWnNHHO+dnxyZL6Z/t6SvqXpCmSnpH0\nk4Lz15J0l6TnJd0pqWuxH7Za/OhHcPXVMG9e3pGYmZVOMW0oZwP7RMQaEbF69lqjuYskdQJGAoOB\nTYGhkjZpcM4QYKOI6AccDYzKDi0EToqIzYCBwPGSvpodO5VU7bYxcE+2XVPWXReGDIExY/KOxMys\ndIpJKHMiYmor7j0AmB4RMyNiITAe2LfBOfsAYwGy+cK6SuoWEXMiYlK2/wNgKtC94TXZ1/1aEVvu\nTjgB/vpXWLIk70jMzEqjmITymKSrJQ3Nqr8OkLR/Edd1B14p2J7NZ0lhWef0KDxBUm+gP1A/QWW3\niJibvZ8LdCsilqqz7bbQtSvcUfXdG8zMilNMQukCfAzsDuyVvfYu4rpiW8QbNgAtvS6b7uU64MSs\npPL5E1Ore3W2vDejfolgdyE2s/ai2fHaEXFEK+/9KlC48G1PUglkWef0yPYhaQXgeuAfEXFDwTlz\nJa0bEXMkrQe80VQAI0aMWPp+0KBBDBo0qOWfooy+9z34xS9g+nTYaKPmzzczK6W6ujrq6upKdr9i\npl5ZGTiK1LC+MlmJICJ+0Mx1ywPPAbsCrwETgaGF7TFZo/zwiBgiaSBwXkQMlCRS+8jbEXFSg/ue\nne0/S9KpQNeI+ELDfDV3Gy502mmwYAGce27ekZhZR1eJqVeuILVTDAbqSCWKL1Q/NRQRi4DhwB3A\ns8DVETFV0jGSjsnOuRV4SdJ0YDRwXHb59sBhwM6Snsxeg7NjfwC+Lel5YJdsu2b9+MdpSvsPP8w7\nEjOztil6ckhJT0XEFllV1AMRsW1lQmydWimhAHz3uzB4MBxzTN6RmFlHVokSSv1a8u9K2hzoCnyp\ntQ+0LzrhBBg5Emok/5mZNaqYhHKRpLWAXwETSNVXZ5c1qg5m551h8WL497/zjsTMrPU8l1eVuPBC\nuPdeuO66vCMxs46qbJNDSvp+RFwh6ecFu4M0biQioqr7JdVaQnn//TQL8aRJ0LNns6ebmZVcWxPK\nssahrJJ9Xa21N7firb46HHYYjB4Nv/UCy2Yd3uLF8NprMHMmvPxy+vrmm/CXv+QdWdOWWeWVTfB4\nYrWXRhpTayUUgOeegx13hFmzYMUV847GzMpp8eK0jMXMmZ9PGvWv2bNh7bVTzUXh60c/SjNtlEPZ\n10OR9GhEbNPaB+SlFhMKwB57pJLK97+fdyRm1haLFn0+YTRMGq++Cl/6EvTq9cWk0bt3qvpeaaWm\n7l4elUgofwZWAK4Glg6/i4gnWvvQSqjVhHLTTanK65FHmj/XzPKzaFEqRRQmjMKk8dpr8OUvp+TQ\nWNLo2bP6aiIqkVDqaGQCxojYubUPrYRaTSiLF0O/fjB+PAwYkHc0Zh3XwoWNJ4z6pPH669Ct22cJ\nomHS6NkTOnfOK/rW8RLATajVhALwpz/B00/D2LHNn2tmrfPpp/DKK19su6h/zZkD6633+SRRmDR6\n9Ki9hNGciiQUSXuRJodcWqMXEb9p7UMroZYTyjvvQN++qZH+y1/OOxqz2rRgQUoYjTV4z5wJc+fC\n+usvO2GssEJe0eejElVeo0mzDO8CXAQcBDwSEUe19qGVUMsJBeCHP4QNN4Rf/jLvSMyq04IFqUdk\nU72k3ngDundvOmF0797xEkZzKpFQno6IzQsmh1wNuD0idmjtQyuh1hPKpEmw994wYwYs3+yqNWbt\nzyeffD5hNEwab731xYRRmDS6d/f/nZYq58DGeh9nXz+S1B14G1i3tQ+04my5ZfpPceONcMABeUdj\nVl5LlqS57MaNgylTUsJ4++1U7VSYLAYP/ixprL++E0a1Keaf42ZJawJ/BB7P9l1UvpCs3vDhaRZi\nJxRrr158Ma0HdPnlabaIww9Pr969U4N4p055R2gt0aJeXpJWAlaKiPnlC6k0ar3KC1K3xd694Y47\n4Gtfyzsas9J47z249trUi3HaNDjkkJREttyyfCPArTiVaEN5ChhPWnHxxdY+qNLaQ0IB+M1vUn/3\nUaPyjsSs9ZYsSbNpjx2bBu/uvHNKIkOGtL+ut7WsEgmlN/A94GDSAMfxwDURMau1D62E9pJQ5syB\nTTZJjfNdu+YdjVnLvPBCSiKXXw7rrANHHAFDh6YpR6z6VHRgo6R+wP8Ah0ZEVddutpeEAqlKYMAA\n+OlP847ErHnz58M116RE8uKLcOihqTSyxRZ5R2bNqdTAxt58VkpZTKr+Oqe1D62E9pRQ/vMfGDYs\nDXRcrpg1Ns0qbPFiuPtuGDMGbrsNdtstlUb22MNjPWpJ2bsNS3oE6AxcAxwUES+19mHWOgMHwhpr\npMb5PffMOxqzz0ydmkoiV1yRxn0cfnjqmbj22nlHZnkopg3lqxExrULxlEx7KqEAXHZZWh74llvy\njsQ6unnz0uSlY8akqU2+//2USDbdNO/IrK08OWQT2ltC+fjjNJjroYdgo43yjsY6mkWLUgl57Fi4\n8840wPDww+Hb3/bgwvbECaUJ7S2hAJx6ahqbck5Vt15Ze/LMM6kkMm5cGhN1xBFw8MGw5po5B2Zl\n4YTShPaYUGbOhK23TvMZrbpq3tFYe/XWW3DVVak0MmdO6hBy+OHwla/kHZmVW1sTSrN9hiStKul/\nJF2UbffLprO3CuvdG3bYIf21aFZKCxfChAmw//6pSvXhh+HMM9MfL7//vZOJFaeYRvlrSHN4DYuI\nzSStCjwUEV+vRICt1R5LKAD33AMnnQSTJ3uaCmu7yZNTldaVV8LGG6eSyEEHQZcueUdmeajEbMN9\nI+JgSf8FEBEfyr/JcrPLLumvyfvvhx13zDsaq0VvvJESyJgxqcfWsGHwwANp6WmztigmoSyQtHL9\nhqS+wILyhWTLIqVZiC+4wAnFivfpp3Dzzald5L77YN994dxzYdAgD5a10immymt34HTSEsB3AdsD\nR0TEv8ofXuu11yovgPffT12In3oqrRdh1pgIeOKJVBIZPx422yz10jrggDRVvFlDlZp6ZR1gYLb5\ncES81doHVkp7TigAP/lJquc+44y8I7FqM2cO/OMfqTTy4YepXWTYMOjTJ+/IrNqVLaFI+gZpduGl\nu7KvARART7T2oZXQ3hPKtGmpuuLll2HFFfOOxvL2ySdpWvgxY9Lg1+9+N5VGdtjBVVpWvHImlDo+\nn1A+JyJ2bu1DK6G9JxSA3XdPf3kedljekVgeIuDRR1MSufrqtEDVEUekrr8ep2St4YGNTegICWXC\nhDRG4OGH847EKunVV1OV1pgxaUqUww9P82n16pV3ZFbrKrHA1srAccAOpBLL/cCoiPiktQ+thI6Q\nUBYvToPQrrkGttkm72isnD7+GG68MSWRiRPhwANTItluO49HstKpREK5FngP+AepHeUQoEtEHNTa\nh1ZCR0goAH/8Y5pvaezYvCOxUotIa+GMHZvWYN9mm5RE9tsPVlkl7+isPapEQnk2IjZtbl8T1w4G\nzgM6ARdHxFmNnHM+sCfwEak78pPZ/kuB7wBvRMTmBeePAH4IvJntOi0ibm/kvh0iobz9diqlPP+8\nl1VtL2bNSuuLjB2bGtSPOCK1k7mLuJVb2efyAp6Q9M2CBw4kTcXSXGCdgJHAYNIYlqGSNmlwzhBg\no4joBxwNjCo4fFl2bUMBnBsR/bPXF5JJR7L22mlcwcUX5x2JtcWHH6Z2kd12g/79YfbslFSmTk2z\nTDuZWC0oJqFsDTwo6WVJM4GHgK0lPS3pqWVcNwCYHhEzI2IhMB7Yt8E5+wBjASLiEaCrpHWz7fuB\neU3c27XGBY4/HkaNSg20Vjsi4N//hqOOSgnjyivh6KNTo/uoUbDttm4fsdpSzNQrjZUSitEdeKVg\nezawbRHndAfmNHPvEyQNAx4Dfh4R81sZY7vQvz9ssMFns8VadZs5Ey6/PFVprbRSqtKaMgXWXz/v\nyMzaptkSSkTMBN4F1gDWqn9lJY+Zy7q0yBga/g3W3HWjgD7AlsDrgJebIs3vNXJk3lHYskSkGQ62\n3jpN0Hj11alDxcknO5lY+9BsCUXSGcARwEvAkoJDzQ1sfBXoWbDdk1QCWdY5PbJ9TYqINwpiuxi4\nqalzR4wYsfT9oEGDGDRoUDMh167994ef/Sz9pbvZZnlHY4357W/TrL4vvQRrrJF3NGZQV1dHXV1d\nye5XTC+v54GvRcSnLbqxtDzwHLAr8BowERgaEVMLzhkCDI+IIVlj/3kRMbDgeG/gpga9vNaLiNez\n9ycB20TEIY08v0P08ir0v/+b5nEaNar5c62yLrkEfve7NC3KuuvmHY1Z4yrRy2sK0OIVpCNiETAc\nuAN4Frg6IqZKOkbSMdk5twIvSZoOjCYNoARA0lWkDgAbS3pF0pHZobMkPSVpMrATcFJLY2uvjj46\nzSo7v0O3KFWfW26B00+H2293MrH2rZgSyjbAjcAzfLYOSkTEPmWOrU06YgkFYOhQGDgQTjwx70gM\n0qj2vfZKEzdu27BLilmVqcTAxqmkhvBn+KwNJSLivtY+tBI6akJ56KHUa2jaNM8ym7fnn4eddoKL\nLkpJxazaVWIJ4A8i4vzWPsAq65vfhNVWgzvvhMGt7fBtbTZ3Luy5Z1qvxsnEOopiSijnkqq6JlCw\n9K/XQ6lel14K//xnWvLVKu/999NaNfvsA7/+dd7RmBWvElVedTQyNsTroVSvjz9OAx0ffhj69s07\nmo5l4cJUIunVC0aP9kh3qy1eD6UJHTmhAJxySpqK5RwP+6yYiNR+NW9eKiEuX0yFslkVqdSa8nuR\nJnhcqX5fRPymtQ+thI6eUGbOTCOyX37Zq/dVyi9/Cffem16eXt5qUdnHoUgaDRwM/IQ0TcrBgNeG\nq3K9e8P226cJB638Ro6E669P7VZOJtZRFdOG8nREbC7pqYjYQtJqwO0RsUNlQmydjl5CAbj7bvj5\nz2HSJNfll9P116c5uh54APr0yTsas9arxEj5j7OvH0nqDiwCPN63Buy6KyxYAPffn3ck7df998Ox\nx6aSiZOJdXTFJJSbJa0J/JG0sNZM4KpyBmWlIXkW4nKaMiWt7T5uXFpCwKyja1EvL0krAitFxLvl\nC6k0XOWVvPdeak95+mno3j3vaNqP2bNTG9XvfpeW5zVrDyrRKH+QpPrJtn8BXCZpq9Y+0CprjTXg\n0EPTmAgrjfnz0yj44493MjEr1JJG+R2A3wJ/Av5fRAyoRICt5RLKZ6ZNSyO3X34ZVlwx72hq24IF\nsMce8PWvw3nnubODtS+VaJRfnH3dC7goIm4GVmjtA63yvvpV2HxzuO66vCOpbUuWwLBh8KUvwbnn\nOpmYNVRMQnlV0t+B7wG3SFqpyOusirhxvm0i0oqYc+fCFVdAp055R2RWfYpJDAeTFsnaPSLmkxbb\nOrmsUVnJ7bUXvP46PPZY3pHUpnPOSeN6brgBVlqp+fPNOiLP5dWBnH02PPssjBmTdyS1Zdw4OO20\ntNZMjx55R2NWPp4csglOKF/09tuw0UZp4acvfSnvaGrD3XenXnL33gubbZZ3NGblVYlGeWsn1l4b\n9t8fLrkk70hqw6RJcMghcO21TiZmxXAJpYN54gnYbz946SVPr74sM2emgYt/+UsaDW/WEbiEYi2y\n1VbQsyfcdFPekVSvt99OyyefeqqTiVlLOKF0QO5C3LSPPko94vbbD044Ie9ozGqLq7w6oE8/TfN7\n3X03bLpp3tFUj0WL4IADoEsXGDvWAxet43GVl7VY585w9NEupRSKSHNzffIJXHyxk4lZa7iE0kG9\n9lrquTRzZvqLvKM74wz4v/+D++6D1VfPOxqzfLiEYq2y/vppksOxY/OOJH+XXAKXXQa33upkYtYW\nLqF0YA8+CEcemWYjXq6D/mlxyy1w1FHw73/DxhvnHY1ZvlxCsVbbbjtYdVW46668I8nHxIkpod54\no5OJWSk4oXRgHXmJ4Oefh333hUsvhW23zTsas/bBVV4d3EcfQa9e8MgjsOGGeUdTGXPnptLZaafB\nD3+YdzRm1cNVXtYmq6ySqn0uvDDvSCrj/fdhyJC0UJaTiVlpuYRizJgB22wDs2alBNNeLVyYRsH3\n6gWjR3uXZu8wAAAOsElEQVSsiVlDLqFYm/Xpk6qArrwy70jKJyKVSFZcMZXGnEzMSs8JxYA0b9UF\nF6RfvO3R6afDc8/B+PGeZdmsXJxQDIBdd4UFC+CBB/KOpPRGjoTrr4ebb27fVXpmeXNCMSANbDz+\n+PbXhfj66+HMM+H222GddfKOxqx9K2tCkTRY0jRJL0g6pYlzzs+OT5bUv2D/pZLmSnq6wflrSbpL\n0vOS7pTUtZyfoSM5/PA0yPHVV/OOpDTuvx+OPTaVTPr0yTsas/avbAlFUidgJDAY2BQYKmmTBucM\nATaKiH7A0cCogsOXZdc2dCpwV0RsDNyTbVsJrLFGWvJ29Oi8I2m7KVPS4ljjxkH//s2fb2ZtV84S\nygBgekTMjIiFwHhg3wbn7AOMBYiIR4CuktbNtu8H5jVy36XXZF/3K0PsHdbxx8Pf/57aU2rV7Nlp\nrMk558C3v513NGYdRzkTSnfglYLt2dm+lp7TULeImJu9nwt0a0uQ9nmbbAJf+1pqe6hF8+fDnnum\nxHjYYXlHY9axlLMDZbEdUBuOCCi642pEhKQmzx8xYsTS94MGDWLQoEHF3rpDGz4czj47VX/VkgUL\n0tK9u+wCJ5+cdzRm1a+uro66urqS3a9sI+UlDQRGRMTgbPs0YElEnFVwzt+AuogYn21PA3aqL4FI\n6g3cFBGbF1wzDRgUEXMkrQf8KyK+2sjzPVK+lRYvhr59UynlG9/IO5riLFkCQ4emr+PHQ6dOeUdk\nVnuqeaT8Y0A/Sb0ldQa+B0xocM4EYBgsTUDzC6qzmjIBODx7fzhwQ+lCNki/jI89tna6EEfAz36W\nJn284gonE7O8lHUuL0l7AucBnYBLIuJMSccARMTo7Jz6nmAfAkdGxBPZ/quAnYC1gTeA/xcRl0la\nC7gG2ACYCRwcEfMbebZLKG3w1lvQrx+88EL1j9/4059gzJg0KLOrO5GbtVpbSyieHNKa9IMfpIWn\nTq3ijtnjxqVp6B96CHr0yDsas9rmhNIEJ5S2e+IJ+O534cUXq3P+q7vvhkMPhXvvhc02yzsas9pX\nzW0oVuO22gq6d08jzavNpEmpF9q11zqZmFULJxRbpmpcInjmzLSuyahRsOOOeUdjZvVc5WXL9Omn\naUGqe+6BTTfNOxp4+23YfvuU6IYPzzsas/bFVV5WVp07w9FHw1//mnck8NFHsPfeafCik4lZ9XEJ\nxZr12mtpOpYZM6BLl3xiWLQIDjggPX/sWK+4aFYOLqFY2a2/fppk8fLL83l+RJqb65NP4OKLnUzM\nqpUTihXlhBNS4/ySJZV/9m9/C48+Ctddl6rgzKw6OaFYUbbfHlZeOY39qKRLLoHLLoNbb4XVV6/s\ns82sZZxQrChS5bsQ33IL/OpXafneddet3HPNrHXcKG9F++gj2GADmDgRNtywvM+aODGNNbnpJth2\n2/I+y8wSN8pbxayyChx5ZBpQWE4vvAD77guXXupkYlZLXEKxFnnpJRgwAGbNSgmm1ObOhe22SxM+\n/vCHpb+/mTXNJRSrqA03hG9+E666qvT3fv/9tBb8sGFOJma1yCUUa7E774Rf/AKefLJ0Y0IWLkxt\nJr16wejRHmtilgeXUKzidtsNPv4YHnywNPeLSCWSFVeECy90MjGrVU4o1mLLLZdGrpeqC/Hpp8Pz\nz6e14Ktx3RUzK46rvKxV3n0X+vSBZ55JU7O01siRcMEFqbRT7UsNm7V3rvKyXHTpAkOHpvaO1vrn\nP+HMM9PARScTs9rnEoq12rPPwq67wssvt3yOrfvvT7MH33EH9O9fnvjMrGVcQrHcbLppel1/fcuu\nmzIFDjwQxo1zMjFrT5xQrE2GD09tIMWaPTuNNTnnnDQlvpm1H04o1iZ77w2vvgqPP978ufPnw557\nph5ihx1W/tjMrLKcUKxNll8ejj22+SWCFyxIS/fusgucfHJlYjOzynKjvLXZW29Bv34wfTqsvfYX\njy9ZknqERaSxJsv5zxizquRGecvdOuuk0sfFF3/xWAT87Gdp0sfLL3cyMWvPXEKxknj8cdh//zQb\ncadOn+3/059gzBh44AHo2jW38MysCC6hWFX4xjfSiPmbb/5s37hxcP75aeCik4lZ++eEYiVT2IX4\n7rtTVddtt0GPHvnGZWaV4SovK5lPP01LBP/5z3DiiXDddbDjjnlHZWbFamuVl+d2tZLp3BmOPhoO\nPRSuvdbJxKyjcQnFSmr+fJg4EXbfPe9IzKyl2lpCcUIxMzPAvbzMzKxKOKGYmVlJlDWhSBosaZqk\nFySd0sQ552fHJ0vq39y1kkZImi3pyew1uJyfwczMilO2hCKpEzASGAxsCgyVtEmDc4YAG0VEP+Bo\nYFQR1wZwbkT0z163l+sz5KWuri7vENrE8efL8eer1uNvi3KWUAYA0yNiZkQsBMYD+zY4Zx9gLEBE\nPAJ0lbRuEde2utGoFtT6D6Tjz5fjz1etx98W5Uwo3YFXCrZnZ/uKOWf9Zq49Iasiu0SSJ/UwM6sC\n5UwoxfbZbWlpYxTQB9gSeB04p4XXm5lZGZRtHIqkgcCIiBicbZ8GLImIswrO+RtQFxHjs+1pwE6k\nhLHMa7P9vYGbImLzRp7vQShmZi1UrVOvPAb0y37pvwZ8Dxja4JwJwHBgfJaA5kfEXElvN3WtpPUi\n4vXs+u8CTzf28LZ8U8zMrOXKllAiYpGk4cAdQCfgkoiYKumY7PjoiLhV0hBJ04EPgSOXdW1267Mk\nbUmqUpsBHFOuz2BmZsVrt1OvmJlZZdX8SHlJPSX9S9IUSc9I+km2fy1Jd0l6XtKd1d4bTFKnbKDm\nTdl2zcQvqauk6yRNlfSspG1rJX5Jp2U/O09LulLSitUcu6RLJc2V9HTBvibjzT7fC9kg4dyn7Gwi\n/j9mPzuTJf1TUpeCY1Uff8Gxn0taImmtgn01Eb+kE7J/g2ckFbZztyz+iKjpF7AusGX2fjXgOWAT\n4GzgF9n+U4A/5B1rM5/jZ8A4YEK2XTPxk8YS/SB7vzzQpRbiB3oDLwErZttXA4dXc+zAt4D+wNMF\n+xqNlzQoeBKwQvZZpwPLVWH8366PC/hDrcWf7e8J3E6qhl+rluIHdgbuAlbItr/U2vhrvoQSEXMi\nYlL2/gNgKmnMytJBk9nX/fKJsHmSegBDgIv5rBt1TcSf/TX5rYi4FFL7V0S8S23E/x6wEFhF0vLA\nKqROIFUbe0TcD8xrsLupePcFroqIhRExk/QLYUAl4mxKY/FHxF0RsSTbfASoX+OzJuLPnAv8osG+\nWon/WODMSIPIiYg3s/0tjr/mE0qhrFdYf9IPZbeImJsdmgt0yymsYvwZOBlYUrCvVuLvA7wp6TJJ\nT0i6SNKq1ED8EfEOaRzTLFIimR8Rd1EDsTfQVLzrkwYF12tscHG1+QFwa/a+JuKXtC8wOyKeanCo\nJuIH+gE7SnpYUp2krbP9LY6/3SQUSasB1wMnRsT7hccild+qsveBpL2ANyLiSZoY5FnN8ZOquLYC\nLoyIrUi99U4tPKFa45fUF/gpqTi/PrCapMMKz6nW2JtSRLxV+1kknQ58GhFXLuO0qopf0irAL4Ff\nF+5exiVVFX9meWDNiBhI+sP2mmWcu8z420VCkbQCKZlcERE3ZLvnZvOCIWk94I284mvGdsA+kmYA\nVwG7SLqC2ol/Numvs0ez7etICWZODcS/NfBQRLwdEYuAfwLfpDZiL9TUz8qrpLr9ej2yfVVH0hGk\nat9DC3bXQvx9SX+QTM7+D/cAHpfUjdqIH9L/4X8CZP+Pl0hah1bEX/MJRZKAS4BnI+K8gkMTSA2s\nZF9vaHhtNYiIX0ZEz4joA/wXcG9EfJ/aiX8O8IqkjbNduwFTgJuo/vinAQMlrZz9HO0GPEttxF6o\nqZ+VCcB/SeosqQ+pamNiDvEtk9ISFCcD+0bEJwWHqj7+iHg6IrpFRJ/s//BsYKusCrLq48/cAOwC\nkP0/7hwRb9Ga+PPscVCiXgs7kNoeJgFPZq/BwFrA3cDzwJ1A17xjLeKz7MRnvbxqJn7g68CjwGTS\nXzpdaiV+UkPqFNKMC2NJPVqqNnZSKfY14FPSBKpHLiteUnXMdFLy3KMK4/8B8ALwcsH/3wtrIP4F\n9d//BsdfIuvlVSvxZz/zV2T/Bx4HBrU2fg9sNDOzkqj5Ki8zM6sOTihmZlYSTihmZlYSTihmZlYS\nTihmZlYSTihmZlYSTihmZlYSTihmDUjqIunY7P16kq7NOyazWuCBjWYNZLNW3xQRm+ccillNcQnF\n7Iv+APTNVtC8pn51O0lHSLohWxVxhqThkv47m7b/P5LWzM7rK+k2SY9J+rekrzT1IEkHZatFTpJ0\nX7avU7aK4cRsFcOjC84/RdJT2fm/z/b9RGnVycmSrirrd8ZsGZbPOwCzKnQKsFlE9JfUC7i54Nhm\nwJbAysCLwMkRsZWkc4FhwF+AvwPHRMR0SdsCFwK7NvGs/wF2j4jXJa2R7TuKtDbLAEkrAg9IupO0\nEuk+wICI+ESfLfV7CtA7IhYW3MOs4pxQzL5ITbwH+FdEfAh8KGk+aWZiSBPrbZEtLrYdcG2awBiA\nzst41oPAWEnXkE0hDuwObC7pwGx7DdJMr7sCl0Y2I29EzM+OPwVcKekGqn9mZGvHnFDMWmZBwfsl\nBdtLSP+flgPmRUT/Ym4WEcdKGgB8h7SOxjeyQ8MjrR65lKQ9aHzxpu8AOwJ7A6dL2jwiFhf7gcxK\nxW0oZl/0PrB6C68RQKTVQmfUly6UbNHkRVLfiJgYEb8G3iQtaHQHcFy2zj2SNs5WBrwLOFLSytn+\nNbN1XDaIiDrSSpldgFVbGLtZSbiEYtZARLwt6cGsMX4qny172nB53Ybv67cPBUZJ+hVprYmrSNVS\njTlbUj9SQro7IiZLeoq0CuATWcJ4A9gvIu6QtCXwmKRPgVuAEcAVkrpk9/hLRLzXho9v1mruNmxm\nZiXhKi8zMysJV3mZVYCkXwIHNdh9TUScmUc8ZuXgKi8zMysJV3mZmVlJOKGYmVlJOKGYmVlJOKGY\nmVlJOKGYmVlJ/H+dC+bYHMazpwAAAABJRU5ErkJggg==\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f3e95ea3910>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "from __future__ import division\n", + "%matplotlib inline\n", + "from matplotlib.pyplot import plot,title,xlabel,ylabel,show\n", + "p=0.20##components analysed represents 20 percent of the mixture by mass\n", + "#for a completely unmixed system\n", + "so=p*(1-p)#\n", + "#for a completely random mixture :\n", + "n=100##Each of the sample removed contains 100 particles\n", + "sr=p*(1-p)/n#\n", + "s=[0.025, 0.006, 0.015, 0.018 ,0.019]\n", + "time_secs=[30, 60 ,90 ,120 ,150]\n", + "print\"\\n degree of mixing is :\\n\"\n", + "b=[]\n", + "def degree_of_mixing():\n", + " for i in range(0,5):\n", + " b.append((so-s[(i)])/(so-sr))\n", + " print \" %0.5f\"%b[(i)]##b is the degree of mixing\n", + "\n", + " return b#\n", + "\n", + "plot(time_secs,degree_of_mixing())\n", + "title(\"degree of mixing curve\")\n", + "xlabel(\"time_secs\")\n", + "ylabel(\"degree_of_mixing\")\n", + "show()\n", + "#plot of sample variance vs time(secs)\n", + "plot(time_secs,s)\n", + "title(\"sample variance curve\")\n", + "xlabel(\"time_secs\")\n", + "ylabel(\"sample variance\")\n", + "show()\n", + "#from the graph the maxima is at 60 secs" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 39 Example 1.4" + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " required density is = 2377 kg/m**3\n", + "\n", + "required density is by newton law =1195 kg/m**3\n" + ] + } + ], + "source": [ + "from sympy import symbols,solve\n", + "#maximum size of the particle(mm)\n", + "d_max=0.065#\n", + "#minimum size of the particle(mm)\n", + "d_min=0.015#\n", + "#density of quartz(kg/m**3)\n", + "p_quartz=2650#\n", + "#density of galena (kg/m**3)\n", + "p_galena=7500#\n", + "#minimum density of the particle which will give this seperation\n", + "#When stoke's law is applied the required density is as given below\n", + "def stoke_required_density():\n", + " p=symbols('p')\n", + " d=solve((p-7500)-(p-2650)*(d_max/d_min)**2)[0]\n", + " return d\n", + "d=stoke_required_density()#\n", + "print\"\\n required density is = %d kg/m**3\"%(d)\n", + "#When Newton's law is applied then the required density is as given below\n", + "def newton_required_density():\n", + " r=symbols('r')\n", + " e=solve((r-7500)-(r-2650)*(d_max/d_min))[0]\n", + " return e\n", + "e=newton_required_density()#\n", + "print\"\\nrequired density is by newton law =%d kg/m**3\"%(e)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 71 Example 1.5" + ] + }, + { + "cell_type": "code", + "execution_count": 36, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " the overall efficiency is = 65.7\n" + ] + } + ], + "source": [ + "#efficiency of the collector for different size ranges\n", + "efficiency_1=45##in percentage for the size range of 0-5um\n", + "efficiency_2=80##in percentage for the size range of 5-10um\n", + "efficiency_3=96##in percentage for the size range greater than 10um\n", + "\n", + "#mass percent of the ndust for various size range\n", + "mass_1=50# #in percentage for the size range of 0-5um\n", + "mass_2=30# #in percetage for the size range of 5-10um\n", + "mass_3=20# #in percentage for the size range greater than 10um\n", + "# on the basis of 100kg dust\n", + "mass_retained_1=0.45*50##mass retained(kg) in the size range of 0-5um\n", + "mass_retained_2=0.80*30##mass retained(kg) in the size range of 5-10um\n", + "mass_retained_3=0.96*20##mass retained(kg) in the size range greater than10um\n", + "overall_efficiency=0.45*50+0.80*30+0.96*20#\n", + "print\"\\n the overall efficiency is = %.1f\"%(overall_efficiency)#" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 71 Example 1.6" + ] + }, + { + "cell_type": "code", + "execution_count": 39, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "total mass retained = 13.230000 g\n", + "\n", + "total efficiency is = 73.500000\n", + "total mass emitted is:4.770000 g\n", + "\n", + "total mass emitted less than 20 um is 4.320000g\n", + "\n", + "The efficiency of particles emitted is 90.566038\n", + "\n", + "mass flow rate is:1.431000 kg/sec\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "#To calculate mass flow of the dust emitted\n", + "mass_1=10##in percentage in the size range of 0-5um\n", + "mass_2=15##in percentage in the size range of 5-10um\n", + "mass_3=35##in percentage in the size range of 10-20um\n", + "mass_4=20##in percentage in the size range of 20-40um\n", + "mass_5=10##in percentage in the size range of 40-80um\n", + "mass_6=10##in percentage in the size range of 80-160um\n", + "efficiecny_1=20##in percentage in the size range of 0-5um\n", + "efficiency_2=40##in percentage in the size range of 5-10um\n", + "efficiency_3=80##in percentage in the size range of 10-20um\n", + "efficiency_4=90##in percentage in the size range of 20-40um\n", + "efficiency_5=95##in percentage in the size range of 40-80um\n", + "efficiency_6=100##in percentage in the size range of 80-160um\n", + "dust_burden=18##in g/m**3 at the entrance\n", + "#taking 1m**3 as the basis of calculation\n", + "total_mass_retained=18*(0.1*0.20+0.15*0.40+0.35*0.80+0.2*0.9+0.1*0.95+0.1*1)#\n", + "print\"\\ntotal mass retained = %f g\"%(total_mass_retained)#\n", + "total_efficiency=(total_mass_retained/18)*100#\n", + "print\"\\ntotal efficiency is = %f\"%(total_efficiency)#\n", + "total_mass_emitted=18-total_mass_retained#\n", + "print\"total mass emitted is:%f g\"%(total_mass_emitted)#\n", + "t=18*(0.1*0.80+0.15*0.60+0.35*0.20)#\n", + "print\"\\ntotal mass emitted less than 20 um is %fg\"%(t)\n", + "e=t*100/total_mass_emitted#\n", + "print\"\\nThe efficiency of particles emitted is %f\"%(e)#\n", + "#gas flow is 0.3m**3/sec\n", + "f=0.3*total_mass_emitted#\n", + "print\"\\nmass flow rate is:%f kg/sec\"%(f)#\n", + " " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 79 Example 1.7" + ] + }, + { + "cell_type": "code", + "execution_count": 41, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " cross sectional area at the gas inlet is 0.004418 m**2\n", + "\n", + "gas outlet diameter is 0.075000 m\n", + "\n", + "gas density is 1.300000 kg/m**3\n", + "\n", + "height of the seperator is 1.200000 m\n", + "\n", + "seperator diameter is0.300000 m\n", + "\n", + "mass flow rate of the gas is 0.008615 kg/sec\n", + "\n", + "the terminal velocity of the smallest particle retained by the seperator =0.000383m/sec\n", + "\n", + " particle diameter by the stoke law is 2.165585um\n" + ] + } + ], + "source": [ + "from math import pi\n", + "from __future__ import division\n", + "Ai=(pi/4)*(0.075)**2##cross sectional area at the gas inlet in m**2\n", + "do=0.075##gas outlet diameter in m\n", + "p=1.3##gas density in kg/m**3\n", + "Z=1.2##height of the seperator in m\n", + "dt=0.3##seperator diameter in m\n", + "v=1.5##gas entry velocity in m/sec\n", + "G=(Ai*v*p)##mass flow rate of the gas in kg/sec\n", + "print\"\\n cross sectional area at the gas inlet is %f m**2\"%(Ai)#\n", + "print\"\\ngas outlet diameter is %f m\"%(do)#\n", + "print\"\\ngas density is %f kg/m**3\"%(p)#\n", + "print\"\\nheight of the seperator is %f m\"%(Z)#\n", + "print\"\\nseperator diameter is%f m\"%(dt)#\n", + "print\"\\nmass flow rate of the gas is %f kg/sec\"%(G)\n", + "def terminal_vel():\n", + " u=0.2*(Ai)**2*(do)*p*9.8/(pi*Z*(dt)*G)##velocity is in m/sec\n", + " return u\n", + "\n", + "u=terminal_vel()#\n", + "print\"\\nthe terminal velocity of the smallest particle retained by the seperator =%fm/sec\"%(u)#\n", + "def particle_diameter(u):\n", + " u=terminal_vel()#\n", + " n=0.018*10**(-3)##viscosity in mNs/m**2\n", + " ps=2700##density of the particle in kg/m**3\n", + " d=((u*18*n)/(9.8*(ps-p)))**(0.5)##particle size in um\n", + " return d\n", + "u=terminal_vel()#\n", + "d=particle_diameter(u)#\n", + "do=d*10**6#\n", + "print\"\\n particle diameter by the stoke law is %fum\"%(do)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.9" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter10.ipynb b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter10.ipynb new file mode 100644 index 00000000..08a35960 --- /dev/null +++ b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter10.ipynb @@ -0,0 +1,353 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 10 - LEACHING" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 506 Example 10.1" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " C = 1.400 kg/m**3\n", + "\n", + " t = 590 secs\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import log\n", + "#For the pilot scale vessel\n", + "c = (2.5*75)/100# #in kg/m**3\n", + "cs = 2.5# #in kg/m**3\n", + "V = 1.0# #V is in m**3\n", + "t = 10# #t is in secs\n", + " \n", + "#1.875 = 2.5(1-e**(-kA/b*100))\n", + "# x =kA/b\n", + "x = -log(1-1.875/2.5)/10\n", + " \n", + "#For the full scale vessel\n", + "c = (500*28/100)/100\n", + "print\"\\n C = %.3f kg/m**3\"%(c)\n", + "cs = 2.5# #cs is in kg/m**3\n", + "V = 100# #V is in m**3\n", + "t = -log(1-1.4/2.5)*(100/0.139)# #t is in secs\n", + "print\"\\n t = %d secs\"%(t)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 517 Example 10.2" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " x1 = -0.000002 x2 = 0.000000 x3 = 0.003000 Wf = 8569174263.405134 \n", + "\n", + " Thus the amount of water required for washing 100 kg CaCO3 is 8569174263.405 kg\n", + "\n", + " The solution fed to reactor contains 0.25 kg/s Na2CO3.This isequivalent to 0.236 kg/s CaCO3,and hence the actual water required is 20223251.26 kg/sec\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from scipy.optimize import fsolve\n", + "#If x1, x2, x3 are the solute: solvent ratios in thickeners 1, 2, and 3, respectively, the quantities of CaCO3. NaOH, and water in each of the streams can be calculated for every 100 kg of calcium carbonate\n", + "\n", + "#Since the final underflow must contain only 1 per cent of NaOH\n", + "def F(x):\n", + " f=[]\n", + " f.append((300*x[2])/100 - 0.01)\n", + " f.append(300*(x[1]-x[2])/x[3] - x[2]) #Wf = x(4)\n", + " f.append(300*(x[0]-x[2])/x[3] - x[1])#\n", + " f.append((80-300*x[2])/(600+x[3])-x[0])\n", + " return f\n", + "#An initial guess\n", + "x = [0.1, 0.1, 0.1, 0.1]#\n", + "y = fsolve(F,x)#\n", + "\n", + "print\"\\n x1 = %f x2 = %f x3 = %f Wf = %f \"%(y[0],y[1],y[2],y[3])#\n", + "\n", + "print\"\\n Thus the amount of water required for washing 100 kg CaCO3 is %.3f kg\"%(y[3])#\n", + "print\"\\n The solution fed to reactor contains 0.25 kg/s Na2CO3.This isequivalent to 0.236 kg/s CaCO3,and hence the actual water required is %.2f kg/sec\"%(y[3]*0.236/100)#\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 524 Example 10.3" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " the material fed to the washing thickeners consists of 100 kg TiO2, 50 kg solvent and 14 kg salt\n", + "\n", + " The required number of thickeners for washing are 4.359 \n", + "\n", + " concentration in the first thickener is 0.203 \n", + "\n", + " W1 = 0.341 \n", + "\n", + " S1 = 0.069 \n", + "\n", + " X2 = 0.033 \n", + "\n", + " W2 = 0.307 \n", + "\n", + " X3 = 0.005 \n", + "\n", + " W3 = 0.30089\n", + "\n", + " S3 = 0.001 \n", + "\n", + " W4 = 0.300 and S4 = 0.000 \n", + "\n", + " Thus S4 is less than Sn and therefore 4 thickeners are required.\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import log\n", + "\n", + "#part 1\n", + "#Solvent in underflow from final washing thickener = 50 kg/s.\n", + "#The solvent in the overflow will be the same as that supplied for washing (200 kg/s).\n", + "#\u0002Solvent discharged in overflow/Solvent discharged in underflow= forthe washing thickeners.\n", + "#Liquid product from plant contains 54.9 kg of salt in 195 kg of solvent.\n", + "#This ratio will be the same in the underflow from the first thickener.\n", + "print\"\\n the material fed to the washing thickeners consists of 100 kg TiO2, 50 kg solvent and %d kg salt\"%(50*(54.9/195))\n", + "\n", + "#m =n+1\n", + "m = log(421)/log(4)\n", + "print\"\\n The required number of thickeners for washing are %.3f \"%(m)\n", + "\n", + "#Part 2\n", + "#From an inspection of the data, it is seen that Wh = 0.30 + 0.2Xh.\n", + "#Thus: Sh = WhXh = 0.30Xh + 0.2X2h= 5Wh**2− 1.5Wh\n", + "#Considering the passage of unit quantity of TiO2 through the plant, then:\n", + "Ln = 0# wn = 2# Xn = 0\n", + "#since 200 kg/s of pure solvent is used.\n", + "Sn = 0.001\n", + "Wn = 0.3007\n", + "So = 0.55\n", + "Wo = 1.00\n", + "#X1 = (Ln+1 + S0 − Sn)/(wn+1 + W0 − Wn)\n", + "X1 = (0+0.55-0.001)/(2+1-0.3007)\n", + "print\"\\n concentration in the first thickener is %.3f \"%(X1)\n", + "\n", + "W1 = 0.30+0.2*0.203\n", + "print\"\\n W1 = %.3f \"%(W1)\n", + "S1 = (0.3406*0.203)\n", + "print\"\\n S1 = %.3f \"%(S1)\n", + "X2 = (0.0691 - 0.001)/(1.7 + 0.3406)\n", + "print\"\\n X2 = %.3f \"%(X2)\n", + "W2 = (0.30+0.2*0.0334)\n", + "print\"\\n W2 = %.3f \"%(W2)\n", + "X3 = (0.01025-0.001)/(1.7+0.3067)\n", + "print\"\\n X3 = %.3f \"%(X3)\n", + "print\"\\n W3 = 0.30089\"\n", + "print\"\\n S3 = %.3f \"%(0.0013)\n", + "print\"\\n W4 = %.3f and S4 = %.3f \"%(0.30003,0.000045)\n", + "print\"\\n Thus S4 is less than Sn and therefore 4 thickeners are required.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 536 Example 10.4" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " xAo = 0.2 and xBo = 0.8\n", + "\n", + " yA1 = 0.5 and yS1 = 0.5\n", + "\n", + " Thus 5 thickeners are adequate and for the required degree of extraction\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "#Since the seeds contain 20 per cent of oil\n", + "xAo=0.2\n", + "xBo=0.8\n", + "print\"\\n xAo = %.1f and xBo = %.1f\"%(xAo,xBo)\n", + "#The final solution contains 50 per cent oil\n", + "yA1=0.5\n", + "yS1=0.5\n", + "print\"\\n yA1 = %.1f and yS1 = %.1f\"%(yA1,yS1)\n", + "#The solvent which is used for extraction is pure and hence \n", + "ySn1=1\n", + "#1 kg of insoluble solid in the washed product is associated with 0.5 kg of solution and 0.025 kg oil.\n", + "xAn = 0.0167\n", + "xBn = 0.6667\n", + "xSn = 0.3166\n", + "\n", + "#The mass fraction of insoluble material in the underflow is constant and equal to 0.667. The composition of the underflow is therefore represented, on the diagram Figure 10.22, by a straight line parallel to the hypotenuse of the triangle with an intercept of 0.333 on the two main axes.\n", + "\n", + "#The difference point is now found by drawing in the two lines connecting x0 and y1 and xn and yn+1.\n", + "\n", + "#The graphical construction described in the text is then used and it is seen from Figure 10.22 that xn lies in between x4 and x5.\n", + "print\"\\n Thus 5 thickeners are adequate and for the required degree of extraction\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 536 Example 10.5" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " mass of livers fed=74 kg contaning 26 kg oil\n", + "\n", + " xA = 0.26\n", + "\n", + " Exhausted livers Oil Ether\n", + "\n", + " Underflow feed 74 26 -\n", + "\n", + " Overflow feed - - 50\n", + "\n", + " Underflow product 74 2 e(say)\n", + "\n", + " Overflow product - 23 50-e\n", + "\n", + " In the underflow product:\n", + "\n", + " the ratio(oil/exhausted livers) = 0.035 kg/kg\n", + "\n", + " Ratio(ether/exhausted livers) = 0.306 kg/kg\n", + "\n", + " e = 22.6 kg\n", + "\n", + " The mass of ether = 27.4 kg\n", + "\n", + " yA = 0.46\n", + "\n", + " ys = 0.54\n", + "\n", + " \n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "#On the basis of 100 kg untreated solids\n", + "#In the underflow feed:\n", + "#0.35 kg oil is associated with each kg of exhausted livers.\n", + "print\"\\n mass of livers fed=%d kg contaning %d kg oil\"%(100/(1+0.35),100-74)\n", + "xA = 0.26\n", + "print\"\\n xA = %.2f\"%(xA)\n", + "xs = 0\n", + "#In the overflow feed, pure ether is used\n", + "ys =1.0\n", + "xs = 0\n", + "#Recovery = 90 per cent\n", + "print\"\\n Exhausted livers Oil Ether\"\n", + "print\"\\n Underflow feed %d %d -\"%(74,26)\n", + "print\"\\n Overflow feed - - %d\"%(50)\n", + "print\"\\n Underflow product %d %d e(say)\"%(74,2.6)\n", + "print\"\\n Overflow product - %d 50-e\"%(23.4)\n", + "print\"\\n In the underflow product:\"\n", + "print\"\\n the ratio(oil/exhausted livers) = %.3f kg/kg\"%(2.6/74)\n", + "print\"\\n Ratio(ether/exhausted livers) = %.3f kg/kg\"%(0.306)\n", + "print\"\\n e = %.1f kg\"%(0.306*74)\n", + "#In the overflow product:\n", + "print\"\\n The mass of ether = %.1f kg\"%(50-22.6)\n", + "print\"\\n yA = %.2f\"%(23.4/(23.4+27.4))\n", + "print\"\\n ys = %.2f\"%(1-23.4/(23.4+27.4))\n", + "print\"\\n \"" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.9" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter11.ipynb b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter11.ipynb new file mode 100644 index 00000000..cefe4b72 --- /dev/null +++ b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter11.ipynb @@ -0,0 +1,1817 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 11 - Distillation" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 548 Example 11.1" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "Mole fraction in liquid phase is : 0.854\n", + "\n", + "Mole fraction in vapour phase is : 0.894\n", + "\n" + ] + } + ], + "source": [ + "p0_A=106# #Vapour pressure of n-heptane in kN/m**2\n", + "p0_B=73.7# #Vapour pressure of toluene in kN/m**2\n", + "P=101.3# #Total pressure in kN/m**2\n", + "\n", + "xA=(P-p0_B)/(p0_A-p0_B)\n", + "\n", + "yA=p0_A*xA/P\n", + "\n", + "print\"\\nMole fraction in liquid phase is : %.3f\"%(xA)\n", + "print\"\\nMole fraction in vapour phase is : %.3f\\n\"%(yA)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 549 Example 11.2" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "Tr1 = 0.648 \n", + "Pr1 = 0.021 \n", + "\n", + "\n", + "c5 = 2.2687 \n", + "c2 = 7.2970 \n", + "c1 = -0.2966\n", + "\n", + "\n", + "k9 = 10.380 \n", + "k10 = 10.677 \n", + "k11 = -5.1589\n", + "\n", + "k12 = 0.29657\n", + "\n", + "\n", + "Pr = 0.043 \n", + "\n", + "P0 = 203.75 kN/m**2\n", + "\n" + ] + } + ], + "source": [ + "from math import log,exp\n", + "\n", + "Pc=4700# #Critical pressure in kN/m**2\n", + "Tc=508.1# #critical temperature in K\n", + "p1=100.666# #in kN/m**2\n", + "T1=329.026# #in K\n", + "T=350.874# #in K\n", + "\n", + "Tr1=T1/Tc\n", + "Pr1=p1/Pc\n", + "print\"\\nTr1 = %.3f \\nPr1 = %.3f \\n\"%(Tr1,Pr1)\n", + "\n", + "c5=-35+(36/Tr1)+(42*log(Tr1))-(Tr1**6)\n", + "c2=((0.315*c5)-log(Pr1))/((0.0838*c5)-log(Tr1))\n", + "c1=0.0838*(3.758-c2)\n", + "print\"\\nc5 = %.4f \\nc2 = %.4f \\nc1 = %.4f\\n\"%(c5,c2,c1)\n", + "\n", + "k9=-35*c1\n", + "k10=-36*c1\n", + "k11=(42*c1)+c2\n", + "k12=-c1\n", + "\n", + "print\"\\nk9 = %.3f \\nk10 = %.3f \\nk11 = %.4f\"%(k9,k10,k11)\n", + "print\"\\nk12 = %.5f\\n\"%(k12)\n", + "\n", + "Tr=T/Tc\n", + "Pr=exp(k9-(k10/Tr)+(k11*log(Tr))+(k12*Tr**6))\n", + "p0=Pc*Pr\n", + "print\"\\nPr = %.3f \\n\\nP0 = %.2f kN/m**2\\n\"%(Pr,p0)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 549 Exaple 11.3" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "P0_B = 62.1 kN/m**2\n", + "P0_T = 22.5 kN/m**2\n", + "\n", + "\n", + "pB = 31.05 kN/m**2 \n", + "pT = 11.254\n", + "\n", + "\n", + "yB = 0.734 \n", + "yT = 0.266\n", + "\n" + ] + } + ], + "source": [ + "k1_B=6.90565\n", + "k2_B=1211.033\n", + "k3_B=220.79\n", + "\n", + "k1_T=6.95334\n", + "k2_T=1343.943\n", + "k3_T=219.377\n", + "\n", + "t=338-273# #in Degree celsius\n", + "P=101.3# #in kN/m**2\n", + "xB=0.5\n", + "xT=0.5\n", + "\n", + "def antoine(k1,k2,k3,T):\n", + " p0=10**(k1-(k2/(T+k3)))\n", + " return p0\n", + "\n", + "p0_B=antoine(k1_B,k2_B,k3_B,t)*101.325/760\n", + "p0_T=antoine(k1_T,k2_T,k3_T,t)*101.325/760\n", + "\n", + "print\"\\nP0_B = %.1f kN/m**2\\nP0_T = %.1f kN/m**2\\n\"%(p0_B,p0_T)\n", + "\n", + "pB=xB*p0_B\n", + "pT=xT*p0_T\n", + "print\"\\npB = %.2f kN/m**2 \\npT = %.3f\\n\"%(pB,pT)\n", + "\n", + "p=pB+pT\n", + "yB=pB/p\n", + "yT=pT/p\n", + "print\"\\nyB = %.3f \\nyT = %.3f\\n\"%(yB,yT)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 550 Example 11.4" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "\tT(K)\n", + "373 \t353 \t363 \t365 \t365.1 \t\n", + "\n", + "\t\n", + "p0 B:\n", + "180.051\t101.013\t136.121\t144.159\t144.570\t\n", + "\t\n", + "p0 T:\n", + "\n", + "74.170\t38.825\t54.227\t57.825\t58.010\t\n", + "\n", + "\t\n", + "pB:\n", + "\n", + "90.025\t50.507\t68.060\t72.079\t72.285\t\n", + "\t\n", + "pT:\n", + "\n", + "37.085\t19.412\t27.113\t28.912\t29.005\t\n", + "\t\n", + "pB+pT:\n", + "\n", + "127.110\t69.919\t95.174\t100.992\t101.290\t\n", + "\n", + "Boiling temperature is 365.100 K\n" + ] + } + ], + "source": [ + "def antoine(k1,k2,k3,T):\n", + " p0=10**(k1-(k2/(T+k3-273)))\n", + " return p0\n", + "\n", + "\n", + "k1_B=6.90565\n", + "k2_B=1211.033\n", + "k3_B=220.79\n", + "\n", + "k1_T=6.95334\n", + "k2_T=1343.943\n", + "k3_T=219.377\n", + "\n", + "xB=0.5\n", + "xT=0.5\n", + "\n", + "print\"\\n\\tT(K)\"\n", + "T=[373, 353, 363, 365, 365.1]\n", + "for t in T:\n", + " print t,'\\t',\n", + "\n", + "print\n", + "i=0\n", + "\n", + "p0_B=[];p0_T=[];pB=[];pT=[];p=[]\n", + "while i<5:\n", + " p0_B.append(antoine(k1_B,k2_B,k3_B,T[(i)])*101.325/760)\n", + " p0_T.append(antoine(k1_T,k2_T,k3_T,T[(i)])*101.325/760)\n", + " pB.append(xB*p0_B[(i)])\n", + " pT.append(xT*p0_T[(i)])\n", + " p.append(pB[(i)]+pT[(i)])\n", + " i=i+1\n", + "\n", + "print\"\\n\\t\\np0 B:\"\n", + "for pp in p0_B:\n", + " print \"%0.3f\\t\"%pp,\n", + "print\"\\n\\t\\np0 T:\"\n", + "print \n", + "for pp in p0_T:\n", + " print \"%0.3f\\t\"%pp,\n", + "print\n", + "print\"\\n\\t\\npB:\"\n", + "print \n", + "for pp in pB:\n", + " print \"%0.3f\\t\"%pp,\n", + "\n", + "print\"\\n\\t\\npT:\"\n", + "print \n", + "for pp in pT:\n", + " print \"%0.3f\\t\"%pp,\n", + "\n", + "print\"\\n\\t\\npB+pT:\"\n", + "print \n", + "for pp in p:\n", + " print \"%0.3f\\t\"%pp,\n", + "\n", + "print \n", + "#since total pressure at 365.1 K is nearly same as 101.3 kPa\n", + "print\"\\nBoiling temperature is %.3f K\"%(T[4])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 551 Example 11.5" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "T(K) : \n", + "373.2 \t371.2 \t371.7 \t371.9 \t372 \t\n", + "p0 B:\n", + "181.028525362 \t171.432167447 \t173.793590263 \t174.745148387 \t175.222430638 \t\n", + "\n", + "p0 T:\n", + "74.6211877248 \t70.2066082135 \t71.2902696145 \t71.7274367157 \t71.9468173127 \t\n", + "\n", + "xB:\n", + "0.279790159583 \t0.2954521357 \t0.291437675713 \t0.289850679504 \t0.289061165375 \t\n", + "\n", + "xT:\n", + "0.678761643232 \t0.721442059214 \t0.71047564098 \t0.706145407102 \t0.703992224977 \t\n", + "\n", + "x = xB+xT:\n", + "0.958551802815 \t1.01689419491 \t1.00191331669 \t0.995996086606 \t0.993053390352 \t\n", + "\n", + "Dew point can be taken as 372.000 K\n" + ] + } + ], + "source": [ + "def antoine(k1,k2,k3,T):\n", + " p0=10**(k1-(k2/(T+k3-273)))\n", + " return p0\n", + "\n", + "k1_B=6.90565\n", + "k2_B=1211.033\n", + "k3_B=220.79\n", + "\n", + "k1_T=6.95334\n", + "k2_T=1343.943\n", + "k3_T=219.377\n", + "\n", + "#Since total pressure is 101.3 kPa, pB=pT\n", + "pB=50.65\n", + "pT=50.65\n", + "\n", + "print\"\\nT(K) : \"\n", + "T=[373.2 ,371.2 ,371.7 ,371.9, 372]\n", + "for t in T:print t,'\\t',\n", + "\n", + "\n", + "i=0\n", + "\n", + "p0_B=[];p0_T=[];xB=[];xT=[];x=[]\n", + "while i<5:\n", + " p0_B.append(antoine(k1_B,k2_B,k3_B,T[(i)])*101.325/760)\n", + " p0_T.append(antoine(k1_T,k2_T,k3_T,T[(i)])*101.325/760)\n", + " xB.append(pB/p0_B[(i)])\n", + " xT.append(pT/p0_T[(i)])\n", + " x.append(xB[(i)]+xT[(i)])\n", + " i=i+1\n", + "\n", + "\n", + "print\"\\np0 B:\"\n", + "for p in p0_B: print p,'\\t',\n", + "print \n", + "print\"\\np0 T:\"\n", + "for p in p0_T:print p,'\\t',\n", + "print \n", + "print\"\\nxB:\"\n", + "for xx in xB:print xx,'\\t',\n", + "print\n", + "print\"\\nxT:\"\n", + "for xx in xT:print xx,'\\t',\n", + "print\n", + "print\"\\nx = xB+xT:\"\n", + "for xx in x:print xx,'\\t',\n", + "print \n", + "#Since last value is closer to 1, 372 K is the required dew point\n", + "print\"\\nDew point can be taken as %.3f K\"%(T[4])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 557 Example 11.6" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "For slope = -3\n", + "\n", + "x=0.42 \t y=0.63\n", + "\n", + "\n", + "for x=0.42 \t T=366.5\n" + ] + } + ], + "source": [ + "#Fractional vapourisation f=V/F\n", + "f=0.25\n", + "\n", + "slope=(1-f)/-f\n", + "\n", + "#from fig 11.9, a construction is made\n", + "print\"\\nFor slope = %d\"%(slope)\n", + "print\"\\nx=0.42 \\t y=0.63\\n\"\n", + "\n", + "#from fig. 11.10,temperature corresponding to x=0.42 is noted\n", + "print\"\\nfor x=0.42 \\t T=366.5\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 564 Example 11.7" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "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\npncAAAAASUVORK5CYII=\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f42ec286550>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "\n", + " As the least point on equilibrium Line xt-7 correspond to reboiler, and there will be seven plates\n" + ] + } + ], + "source": [ + "from scipy.optimize import fsolve\n", + "%matplotlib inline\n", + "from matplotlib.pyplot import plot,title,xlabel,ylabel,show\n", + "from numpy import arange\n", + "\n", + "\n", + "# Find Number of theoretical plates needed and the position of entry for the feed\n", + "\n", + "F = 100# #Feed [kmol]\n", + "\n", + "def Feed(x):\n", + " f=[]\n", + " f.append(x[0]+x[1]-100) #Overall mass Balance\n", + " f.append(0.9*x[0]+.1*x[1]-(100*.4))# #A balance on MVC,benzene\n", + " return f\n", + "x = [50, 50]\n", + "product = fsolve(Feed,x)\n", + "\n", + "#Using notation of figure 11.13\n", + "Ln = 3*product[0]\n", + "Vn = Ln + product[0]\n", + "\n", + "#Reflux to the plate\n", + "Lm = Ln + F\n", + "Vm = Lm - product[1]\n", + "\n", + "#Equilibrium Composition\n", + "xt = .79\n", + "yt = .9\n", + "#From Top eqm line\n", + "yt1 = (Ln/Vn)*xt + (product[0]/Vn)\n", + "xt1=.644# #Thus from Eqm curve for yt1\n", + "#From Top eqm line\n", + "yt2 = (Ln/Vn)*xt1 + (product[0]/Vn)\n", + "xt2=.492# #Thus from Eqm curve for yt2\n", + "#From Top eqm line\n", + "yt3 = (Ln/Vn)*xt2 + (product[0]/Vn)\n", + "xt3=.382# #Thus from Eqm curve for yt3\n", + "#From II Eqm Line\n", + "yt4 = (Lm/Vm)*xt3 - (product[1]/Vm)*.1\n", + "xt4=.2982# #Thus from Eqm curve for yt4\n", + "#From II Eqm Line\n", + "yt5 = (Lm/Vm)*xt4 - (product[1]/Vm)*.1\n", + "xt5=.208# #Thus from Eqm curve for yt5\n", + "#From II Eqm Line\n", + "yt6 = (Lm/Vm)*xt5 - (product[1]/Vm)*.1\n", + "xt6=.120# #Thus from Eqm curve for yt6\n", + "#From II Eqm Line\n", + "yt7 = (Lm/Vm)*xt6 - (product[1]/Vm)*.1\n", + "xt7=.048# #Thus from Eqm curve for yt7\n", + "\n", + "#Equilibrium Data\n", + "y=[0, yt7 ,yt6 ,yt5 ,yt4 ,yt3 ,yt2 ,yt1 ,yt]\n", + "x=[0, xt7 ,xt6 ,xt5 ,xt4 ,xt3 ,xt2 ,xt1, xt]\n", + "#Top Equilibrium Line equation 11.35\n", + "x1 = arange(0,.79,100)\n", + "y1 = (Ln/Vn)*x1 + (product[0]/Vn)\n", + "#Equilibrium Line equation 11.37\n", + "x2 = arange(0.048,.44,100)\n", + "y2 = (Lm/Vm)*x2 - (product[1]/Vm)*.1\n", + "\n", + "plot(x,y,x1,y1,x2,y2)\n", + "title(\"Lewis-Sorel Method\")\n", + "xlabel( \"Mole fraction of C6H6 in Liquid (x)\")\n", + "ylabel( \"Mole Fraction C6H6 in Vapor (y)\")\n", + "show()\n", + "print\"\\n\\n As the least point on equilibrium Line xt-7 correspond to reboiler, and there will be seven plates\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 567 Example 11.8" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f42ec32b4d0>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f42ccf88a90>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "\n", + " The Number of stages are then counted highlighted points that is number of plates required as 7\n" + ] + } + ], + "source": [ + "from scipy.optimize import fsolve\n", + "%matplotlib inline\n", + "from matplotlib.pyplot import plot,title,xlabel,ylabel,show\n", + "from numpy import arange\n", + "\n", + "\n", + "# Find Number of theoretical plates needed and the position of entry for the feed by mccabe thiele method\n", + "\n", + "F = 100# #Feed [kmol]\n", + "\n", + "def Feed(x):\n", + " f=[]\n", + " f.append(x[0]+x[1]-100)# #Overall mass Balance\n", + " f.append(0.9*x[0]+.1*x[1]-(100*.4)) #A balance on MVC,benzene\n", + " return f\n", + "x = [50, 50]\n", + "product = fsolve(Feed,x)\n", + "\n", + "#Using notation of figure 11.13\n", + "Ln = 3*product[0]\n", + "Vn = Ln + product[0]\n", + "\n", + "#Reflux to the plate\n", + "Lm = Ln + F\n", + "Vm = Lm - product[1]\n", + "\n", + "#Equilibrium Data\n", + "y=[0, .127, .252 ,.379 ,.498, .594, .708, .818, .9, 1]\n", + "x=[0 ,.048, .12, .208, .298, .382 ,.492, .644, .79, 1]\n", + "#Diagnol Line\n", + "y3 = [0, 1]\n", + "x3 = [0 ,1]\n", + "#Top Equilibrium Line equation 11.35\n", + "x1 = arange(0,.985,100)\n", + "y1 = (Ln/Vn)*x1 + (product[0]/Vn)\n", + "#Equilibrium Line equation 11.37\n", + "x2 = arange(0.048,.44,100)\n", + "y2 = (Lm/Vm)*x2 - (product[1]/Vm)*.1\n", + "\n", + "#Setting initial point A x = .985 at top eqm line\n", + "xm = [.985, .965, .965, .92 ,.92 ,.825 ,.825 ,.655 ,.655 ,.44 ,.44 ,.255 ,.255 ,.125 ,.125 ,.048]\n", + "ym = [.985 ,.985, .965, .965, .92 ,.92 ,.825 ,.825 ,.655 ,.655 ,.44 ,.44 ,.255, .255, .125, .125]\n", + "xp = [.985 ,.965 ,.92 ,.825, .655, .44 ,.255 ,.125 ,.048]\n", + "yp = [.985, .965 ,.92 ,.825 ,.655 ,.44, .255, .125, .048]\n", + "plot(x,y,x3,y3,x1,y1,x2,y2,xm,ym)\n", + "title(\"Mccabe Thiele Method\")\n", + "xlabel( \"Mole fraction of C6H6 in Liwuid (x)\")\n", + "ylabel( \"Mole Fraction C6H6 in Vapor (y)\")\n", + "show()\n", + "#for i in range(1:8):\n", + "plot(xp[1:8],yp[1:8])\n", + "title(\"Equilibrium plot\")\n", + "xlabel(\"mole fraction C6H6 in liquid(x)\")\n", + "ylabel(\"mole fractionC6H6 in vapour(y)\")\n", + "show()\n", + "\n", + "print\"\\n\\n The Number of stages are then counted highlighted points that is number of plates required as 7\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 574 Example 11.9" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "No. of theoretical plates in column is : 4\n", + "\n", + "Minimum reflux ratio is 1.32\n", + "\n", + "\n", + "Using Graphical construction with yf=0.61\n", + "\n", + "Minimum reflux ratio is 1.38\n", + "\n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "xA_d=0.9\n", + "xA_s=0.1\n", + "xB_d=1-xA_d\n", + "xB_s=1-xA_s\n", + "\n", + "a=2.4\n", + "xd=0.9\n", + "xf=0.4\n", + "xw=0.1\n", + "\n", + "n=(log(xA_d*xB_s/(xB_d*xA_s))/log(a))-1\n", + "print\"\\nNo. of theoretical plates in column is : %d\"%(n)\n", + "\n", + "Rm=((xd/xf)-(a*((1-xd)/(1-xf))))/(a-1)\n", + "print\"\\nMinimum reflux ratio is %.2f\\n\"%(Rm)\n", + "\n", + "yf=0.61\n", + "print\"\\nUsing Graphical construction with yf=0.61\\n\"\n", + "Rmin=(xd-yf)/(yf-xf)\n", + "print\"Minimum reflux ratio is %.2f\\n\"%(Rmin)\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 587 Example 11.10" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " Rm = 0.323\n", + "\n", + " Since the actual reflux is 8 pre cent above the minimum NA = 1.08*NmA = 437.400\n", + "\n", + " Number of plates to be required are 8.333\n", + "\n", + " Heat input to the boiler per unit mass of bottom product is 791.000\n", + "\n", + " Heat input to the boiler = 616.980 kW\n", + "\n", + " Condenser duty = 371 kW\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "#From material balance\n", + " # D+W=1\n", + " # 0.995D+0.1W=1*3\n", + "\n", + "A=[[1, 1],[0.995, 0.1]]\n", + "B=[[1],[3]]\n", + "Rm = (1952-1547)/(1547-295)\n", + "print\"\\n Rm = %.3f\"%(Rm)\n", + "NA = 1.08*405\n", + "print\"\\n Since the actual reflux is 8 pre cent above the minimum NA = 1.08*NmA = %.3f\"%(NA)\n", + "N = 5/0.6\n", + "print\"\\n Number of plates to be required are %.3f\"%(5/0.6)\n", + "\n", + "Qb_W = 582 - (-209)\n", + "print\"\\n Heat input to the boiler per unit mass of bottom product is %.3f\"%(Qb_W)\n", + "print\"\\n Heat input to the boiler = %.3f kW\"%(791*0.78)\n", + "print\"\\n Condenser duty = %d kW\"%((1984-296)*0.22)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 590 Example 11.11" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "D = 41.7 W = 48.3\n", + "\n", + "From the enthalpy data and the reflux ratio, the upper pole point M is located as shown in Figure.\n", + "Points F and S are located,such that FS/FF = 10.\n", + "MF is Joined and extended to cut NS**A at O, the immediate pole point.\n", + "The number of stages required is then obtained from the figure and\n", + "13 theoretical stages are required\n" + ] + } + ], + "source": [ + "from numpy import mat\n", + "\n", + "# F is feed\n", + "# D is distillate\n", + "# W is waste\n", + "# S is sidestream\n", + "\n", + "F=100\n", + "S=10\n", + "\n", + "#Mass fractions of CCl4 in various streams\n", + "xf=0.5\n", + "xd=0.95\n", + "xw=0.05\n", + "xs=0.8\n", + "\n", + "# D + W = 100-10\n", + "# 0.95D + 0.00W = 50-8\n", + "A=mat([[1,1],[0.95,0.05]])\n", + "B=mat([[90],[42]])\n", + "x=(A**-1)*B\n", + "print\"\\nD = %.1f W = %.1f\\n\"%(x[0],x[1])\n", + "\n", + "print \"From the enthalpy data and the reflux ratio, the upper pole point M is located as shown in Figure.\"\n", + "\n", + "print \"Points F and S are located,such that FS/FF = 10.\"\n", + "\n", + "print \"MF is Joined and extended to cut NS**A at O, the immediate pole point.\"\n", + "print \"The number of stages required is then obtained from the figure and\"\n", + "print\"13 theoretical stages are required\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 595 Example 11.12" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " R Fi xs Db \n", + "\n", + " 0.85 0.405 0.55 0.0\n", + "\n", + " 1.00 0.375 0.50 20.0\n", + "\n", + " 1.50 0.300 0.37 47.4\n", + "\n", + " 2.00 0.250 0.20 63.6\n", + "\n", + " 3.00 0.188 0.07 70.4\n", + "\n", + " 4.00 0.150 0.05 71.4\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYMAAAEPCAYAAACgFqixAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XmUHFXZx/HvjywQBE0imET2RQwGAkkAAVkaAUUORnGJ\noEJcWRRBBSRyRMYdcMEXlVXhDYtCUAyL8JIIaSCKAlkISYiIEFYzEJJAgABZnvePqkk6zSzdM1NT\n3T2/zzlzUl1d3f1MDdTT9966z1VEYGZmvdsGeQdgZmb5czIwMzMnAzMzczIwMzOcDMzMDCcDMzMj\n42Qg6duS5kl6SNLvJW0oabCkqZIekTRF0sAsYzAzs45llgwkbQt8GRgdEbsCfYCjgAnA1IjYCbgj\nfWxmZjnKsmXwErAS2FhSX2Bj4FlgLDAxPWYi8NEMYzAzswpklgwiYgnwc+BJkiSwLCKmAkMiojk9\nrBkYklUMZmZWmSy7iXYAvg5sC7wT2ETSZ0uPiaQWhuthmJnlrG+G770H8PeIeAFA0g3APsAiSUMj\nYpGkYcBzrb1YkpOEmVknRISqfU2WYwYLgL0lDZAk4BBgPnAzMD49Zjwwua03iIi6/Tn77LNzj6E3\nxu748/9x/Pn+dFZmLYOIeFDSlcADwBpgJnApsCkwSdIXgYXAuKxiMDOzymTZTUREnAecV7Z7CUkr\nwczMaoRnIGekUCjkHUKn1XPs4Pjz5vjrk7rSx5QlSVGrsZmZ1SpJRI0NIJuZWZ1wMjAzMycDMzNz\nMjAzM5wMzMwMJwMzM8PJwMzMcDIwMzOcDMzMDCcDMzPDycDMzHAyMDMznAzMzAwnAzMzw8nAzMxw\nMjAzM5wMzMyMjNdAlvRu4NqSXdsDZwFXA9cB2wALgXERsSzLWMzMshYBb7wBr71W2c/rr3f/sZ3V\nY8teStoAeAbYC/gasDgizpN0BjAoIiaUHe9lL82sKqtXZ3OBrfS4N96A/v1hww1ho406/sniuH79\nOrfsZU8mgw8AZ0XE/pIWAAdGRLOkoUAxIoaXHe9kYFZn1qyBV17J71vx6tUwYEB2F9qOjunfHzbI\nufO9s2sgZ9pNVOYo4A/p9pCIaE63m4EhPRiHmXWDlSvh4Ydh5kyYMSP598EHk4thVy60Awd2/qLc\nty+o6sugQQ+1DCT1J+kiek9EPC9paUQMKnl+SUQMLnuNWwZmNeL112Hu3OSC3/Izdy5svTWMHg1j\nxiT/7r57cjG3/NR6y+BDwIyIeD593CxpaEQskjQMeK61FzU1Na3dLhQKFAqFrOM06/VWrIA5c9Z9\n2585ExYsgB13TC74o0fDZz8Lu+0Gm2ySd7RWLBYpFotdfp+eahlcC9wWERPTx+cBL0TEuZImAAM9\ngGzW815+GWbPXnfRnzED/vMfGD583bf90aNh5MikL95qX2dbBpknA0lvAZ4AtouI5em+wcAkYGva\nuLXUycCsey1bllz4S7/xP/kk7LLLuov+mDEwYkTSL2/1qWaTQWc5GZh13gsvrP9tf+ZMWLQo6dop\n/ca/887Qr1/e0Vp3cjIw66Wam9f/tj9zJixdCqNGrT+4u9NO0KdP3tFa1pwMzBpcBDzzzJu/8a9Y\nsf63/dGjYYcd8r/f3fLhZGDWQCLgiSfW/8Y/Y0byXMuFv+XfbbbxvfW2jpOBWZ1asya5g6f02/7M\nmcndO+Xf+LfYwhd+a5+TgVkdWL0a/vWv9fv3Z82CQYPW/7Y/ahQMHZp3tFaPnAzMakxr5RrmzEku\n8qXf9kePhre/Pe9orVE4GZjlqLxcw4wZMG+eyzVYz3MyMOshlZRraLnwu1yD9TQnA7MMuFyD1Rsn\nA7MuWrYsGcwtHdx1uQarN04GZlVwuQZrVE4GZm3oqFxDyzd+l2uwRuBkYEayBu3ttycXf5drsN7I\nycB6vRUr4OMfh8WL4dBDXa7BeqdaX+nMLFPLl8OHPwzvfCfceKP7+c2q5Yay1b0lS+CQQ5I+/6uu\nciIw6wwnA6trzc1w0EGw335wySUeADbrLCcDq1tPPQUHHABHHgk/+5nHBcy6wmMGVpcefTQZJD7p\nJDj11LyjMat/mbcMJA2U9EdJD0uaL+m9kgZLmirpEUlTJLl0l1Vs3jwoFGDCBCcCs+7SE91E/wPc\nGhE7AyOBBcAEYGpE7ATckT4269CMGXDwwXDOOXD88XlHY9Y4Mp1nIOltwKyI2L5s/wLgwIholjQU\nKEbE8LJjPM/A1jN9OnzsY8lA8ZFH5h2NWW3q7DyDrFsG2wHPS7pC0kxJl0l6CzAkIprTY5qBIRnH\nYXVu6tQkAVx9tROBWRayHkDuC4wGToqI+yX9krIuoYgISa02AZqamtZuFwoFCoVCdpFazbrxRvjy\nl+GGG2D//fOOxqy2FItFisVil98n626iocC9EbFd+ng/4NvA9sBBEbFI0jBgmruJrDW//z1885tw\nyy2wxx55R2NW+2qymygiFgFPSdop3XUIMA+4GRif7hsPTM4yDqtPl14Kp58Of/2rE4FZ1jIvVCdp\nN+C3QH/gP8DngT7AJGBrYCEwLiKWlb3OLYNe7Be/gAsuSBLBjjvmHY1Z/XDVUmsIEfD978M118Ad\nd8BWW+UdkVl9cdVSq3sRSbfQlClw990wdGjeEZn1Hk4GVhNWr4avfCVZfL5YhMGD847IrHdxMrDc\nrVoFn/scPP10Mkaw6aZ5R2TW+zgZWK5efx2OOir599ZbYeON847IrHdyCWvLzSuvJKuT9ekDkyc7\nEZjlycnAcvHii3DYYTBsGFx7LfTvn3dEZr2bk4H1uMWLk8qjI0fCFVdAX3dWmuWuov8NJe0MbAus\nAZ6IiAVZBmWN67//TRalOeII+MlPvDqZWa1oMxlI2g74BnA48AzwLCBgmKQtgVuA8yNiYQ/EaQ3g\niSeSFsEXvgBnnpl3NGZWqs0ZyJImAZeRrDWwsuy5fsBBwJciYlwmgXkGckN55JGkRXDqqXDyyXlH\nY9a4XI7CatacOclg8Q9/mLQKzCw73V6OQtLHgSDpGioXEXFDtR9mvc999yW3j15wAXzqU3lHY2Zt\naW8A+cMkyaAtTgbWrrvugk9+Ei6/PBkwNrPa5W4iy8Rtt8H48ckcgve/P+9ozHqPzBa3kTRQ0vmS\nZqQ/P08Xujdr1Z/+lNQauvFGJwKzelHJpLPLgZeATwLjgOXAFVkGZfVr4kQ46SS4/XbYZ5+8ozGz\nSnXYTSTpwYjYraN93R6Yu4nqzoUXJhPJpk6F4cM7Pt7Mul+WayCvkLR/yQftB7xa7QdZYzv3XPj5\nz5NFaZwIzOpPJeUoTgCuLBknWMq6xeytl4uAs86CG25IEsEWW+QdkZl1RsV3E0l6K0BEvFTVB0gL\nScYcVgMrI2IvSYOB64BtgIXAuIhYVvY6dxPVuDVr4BvfgHvuScYINt8874jMLLMZyJIGAceSFKpr\naUlERFRUVEDS48CYiFhSsu88YHFEnCfpDGBQREwoe52TQQ1bvRqOOw4efjhZlGbgwLwjMjPIYAZy\niVuBe4E5JFVLRfuT0VpTHthY4MB0eyJQBCZgdeGNN+CYY+CFF5LF6zfZJO+IzKyrKmkZzIyI0Z3+\nAOkx4EWSbqJLIuIySUsjYlD6vIAlLY9LXueWQQ167bVkVrEEkybBRhvlHZGZlcqyZfB7SccBNwOv\nt+ws7fbpwPsi4r+SNgemSlpvLYSICEmtXvWbmprWbhcKBQqFQoUfaVl4+WX4yEfgHe+AK6+Efv3y\njsjMisUixWKxy+9TScvgJOBHwDKSbiJIruHbV/1h0tnAy8CXgUJELJI0DJgWEcPLjnXLoIYsXQqH\nHw4jRsAllyTrFptZ7clynsGpwA4RsU1EbJf+VJQIJG0sadN0+y3AB4CHgJtYd3vqeGBytYFbz3nu\nuaSsxN57w2WXORGYNaJKuon+Dazo5PsPAf6cDAvQF7gmIqZIegCYJOmLpLeWdvL9LWPPPAOHHJKM\nE3zve16m0qxRVdJNNBkYAUxj3ZhBxbeWdjowdxPl7rHHkkRw4olw+ul5R2NmlchyAHly+tNyZe7M\nraVWZx5+GD7wgWSt4hNPzDsaM8taJclgbkQ8ULpD0oczisdqwKxZyWDxeecl8wnMrPFVMoB8qaRd\nWx5IOho4K7uQLE+PP56sV/yb3zgRmPUmlYwZbA/8Efg0sD9JaYojIuLFTAPzmEGPi0haBAceCBM8\nH9ysLmU2ZhARj6WtgcnAE8AHI8IlrBvQ9dfD00/DqafmHYmZ9bQ2WwaSHirb9Q6SiWdvkNxNNDLT\nwNwy6FHLliUTyq6/HvbdN+9ozKyzur1qqaRt23thRCys9sOq4WTQs1ruGLroonzjMLOuyaKb6IWI\nWN7Bh27a0TFW++69F266CebNyzsSM8tLe8ngz5L+BdwIPNBSmE7S24E9gI8C7wIOyTxKy8zKlcm6\nBOef7zUJzHqzdu8mkvR+kruI3ge8M939LDCdpLREMbPA3E3UI845J1mu8i9/cakJs0aQ2UpneXEy\nyN5jj8Fee8H998N22+UdjZl1hyyrlloDikgGjc84w4nAzJwMeq1rr4VFi+DrX887EjOrBe4m6oWW\nLEnmFEyeDO99b97RmFl3ynTMQNIYYD+Slc7+FhEzqw+xysCcDDJz3HHQvz/8+td5R2Jm3S2zchSS\nvgt8EriBpHz1FZL+GBE/qD5My9v06XDrrZ5TYGbrq6RQ3SPAyIh4LX08AHgwInbKNDC3DLrdG2/A\nqFHJimWf+ETe0ZhZFrK8m+gZYEDJ442Ap6v9IMvfT38K228PH/943pGYWa1ps5tI0q/SzReBeZKm\npI8PBe7LOjDrXo8+mswynjHDk8vM7M3aK1T3OZLlLVu7dERETKzoA6Q+wAPA0xHxYUmDgeuAbYCF\nwLiIWNbK69xN1E0i4NBD4UMfcnlqs0aX9d1EmwNExPOdCOybwBhg04gYK+k8YHFEnCfpDGBQRLxp\nKRUng+5z9dXw858nM437VrLQqZnVrW4fM1CiSdJi4BHgEUmLJZ1dRVBbAocDv2VdC2Ms0NKqmEhS\n8M4y8sILcNppcOmlTgRm1rb2BpC/QVKgbs+IGBQRg4C9gPel3/YrcT5wOsn8hBZDIqI53W4GhlQZ\ns1XhW9+CceNgzz3zjsTMall73xWPBQ4t7RpKl8D8DDAV+EV7byzpCOC5iJglqdDaMRERktrsC2pq\nalq7XSgUKBRafRtrw113wZQpnlNg1siKxSLFYrHL79PeAPLciNil2udKjvkxcAywiuR21LeSTFzb\nEyhExCJJw4BpETG8ldd7zKALXn8ddt8dfvxjOPLIvKMxs56SxTyDlZ18DoCIODMitoqI7YCjgDsj\n4hjgJmB8eth4YHKlwVrlzj0X3v1uJwIzq0x73UQjJbW1pOWANva3p+Vr/jnAJElfJL21tBPvZe14\n5BG44AKYNSvvSMysXrhqaYOJgIMPhrFjXZ7arDfy4jYGwJVXwksvwde+lnckZlZP3DJoIIsXJ+sU\n3HorjBmTdzRmlgevgWx8/vMwcGBSg8jMeqfMuokknVvJPsvXtGlwxx3wA68yYWadUMmYwQda2Xd4\ndwdinffaa3DCCcnKZZtsknc0ZlaP2ithfSLwFWAHSQ+VPLUp8LesA7PKnXNOMlYwdmzekZhZvWpv\nBvLbgEEk8wLOYF2hueUR8ULmgXnMoCILFsD++8Ps2bDFFnlHY2Z5y2wAWdI+wLyIeCl9/FZg54j4\nZ6cirTQwJ4MORUChkCxh6VtJzQyynWdwEfByyeNXgIur/SDrfldcAStWwFe+knckZlbvKqpwHxFr\nSrZXp6uXWY6eew4mTEiqkvbxX8PMuqiSlsHjkk6W1E9Sf0mnAI9lHZi177TT4Nhjk8qkZmZdVUnL\n4ATgAuA76eM7gOMyi8g69Ne/wt13w9y5eUdiZo3CM5DrzIoVMHJkMsv4iCPyjsbMak1nB5A7bBlI\nuqJsVwBExBeq/TDruh//OOkaciIws+5USTfRX1i3FsEA4Ejg2cwisjbNnw8XXwwPPph3JGbWaKru\nJpK0AfC3iNgnm5DWfo67iUqsWQMHHghHH+1bSc2sbT25nsFOwOadeJ11weWXw8qVcPzxeUdiZo2o\nkjGDl1nXTRRAM0l5Cushzc1w5pnJXUSeU2BmWfDdRHXgM5+BLbdMFrk3M2tPt99NJGkM61oEbxIR\nMzsIaCPgLmBDoD9wY0R8W9Jg4DpgG2AhMC4illUbeG8xZQrcey889FDHx5qZdVZ7VUuLJMlgADAG\nmJM+NRJ4oJIBZEkbR8SrkvoC04HTgLHA4og4T9IZwKCImNDKa3t9y+DVV2HXXZN1Cj70obyjMbN6\n0O0DyBFRiIiDSG4jHR0RYyJiDDCKCm8tjYhX083+QB9gKUkymJjunwh8tNqge4sf/hD23NOJwMyy\nV8k8g+ERsbaTIiLmStq5kjdPb0OdCewAXBQR8yQNiYjm9JBmYEi1QfcGc+fCb38Lc+Z0fKyZWVdV\nkgzmSPotcDXJAjefBiqa9pRWO909XSjndkkHlT0fktrsC2pqalq7XSgUKBQKlXxs3VuzJrmF9Ac/\ngKFD847GzGpZsVikWCx2+X0qWdxmAHAisH+6626Sb/mvVfVB0lnACuBLQCEiFkkaBkyLiOGtHN9r\nxwwuuQQmToTp02GDzswEMbNeK7OVztI335BkshnAgohYWcFrNgNWRcSyNKHcDnwP+CDwQkScK2kC\nMNADyOssWpQUorvzTthll7yjMbN6k+WylwWSgd4n0l1bA+Mj4q4OXrdr+roN0p+rIuKn6a2lk9L3\nWUgbt5b21mRw1FGw/fZJQTozs2plmQxmAkdHxL/SxzsB10bE6E5FWmlgvTAZ3HYbnHRSMqdg443z\njsbM6lGWtYn6tiQCgIh4hAqXy7TKvfoqfPWrcNFFTgRm1vMqaRlcAaxm3d1EnwE2yHo9g97WMjjj\nDHj6abjmmrwjMbN6lmU30YbAScD70l33ABdGxOtVR1lNYL0oGcyZA4ccknQPDfGsCzPrgkySQVpG\nYm5rt35mrbckgzVrYN994UtfSn7MzLoikzGDiFgF/EvSNp2OzNp18cXQrx98wYuImlmOKukmuoek\nHtF9wCvp7oiIsZkG1gtaBs8+C7vtBnfdBe95T97RmFkj6PYS1iW+0/IZJfsa+yrdQ045BU44wYnA\nzPLX3noGA4ATgB1JyldfXsnMY6vMLbfA7Nlw5ZV5R2Jm1v56BpOAN0juHjocWBgRp/RYYA3cTfTK\nKzBiBPzud3DwwXlHY2aNpNvvJpL0UETsmm73Be6PiFFdC7OKwBo4GZx2Gjz3nFsFZtb9shgzWNWy\nERGrpKrf21oxaxZcdVWyXoGZWa1or2WwGni1ZNcAkhLUkNxN9NZMA2vAlsHq1bDPPsmgsW8lNbMs\ndHvLICL6dC0kK3fhhTBgAHz+83lHYma2vorWM8hDo7UMnn4adt89WbBmeI/P5zaz3iLLqqXWDU45\nJalK6kRgZrXIpah7wE03JQPGrkhqZrXKySBjy5cnC9ZMnAgbbZR3NGZmrfOYQca++U1YsgT+93/z\njsTMeoMsaxNZJ82YAb//vecUmFnty3QAWdJWkqZJmidprqST0/2DJU2V9IikKZIGZhlHHlatguOO\ng3PPhc02yzsaM7P2ZX030UrgGxExAtgb+KqknYEJwNSI2Am4I33cUH7zG3jb2+DYY/OOxMysYz06\nZiBpMvDr9OfAiGiWNBQolq+mVs9jBk89BaNGwd//DjvtlHc0Ztab1Pw8A0nbkiyS809gSEQ0p081\nAw218u8pp8DJJzsRmFn96JEBZEmbAH8CTomI5aVF7yIiJLXaBGhqalq7XSgUKBQK2QbaDZYsgalT\nk4FjM7OsFYtFisVil98n824iSf2AW4DbIuKX6b4FQCEiFkkaBkxrlG6iP/8ZLrkE/u//8o7EzHqj\nmuwmUtIE+B0wvyURpG4Cxqfb44HJWcbRk6ZNg/e/P+8ozMyqk2nLQNJ+wN0ky2a2fNC3gfuAScDW\nwEJgXEQsK3ttXbYMdtklmWC2xx55R2JmvVG3r3SWt3pMBs3NSSG6xYuhjwuAm1kOarKbqLeZNg0O\nOMCJwMzqj5NBN7rzTo8XmFl9cjLoRh48NrN65WTQTZ58El58EUaMyDsSM7PqORl0k2nT4KCDYAOf\nUTOrQ750dZM770ySgZlZPXIy6AYRHjw2s/rmZNANHn00SQjvelfekZiZdY6TQTdouYtIVU/zMDOr\nDU4G3cBdRGZW71yOoosiYMgQuP9+2GabvKMxs97O5ShyMm8ebLqpE4GZ1Tcngy5yF5GZNQIngy5y\nCQozawQeM+iC1ath881h/nwYOjTvaMzMPGaQi9mzYdgwJwIzq39OBl3g8QIzaxROBl3gekRm1ig8\nZtBJK1fC298Ojz+e/GtmVgtqcsxA0uWSmiU9VLJvsKSpkh6RNEXSwCxjyMr998OOOzoRmFljyLqb\n6ArgsLJ9E4CpEbETcEf6uO54vMDMGkmmySAi7gGWlu0eC0xMtycCH80yhqw4GZhZI8ljAHlIRDSn\n283AkBxi6JIVK+C++2D//fOOxMyse/TN88MjIiS1OUrc1NS0drtQKFAoFHogqo7dey/sumtSk8jM\nLE/FYpFisdjl98n8biJJ2wI3R8Su6eMFQCEiFkkaBkyLiOGtvK5m7yY66yxYswZ+9KO8IzEzW19N\n3k3UhpuA8en2eGByDjF0iccLzKzRZNoykPQH4EBgM5Lxge8CNwKTgK2BhcC4iFjWymtrsmWwfHlS\nguL552HAgLyjMTNbX2dbBpmOGUTE0W08dUiWn5ul6dNhzz2dCMyssbgcRZVcgsLMGpGTQZU8XmBm\njci1iaqwdGmyvOXixdC/f97RmJm9WT3dTVS37roL9t3XicDMGo+TQRXcRWRmjcrJoApOBmbWqDxm\nUKHmZhg+PBkv6NMn72jMzFrnMYOMFYtwwAFOBGbWmJwMKuQuIjNrZE4GFXIyMLNG5mRQgSefhBdf\nhBEj8o7EzCwbTgYVmDYNCgXYwGfLzBqUL28VcBeRmTU6J4MORCQtAycDM2tkTgYd+M9/klXN3vWu\nvCMxM8uOk0EHWrqIVPUUDjOz+uFk0AGPF5hZb+ByFO2IgKFD4b77ktLVZma1ru7KUUg6TNICSf+W\ndEZecbRn/nzYZBMnAjNrfLkkA0l9gF8DhwHvAY6WtHMesbSnK11ExWKxW2PpSfUcOzj+vDn++pRX\ny2Av4NGIWBgRK4FrgY/kFEubnAzqk+PPl+OvT3klgy2Ap0oeP53uqxmrVycrmx10UN6RmJllL69k\nUJuj1iVmz04Gj4cOzTsSM7Ps5XI3kaS9gaaIOCx9/G1gTUScW3JMzScMM7Na1Jm7ifJKBn2BfwEH\nA88C9wFHR8TDPR6MmZnRN48PjYhVkk4Cbgf6AL9zIjAzy0/NTjozM7Oek3s5io4mn0kqSHpR0qz0\n5zt5xNkaSZdLapb0UDvHXJD+bg9KGtWT8bWno9hr+bwDSNpK0jRJ8yTNlXRyG8fV6vnvMP5a/htI\n2kjSPyXNljRf0k/aOK5Wz3+H8dfy+YdkvlYa181tPF/duY+I3H5IuogeBbYF+gGzgZ3LjikAN+UZ\nZzvx7w+MAh5q4/nDgVvT7fcC/8g75ipir9nznsY3FNg93d6EZAyq/L+dWj7/lcRf63+DjdN/+wL/\nAParl/NfYfy1fv6/CVzTWoydOfd5twwqnXxWkzVDI+IeYGk7h4wFJqbH/hMYKGlIT8TWkQpihxo9\n7wARsSgiZqfbLwMPA+8sO6yWz38l8UNt/w1eTTf7k3yxW1J2SM2ef6gofqjR8y9pS5IL/m9pPcaq\nz33eyaCSyWcB7Js2dW6V9J4ei67rWvv9tswplmrVzXmXtC1JK+efZU/VxflvJ/6a/htI2kDSbKAZ\nmBYR88sOqenzX0H8tXz+zwdOB9a08XzV5z7vZFDJ6PVMYKuI2A34FTA525C6XXnWrpcR+7o475I2\nAf4InJJ+w37TIWWPa+r8dxB/Tf8NImJNROxOcpE5QFKhlcNq9vxXEH9Nnn9JRwDPRcQs2m+5VHXu\n804GzwBblTzeiiSDrRURy1uacxFxG9BP0uCeC7FLyn+/LdN9Na8ezrukfsCfgKsjorX/UWv6/HcU\nfz38DQAi4kXgL8AeZU/V9Plv0Vb8NXz+9wXGSnoc+APwfklXlh1T9bnPOxk8ALxL0raS+gOfAm4q\nPUDSEClZZ0zSXiS3w7bWt1eLbgKOhbWzrpdFRHO+IVWm1s97GtvvgPkR8cs2DqvZ819J/LX8N5C0\nmaSB6fYA4FBgVtlhtXz+O4y/Vs9/RJwZEVtFxHbAUcCdEXFs2WFVn/tcJp21iDYmn0k6Pn3+EuAT\nwImSVgGvkvzyNUHSH4ADgc0kPQWcTXJXFBFxSUTcKulwSY8CrwCfzy/a9XUUOzV83lPvAz4LzJHU\n8j/xmcDWUPvnnwrip7b/BsOAiZI2IPlSeVVE3FH6/26Nn/8O46e2z3+pAOjqufekMzMzy72byMzM\naoCTgZmZORmYmZmTgZmZ4WRgZmY4GZiZGU4GVkckrU5L9s6RdENayqG94zdPyxTPkLSfpMd7cgap\npAMl7VPy+HhJx1Twup9JOjDdLiop8T5b0r2l9XEk3SFp02yit97GycDqyasRMSoiRgIvAcd3cPzB\nwJyIGBMR07MISFKfdp4+iKR0ALB2MtBVHbzfpsABEXFXy8uAT6c1dC4Bzi05/Frgy50K3KyMk4HV\nq3uBHQAk7SDpNkkPSLpb0rsl7U5y4fyIpJmSNmp5YVr+5KGSx6dJOlvJYiH3lXwr/4mkH5Z/cPpt\n/XxJ9wOnSDpC0j/Sz5kq6R1KKpEeD3wjbc3sJ6lJ0qnpe+yevubBtJUzMH37jwB/beN3/kfL75y6\nidqdFWt1xsnA6k76bfwDwNx016XA1yJiD5KyvhemawV8F7g2IkZHxGvtvGUARMRq4HPARZIOAT4I\nNLVxfL+I2DMifgFMj4i9I2I0cB3wrYhYCFwM/CJtzUxPX9cy5f9K4PS0IuZDJOVAIClT8UD5r5z+\ne1jJ70zGv3UHAAAB90lEQVRaa2YzSW9p53czq0iutYnMqjQgreOzBbAQuDgdN9gHuD6tKQbJYiWQ\nXESrWpwkIuZLuhq4Gdg7Ila1ceh1JdtbSZpEsnpZf+Cxkufe9PmS3gq8LV1gCJJFSK5Pt7cB/lv2\n+mvSQo6DgF3L3q6ZpDrlgo5+N7P2uGVg9WRFRIwiuWC+RtKlIpKKjKNKfkakx7dVeGsV6/+3P6Ds\n+V1JVoFrb2WoV0q2fwVckI5lHN/K+3WkPGGUxtYyZrA9yapWp7fyWhcYsy5zMrC6ExErgJOBHwEv\nA49L+gQkpaEljUwPbatV0Ay8Q9JgSRsCR7Cu8uPHgIEkFV1/JeltbbxH6Xu/FXg23f5cyf7lQPnd\nPoqIl4ClkvZL9x0DFNPtJ0haGK191lnARyVtXfLcEMrWADHrDCcDqydrvwGnYwKPAuOAzwBfVLKE\n4VyS9V9bjo/y16frbX8fuA+YAswHkPR24CfAlyLi38Cvgf/pKBaScYXrJT0APF/y3M3AkenA8n5l\nrxsP/FTSg8DINB6A6bx5kZiWuF9L4zkzjXco8EJEvIJZF7mEtVkNScdApkXEnhUcexzwlog4P/vI\nrNG5ZWBWQ9J1kKdJOqiCwz8FXJZxSNZLuGVgZmZuGZiZmZOBmZnhZGBmZjgZmJkZTgZmZoaTgZmZ\nAf8PokWS6grUuJQAAAAASUVORK5CYII=\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f949a715a90>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " The area under the Db vs R curve is given by 96 kmol\n", + "\n", + " Heat to be supplied to provide the reflux,Qr is approximately 384.0 MJ\n", + "\n", + " Heat to be supplied to provide the reflux per kmol of product is then 5.32 MJ\n", + "\n", + " Total heat = 9.32 MJ/kmol product\n" + ] + } + ], + "source": [ + "%matplotlib inline\n", + "from matplotlib.pyplot import plot,title,xlabel,ylabel,show\n", + "\n", + "R = [0.85, 1.0, 1.5, 2.0, 3.0 ,4.0]# #Reflux ratio\n", + "xd = 0.75# #top concentration of alcohol\n", + "xs = [0.55 ,0.50, 0.37 ,0.20 ,0.075 ,0.05]##From the graph fig.11.35 page-596\n", + "Db = [0]\n", + "\n", + "print\"\\n R Fi xs Db \"\n", + "i=0;Fi=[]\n", + "while i<=5:\n", + " Fi.append(xd/(R[i] + 1))\n", + " if i>0:\n", + " Db.append(100*(xs[0]-xs[i])/(xd-xs[i]))\n", + " \n", + " print\"\\n %.2f %.3f %.2f %.1f\"%(R[(i)],Fi[(i)],xs[(i)],Db[(i)])\n", + " i=i+1\n", + "\n", + "plot(R,Db)\n", + "xlabel(\"Reflux ratio(R)\")\n", + "ylabel(\"Product Db (kmol)\")\n", + "show()\n", + "print\"\\n The area under the Db vs R curve is given by 96 kmol\"\n", + "Hav = 4000# #average latent heat in kJ/kmol\n", + "Qr = 96*Hav/1000\n", + "print\"\\n Heat to be supplied to provide the reflux,Qr is approximately %.1f MJ\"%(Qr)\n", + "print\"\\n Heat to be supplied to provide the reflux per kmol of product is then %.2f MJ\"%(380/71.4)\n", + "print\"\\n Total heat = %.2f MJ/kmol product\"%(5.32+4.0)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 596 Example 11.13" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " xs xd (xd-xs) 1/(xd-xs)\n", + "\n", + "0.55 \t0.78 \t0.23 \t4.348\n", + "0.5 \t0.775 \t0.275 \t3.636\n", + "0.425 \t0.77 \t0.345 \t2.899\n", + "0.31 \t0.76 \t0.45 \t2.222\n", + "0.225 \t0.75 \t0.525 \t1.905\n", + "0.105 \t0.74 \t0.635 \t1.575\n" + ] + }, + { + "data": { + "image/png": "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\nv4hICfp/ZesktB7mgUMAAAAASUVORK5CYII=\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f07c5ec1e50>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "Average composition is 0.77 kmol\n", + "\n", + "Heat required to produce reflux per kmol : 8400 kJ\n", + "\n" + ] + } + ], + "source": [ + "from numpy import nditer,exp\n", + "%matplotlib inline\n", + "from matplotlib.pyplot import plot,title,xlabel,ylabel,show\n", + "\n", + "xs=[0.55,0.5,0.425,0.31,0.225,0.105]\n", + "xd=[0.78,0.775,0.77,0.76,0.75,0.74]\n", + "differ=[]\n", + "for m,n in nditer([xd,xs]):\n", + " differ.append(m-n)\n", + "reci=[]\n", + "for i in range(0,6):\n", + " reci.append(1/(xd[(i)]-xs[(i)]))\n", + "\n", + "\n", + "m=[xs, xd, differ, reci]\n", + "print\"\\n xs xd (xd-xs) 1/(xd-xs)\\n\"\n", + "for a,b,c,d in nditer([xs,xd,differ,reci]):\n", + " print a,'\\t',b,'\\t',c,'\\t%0.3f'%d,\n", + " print \n", + "\n", + "plot(xs,reci)\n", + "title('Graphical integration')\n", + "xlabel('xs')\n", + "ylabel('1/xd-xs)')\n", + "show()\n", + "#Area under the curve is calculated and is found to be 1.1\n", + "\n", + "#logdiv = S1/S2 = area under the curve\n", + "logdiv=1.1\n", + "S1=100# #Assume\n", + "div=exp(logdiv)\n", + "S2=S1/div\n", + "Db=S1-S2# #Product obtained\n", + "amt=xs[0]*S1-(xs[5]*S2)\n", + "avg=amt/Db\n", + "\n", + "print\"\\nAverage composition is %.2f kmol\\n\"%(avg)\n", + "\n", + "L=4000# #latent heat\n", + "R=2.1\n", + "\n", + "h=R*L\n", + "print\"Heat required to produce reflux per kmol : %d kJ\\n\"%(h) \n", + " " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 601 Example 11.14" + ] + }, + { + "cell_type": "code", + "execution_count": 36, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " D = 55.56 kmol & W = 44.44 kmol\n", + "\n", + " Let us assume that the distillate contains 0.6 mole per cent meta and 1.4 mole per cent para\n", + "\n", + " Component Feed Distillate Bottoms \n", + "\n", + " (kmol) (mole per cent) (kmol) (mole per cent) (kmol) (mole per cent) \n", + "\n", + " Ortho 60.000 60.00 54.44 98.00 5.56 12.50 \n", + "\n", + " Meta 4.000 4.00 0.33 0.60 3.69 8.30 \n", + "\n", + " Para 36.000 36.00 0.78 1.40 35.20 79.20 \n", + "\n", + " plate compositions below the feed plate:\n", + "\n", + " Component xs axs ys x1 ax1 y1 x2\n", + "\n", + " o 0.125 0.212 0.193 0.185 0.315 0.272 0.255\n", + "\n", + " m 0.083 0.096 0.087 0.170 0.198 0.171 0.244\n", + "\n", + " p 0.792 0.792 0.719 0.645 0.645 0.557 0.501\n", + "\n", + " 1.000 1.101 1.000 1.000 1.157 1.000 1.000\n", + "\n", + " Component ax2 y2 x3 ax3 y3 x4 ax4\n", + "\n", + " o 0.433 0.356 0.185 0.315 0.272 0.185 0.315\n", + "\n", + " m 0.083 0.096 0.087 0.170 0.198 0.171 0.244\n", + "\n", + " p 0.792 0.792 0.719 0.645 0.645 0.557 0.501\n", + "\n", + " Component y4 x5 ax5 y5 x6 ax6 y6\n", + "\n", + " o 0.272 0.185 0.315 0.272 0.185 0.315 0.272\n", + "\n", + " m 0.171 0.170 0.198 0.171 0.170 0.198 0.171\n", + "\n", + " p 0.557 0.645 0.645 0.557 0.645 0.645 0.557\n", + "\n", + " Component x7 ax7 y7 x8 ax8 y8 x9\n", + "\n", + " o 0.185 0.315 0.272 0.252 0.428 0.272 0.252\n", + "\n", + " m 0.170 0.198 0.171 0.232 0.269 0.171 0.232\n", + "\n", + " p 0.645 0.645 0.557 0.877 0.877 0.557 0.877\n", + "\n", + " Component x7 ax7 y7 x8 ax8 y8 x9\n", + "\n", + " o 0.272 0.185 0.315 0.272 0.185 0.315 0.272\n", + "\n", + " m 0.171 0.170 0.198 0.171 0.170 0.198 0.171\n", + "\n", + " p 0.557 0.645 0.645 0.557 0.645 0.645 0.557\n" + ] + } + ], + "source": [ + "from scipy.optimize import fsolve\n", + "from sympy import symbols,solve\n", + "\n", + "xdo = 0.98# #per cent of ortho top product\n", + "xwo = 0.125# #per cent of ortho bottom product\n", + "\n", + "def product(x):\n", + " f=[]\n", + " f.append(100 - x[0] - x[1])# #x(1) is D and x(2) is W\n", + " f.append(60 - x[0]*xdo - x[1]*xwo)\n", + " return f\n", + "x = [0,0]\n", + "y = fsolve(product,x)\n", + "print\"\\n D = %.2f kmol & W = %.2f kmol\"%(y[0],y[1])\n", + "\n", + "print\"\\n Let us assume that the distillate contains 0.6 mole per cent meta and 1.4 mole per cent para\"\n", + "print\"\\n Component Feed Distillate Bottoms \"\n", + "print\"\\n (kmol) (mole per cent) (kmol) (mole per cent) (kmol) (mole per cent) \"\n", + "print\"\\n Ortho %.3f %.2f %.2f %.2f %.2f %.2f \"%(60,60,y[0]*0.98,98,y[1]*0.125,12.5)\n", + "print\"\\n Meta %.3f %.2f %.2f %0.2f %.2f %.2f \"%(4,4,y[0]*0.006,0.6,y[1]*0.083,8.3)\n", + "print\"\\n Para %.3f %.2f %.2f %.2f %.2f %.2f \"%(36,36,y[0]*0.014,1.4,y[1]*0.792,79.2)\n", + "\n", + "ao = 1.7# #relative volatility of ortho relative to para\n", + "am = 1.16# #relative volatility of meta relative to para\n", + "ap =1# #relative volatility of para w.r.t. to itself\n", + "xso = 0.125\n", + "xsm = 0.083\n", + "xsp = 0.792\n", + "xwo = 0.125\n", + "xwp = 0.083\n", + "xwm = 0.792\n", + "yso = ao*xso/(ao*xso+ap*xsp+am*xsm)\n", + "ysm = am*xsm/(ao*xso+ap*xsp+am*xsm)\n", + "ysp = ap*xsp/(ao*xso+ap*xsp+am*xsm)\n", + "#Equations of operating lines\n", + "#Above the feed point\n", + "Ln = 5*y[0]# #Liquid downflow\n", + "Vn = 6*y[0]# #Vapour up\n", + "#Assuming the feed is liquid at its boiling point\n", + "F = 100# #feed\n", + "Lm = Ln+F# #liquid downflow\n", + "Vm = Lm-y[1]# #Vapour up\n", + "x1o = symbols('x1o')\n", + "x11 = solve(yso - (Lm/Vm)*x1o + (y[1]/Vm)*xwo)[0]\n", + "x1p = symbols('x1p')\n", + "x12 = solve(ysp - (Lm/Vm)*x1p + (y[1]/Vm)*xwp)[0]\n", + "x1m = symbols('x1m')\n", + "x13 = solve(ysm - (Lm/Vm)*x1m + (y[1]/Vm)*xwm)[0]\n", + "x1 = [x11, x13, x12]\n", + "ax1 = [ao*x11, am*x13, ap*x12]\n", + "y1 = [ax1[0]/(ax1[0]+ax1[1]+ax1[2]), ax1[1]/(ax1[0]+ax1[1]+ax1[2]), ax1[2]/(ax1[0]+ax1[1]+ax1[2])]\n", + "x2o = symbols('x2o')\n", + "x21 = solve(y1[0] - (Lm/Vm)*x2o + (y[1]/Vm)*xwo)[0]\n", + "x2p = symbols('x2p')\n", + "x22 = solve(y1[2] - (Lm/Vm)*x2p + (y[1]/Vm)*xwp)[0]\n", + "x2m = symbols('x2m')\n", + "x23 = solve(y1[1] - (Lm/Vm)*x2m + (y[1]/Vm)*xwm)[0]\n", + "x2 = [x21, x23, x22]\n", + "print\"\\n plate compositions below the feed plate:\"\n", + "print\"\\n Component xs axs ys x1 ax1 y1 x2\"\n", + "print\"\\n o %.3f %.3f %.3f %.3f %.3f %.3f %.3f\"%(xso,ao*xso,yso,x1[0],ax1[0],y1[0],x2[0])\n", + "print\"\\n m %.3f %.3f %.3f %.3f %.3f %.3f %.3f\"%(xsm,am*xsm,ysm,x1[1],ax1[1],y1[1],x2[1])\n", + "print\"\\n p %.3f %.3f %.3f %.3f %.3f %.3f %.3f\"%(xsp,ap*xsp,ysp,x1[2],ax1[2],y1[2],x2[2])\n", + "print\"\\n %.3f %.3f %.3f %.3f %.3f %.3f %.3f\"%(xso+xsm+xsp,ao*xso+am*xsm+ap*xsp,yso+ysm+ysp,x1[0]+x1[1]+x1[2],ax1[0]+ax1[1]+ax1[2],y1[0]+y1[1]+y1[2],x2[0]+x2[1]+x2[2])\n", + "\n", + "\n", + "\n", + "ax2 = [ao*x2[0], am*x2[1], ap*x2[2]]\n", + "y2 = [ax2[0]/(ax2[0]+ax2[1]+ax2[2]) ,ax2[1]/(ax2[0]+ax2[1]+ax2[2]), ax2[2]/(ax2[0]+ax2[1]+ax2[2])]\n", + "x3o = symbols('x3o')\n", + "x31 = solve(yso - (Lm/Vm)*x3o + (y[1]/Vm)*xwo)[0]\n", + "x3p = symbols('x3p')\n", + "x32 = solve(ysp - (Lm/Vm)*x3p + (y[1]/Vm)*xwp)[0]\n", + "x3m = symbols('x3m')\n", + "x33 = solve(ysm - (Lm/Vm)*x3m + (y[1]/Vm)*xwm)[0]\n", + "x3 = [x31, x33, x32]\n", + "\n", + "ax3 = [ao*x3[0], am*x3[1], ap*x3[2]]\n", + "y3 = [ax3[0]/(ax3[0]+ax3[1]+ax3[2]), ax3[1]/(ax3[0]+ax3[1]+ax3[2]), ax3[2]/(ax3[0]+ax3[1]+ax3[2])]\n", + "x4o = symbols('x4o')\n", + "x41 = solve(yso - (Lm/Vm)*x4o + (y[1]/Vm)*xwo)[0]\n", + "x4p = symbols('x4p')\n", + "x42 = solve(ysp - (Lm/Vm)*x4p + (y[1]/Vm)*xwp)[0]\n", + "x4m = symbols('x4m')\n", + "x43 = solve(ysm - (Lm/Vm)*x4m + (y[1]/Vm)*xwm)[0]\n", + "x4 = [x41, x43, x42]\n", + "\n", + "ax4 = [ao*x4[0], am*x4[1], ap*x4[2]]\n", + "y4 = [ax4[0]/(ax4[0]+ax4[1]+ax4[2]), ax4[1]/(ax4[0]+ax4[1]+ax4[2]), ax4[2]/(ax4[0]+ax4[1]+ax4[2])]\n", + "x5o = symbols('x5o')\n", + "x51 = solve(yso - (Lm/Vm)*x5o + (y[1]/Vm)*xwo)[0]\n", + "x5p = symbols('x5p')\n", + "x52 = solve(ysp - (Lm/Vm)*x5p + (y[1]/Vm)*xwp)[0]\n", + "x5m = symbols('x5m')\n", + "x53 = solve(ysm - (Lm/Vm)*x5m + (y[1]/Vm)*xwm)[0]\n", + "x5 = [x51 ,x53, x52]\n", + "\n", + "ax5 = [ao*x5[0] ,am*x5[1] ,ap*x5[2]]\n", + "y5 = [ax5[0]/(ax5[0]+ax5[1]+ax5[2]), ax5[1]/(ax5[0]+ax5[1]+ax5[2]), ax5[2]/(ax5[0]+ax5[1]+ax5[2])]\n", + "x6o = symbols('x6o')\n", + "x61 = solve(yso - (Lm/Vm)*x6o + (y[1]/Vm)*xwo)[0]\n", + "x6p = symbols('x6p')\n", + "x62 = solve(ysp - (Lm/Vm)*x6p + (y[1]/Vm)*xwp)[0]\n", + "x6m = symbols('x6m')\n", + "x63 = solve(ysm - (Lm/Vm)*x6m + (y[1]/Vm)*xwm)[0]\n", + "x6 = [x61, x63, x62]\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "ax6 = [ao*x6[0], am*x6[1] ,ap*x6[2]]\n", + "y6 = [ax6[0]/(ax6[0]+ax6[1]+ax6[2]) ,ax6[1]/(ax6[0]+ax6[1]+ax6[2]) ,ax6[2]/(ax6[0]+ax6[1]+ax6[2])]\n", + "x7o = symbols('x7o')\n", + "x71 = solve(yso - (Lm/Vm)*x7o + (y[1]/Vm)*xwo)[0]\n", + "x7p = symbols('x7p')\n", + "x72 = solve(ysp - (Lm/Vm)*x7p + (y[1]/Vm)*xwp)[0]\n", + "x7m = symbols('x7m')\n", + "x73 = solve(ysm - (Lm/Vm)*x7m + (y[1]/Vm)*xwm)[0]\n", + "x7 = [x71, x73, x72]\n", + "print\"\\n Component ax2 y2 x3 ax3 y3 x4 ax4\"\n", + "print\"\\n o %.3f %.3f %.3f %.3f %.3f %.3f %.3f\"%(ax2[0],y2[0],x3[0],ax3[0],y3[0],x4[0],ax4[0])\n", + "print\"\\n m %.3f %.3f %.3f %.3f %.3f %.3f %.3f\"%(xsm,am*xsm,ysm,x1[1],ax1[1],y1[1],x2[1])\n", + "print\"\\n p %.3f %.3f %.3f %.3f %.3f %.3f %.3f\"%(xsp,ap*xsp,ysp,x1[2],ax1[2],y1[2],x2[2])\n", + "\n", + "print\"\\n Component y4 x5 ax5 y5 x6 ax6 y6\"\n", + "print\"\\n o %.3f %.3f %.3f %.3f %.3f %.3f %.3f\"%(y4[0],x5[0],ax5[0],y5[0],x6[0],ax6[0],y6[0])\n", + "print\"\\n m %.3f %.3f %.3f %.3f %.3f %.3f %.3f\"%(y4[1],x5[1],ax5[1],y5[1],x6[1],ax6[1],y6[1])\n", + "print\"\\n p %.3f %.3f %.3f %.3f %.3f %.3f %.3f\"%(y4[2],x5[2],ax5[2],y5[2],x6[2],ax6[2],y6[2])\n", + "\n", + "\n", + "ax7 = [ao*x7[0] ,am*x7[1] ,ap*x7[2]]\n", + "y7 = [ax7[0]/(ax7[0]+ax7[1]+ax7[2]), ax7[1]/(ax7[0]+ax7[1]+ax7[2]) ,ax7[2]/(ax7[0]+ax7[1]+ax7[2])]\n", + "x8o = symbols('x8o')\n", + "x81 = solve(yso - (Ln/Vn)*x8o + (y[1]/Vn)*xwo)[0]\n", + "x8p = symbols('x8p')\n", + "x82 = solve(ysp - (Ln/Vn)*x8p + (y[1]/Vn)*xwp)[0]\n", + "x8m = symbols('x8m')\n", + "x83 = solve(ysm - (Ln/Vn)*x8m + (y[1]/Vn)*xwm)[0]\n", + "x8 = [x81, x83, x82]\n", + "\n", + "ax8 = [ao*x8[0] ,am*x8[1] ,ap*x8[2]]\n", + "y8 = [ax8[0]/(ax8[0]+ax8[1]+ax8[2]), ax8[1]/(ax8[0]+ax8[1]+ax8[2]) ,ax8[2]/(ax8[0]+ax8[1]+ax8[2])]\n", + "x9o = symbols('x9o')\n", + "x91 = solve(yso - (Ln/Vn)*x9o + (y[1]/Vn)*xwo)[0]\n", + "x9p = symbols('x9p')\n", + "x92 = solve(ysp - (Ln/Vn)*x9p + (y[1]/Vn)*xwp)[0]\n", + "x9m = symbols('x9m')\n", + "x93 = solve(ysm - (Ln/Vn)*x9m + (y[1]/Vn)*xwm)[0]\n", + "x9 = [x91, x93, x92]\n", + "\n", + "print\"\\n Component x7 ax7 y7 x8 ax8 y8 x9\"\n", + "print\"\\n o %.3f %.3f %.3f %.3f %.3f %.3f %.3f\"%(x7[0],ax7[0],y7[0],x8[0],ax8[0],y8[0],x9[0])\n", + "print\"\\n m %.3f %.3f %.3f %.3f %.3f %.3f %.3f\"%(x7[1],ax7[1],y7[1],x8[1],ax8[1],y8[1],x9[1])\n", + "print\"\\n p %.3f %.3f %.3f %.3f %.3f %.3f %.3f\"%(x7[2],ax7[2],y7[2],x8[2],ax8[2],y8[2],x9[2])\n", + "\n", + "print\"\\n Component x7 ax7 y7 x8 ax8 y8 x9\"\n", + "print\"\\n o %.3f %.3f %.3f %.3f %.3f %.3f %.3f\"%(y4[0],x5[0],ax5[0],y5[0],x6[0],ax6[0],y6[0])\n", + "print\"\\n m %.3f %.3f %.3f %.3f %.3f %.3f %.3f\"%(y4[1],x5[1],ax5[1],y5[1],x6[1],ax6[1],y6[1])\n", + "print\"\\n p %.3f %.3f %.3f %.3f %.3f %.3f %.3f\"%(y4[2],x5[2],ax5[2],y5[2],x6[2],ax6[2],y6[2])\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 608 Example 11.15" + ] + }, + { + "cell_type": "code", + "execution_count": 39, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " Dew point calculation\n", + "\n", + " Component xd Td = 344 K\n", + "\n", + " K xd/K \n", + "\n", + " n-C4 0.975 1.05 0.929\n", + "\n", + " C5 0.025 0.41 0.061\n", + "\n", + " 1.0 0.990\n", + "\n", + " Td = 343 K\n", + "\n", + " K xd/K\n", + "\n", + " 1.040 1.575\n", + "\n", + " 0.405 -1.575\n", + "\n", + " -0.000\n", + "\n", + " At 343 K K1 = 1.04 K2 = 0.405 from fig.11.39\n", + "\n", + "\n", + "\n", + " Estimation of still temperature Ts\n", + "\n", + " At Ts = 416 K equillibrium constants are from fig.11.39\n", + "\n", + " n-C4 C5 C6 C7\n", + "\n", + " 3.05 1.60 0.87 0.49\n", + "\n", + "\n", + " at Ts = 416 K\n", + "\n", + " n-C4 C5 C6 C7\n", + "\n", + " 0.052 0.587 0.246 0.163\n", + "\n", + " Sum of Kxw = 1\n", + "\n", + " Hence the still temperature Ts = 416 K\n", + "\n", + "\n", + "\n", + " Calculation of feed condition\n", + "\n", + " Component xf Tb = 377K Tb = 376 K\n", + "\n", + " K Kxf K Kxf \n", + "\n", + " n-C4 0.40 1.80 0.720 1.78 0.712\n", + "\n", + " C5 0.23 0.81 0.186 0.79 0.182\n", + "\n", + " C6 0.17 0.39 0.066 0.38 0.065\n", + "\n", + " C7 0.20 0.19 0.038 0.18 0.037\n", + "\n", + " 1.011 0.995\n", + "\n", + "\n", + "\n", + " The upper pinch temperature,Tn = 367 K\n", + "\n", + " The lower pinch temperature,Tm = 391 K\n", + "\n", + "\n", + "\n", + "\n", + "\n", + " Component Tn = 367 K Tm = 391 K xfh axfh\n", + "\n", + " a a \n", + "\n", + " n-C4 2.38 2.00 \n", + "\n", + " C5 1.00 1.00 \n", + "\n", + " C6 0.455 0.464 0.17 0.077\n", + "\n", + " C7 0.220 0.254 0.20 0.044\n", + "\n", + " 0.121\n", + "\n", + " rf = 1.739\n", + "\n", + " xn4 = 0.566\n", + "\n", + " xn5 = 0.326\n", + "\n", + " Rm = 1.07\n", + "\n", + " Ln = 44.8 kmol\n", + "\n", + " Vn = 84.8 kmol\n", + "\n", + " Lm = 144.8 kmol\n", + "\n", + " Vn = 84.4 kmol\n", + "\n", + " Lm/W = 2.38\n", + "\n", + " For n-C4......xn = 0.659\n", + "\n", + " For n-C5...xn = 0.341\n", + "\n", + " Temperature check for upper pinch gives sum of K*xn = \n", + "1.300\n" + ] + } + ], + "source": [ + "from sympy import symbols,solve\n", + "\n", + "print\"\\n Dew point calculation\"\n", + "xd1 = 0.975# #n-C4 light distillate\n", + "xd2 = 0.025# #C5 heavy key distillate\n", + "Td = 344# #temperature in kelvins\n", + "K1 = 1.05# #Eqillibrium constant calculation for n-C4 at 344 K\n", + "K2 = 0.41# #Equillibrium constant calculation for C5 at 344K\n", + "#By a dew point calculation\n", + "#sum(xd)=sum(xd/K)\n", + "print\"\\n Component xd Td = 344 K\"\n", + "print\"\\n K xd/K \"\n", + "print\"\\n n-C4 %.3f %.2f %.3f\"%(xd1,K1,xd1/K1)\n", + "print\"\\n C5 %.3f %.2f %.3f\"%(xd2,K2,xd2/K2)\n", + "print\"\\n %.1f %.3f\"%(xd1+xd2,(xd1/K1)+(xd2/K2))\n", + "\n", + "K11 = 1.04\n", + "K21 = 0.405\n", + "#Calculation for xd at 343 K\n", + "x = symbols('x')\n", + "x1 = solve(x/K11 + (1-x)/K21)[0]\n", + "print\"\\n Td = 343 K\"\n", + "print\"\\n K xd/K\"\n", + "print\"\\n %.3f %.3f\"%(K11,x1/K11)\n", + "print\"\\n %.3f %.3f\"%(K21,(1-x1)/K21)\n", + "print\"\\n %.3f\"%(x1/K11+(1-x1)/K21)\n", + "print\"\\n At 343 K K1 = 1.04 K2 = 0.405 from fig.11.39\"\n", + "\n", + "print\"\\n\\n\\n Estimation of still temperature Ts\"\n", + "#sum(xw) = sum(K*xw)\n", + "K31 = 3.05# #equillibrium const at 419 K\n", + "K32 = 1.6# #equillibrium const at 419 K\n", + "K33 = 0.87# #equillibrium const at 419 K\n", + "K34 = 0.49# #equillibrium const at 419 K\n", + "xw1 = 0.017# #mass fraction of n-C4\n", + "xw2 = 0.367# #mass fraction of C5\n", + "xw3 = 0.283# #mass fraction of C6\n", + "xw4 = 0.333# #mass fraction of C7\n", + "\n", + "print\"\\n At Ts = 416 K equillibrium constants are from fig.11.39\"\n", + "print\"\\n n-C4 C5 C6 C7\"\n", + "print\"\\n %.2f %.2f %.2f %.2f\"%(K31,K32,K33,K34)\n", + "print\"\\n\\n at Ts = 416 K\"\n", + "print\"\\n n-C4 C5 C6 C7\"\n", + "print\"\\n %.3f %.3f %.3f %.3f\"%(xw1*K31,xw2*K32,xw3*K33,xw4*K34)\n", + "print\"\\n Sum of Kxw = %d\"%(xw1*K31+xw2*K32+xw3*K33+xw4*K34)\n", + "print\"\\n Hence the still temperature Ts = 416 K\"\n", + "print\"\\n\\n\\n Calculation of feed condition\"\n", + "print\"\\n Component xf Tb = 377K Tb = 376 K\"\n", + "print\"\\n K Kxf K Kxf \"\n", + "xf1 = 0.40\n", + "xf2 = 0.23\n", + "xf3 = 0.17\n", + "xf4 = 0.20\n", + "Kb1 = 1.80# #equillibrium constants at 377 K for n-C4\n", + "Kb2 = 0.81# #equillibrium constants at 377 K for C5\n", + "Kb3 = 0.39# #equillibrium constants at 377 K for C6\n", + "Kb4 = 0.19# #equillibrium constants at 377 K for C7\n", + "Kb11 = 1.78# #equillibrium constants at 377 K for n-C4\n", + "Kb21 = 0.79# #equillibrium constants at 377 K for C5\n", + "Kb31 = 0.38# #equillibrium constants at 377 K for C6\n", + "Kb41 = 0.185# #equillibrium constants at 377 K for C7\n", + "print\"\\n n-C4 %.2f %.2f %.3f %.2f %.3f\"%(xf1,Kb1,xf1*Kb1,Kb11,xf1*Kb11)\n", + "print\"\\n C5 %.2f %.2f %.3f %.2f %.3f\"%(xf2,Kb2,xf2*Kb2,Kb21,xf2*Kb21)\n", + "print\"\\n C6 %.2f %.2f %.3f %.2f %.3f\"%(xf3,Kb3,xf3*Kb3,Kb31,xf3*Kb31)\n", + "print\"\\n C7 %.2f %.2f %.3f %.2f %.3f\"%(xf4,Kb4,xf4*Kb4,Kb41,xf4*Kb41)\n", + "print\"\\n %.3f %.3f\"%(xf1*Kb1+xf2*Kb2+xf3*Kb3+xf4*Kb4,xf1*Kb11+xf2*Kb21+xf3*Kb31+xf4*Kb41)\n", + "\n", + "#Calculation of pinch temperatures\n", + "print\"\\n\\n\\n The upper pinch temperature,Tn = %d K\"%(343+0.33*(416-343))\n", + "print\"\\n The lower pinch temperature,Tm = %d K\"%(343+0.67*(416-343))\n", + "\n", + "#Calculation of approximate minimum reflux ratio.\n", + "print\"\\n\\n\\n\"\n", + "print\"\\n Component Tn = 367 K Tm = 391 K xfh axfh\"\n", + "print\"\\n a a \"\n", + "print\"\\n n-C4 %.2f %.2f \"%(2.38,2.00)\n", + "print\"\\n C5 %.2f %.2f \"%(1.00,1.00)\n", + "print\"\\n C6 %.3f %.3f %.2f %.3f\"%(0.455,0.464,0.17,0.077)\n", + "print\"\\n C7 %.3f %.3f %.2f %.3f\"%(0.220,0.254,0.20,0.044)\n", + "print\"\\n %.3f\"%(0.077+0.044)\n", + "rf = xf1/xf2\n", + "print\"\\n rf = %.3f\"%(rf)\n", + "xn4 = rf/((1+rf)*(1+0.121))\n", + "print\"\\n xn4 = %.3f\"%(xn4)\n", + "xn5 = xn4/rf\n", + "print\"\\n xn5 = %.3f\"%(xn5)\n", + "Rm = (1/(2.38-1))*(0.975/0.563)-2.38*(0.025/0.325)\n", + "print\"\\n Rm = %.2f\"%(Rm)\n", + "\n", + "#The streams in the column\n", + "D = 40\n", + "Ln = D*Rm\n", + "Vn = Ln+D\n", + "F = 100\n", + "Lm = Ln + F\n", + "W = 60\n", + "Vm = Lm - W\n", + "Ratio = Lm/W\n", + "print\"\\n Ln = %.1f kmol\"%(44.8)\n", + "print\"\\n Vn = %.1f kmol\"%(84.8)\n", + "print\"\\n Lm = %.1f kmol\"%(144.8)\n", + "print\"\\n Vn = %.1f kmol\"%(84.4)\n", + "print\"\\n Lm/W = %.2f\"%(Ratio)\n", + "#Check on minimum reflux ratio\n", + "#xn = xd/(a-1)Rm\n", + "xn = xd1/((2.38-1)*Rm)\n", + "print\"\\n For n-C4......xn = %.3f\"%(xn)\n", + "xn1 = 1-xn\n", + "print\"\\n For n-C5...xn = %.3f\"%(xn1)\n", + "print\"\\n Temperature check for upper pinch gives sum of K*xn = \"\n", + "sumKxn = 1.62*xn +0.68*xn1\n", + "print\"%.3f\"%(sumKxn)\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 612 Example 11.16" + ] + }, + { + "cell_type": "code", + "execution_count": 40, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "From Underwoods 1st eq\n", + "\n", + "The value of 1-q at theta = 1.15 and 1.17 are\n", + "[1.4229424178474521, 0]\n", + "\n", + "Minimum Reflux ratio is 0.900\n", + "\n" + ] + } + ], + "source": [ + "#Mole fractions\n", + "xf=[0.40, 0.35 ,0.25]\n", + "xd=[0.534, 0.453, 0.013]\n", + "xw=[0 ,0.04 ,0.96]\n", + "\n", + "#Amount of feed, product, bottom in kmol\n", + "F=[40, 35, 25]\n", + "D=[40, 34, 1]\n", + "W=[0 ,1, 24]\n", + "\n", + "#roots of equation\n", + "theta=[1.15, 1.17]\n", + "\n", + "#relative volatility\n", + "alpha=[2.7 ,2.22, 1]\n", + "\n", + "#Underwoods 1st equation for q=1\n", + "sums=[0 ,0]\n", + "for i in range(0,1):\n", + " for j in range(0,2):\n", + " sums[i]=sums[i]+(alpha[j]*xf[(j)]/(alpha[(j)]-theta[(i)]))\n", + " \n", + "\n", + "print\"\\nFrom Underwoods 1st eq\\n\"\n", + "print\"The value of 1-q at theta = 1.15 and 1.17 are\"\n", + "print sums\n", + "\n", + "#Underwoods 2nd equation for minimum reflux ratio\n", + "sum2=0\n", + "for l in range(0,2):\n", + " sum2=sum2+(alpha[(l)]*xd[(l)]/(alpha[(l)]-theta[1]))\n", + "\n", + "\n", + "Rm=sum2-1\n", + "print\"\\nMinimum Reflux ratio is %.3f\\n\"%(Rm)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 613 Example 11.17" + ] + }, + { + "cell_type": "code", + "execution_count": 41, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "Minimum no. of plates are 7.438 or 7\n", + "\n" + ] + } + ], + "source": [ + "from math import log\n", + "#From previous question data\n", + "xA_d=0.453\n", + "xB_d=0.013\n", + "\n", + "xA_s=0.04\n", + "xB_s=0.96\n", + "\n", + "alpha_av=2.22\n", + "\n", + "#By Fenske Equation for no. of plates\n", + "\n", + "n=((log(xA_d*xB_s/(xA_s*xB_d)))/log(alpha_av))-1\n", + "\n", + "print\"\\nMinimum no. of plates are %.3f or %d\\n\"%(n,n)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 614 Example 11.18" + ] + }, + { + "cell_type": "code", + "execution_count": 47, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "The values of R and n are\n", + "\n", + "\n", + "\t1 \t 19.11\n", + "\n", + "\t2 \t 11.97\n", + "\n", + "\t5 \t 9.18\n", + "\n", + "\n", + "The change in R and n can be seen as above\n", + "\n" + ] + } + ], + "source": [ + "from sympy import symbols,solve\n", + "R=[1 ,2 ,5, 10]\n", + "Rm=0.83\n", + "\n", + "nm=8.5-1\n", + "\n", + "#X are points on X-axis of graph\n", + "X=[]\n", + "for i in range(0,3):\n", + " X.append((R[(i)]-Rm)/(R[(i)]+1))\n", + "\n", + "\n", + "#Values at Y-axis for corresponding values of X-axis in graph are given by\n", + "Y=[0.55, 0.32 ,0.15, 0.08]\n", + "\n", + "#where Y=(n+1)-(nm+1)/(n+2)\n", + "\n", + "N=[]\n", + "for i in range(0,3):\n", + " n=symbols('x')\n", + " N.append(solve(((n+1)-(nm+1))-(Y[(i)]*(n+2)))[0])\n", + "\n", + "\n", + "print\"\\nThe values of R and n are\\n\"\n", + "for i in range(0,3):\n", + " print\"\\n\\t%d \\t %.2f\"%(R[i],N[i])\n", + "\n", + "\n", + "print\"\\n\\nThe change in R and n can be seen as above\\n\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 615 Example 11.19" + ] + }, + { + "cell_type": "code", + "execution_count": 48, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f07b06055d0>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " Derivative calculated from the graph\n", + "\n", + " Ropt = 1.25\n", + "\n", + " R is approximately 144.2 percent of the minimum reflux condition\n" + ] + } + ], + "source": [ + "%matplotlib inline\n", + "from matplotlib.pyplot import plot,title,xlabel,ylabel,show\n", + "\n", + "\n", + "#Data from fig. 11.42\n", + "a = [0, 0.02, 0.04, 0.06, 0.08, 0.1 ,0.2 ,0.4 ,0.6 ,0.8 ,1.0]\n", + "b = [0.75, 0.62, 0.60, 0.57, 0.55, 0.52, 0.45, 0.30, 0.18, 0.09, 0]\n", + "#a = (R-Rm)/(R+1)\n", + "#b = [(n+1)-(nm+1)]/(n+2)\n", + "R = [0.92, 1.08, 1.25 ,1.75 ,2.5 ,3.5, 5.0 ,7.0 ,9.0]\n", + "n = [28.6 ,22.8 ,16.9 ,13.5 ,11.7 ,10.5 ,9.8 ,9.2 ,8.95]\n", + "plot(n,R)\n", + "title(\"Plot of R vs n\")\n", + "xlabel(\"n\")\n", + "ylabel(\"R\")\n", + "show()\n", + "print\"\\n Derivative calculated from the graph\"\n", + "d = [110.0, 34.9 ,9.8 ,3.8 ,1.7 ,0.6 ,0.4 ,0.2 ,0.05]\n", + "i=0\n", + "while i <=8:\n", + " s = R[(i)]+1 - (n[(i)]+7.72)/d[(i)]\n", + " if s <=0.0001:\n", + " Ropt = R[(i)]\n", + " print\"\\n Ropt = %.2f\"%(Ropt)\n", + " break\n", + " \n", + " i=i+1\n", + "\n", + "print\"\\n R is approximately %.1f percent of the minimum reflux condition\"%(1.25/0.866666666*100)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 633 Example 11.20" + ] + }, + { + "cell_type": "code", + "execution_count": 49, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "Efficiency is 0.87\n" + ] + } + ], + "source": [ + "from math import log10\n", + "\n", + "#Mole fraction\n", + "xf=[0.2, 0.3, 0.2, 0.3]\n", + "\n", + "#Viscosity at mean tower temp. in mNs/m**2\n", + "uL=[0.048, 0.112, 0.145, 0.188]\n", + "\n", + "#Viscosity of water in mNs/m**2\n", + "uw=1\n", + "\n", + "sums=0\n", + "for i in range(0,3):\n", + " sums=sums+(xf[(i)]*uL[(i)]/uw)\n", + "\n", + "\n", + "#Efficiency by DRICKAMER and BRADFORD\n", + "E=0.17-(0.616*log10(sums))\n", + "\n", + "print\"\\nEfficiency is %.2f\"%(E)\n" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.9" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter12.ipynb b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter12.ipynb new file mode 100644 index 00000000..63660758 --- /dev/null +++ b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter12.ipynb @@ -0,0 +1,428 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 12 : Absorption of Gases" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page No 669 Example 12.1" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " For S02:\n", + "\n", + " kGa = 0.00012 ol/s m**3(kN/m**2)\n", + "\n", + " For NH3:\n", + "\n", + " kGa = 0.00016 kmol/s m**3(kN/m**2)\n", + "\n", + " For a very soluble gas such as NH3, kGa = KGa.\n", + "\n", + " For NH3 the liquid-film resistance will be small, and:\n", + "\n", + " kGa =KGa = 0.00016 mol/s m**3(kN/m**2)\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "#Overall liquid transfer coefficient KLa = 0.003 kmol/s.m**3(kmol/m**3)\n", + "\n", + "#(1/KLa)=(1/kLa)+(1/HkGa)\n", + "# let (KLa)=x\n", + "x = 0.003#\n", + "overall = 1/x#\n", + "\n", + "#For the absorption of a moderately soluble gas it is reasonable to assume that the liquid and gas phase resistances are of the same order ofmagnitude, assuming them to be equal.\n", + "#(1/KLa)=(1/kLa)+(1/HkGa)\n", + "#let 1/kLa = 1/HkGa = y\n", + "y = (1/(2*x))#\n", + "z = (1/y)# #z is in kmol/s m**3(kmol/m**3)\n", + "print \"\\n For S02:\"\n", + "print \"\\n kGa = %0.5f ol/s m**3(kN/m**2)\"%(z/50)#\n", + "print \"\\n For NH3:\"\n", + "d_SO2 = 0.103# #diffusivity at 273K for SO2 in cm**2/sec\n", + "d_NH3 = 0.170# #diffusivity at 273K for NH3 in cm**2/sec\n", + "print \"\\n kGa = %0.5f kmol/s m**3(kN/m**2)\"%((z/50)*(d_NH3/d_SO2)**0.56)#\n", + "print \"\\n For a very soluble gas such as NH3, kGa = KGa.\"\n", + "print \"\\n For NH3 the liquid-film resistance will be small, and:\"\n", + "print \"\\n kGa =KGa = %0.5f mol/s m**3(kN/m**2)\"%((z/50)*(d_NH3/d_SO2)**0.56)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page No 671 Example 12.2" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " d = 0.05 mm\n", + "\n", + " kG = 1.19*10**(-8) kmol/m**2sec(N/m**2)\n", + "\n", + " kG = 7.59*10**(-4)kg SO2/m**2sec(kN/m**2)\n" + ] + } + ], + "source": [ + "G = 2# #air flow rate in kg/m**2.sec\n", + "Re = 5160# #Re stands for Reynolds number\n", + "f = 0.02# #friction factor = R/pu**2\n", + "d_SO2 = 0.116*10**(-4)# #diffusion coefficient in m**2/sec\n", + "v = 1.8*10**(-5)# #viscosity in mNs/m**2\n", + "p = 1.154# #density is in kg/m**3\n", + "\n", + "#(hd/u)(Pm/P)(u/p/d_SO2)**0.56 = BRe**(-0.17)=jd\n", + "\n", + "def a1():\n", + " x = (v/(p*d_SO2))**(0.56)#\n", + " return x\n", + "\n", + "\n", + "#jd = f =R/pu**2\n", + "def a2():\n", + " y = f/a1()#\n", + " return y\n", + "#G = pu\n", + "u = (G/p)# #u is in m/sec\n", + "\n", + "def a3():\n", + " x1 = a2()*u#\n", + " return x1\n", + "\n", + "def d1():\n", + " d = Re*v/(G)#\n", + " return d\n", + "\n", + "print \"\\n d = %0.2f mm\"%(d1())#\n", + "R = 8314# #R is in m**3(N/m**2)/K kmol\n", + "T = 298# #T is in Kelvins\n", + "def kG1():\n", + " kG = a3()/(R*T)#\n", + " return kG\n", + "\n", + "print \"\\n kG = %.2f*10**(-8) kmol/m**2sec(N/m**2)\"%(kG1()*10**(8))#\n", + "print \"\\n kG = %.2f*10**(-4)kg SO2/m**2sec(kN/m**2)\"%(kG1()*10**(7)*64)#" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page No 694 Example 12.3" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " x1 = 0.01\n", + "\n", + " NoL =7.38\n" + ] + } + ], + "source": [ + "from sympy import symbols, solve, log\n", + "#as the system are dilute mole fractions are approximately equal to mole ratios.\n", + "#At the bottom of the tower\n", + "y1 =0.015# #mole fraction\n", + "G = 1# #Gas flow rate is in kg/m**2sec\n", + "#At the top of the tower\n", + "y2 = 0.00015# #mole fraction\n", + "x2 = 0#\n", + "L = 1.6# #liquid flow rate is in kg/m**2.sec\n", + "Lm = 1.6/18# #liquid flow rate is in kmol/m**2.sec\n", + "Gm = 1.0/29# #gas flow rate is in kmol/m**2.sec\n", + "\n", + "x1 = symbols('x1')\n", + "x11 = solve(Gm*(y1-y2)-Lm*(x1),x1)[0]\n", + "\n", + "print \"\\n x1 = %0.2f\"%(x11)#\n", + "def henry_law(x):\n", + " ye1 = 1.75*x#\n", + " return ye1\n", + "bottom_driving_force = y1 - henry_law(x11)#\n", + "def log_mean():\n", + " lm = (bottom_driving_force-y2)/log(bottom_driving_force/y2)\n", + " return lm\n", + "NoG = (y1-y2)/log_mean()\n", + "NoL = NoG*1.75*(Gm/Lm)#\n", + "print \"\\n NoL =%.2f\"%(NoL)#" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page No 699 Example 12.4" + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " Z =7.80m\n", + "\n", + " Height of transfer unit HoG = 0.375m\n", + "\n", + " Number of transfer units NoG = 21.00\n" + ] + } + ], + "source": [ + "from sympy import symbols, solve\n", + "from math import ceil\n", + "Gm = 0.015#\n", + "KGa = 0.04#\n", + "top = 0.0003#\n", + "Y1 = 0.03#\n", + "Ye = 0.026#\n", + "bottom = (Y1-Ye)#\n", + "log_mean_driving_force = (bottom-top)/log(bottom/top)#\n", + "Z = symbols('Z')\n", + "Z1 = solve(Gm*(Y1-top)-KGa*log_mean_driving_force*Z,Z)[0]\n", + "print \"\\n Z =%.2fm\"%(Z1)#\n", + "HoG = Gm/KGa#\n", + "print \"\\n Height of transfer unit HoG = %.3fm\"%(HoG)#\n", + "print \"\\n Number of transfer units NoG = %0.2f\"%(ceil(7.79/0.375))#" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page No 700 Example 12.5" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "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\nwxhjTNj+D3ist4aa/CKkAAAAAElFTkSuQmCC\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f4b195450d0>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The height of the tower is 4.91 meters\n" + ] + } + ], + "source": [ + "%matplotlib inline\n", + "from matplotlib.pyplot import plot, show, xlabel, ylabel, title\n", + "from numpy import arange\n", + "y1 = 0.10#\n", + "Y1 = 0.10/(1-0.10)#\n", + "y2 = 0.001#\n", + "Y2 = y2#\n", + "mass_flowrate_gas = 0.95# #mass flow rate in kg/m**2.sec\n", + "mass_percent_air = (0.9*29/(0.1*17+0.9*29))*100#\n", + "mass_flowrate_air = (mass_percent_air*mass_flowrate_gas)##in kg/m**2.sec\n", + "Gm = (mass_flowrate_air/29)#\n", + "Lm = 0.65/18# #Lm is in kmol/m**2.sec\n", + "#A mass balance between a plane in the tower where the compositions are X and Y and the top of the tower gives:\n", + "\n", + "#Y = 1.173X+0.001\n", + "X = arange(0,0.159,0.001)\n", + "Y=[]\n", + "for x in X:\n", + " Y.append(1.173*x+0.001)\n", + "plot(X,Y)#\n", + "\n", + "x=[0.021,0.031,0.042,0.053,0.079,0.106,0.159]\n", + "\n", + "PG = [12,18.2,24.9, 31.7, 50.0, 69.6, 114.0]\n", + "i=0\n", + "Y1=[]\n", + "while i<7:\n", + " Y1.append(PG[(i)]/(760-PG[(i)]))\n", + " i=i+1\n", + "\n", + "plot(x,Y1)#\n", + "#xlabel(\"Area under the curve is 3.82m\"%(\"kmolNH3/kmolH2O\"%(\"kmolNH3/kmol air\"\n", + "\n", + " \n", + "title(\"Operating and equilibrium lines\")\n", + "xlabel(\"kmol NH3/kmol H2O\")\n", + "ylabel(\"kmol NH3/kmol air\")\n", + "show()\n", + "#If the equilibrium line is assumed to be straight, then:\n", + "#Gm(Y2 − Y1) = KGaZdeltaPlm\n", + "\n", + "#Top driving force\n", + "deltaY2 = 0.022#\n", + "#Bottom driving force\n", + "deltaY1 = 0.001#\n", + "deltaYlm = 0.0068#\n", + "Z = (0.0307*0.11)/(0.001*0.688)#\n", + "print \"The height of the tower is %.2f meters\"%(Z)#" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page No 708 Example 12.6" + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " Number of theoretical plates = 9\n", + "\n", + " LHS = 0.98\n", + "\n", + " 1/A = 1.00\n", + "\n", + " Gm/Lm = 0.333\n", + "\n", + " Actual/minimum Gm/Lm = 1.39\n", + "\n", + " Actual Gm/Lm = 0.656\n", + "\n", + " 1/A = mGm/Lm = 1.968\n", + "\n", + " The actual number of plates are : 17.0\n" + ] + } + ], + "source": [ + "from sympy import symbols, solve, log\n", + "print \"\\n Number of theoretical plates = %d\"%((30*0.3))#\n", + "\n", + "#At the bottom of the tower:\n", + "#Flowrate of steam = Gm (kmol/m**22s)\n", + "#Mole ratio of pentane in steam = Y1, and\n", + "#Mole ratio of pentane in oil = X1\n", + "X1 = 0.001#\n", + "\n", + "#At the top of the tower:\n", + "#exit steam composition = Y2\n", + "#inlet oil composition = X2\n", + "X2 = 0.06#\n", + "#flowrate of oil = Lm (kmol/m**2.sec)\n", + "\n", + "#The minimum steam consumption occurs when the exit steam stream is in equilibrium with the inlet oil, that is when:\n", + "#The equilibrium relation for the system may be taken as Ye = 3.0X, where Ye and X are expressed in mole ratios of pentane in the gas and liquid phases respectively.\n", + "Ye2 = X2*3#\n", + "#Lmin(X2 − X1) = Gmin(Y2 − Y1)\n", + "#If Y1 = 0, that is the inlet steam is pentane-free, then:\n", + "ratio_min = (X2 - X1)/Ye2#\n", + "\n", + "\n", + "#The operating line may be fixed by trial and error as it passes through the point (0.001, 0), and 9 theoretical plates are required for the separation. Thus it is a matter of selecting the operating line which, with 9 steps, will give X2 = 0.001 when X1 = 0.06. This is tedious but possible, and the problem may be better solved analytically since the equilibrium line is straight.\n", + "\n", + "#let x = 1/A\n", + "#for a stripping operation\n", + "LHS = (X2-X1)/(X2)#\n", + "print \"\\n LHS = %0.2f\"%(LHS)#\n", + "x = symbols('x')\n", + "x1 = solve((x**10-x)-LHS*(x**(10)-1),x)[0]\n", + "print \"\\n 1/A = %.2f\"%(x1)#\n", + "#A = Lm/mGm\n", + "print \"\\n Gm/Lm = %.3f\"%(x1/3)#\n", + "print \"\\n Actual/minimum Gm/Lm = %.2f\"%(0.457/0.328)#\n", + "\n", + "#If (actual Gm/Lm)/(min Gm/Lm) = 2,\n", + "print \"\\n Actual Gm/Lm = %.3f\"%(.328*2)#\n", + "x2 = 3*(0.656)#\n", + "print \"\\n 1/A = mGm/Lm = %.3f\"%(3*0.656)#\n", + "\n", + "#y = (1.968)**(N+1)\n", + "y = symbols('y')\n", + "y1 = solve(0.983*(y-1)-(y-1.968),y)[0]\n", + "N = log(y1)/log(1.968)-1#\n", + "print \"\\n The actual number of plates are : %.1f\"%(ceil(N/0.3))#" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.9" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter13.ipynb b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter13.ipynb new file mode 100644 index 00000000..682e135d --- /dev/null +++ b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter13.ipynb @@ -0,0 +1,347 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 13 - Liquid–Liquid Extraction" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 732 Example 13.1" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " (a) Countercurrent operation\n", + "\n", + " Concentration of the solution is 3.39*10**(-5) m**3/sec\n", + "\n", + " mass flow rate of A = 0.041 kg/sec\n", + "\n", + " mass flow rate of B =0.407 kg/sec\n", + "\n", + " Ratio of A/B in the feed, Xf = 0.112 kg/kg\n", + "\n", + " Slope of the equilibrium line is 2.86\n", + "\n", + " The composition of final raffinate is 0.057kg A/kg B\n", + "\n", + "\n", + "\n", + " (b)Multiple contact\n", + "\n", + " Stage 1\n", + "\n", + " In this case 0.0427 kg/sec\n", + "\n", + " Thus raffinate from stage 1 contains 0.0333 kg/sec Aand 0.366 kg/sec B\n", + "\n", + " X1 = 0.091 kg/kg\n", + "\n", + " Stage 2\n", + "\n", + " The extract contains 0.0060 kg/sec A\n", + "\n", + " X2 = 0.075 kg/kg\n", + "\n", + " Stage 3\n", + "\n", + " The extract contains 0.0049 kg/sec A/kg S\n", + "\n", + " Thus the raffinate contains 0.0224 kg/sec A and 0.366 kg/sec B\n", + "\n", + " The composition of final raffinate = 0.061202 kg A/kg B\n" + ] + }, + { + "data": { + "image/png": "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\nRU5ErkJggg==\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7fbdf3bdff50>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "from sympy import symbols,solve\n", + "%matplotlib inline\n", + "from matplotlib.pyplot import plot,title,xlabel,ylabel,show\n", + "\n", + "print\"\\n (a) Countercurrent operation\"\n", + "#(a) Countercurrent operation\n", + "S = 1.6*10**(-4)# #Solvent flow rate in m**3/sec\n", + "mass_flowrate = (S*800)# #mass flow rate is in kg/sec\n", + "\n", + "#Considering the solution, 400cm3/s = 4 × 10−4 m**3/sec containing, say, a m**3/sec A and (5 × 10−4 − a) m3/sec B.\n", + "#Thus mass flow rate of A = 1200a kg/sec\n", + "#and mass flow rate of B = (4*10**(-4)-a)*1000 = (0.4-1000a)kg/sec\n", + "#a total of: (0.4+200a) kg/sec\n", + "C = symbols('C')#\n", + "C1 = solve(0.1*(0.4+200*C)-1200*C)[0]\n", + "print\"\\n Concentration of the solution is %.2f*10**(-5) m**3/sec\"%(C1*10**5)\n", + "print\"\\n mass flow rate of A = %.3f kg/sec\"%(1200*C1)\n", + "print\"\\n mass flow rate of B =%.3f kg/sec\"%(0.4+200*C1)\n", + "print\"\\n Ratio of A/B in the feed, Xf = %.3f kg/kg\"%(0.041/0.366)\n", + "\n", + "X = [0.05, 0.10, 0.15]\n", + "Y = [0.069 ,0.159, 0.258]\n", + "plot(X,Y)\n", + "title(\"Equilibrium curve\")\n", + "xlabel(\"kg A/kg B\")\n", + "ylabel(\"kg A/kg S\")\n", + "show()\n", + "#From The curve:\n", + "slope = 0.366/0.128#\n", + "print\"\\n Slope of the equilibrium line is %.2f\"%(slope)#\n", + "\n", + "#Since pure solvent is added, Yn+1 = Y4 = 0 and a line of slope 2.86 is drawn in such that stepping off from Xf = 0.112 kg/kg to Y4 = 0 gives exactly three stages. When Y4 = 0, Xn = X3 = 0.057 kg/kg\n", + "print\"\\n The composition of final raffinate is 0.057kg A/kg B\"\n", + "\n", + "print\"\\n\\n\\n (b)Multiple contact\"\n", + "print\"\\n Stage 1\"\n", + "print\"\\n In this case %.4f kg/sec\"%(0.128/3)#\n", + "#and from the equilibrium curve, the extract contains 0.18 A/kg S and (0.18 × 0.0427) = 0.0077 kg/s A.\n", + "print\"\\n Thus raffinate from stage 1 contains %.4f kg/sec Aand %.3f kg/sec B\"%((0.041-0.0077),0.366)\n", + "X1 = 0.0333/0.366#\n", + "print\"\\n X1 = %.3f kg/kg\"%(0.0333/0.366)\n", + "\n", + "print\"\\n Stage 2\"\n", + "#the extract contains 0.14 kg A/kg S\n", + "print\"\\n The extract contains %.4f kg/sec A\"%(0.14*0.0427)\n", + "#Thus: the raffinate from stage 2 contains (0.0333 − 0.0060) = 0.0273 kg/s A and 0.366 kg/s B\n", + "X2 = (0.0273/0.366)\n", + "print\"\\n X2 = %.3f kg/kg\"%(X2)\n", + "\n", + "print\"\\n Stage 3\"\n", + "#the extract contains 0.114 kg A/kg S\n", + "print\"\\n The extract contains %.4f kg/sec A/kg S\"%(0.114*0.0427)\n", + "print\"\\n Thus the raffinate contains %.4f kg/sec A and %.3f kg/sec B\"%((0.0273-0.0049),0.366)\n", + "print\"\\n The composition of final raffinate = %3f kg A/kg B\"%(0.0224/0.366)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 736 Example 13.3" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " CB1* = 0.0169 kmol/m**3\n", + "\n", + " CB2* = 0.0170 kmol/m**3\n", + "\n", + " deltaC1 =0.0129 kmol/m**3\n", + "\n", + " deltaC2 = 0.0055 kmol/m**3\n", + "\n", + " log mean driving force is given by deltaClm = 0.0087 kmol/m**3\n", + "\n", + " KBa = 7.5*10**(-4) kmol/sec m**3(kmol/m**3)\n", + "\n", + " HoB = 1.68 meters\n" + ] + } + ], + "source": [ + "from math import log\n", + "\n", + "#From the equilibrium relationship\n", + "CB1 = (0.0247*0.685)#\n", + "print\"\\n CB1* = %.4f kmol/m**3\"%(CB1)#\n", + "CB2 = (0.0247*0.690)#\n", + "print\"\\n CB2* = %.4f kmol/m**3\"%(CB2)#\n", + "\n", + "#Thus the driving force at the bottom:\n", + "deltaC1 = (0.0169-0.0040)#\n", + "print\"\\n deltaC1 =%.4f kmol/m**3\"%(deltaC1)#\n", + "#Driving force at the top \n", + "deltaC2 = (0.0170-0.0115)#\n", + "print\"\\n deltaC2 = %.4f kmol/m**3\"%(deltaC2)#\n", + "def log_mean_driving_force():\n", + " x = (deltaC1 - deltaC2)/log((deltaC1)/deltaC2)#\n", + " return x\n", + "print\"\\n log mean driving force is given by deltaClm = %.4f kmol/m**3\"%(log_mean_driving_force())#\n", + "KBa = (4.125*10**(-8))/(log_mean_driving_force()*0.0063)#\n", + "print\"\\n KBa = %.1f*10**(-4) kmol/sec m**3(kmol/m**3)\"%(KBa*10**4)#\n", + "HoB = (1.27*10**(-3))/KBa#\n", + "print\"\\n HoB = %.2f meters\"%(HoB)#" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 754 Example 13.4" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " Mean droplet size = 4.00 mm\n" + ] + } + ], + "source": [ + "diameter = [2, 3 ,4 ,5, 6]#\n", + "number = [30, 120, 200, 80, 20]#\n", + "\n", + "def Sum_d1cube():\n", + " sum = 0#\n", + " i = 0#\n", + " while (i <= 4):\n", + " sum = sum + number[i]*(diameter[i])**3#\n", + " i = i+1\n", + " \n", + " x = sum\n", + " return x\n", + "\n", + "def sum_d1square():\n", + " sum1 = 0\n", + " j=0\n", + " while(j<=4):\n", + " sum1 = sum1 + number[j]*(diameter[j])**2\n", + " j= j+1\n", + " \n", + " y = sum1\n", + " return y\n", + "\n", + "def ds():\n", + " z = Sum_d1cube()/sum_d1square()\n", + " return z\n", + "print\"\\n Mean droplet size = %.2f mm\"%(ds())" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 758 Example 13.5" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " mass of acid transferred to the ether 0.0005 kg/m**2.sec or 0.000022 kg/sec\n", + "\n", + " Acid in the aqueous feed = 0.01 kg/m**3.sec\n", + "\n", + " Acid in the raffinate = 0.005 kg/m**2.sec\n", + "\n", + " Concentration of acid in the raffinate = 0.02 kg/kg\n", + "\n", + " At the top of the column\n", + "\n", + " deltaC2 = 0.002 kg/kg\n", + "\n", + "\n", + " At the bottom of the column\n", + "\n", + " deltaC1 = 0.006 kg/kg\n", + "\n", + " Logarithmic driving force is : 0.0036 kg/kg\n", + "\n", + " KRa = 0.453 kg/m**3.sec(kg/kg)\n", + "\n", + " Height of an overall transfer unit = 0.55 m\n", + "\n", + " The number of overall transfer units = 5.56 \n" + ] + } + ], + "source": [ + "from math import pi\n", + "\n", + "CSA = (pi/4)*(0.075)**2# #cross sectional area is in m**2\n", + "V = (0.0044*3)# #volume of packing is in m**3\n", + "C = 0.01# #concentration is in kg/kg\n", + "print\"\\n mass of acid transferred to the ether %.4f kg/m**2.sec or %f kg/sec\"%(0.05*(0.01-0),0.005*0.0044)#\n", + "print\"\\n Acid in the aqueous feed = %.2f kg/m**3.sec\"%(0.25*0.04)#\n", + "print\"\\n Acid in the raffinate = %.3f kg/m**2.sec\"%(0.01-0.005)#\n", + "print\"\\n Concentration of acid in the raffinate = %.2f kg/kg\"%(0.005/0.25)#\n", + "print\"\\n At the top of the column\"\n", + "CR2 = 0.040# #Concentration is in kg/kg\n", + "CR22 = 0.040*0.3# #Concentration is in kg/kg\n", + "deltaC2 = (0.012-0.010)#\n", + "print\"\\n deltaC2 = %.3f kg/kg\"%(deltaC2)#\n", + "print\"\\n\\n At the bottom of the column\"\n", + "CR1 = 0.20# #Concentration is in kg/kg\n", + "CR11 = 0.020*0.3 #Concentration is in kg/kg\n", + "deltaC1 = 0.006 -0# #Concentration is in kg/kg\n", + "print\"\\n deltaC1 = %.3f kg/kg\"%(deltaC1)#\n", + "deltaCRlm = (0.006-0.002)/log(0.006/0.002)#\n", + "print\"\\n Logarithmic driving force is : %.4f kg/kg\"%(deltaCRlm)#\n", + "KRa = 0.000022/(0.01333*deltaCRlm)#\n", + "print\"\\n KRa = %.3f kg/m**3.sec(kg/kg)\"%(KRa)#\n", + "print\"\\n Height of an overall transfer unit = %.2f m\"%(0.25/KRa)#\n", + "print\"\\n The number of overall transfer units = %.2f \"%(3/0.54)#" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.9" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter14.ipynb b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter14.ipynb new file mode 100644 index 00000000..eb2eb720 --- /dev/null +++ b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter14.ipynb @@ -0,0 +1,746 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 14 - EVAPORATION" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 779 Example 14.1" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " mass of dry solids = 0.0 kg/sec\n", + "\n", + " x = 0.7 kg/sec\n", + "\n", + " Water to be evaporated = 5.6 kg/sec\n", + "\n", + " Summarising\n", + "\n", + " Stream Solids Liquid Total \n", + "\n", + " (kg/s) (kg/s) (kg/s) \n", + "\n", + " Feed 0.7 6.3 7.0\n", + "\n", + " Product 0.7 0.7 1.4\n", + "\n", + " Evaporation 5.6 5.6\n", + "\n", + " Heat entering with the feed = 552.7 kW\n", + "\n", + " Heat leaving with the product = 228.6 kW\n", + "\n", + " Heat leaving with the evaporated water = 14526 kW\n", + "\n", + " Heat transferred from the steam = 14201 kW\n", + "\n", + " The enthalpy of the condensed steam leaving at 352.7 K = 333.1 kJ/kg \n", + "\n", + " The heat transferred from 1 kg steam = 2196.8 kJ/kg\n", + "\n", + " Steam required = 6.46 kg/s \n", + "\n", + " deltaT = 69 deg K \n", + "\n", + " Heat transfer area ,A = 68.0 m**2\n" + ] + } + ], + "source": [ + "from sympy import symbols,solve\n", + "\n", + "\n", + "#Assuming that the steam is dry and saturated at 205 kN/m2, then from the Steam Tables in the Appendix, the steam temperature = 394 K at which the total enthalpy = 2530 kJ/kg.\n", + "\n", + "#At 13.5 kN/m2, water boils at 325 K and, in the absence of data on the boiling point elevation,this will be taken as the temperature of evaporation, assuming an aqueous solution. The total enthalpy of steam at 325 K is 2594 kJ/kg.\n", + "\n", + "#Thus the feed, containing 10 per cent solids, has to be heated from 294 to 325 K at which temperature the evaporation takes place.\n", + "\n", + "print\"\\n mass of dry solids = %.1f kg/sec\"%((7*10/100))\n", + "x = symbols('x')\n", + "x1 = solve(0.7*100-50*(0.7+x))[0]\n", + "print\"\\n x = %.1f kg/sec\"%(x1)\n", + "print\"\\n Water to be evaporated = %.1f kg/sec\"%((7-0.7)-0.7)\n", + "print\"\\n Summarising\"\n", + "print\"\\n Stream Solids Liquid Total \"\n", + "print\"\\n (kg/s) (kg/s) (kg/s) \"\n", + "print\"\\n Feed %.1f %.1f %.1f\"%(x1,7-x1,x1+7-x1)\n", + "print\"\\n Product %.1f %.1f %.1f\"%(x1,x1,x1+x1)\n", + "print\"\\n Evaporation %.1f %.1f\"%(7-x1-x1,7-2*x1)\n", + "#Using a datum of 273K\n", + "q_entering = (7*3.76)*(294-273)\n", + "print\"\\n Heat entering with the feed = %.1f kW\"%(q_entering)\n", + "q_leaving = (1.4*3.14)*(325-273)\n", + "print\"\\n Heat leaving with the product = %.1f kW\"%(q_leaving)\n", + "print\"\\n Heat leaving with the evaporated water = %d kW\"%(5.6*2594)\n", + "print\"\\n Heat transferred from the steam = %d kW\"%(14526+228.6-552.7)\n", + "print\"\\n The enthalpy of the condensed steam leaving at 352.7 K = %.1f kJ/kg \"%(4.18*(352.7-273))\n", + "print\"\\n The heat transferred from 1 kg steam = %.1f kJ/kg\"%(2530-333.2)\n", + "print\"\\n Steam required = %.2f kg/s \"%(14202/2196.8)\n", + "\n", + "#s the preheating of the solution and the sub-cooling of the condensate represent but a small proportion of the heat load, the temperature driving force may be taken as the difference between the temperatures of the condensing steam and the evaporating water, or:\n", + "print\"\\n deltaT = %d deg K \"%(394-325)\n", + "print\"\\n Heat transfer area ,A = %.1f m**2\"%(14202/(3*69))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 782 Example 14.2a" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " deltaT1 = 13 deg K\n", + "\n", + " deltaT2 = 20 deg K\n", + "\n", + " deltaT2 = 36 degK\n", + "\n", + " Solids liquor Total \n", + "\n", + " (kg/s) (kg/s) (kg/s) \n", + "\n", + "Feed 0.4 3.6 4.0 \n", + "\n", + "Product 0.4 0.4 0.8 \n", + "\n", + "Evaporation 3.2 3.2 \n", + "\n", + " ans = 0.991 kg/s\n", + "\n", + " ans = 1.065 kg/s\n", + "\n", + " ans = 1.144 kg/s\n", + "\n", + " A1 = 64.5 m**2\n", + "\n", + " A2 = 65.6 m**2\n", + "\n", + " A3 = 65.3 m**2\n", + "\n", + " These three calculated areas are approximately equal, so that the temperature differences assumed may be taken as nearly correct\n", + "\n", + " deltaT1 = 12 deg K\n", + "\n", + " deltaT2 = 19 deg K\n", + "\n", + " deltaT3 = 36 deg K\n", + "\n", + " T1 = 376 K\n", + "\n", + " T2 = 358 K\n", + "\n", + " T3 = 325 K\n", + "\n", + " Solids liquor Total \n", + "\n", + " (kg/s) (kg/s) (kg/s) \n", + "\n", + "Feed 0.4 3.6 4.0 \n", + "\n", + "Product 0.4 0.4 0.8 \n", + "\n", + "Evaporation 3.2 3.2 \n", + "\n", + " latent heat of flash vaporisation in the second effect is = 220.5 kW\n", + "\n", + " latent heat of flash vaporisation in the third effect is:= 256.6 kW \n", + "\n", + " At 394 K, the latent heat = 2200 kJ/kg\n", + "\n", + " At 325 K, the latent heat = 2377 kJ/kg\n", + "\n", + " Mean value, λ = 2289 kJ/kg\n", + "\n", + " Values ofT1,T2T3 are now chosen by trial and error to give equal values of A in each effect, as follows\n", + "\n", + " deltaT1 A1 deltaT2 A2 deltaT3 A3\n", + "\n", + " (deg K) (m**2) (deg K) (m**2) (deg K) m**2\n", + "\n", + " 18 64.2 18 61.4 33 66.9 \n", + "\n", + " 19 60.5 17 65.0 33 66.9\n", + "\n", + " 18 64.2 17.5 63.1 33.5 65.9\n", + "\n", + " 18 64.2 17 65.0 34 64.9\n", + "\n", + " Steam consumption = 1.00 kg/s\n", + "\n", + " Economy = 2.1 kg/kg\n" + ] + } + ], + "source": [ + "from numpy import mat\n", + "\n", + "#Temperature of dry saturated steam at 205 kN/m2 = 394 K.\n", + "#At a pressure of 13 kN/m2 (0.13 bar), the boiling point of water is325 K, so that the totaltemperature difference &\u0004T = (394 − 325) = 69deg K.\n", + "\n", + "\n", + "#First Approximation.\n", + "\n", + "#Assuming that: U1*deltaT1 = U2*deltaT2 = U3*deltaT3\n", + "#then substituting the values of U1, U2 and U3 and &\u0004T = 69 deg K gives:\n", + "print\"\\n deltaT1 = %.f deg K\"%(13)\n", + "print\"\\n deltaT2 = %.f deg K\"%(20)\n", + "print\"\\n deltaT2 = %.f degK\"%(36)\n", + "\n", + "#Since the feed is cold, it will be necessary to have a greater value of \u0004T1 than given by this analysis. It will be assumed that \u0004T1 = 18 deg K, \u0004T2 = 17 deg K, \u0004T3 = 34 deg K.\n", + "\n", + "#For steam to 1: T0 = 394 K and λ0 = 2200 kJ/kg\n", + "#For steam to 2: T1 = 376 K and λ1 = 2249 kJ/kg\n", + "#For steam to 3: T2 = 359 K and λ2 = 2293 kJ/kg\n", + "# T3 = 325 K and λ3 = 2377 kJ/kg\n", + "\n", + "#Assuming that the condensate leaves at the steam temperature, then heat balances across each effect may be made as follows:\n", + "\n", + "#Effect 1 :\n", + "#2200 D0 = 4 × 4.18(376 − 294) + 2249 D1\n", + "\n", + "#Effect 2:\n", + "#2249 D1 + (4 − D1)4.18(376 − 359) = 2293 D2\n", + "\n", + "#Effect 3:\n", + "#2293 D2 + (4 − D1 − D2)4.18(359 − 325) = 2377 D3\n", + "\n", + "print\"\\n Solids liquor Total \"\n", + "print\"\\n (kg/s) (kg/s) (kg/s) \"\n", + "print\"\\nFeed %.1f %.1f %.1f \"%(0.4,3.6,4.0)\n", + "print\"\\nProduct %.1f %.1f %.1f \"%(0.4,0.4,0.8)\n", + "print\"\\nEvaporation %.1f %.1f \"%(3.6-0.4,4.0-0.8)\n", + "\n", + "#D1 + D2 + D3 = 3.2 kg/s\n", + "D = mat([[2177.94, -2293, 0],[-4.18*(359-325), 2293-4.18*(359-325), -2377],[1, 1, 1]])\n", + "C = mat([[-4*4.18*(376-359)],[-4*4.18*(359-325)],[3.2]])\n", + "D1 = (D**-1)*C\n", + "for dd in D1:print\"\\n ans = %.3f kg/s\"%(dd)\n", + "\n", + "D0 = (4*4.18*(376-294)+2249*D1[0])/2200\n", + "A1 = D0*2200/(3.1*18)\n", + "print\"\\n A1 = %.1f m**2\"%(A1)\n", + "A2 = D1[0]*2249/(2*17)\n", + "print\"\\n A2 = %.1f m**2\"%(A2)\n", + "A3 = D1[1]*2293/(1.1*34)\n", + "print\"\\n A3 = %.1f m**2\"%(A3)\n", + "print\"\\n These three calculated areas are approximately equal, so that the temperature differences assumed may be taken as nearly correct\"\n", + "\n", + "#let, deltaT1 = x\n", + "#deltaT2 = y\n", + "#deltaT3 = z\n", + "X = mat([[3.1, -2.0, 0],[0, 2.0, -1.1],[1, 1, 1]])\n", + "A = mat([[0],[0],[69]])\n", + "T = (X**-1)*A\n", + "print\"\\n deltaT1 = %d deg K\"%(T[0])\n", + "print\"\\n deltaT2 = %d deg K\"%(T[1])\n", + "print\"\\n deltaT3 = %d deg K\"%(T[2])\n", + "\n", + "#ghting the temperature differences to allow for the fact that the feed enters at ambient temperature gives:\n", + "#deltaT1 = 18 deg Kdelta T2 = 18 degK delta T3 = 33 deg K\n", + "Steam_temp = 394\n", + "T1 = Steam_temp-18\n", + "print\"\\n T1 = %d K\"%(T1)\n", + "T2 = T1 - 18\n", + "print\"\\n T2 = %d K\"%(T2)\n", + "T3 = T2 - 33\n", + "print\"\\n T3 = %d K\"%(T3)\n", + "\n", + "#The total evaporation (D1 + D2 + D3) is obtained from a material balance:\n", + "print\"\\n Solids liquor Total \"\n", + "print\"\\n (kg/s) (kg/s) (kg/s) \"\n", + "print\"\\nFeed %.1f %.1f %.1f \"%(0.4,3.6,4.0)\n", + "print\"\\nProduct %.1f %.1f %.1f \"%(0.4,0.4,0.8)\n", + "print\"\\nEvaporation %.1f %.1f \"%(3.6-0.4,4.0-0.8)\n", + "\n", + "#Assuming, as an approximation, equal evaporation in each effect, or D1 = D2 = D3 = 1.07 kg/s, then the latent heat of flash vaporisation in the second effect is given by:\n", + "q = 4.18*(4-1.07)*(376-358)\n", + "print\"\\n latent heat of flash vaporisation in the second effect is = %.1f kW\"%(q)\n", + "print\"\\n latent heat of flash vaporisation in the third effect is:= %.1f kW \"%(4.18*(4-2*1.07)*(358-325))\n", + "print\"\\n At 394 K, the latent heat = 2200 kJ/kg\"\n", + "print\"\\n At 325 K, the latent heat = 2377 kJ/kg\"\n", + "print\"\\n Mean value, λ = 2289 kJ/kg\"\n", + "\n", + "print\"\\n Values ofT1,T2T3 are now chosen by trial and error to give equal values of A in each effect, as follows\"\n", + "print\"\\n deltaT1 A1 deltaT2 A2 deltaT3 A3\"\n", + "print\"\\n (deg K) (m**2) (deg K) (m**2) (deg K) m**2\"\n", + "print\"\\n 18 64.2 18 61.4 33 66.9 \"# \n", + "print\"\\n 19 60.5 17 65.0 33 66.9\"# \n", + "print\"\\n 18 64.2 17.5 63.1 33.5 65.9\"# \n", + "print\"\\n 18 64.2 17 65.0 34 64.9\"\n", + "\n", + "print\"\\n Steam consumption = %.2f kg/s\"%(3580/2289)\n", + "print\"\\n Economy = %.1f kg/kg\"%(3.2/1.56)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 787 Example 14.2b" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " D1 = 1.266 kg/s\n", + "\n", + " D2 = 1.091 kg/s\n", + "\n", + " D3 = 0.844 kg/s\n", + "\n", + " A1 = 61.0 m**2\n", + "\n", + " A2 = 59.2 m**2\n", + "\n", + " A3 = 62.8 m**2\n" + ] + } + ], + "source": [ + "from numpy import mat\n", + "\n", + "deltaT1 = 20# #temperature is in deg K\n", + "deltaT2 = 24# #temperature is in deg K\n", + "deltaT3 = 25# #temperature is in deg K\n", + "To = 394# #temperature is in deg K\n", + "T1 = 374# #temperature is in deg K\n", + "T2 = 350# #temperature is in deg K\n", + "T3 = 325# #temperature is in deg K\n", + "latent_heat0 = 2200# #latent heat in kJ/kg\n", + "latent_heat1 = 2254# #latent heat in kJ/kg\n", + "latent_heat2 = 2314# #latent heat in kJ/kg\n", + "latent_heat3 = 2377# #latent heat in kJ/kg\n", + "\n", + "#Effect 3:\n", + "# 2314 D2 = 4 × 4.18(325 − 294) + 2377 D3\n", + "\n", + "#Effect 2:\n", + "# 2254 D1 = (4 − D3)4.18(350 − 325) + 2314 D2\n", + "\n", + "#Effect 1:\n", + "# 2200 D0 = (4 − D3 − D2)4.18(374 − 350) + 2254 D1\n", + "\n", + "#(D1 + D2 + D3) = 3.2 kg/s\n", + "\n", + "D = mat([[0, 2314, -2377],[2254, -2314, 4.18*(350-325)],[1, 1, 1]])\n", + "C = mat([[4*4.18*(325-294)],[4*4.18*(350-325)],[3.2]])\n", + "D1 = (D**-1)*C\n", + "print\"\\n D1 = %.3f kg/s\"%(D1[0])\n", + "print\"\\n D2 = %.3f kg/s\"%(D1[1])\n", + "print\"\\n D3 = %.3f kg/s\"%(D1[2])\n", + "A1 = 1.387*latent_heat0/(2.5*20)\n", + "A2 = 1.261*latent_heat1/(2*24)\n", + "A3 = 1.086*latent_heat2/(1.6*25)\n", + "print\"\\n A1 = %.1f m**2\"%(A1)\n", + "print\"\\n A2 = %.1f m**2\"%(A2)\n", + "print\"\\n A3 = %.1f m**2\"%(A3)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 794 Example 14.3" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " η = 0.55 \n", + "\n", + " This value is low, since in good design overall efficiencies approach 0.75–0.80. Obviously the higher the efficiency the greater the entrainment ratio or the higher the saving in live steam\n", + "\n", + " the required flow of live steam = 0.5 kg/kg entrained vapour.\n", + "\n", + " In this case the ratio is (1.0/1.6) = 0.63 kg/kg\n" + ] + } + ], + "source": [ + "He = 2690# #He is the enthalpy of entrained steam in kJ/kg\n", + "H4 = ((1*2780)+(1.6*2690))/2.60\n", + "\n", + "#Again assuming isentropic compression from 101.3 to 135 kN/m2, then:\n", + "H3 = 2640# #in kJ/kg (from the chart)\n", + "n = (1.0+1.6)*(2725-2640)/(1.0*(2780-2375))\n", + "print\"\\n η = %.2f \"%(n)\n", + "print\"\\n This value is low, since in good design overall efficiencies approach 0.75–0.80. Obviously the higher the efficiency the greater the entrainment ratio or the higher the saving in live steam\"\n", + "Pe = 101.3# #pressure of entrained vapour in kN/m**2\n", + "discharge_P = 135##discharge pressure in kN/m**2\n", + "print\"\\n the required flow of live steam = 0.5 kg/kg entrained vapour.\"\n", + "print\"\\n In this case the ratio is (1.0/1.6) = 0.63 kg/kg\"\n", + " " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 795 Example 14.4" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " The enthalpy of the product is 439*0.125 = 54.9 kW\n", + "\n", + " E = 23.0 kW/(kg/sec)\n", + "\n", + " As the compressor is 50 per cent efficient then E = 45.9 kW/(kg/sec)\n", + "\n", + " Gx = 0.014 kg/sec\n" + ] + } + ], + "source": [ + "from sympy import symbols,solve\n", + "\n", + "#Making a mass balance, there are two inlet streams-\n", + "#the additional steam, say Gx kg/s\n", + "#the sea water feed, say Gy kg/s.\n", + "\n", + "#The two outlet streams are\n", + "#distilled water product, 0.125 kg/s\n", + "#the concentrated sea water, 0.5 Gy kg/s\n", + "\n", + "#Thus: (Gx + Gy) = (0.125 + 0.5 Gy) or (Gx + 0.5 Gy) = 0.125\n", + "\n", + "#At 650 kN/m2, the total enthalpy of the steam = 2761 kJ/kg.\n", + "\n", + "#Thus the energy in this stream = 2761Gx kW\n", + "#sea water enters at 344 K\n", + "#enthalpy of feed = [Gy × 4.18(344 − 273)] = 296.8Gy kW\n", + "print\"\\n The enthalpy of the product is 439*0.125 = 54.9 kW\"\n", + "\n", + "#Making a balance\n", + "#(E + 2761Gx + 296.8Gy) = (211.3Gy + 54.9)\n", + "#(E + 2761Gx + 85.5Gy) = 54.9\n", + "#where E is the power supplied to the compressor\n", + "#(E + 2590Gx) = 33.5\n", + "\n", + "#For a single-stage isentropic compression\n", + "#the work done in compressing a volume V1 of gas at pressure P1 to a volume V2 at pressure P2 is given by\n", + "P1 = 101.3# #pressure is in kN/m**2\n", + "P2 = 120# #pressure is in kN/m**2\n", + "dsteam_P1 = (18/22.4)*(273/374.1)# #density of steam at 101.3 kN/m**2 and 374.1 K\n", + "#V1 = 0.5Gy/dsteam_P1 = 0.853 Gy m**3/sec\n", + "E = symbols('E')\n", + "E1 = solve(0.5*E-(P1*0.853)/(1.3-1)*((P2/P1)**(0.3/1.3)-1))[0]\n", + "print\"\\n E = %.1f kW/(kg/sec)\"%(E1)\n", + "\n", + "print\"\\n As the compressor is 50 per cent efficient then E = %.1f kW/(kg/sec)\"%(E1/0.5)\n", + "#E = 46*0.5*Gy = 23.0Gy kW\n", + "Gx = symbols('Gx')\n", + "Gx1 = solve(2761*Gx - 54.9 - 4.72*(33.5-2590*Gx))[0]\n", + "print\"\\n Gx = %.3f kg/sec\"%(Gx1)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 796 Example 14.5" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " The enthalpy of the steam after actual expansion to 101.3 kN/m**2 is 346 kJ/kg\n", + "\n", + " dryness after expansion but before entrainment x21 is = 0.978\n", + "\n", + " the dryness after expansion and entrainment is 0.99\n", + "\n", + " m2/m1 = 0.37 kg vapour entrained/kg kive stream\n", + "\n", + " Thus with a flow of 0.14 kg/s live steam, the vapour entrained at 101.3 kN/m2 is 0.05 kg/sec\n", + "\n", + " Total saturated steam = 0.19 kg/sec at 205 kN/m**2\n", + "\n", + " The economy of the steam = 1.53\n", + "\n", + " The capacity in terms of throughput of solution Gf = 0.239 kg/sec\n" + ] + } + ], + "source": [ + "from sympy import symbols,solve\n", + "\n", + "#Properties of the ejector\n", + "e1 = 0.95# #nozzle efficiency\n", + "e2 = 0.80# #efficiency of momentum transfer\n", + "e3 = 0.90# #efficiency of compression\n", + "P1 = 650# #pressure of live stream\n", + "P2 = 101.3# #pressure of entrained steam\n", + "H1 = 2970##The enthalpy of the live steam at 650 kN/m2 and (435 + 100) in kJ/kg\n", + "H2 = 2605##the enthalpy after isentropic expansion from 650 to 101.3 kN/m2, using an enthalpy–entropy chart,in kJ/kg\n", + "x2 = 0.97# #dryness fraction\n", + "\n", + "print\"\\n The enthalpy of the steam after actual expansion to 101.3 kN/m**2 is %d kJ/kg\"%(e1*(H1 - H2))\n", + "LatentHeat = 2258# #latent heat at 101.3 kN/m**2\n", + "#dryness after expansion but before entrainment x21 is given by:\n", + "#(x21− x2)λ = (1 − e1)(H1 − H2)\n", + "x21 = symbols('x21')\n", + "x22 = solve((x21-x2)*LatentHeat-(1-e1)*(H1-H2))[0]\n", + "print\"\\n dryness after expansion but before entrainment x21 is = %.3f\"%(x22)\n", + "\n", + "#If x23 is the dryness after expansion and entrainment, then:\n", + "#(x23−x2)λ = (1 − e3)(H1 − H2)\n", + "x23 = symbols('x23')\n", + "x24 = solve((x23-x2)*LatentHeat-(1-e3)*(H1-H2))[0]\n", + "print\"\\n the dryness after expansion and entrainment is %.2f\"%(x24)\n", + "\n", + "P3 = 205# #discharge pressure in kN/m**2\n", + "#Assuming that the steam at the discharge pressure P3 = 205 kN/m2 is also saturated\n", + "x3 = 1\n", + "H3 = 2675##enthalpy of the mixture at the start of compression in the diffuser section at 101.3 kN/m2\n", + "\n", + "#Again assuming the entrained steam is also saturated, the enthalpy of the mixture after isentropic compression in thediffuser from 101.3 to 205 kN/m2 is H4\n", + "H4 = 2810# #in kJ/kg\n", + "m = (((H1-H2)/(H4-H3))*e1*e2*e3-1)# #m = m2/m1\n", + "print\"\\n m2/m1 = %.2f kg vapour entrained/kg kive stream\"%(m)\n", + "print\"\\n Thus with a flow of 0.14 kg/s live steam, the vapour entrained at 101.3 kN/m2 is %.2f kg/sec\"%(0.14*m)\n", + "print'\\n Total saturated steam = %.2f kg/sec at 205 kN/m**2'%(0.14+0.14*m)\n", + "print\"\\n The economy of the steam = %.2f\"%(0.214/0.14)\n", + "print\"\\n The capacity in terms of throughput of solution Gf = %.3f kg/sec\"%(0.214+0.025)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 800 Example 14.6" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " (a) Diesel engine\n", + "\n", + " For 1 kg evaporation, ammonia circulated = 2.28 kg\n", + "\n", + " Work done in compressing the ammonia = 341 MJ/kg\n", + "\n", + " For an output of 1 MJ, the engine consumes 0.4 kg fuel.\n", + "\n", + " fuel consumption = 0.137 kg/kg water evaporated\n", + "\n", + " cost = 0.00274 euro/kg water evaporated \n", + "\n", + " (b) Turbine\n", + "\n", + " The work required is 0.342 MJ/kg evaporation\n", + "\n", + " energy required from steam = 0.489 MJ/kg \n", + "\n", + " Enthalpy of steam saturated at 700 kN/m2 = 2764 kJ/kg.\n", + "\n", + " Enthalpy of steam saturated at 101.3 kN/m2 = 2676 kJ/kg\n", + "\n", + " thus : energy from steam = 88 kg/kg\n", + "\n", + " steam required = 5.56 kg/kg evaporation \n", + "\n", + " Cost = 0.0056 euro/kg water evaporated\n", + "\n", + " Hence the Diesel engine would be used for driving the compressor\n" + ] + } + ], + "source": [ + "#(a) Diesel engine\n", + "print\"\\n (a) Diesel engine\"\n", + "\n", + "print\"\\n For 1 kg evaporation, ammonia circulated = 2.28 kg\"\n", + "print\"\\n Work done in compressing the ammonia = %d MJ/kg\"%(150*2.28)\n", + "print\"\\n For an output of 1 MJ, the engine consumes 0.4 kg fuel.\"\n", + "print\"\\n fuel consumption = %.3f kg/kg water evaporated\"%(0.4*0.342)\n", + "print\"\\n cost = %.5f euro/kg water evaporated \"%(0.02*0.137)\n", + "\n", + "print\"\\n (b) Turbine\"\n", + "\n", + "print\"\\n The work required is 0.342 MJ/kg evaporation\"\n", + "#Therefore with an efficiency of 70 per cent:\n", + "print\"\\n energy required from steam = %.3f MJ/kg \"%(0.342*100/70)\n", + "print\"\\n Enthalpy of steam saturated at 700 kN/m2 = 2764 kJ/kg.\"\n", + "print\"\\n Enthalpy of steam saturated at 101.3 kN/m2 = 2676 kJ/kg\"\n", + "print\"\\n thus : energy from steam = %d kg/kg\"%(2764-2676)\n", + "print\"\\n steam required = %.2f kg/kg evaporation \"%(0.489/0.088)\n", + "print\"\\n Cost = %.4f euro/kg water evaporated\"%(0.01*5.56/10)\n", + "print\"\\n Hence the Diesel engine would be used for driving the compressor\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 803 Example 14.7" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " (a) Maximum throughput\n", + "\n", + " The boiling time to give maximum heat transfer and hence maximum throughput is 28.1 ksecs \n", + "\n", + " The heat transferred during boiling is 0.23*10**7 kJ\n", + "\n", + " the water vaporated = 2.03*10**4 kg\n", + "\n", + " Rate of evaporation during boiling = 0.722 kg/secs\n", + "\n", + " Mean rate of evaporation during the cycle = 0.472 kg/secs\n", + "\n", + " cost = 1105.8 euro/cycle\n", + "\n", + " (b) Minimum cost\n", + "\n", + " The boiling time to give minimum cost is 52.9 ksecs\n", + "\n", + " The heat transferred during one boiling period is 6.98*10**7 kJ\n", + "\n", + " The water evaporated = 30342.66*10**4 kg\n", + "\n", + " Rate of evaporation = 0.574 kg/secs\n", + "\n", + " Mean rate of evaporation during the cycle = 0.45 kg/secs\n", + "\n", + " cost of one cyce = 1550.4 euro\n" + ] + } + ], + "source": [ + "#(a) Maximum throughput\n", + "\n", + "print\"\\n (a) Maximum throughput\"\n", + "t_bopt = (15*10**3)+(2/(7*10**(-5)))*(7*10**(-5)*0.2*15*10**3)**0.5\n", + "print\"\\n The boiling time to give maximum heat transfer and hence maximum throughput is %.1f ksecs \"%(t_bopt*10**(-3))\n", + "\n", + "Qb = (2*40*40)*(7*10**(-5))*(((7*10**(-5)*2.81*10**4)+0.2)**0.5-0.2**0.5)\n", + "print\"\\n The heat transferred during boiling is %.2f*10**7 kJ\"%(Qb)\n", + "print\"\\n the water vaporated = %.2f*10**4 kg\"%((4.67*10**(7)/2300)*10**(-4))\n", + "print\"\\n Rate of evaporation during boiling = %.3f kg/secs\"%((2.03*10**4)/(2.81*10**4))\n", + "print\"\\n Mean rate of evaporation during the cycle = %.3f kg/secs\"%(2.03*10**(4)/((2.8*10**4)+(15*10**3)))\n", + "print\"\\n cost = %.1f euro/cycle\"%(((2.81*10**(4)*18)/1000)+600)\n", + "\n", + "\n", + "print\"\\n (b) Minimum cost\"\n", + "t_bopt1 = (600/0.018)+(2*(7*10**(-5)*0.2*600*0.018)**0.5)/(7*10**(-5)*0.018)\n", + "print\"\\n The boiling time to give minimum cost is %.1f ksecs\"%(t_bopt1*10**(-3))\n", + "Qb1 = ((2*40*40)/(7*10**(-5)))*((7*10**(-5)*5.28*10**4 + 0.2)**0.5-0.2**0.5)\n", + "print\"\\n The heat transferred during one boiling period is %.2f*10**7 kJ\"%(Qb1*10**(-7))\n", + "print\"\\n The water evaporated = %.2f*10**4 kg\"%(Qb1/2300)\n", + "print\"\\n Rate of evaporation = %.3f kg/secs\"%((3.03/5.28))\n", + "print\"\\n Mean rate of evaporation during the cycle = %.2f kg/secs\"%((3.03*10**4)/((5.28*10**4)+(15*10**3)))\n", + "print\"\\n cost of one cyce = %.1f euro\"%(5.28*10**(4)*0.018+600)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.9" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter15.ipynb b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter15.ipynb new file mode 100644 index 00000000..8a6eda9c --- /dev/null +++ b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter15.ipynb @@ -0,0 +1,510 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 15 - Crystallisation" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 836 Example 15.1" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " For concentrations in kg sucrose/kg water:\n", + "\n", + " c = 2.45 kg/kg\n", + "\n", + " c1 = 2.04 kg/kg\n", + "\n", + " S = 1.20\n", + "\n", + "\n", + " For concentrations in kg sucrose/kg water:\n", + "\n", + " co = 0.710 kg/kg solution\n", + "\n", + " co1 = 0.671 kg/kg solution\n", + "\n", + " S = 1.06 \n" + ] + } + ], + "source": [ + "print\"\\n For concentrations in kg sucrose/kg water:\"\n", + "c = 2.45# #concentration is in kg/kg\n", + "print\"\\n c = %.2f kg/kg\"%(c)\n", + "c1= 2.04# #concentration is in kg/kg\n", + "print\"\\n c1 = %.2f kg/kg\"%(c1)\n", + "S = c/c1\n", + "print\"\\n S = %.2f\"%(S)\n", + "\n", + "print\"\\n\\n For concentrations in kg sucrose/kg water:\"\n", + "co = c/(c+1)# #concentration is in kg/kg solution\n", + "print\"\\n co = %.3f kg/kg solution\"%(co)\n", + "co1 = c1/(c1 + 1)# #concentration is in kg/kg solution\n", + "print\"\\n co1 = %.3f kg/kg solution\"%(co1)\n", + "S = co/co1\n", + "print\"\\n S = %.2f \"%(S)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 839 Example 15.2" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " For barium sulphate\n", + "\n", + " Increase in solubility for barium sulphate fpr particle size 1.000000 um = 0.544842 per cent\n", + "\n", + " Increase in solubility for barium sulphate fpr particle size 0.100000 um = 5.583968 per cent\n", + "\n", + " Increase in solubility for barium sulphate fpr particle size 0.010000 um = 72.178839 per cent\n", + "\n", + " For Sucrose\n", + "\n", + " Increase in solubility for barium sulphate fpr particle size 1.000000 um = 0.347870 per cent\n", + "\n", + " Increase in solubility for barium sulphate fpr particle size 0.100000 um = 3.533664 per cent\n", + "\n", + " Increase in solubility for barium sulphate fpr particle size 0.010000 um = 41.519360 per cent\n" + ] + } + ], + "source": [ + "from math import exp\n", + "\n", + "print\"\\n For barium sulphate\"\n", + "\n", + "def increase_barium(d):\n", + " y = exp((2*233*0.13)/(2*8314*298*4500*d))\n", + " x = y-1\n", + " return x\n", + "\n", + "i=0\n", + "d = [0.5, 0.05, 0.005]\n", + "while(i<=2):\n", + " print\"\\n Increase in solubility for barium sulphate fpr particle size %f um = %f per cent\"%(d[i]*2,(increase_barium(d[i]*10**(-6))*100))\n", + " i = i+1\n", + "\n", + "\n", + "print\"\\n For Sucrose\"\n", + "def increase_sucrose(d1):\n", + " b = exp((2*342*0.01)/(1*8314*298*1590*d1))\n", + " a = b-1\n", + " return a\n", + "j=0\n", + "while(j<=2):\n", + " print\"\\n Increase in solubility for barium sulphate fpr particle size %f um = %f per cent\"%(d[j]*2,(increase_sucrose(d[j]*10**(-6))*100))\n", + " j = j+1" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 851 Example 15.3" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " The initial concentration c1 = 0.2 kg Na2SO4/kg water\n", + "\n", + " The solubility c2 = 0.09 Kg Na2SO4/kg water\n", + "\n", + " Initial mass of water,w1 = 5000 kg and the water lost by evaporation E = 0.020000 kg/kg\n", + "\n", + " yield y = 1432 kg Na2SO4.10H2O\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "\n", + "R = 322/142\n", + "#The initial concentration \n", + "c1 = 1000/5000# #Concentration is in kg Na2SO4/kg water\n", + "print\"\\n The initial concentration c1 = %.1f kg Na2SO4/kg water\"%(c1)\n", + "#The solubility\n", + "c2 = 9/100# #solubility is in Kg Na2SO4/kg water\n", + "print\"\\n The solubility c2 = %.2f Kg Na2SO4/kg water\"%(c2)\n", + "print\"\\n Initial mass of water,w1 = 5000 kg and the water lost by evaporation E = %f kg/kg\"%(2/100)\n", + "print\"\\n yield y = %d kg Na2SO4.10H2O\"%((5000*2.27)*(0.2-0.09*(1-0.02))/(1-0.09*(2.27-1)))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 851 Example 15.4" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " Equilibrium liquor temperature is302.2 K\n", + "\n", + " Initial concentration c1 = 0.667 kg/kg water\n", + "\n", + " Final concentration,c2 = 0.539 kg/kg water\n", + "\n", + " Ratio of molecular masses,R = 1.66\n", + "\n", + "\n", + "\n", + " E = 30.728 kg/kg water originally present\n", + "\n", + " yeild y = 0.182 kg/sec\n" + ] + } + ], + "source": [ + "#Given data:\n", + "#Heat of crystallisation, q = 144 kJ/kg trihydrate\n", + "#Heat capacity of the solution, Cp = 3.5 kJ/kg deg K\n", + "#Latent heat of water at 1.33 kN/m2, λ = 2.46 MJ/kg\n", + "#Boiling point of water at 1.33 kN/m2 = 290.7 K\n", + "#Solubility of sodium acetate at 290.7 K, c2 = 0.539 kg/kg water\n", + "\n", + "#Equilibrium liquor temperature\n", + "T = 290.7+11.5\n", + "print\"\\n Equilibrium liquor temperature is%.1f K\"%(T)\n", + "\n", + "#Initial concentration\n", + "c1 = 40/(100-40)\n", + "print\"\\n Initial concentration c1 = % .3f kg/kg water\"%(c1)\n", + "\n", + "#Final concentration\n", + "c2 = 0.539\n", + "print\"\\n Final concentration,c2 = %.3f kg/kg water\"%(c2)\n", + "\n", + "#Ratio of molecular masses\n", + "print\"\\n Ratio of molecular masses,R = %.2f\"%(136/82)\n", + "\n", + "E = (144*1.66*(0.667-0.539)+3.5*(353-302.2)*(1+0.667)*(1-0.539*(1.66-1))/(2460*(1-0.539*(1.66-1))-(144*1.66*0.539)))\n", + "print\"\\n\\n\\n E = %.3f kg/kg water originally present\"%(E)\n", + "print\"\\n yeild y = %.3f kg/sec\"%((0.56*(100-40)/100)*1.66*(0.667-0.539*(1-0.153))/(1-0.539*(1.66-1)))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 855 Example 15.5" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " The molecular mass of hydrate/molecular mass of anhydrate,R = 2.32\n", + "\n", + " The initial concentration, c1 = 0.23 kg/kg solution or 0.30 kg/kg water\n", + "\n", + " The final concentration, c2 = 15.5 kg/kg water or 0.155 kg/kg water\n", + "\n", + " In 1 kg of the initial feed solution, there is 0.23 kg salt and 0.77 kg water and hence w1 = 0.77 kg\n", + "\n", + " yeild y = 0.33 kg\n", + "\n", + " In order to produce 0.063 kg/s of crystals, the required feed is: 0.191 kg/sec\n", + "\n", + " The heat required to cool the solution 9.3 kW\n", + "\n", + " Heat of crystallisation = 9.2 kW\n", + "\n", + " total heat loss = 18.5 kW\n", + "\n", + " Assuming counter current flow\n", + "\n", + " deltaT1 = 20 deg K\n", + "\n", + " deltaT2 = 10 deg K\n", + "\n", + " The logarithmic mean temperature is 14.4 deg K\n", + "\n", + " The heat transfer area required, A= Q/UdeltaTm = 9.2 m**2\n", + "\n", + " Length of heat exchanger required = 9.2\n", + "\n", + "\n", + "\n", + "\n", + " In practice 3 lengths, each of 3 m length would be specified.\n" + ] + } + ], + "source": [ + "from math import log\n", + "from __future__ import division\n", + "#The molecular mass of hydrate/molecular mass of anhydrate\n", + "R = 380/164\n", + "print\"\\n The molecular mass of hydrate/molecular mass of anhydrate,R = %.2f\"%(R)\n", + "#It will be assumed that the evaporation is negligible and that E = 0.\n", + "c1 = 0.23\n", + "print\"\\n The initial concentration, c1 = %.2f kg/kg solution or %.2f kg/kg water\"%(c1,c1/(1-c1))\n", + "c2 = 15.5\n", + "print\"\\n The final concentration, c2 = %.1f kg/kg water or 0.155 kg/kg water\"%(c2)\n", + "w1 = 0.77\n", + "print\"\\n In 1 kg of the initial feed solution, there is 0.23 kg salt and 0.77 kg water and hence w1 = %.2f kg\"%(w1)\n", + "y = 2.32*0.77*(0.30-0.155*(1-0))/(1-0.155*(2.32-1))\n", + "print\"\\n yeild y = %.2f kg\"%(y)\n", + "print\"\\n In order to produce 0.063 kg/s of crystals, the required feed is: %.3f kg/sec\"%(1*0.063/0.33)\n", + "q = 0.193*3.2*(313-298)\n", + "print\"\\n The heat required to cool the solution %.1f kW\"%(q)\n", + "q1 = 0.063*146.5\n", + "print\"\\n Heat of crystallisation = %.1f kW\"%(q1)\n", + "print\"\\n total heat loss = %.1f kW\"%(q+q1)\n", + "print\"\\n Assuming counter current flow\"\n", + "deltaT1 = (313-293)\n", + "print\"\\n deltaT1 = %d deg K\"%(deltaT1)\n", + "deltaT2 = 298 - 288\n", + "print\"\\n deltaT2 = %d deg K\"%(deltaT2)\n", + "deltaTlm = (deltaT1-deltaT2)/log(deltaT1/deltaT2)\n", + "print\"\\n The logarithmic mean temperature is %.1f deg K\"%(deltaTlm)\n", + "\n", + "A = (q+q1)/(0.14*14.4)\n", + "print\"\\n The heat transfer area required, A= Q/UdeltaTm = %.1f m**2\"%(A)\n", + "print\"\\n Length of heat exchanger required = %.1f\"%(A)\n", + "\n", + "print\"\\n\\n\\n\\n In practice 3 lengths, each of 3 m length would be specified.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 865 Example 15.6" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " Draw down time = 23529 secs\n", + "\n", + "\n", + "\n", + " (a)\n", + "\n", + " from a mass balance the total mass of solids is :\n", + "\n", + " cs = 293 kg/m**3\n", + "\n", + "\n", + "\n", + " (b)\n", + "\n", + " The production rate = 0.050 kg/sec\n", + "\n", + " The crystal population decreases exponentially with size \n", + "65 percent\n", + "\n", + " Thus 34 percent have been discharged by the time they reach 100 um\n", + "\n", + "\n", + "\n", + " (c)\n", + "\n", + " tr = 4342 secs\n", + "\n", + " Qf = 0.000751 m**3/sec\n" + ] + } + ], + "source": [ + "from sympy import symbols,solve\n", + "from math import exp,log\n", + "\n", + "down_time = (4/0.00017)\n", + "print\"\\n Draw down time = %d secs\"%(down_time)\n", + "print\"\\n\\n\\n (a)\"\n", + "print\"\\n from a mass balance the total mass of solids is :\"\n", + "cs = (6*0.6*2660*10**13)*(10**(-8)*23530)**4\n", + "print\"\\n cs = %d kg/m**3\"%(cs)\n", + "print\"\\n\\n\\n (b)\"\n", + "print\"\\n The production rate = %.3f kg/sec\"%(cs*0.00017)\n", + "\n", + "print\"\\n The crystal population decreases exponentially with size \"\n", + "x = exp((-100*10**(-6))/(10**(-8)*23530))\n", + "print\"%d percent\"%(x*100)\n", + "print\"\\n Thus 34 percent have been discharged by the time they reach 100 um\"\n", + "print\"\\n\\n\\n (c)\"\n", + "#If (100 − 90) = 10 per cent of the nuclei remain and grow to >100 μm, then\n", + "t = symbols('t')\n", + "t1 = solve(t - 10**(4)/log(1/0.10))[0]\n", + "print\"\\n tr = %d secs\"%(t1)\n", + "Q = symbols('Q')\n", + "Q1 = solve(Q + (4/4343-0.00017))[0]\n", + "print\"\\n Qf = %f m**3/sec\"%(-Q1)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 877 Example 15.7" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " λv = 70319681 kj/kmol\n", + "\n", + " P = 30 kN/m**2\n" + ] + } + ], + "source": [ + "from sympy import symbols,solve\n", + "from math import exp,log\n", + "\n", + "\n", + "l = symbols('l')\n", + "l1 = solve(log(780/220)-(l*(463-433))/(8314*463*433))[0]\n", + "print\"\\n λv = %d kj/kmol\"%(l1)\n", + "P = symbols('P')\n", + "P1 = solve(P-220/exp(70340*(433-393)/(8.314*433*393)))[0]\n", + "print\"\\n P = %d kN/m**2\"%(P1)#" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 883 Example 15.8" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " Vaporisation stage :\n", + "\n", + " Sv = 0.038 kg/sec\n", + "\n", + "\n", + " COndensation stage: \n", + "\n", + " S = 0.000061 kg/sec\n" + ] + } + ], + "source": [ + "print\"\\n Vaporisation stage :\"\n", + "Pt = 101.5\n", + "Ps = 1.44\n", + "Sv = 0.56*(138/29)*(1.44/(101.5-1.44))\n", + "print\"\\n Sv = %.3f kg/sec\"%(Sv)\n", + "\n", + "print\"\\n\\n COndensation stage: \"\n", + "Ptc = 100\n", + "Psc = 0.0023\n", + "S = 0.56*(138/29)*(0.0023/(100-0.0023))\n", + "print\"\\n S = %f kg/sec\"%(S)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.9" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter16.ipynb b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter16.ipynb new file mode 100644 index 00000000..995fa4a7 --- /dev/null +++ b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter16.ipynb @@ -0,0 +1,467 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 16 - Drying" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 909 Example 16.1" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " mA = 0.113 kg/sec\n", + "\n", + " The total drying time is then 24.0 ksec or 6.65 hr \n" + ] + } + ], + "source": [ + "from math import log\n", + "from __future__ import division\n", + "#For the first drying operation\n", + "w1 = 0.25# #in kg/kg\n", + "w = 0.10# #in kg/kg\n", + "wc = 0.15# #in kg/kg\n", + "we = 0.05# #in kg/kg\n", + "f1 = w1-we# #in kg/kg\n", + "fc = wc - we# #in kg/kg\n", + "f = w - we# #in kg/kg\n", + "\n", + "#x = mA\n", + "def TotalDryingTime(t):\n", + " x = (1/t)*((f1-fc)/fc + log(fc/f))\n", + " return x\n", + "\n", + "print\"\\n mA = %.3f kg/sec\"%(TotalDryingTime(15))\n", + "\n", + "#For the second drying operation\n", + "w12 = 0.30# #in kg/kg\n", + "w2 = 0.08# #in kg/kg\n", + "wc2 = 0.15# #in kg/kg\n", + "we2 = 0.05# #in kg/kg\n", + "f12 = w12 - we2# #in kg/kg\n", + "fc2 = wc2 - we2# #in kg/kg\n", + "f2 = w2 - we2# #in kg/kg\n", + "\n", + "t1=(1/TotalDryingTime(15))*((0.25-0.10)/0.10 + log(0.10/0.03))\n", + "print\"\\n The total drying time is then %.1f ksec or %.2f hr \"%(t1,t1*1000/3600)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 909 Example 16.2" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "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\ngg==\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f0dd8102610>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " k = 0.520000\n", + "\n", + " t1 = 1090 ksecs or 12.6 days\n" + ] + } + ], + "source": [ + "%matplotlib inline\n", + "from matplotlib.pyplot import plot,title,show,xlabel,ylabel\n", + "from sympy import symbols,solve\n", + "\n", + "E = [1, 0.64 ,0.49, 0.38, 0.295, 0.22, 0.14]\n", + "J = [0, 0.1, 0.2, 0.3, 0.5, 0.6 ,0.7]\n", + "plot(J,E)\n", + "title(\"Plot for drying data\")\n", + "xlabel(\"J = kt/L**2\")\n", + "ylabel(\"E\")\n", + "show()\n", + "\n", + "#For the 10 mm strips\n", + "mi = (0.28 - 0.07)# #Initial free moisture content in kg/kg\n", + "mf = (0.13-0.07)# #Final free moisture content in kg/kg\n", + "#at\n", + "t = 25# #time is in ksecs\n", + "E = (0.06/0.21)\n", + "#at E = 0.286 ,J = 0.52 from the plot of given data and J = kt/L**2\n", + "k = symbols('k')\n", + "k1 = solve(0.52 - (k*t)/(10/2)**2)[0]\n", + "print\"\\n k = %f\"%(k1)\n", + "\n", + "#for the 60 mm planks\n", + "m1i = (0.22 - 0.07)# #Initial free moisture content in kg/kg\n", + "m1f = (0.13 - 0.07)# #Final free moisture content in kg/kg\n", + "E = (m1f/m1i)\n", + "#at E = 0.20 from yhe plot of the given data J = 0.63 and J = kt/L**2\n", + "t1 = 0.63*(60/2)**(2)/k1\n", + "print\"\\n t1 = %d ksecs or %.1f days\"%(t1,(t1*1000/(3600*24)))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 911 Example 16.3" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " The heat content of this stream = 6.05 kW\n", + "\n", + " Heat in the water vapour = 119.3 kW\n", + "\n", + " The dried solids contain 0.0036 kg/s water and hence heat content of this stream is: 0.07 kW\n", + "\n", + " G = 2.07 kg/secs\n", + "\n", + " Water in the outlet stream 0.0588 kg/secs\n", + "\n", + " The humidity H = 0.0284 kg/kg dry air\n" + ] + } + ], + "source": [ + "from sympy import symbols,solve\n", + "\n", + "#(a) Air\n", + "#G kg/s dry air enter with 0.006G kg/s water vapour and hence the heat content of this stream= \n", + "#[(1.00G) + (0.006G × 2.01)](385 − 273) = 113.35G kW\n", + "\n", + "#(b) Wet solid\n", + "#0.125 kg/s enter containing 0.40 kg water/kg wet solid, assuming the moisture is expressed on a wet basis.\n", + "flowWater = (0.125*0.40)# #in kg/sec\n", + "flowDrySolid = (0.125-0.050)# #in kg/sec\n", + "#Hence heat content of this stream\n", + "q = ((0.050*4.18)+(0.075*0.88))*(295-273)\n", + "print\"\\n The heat content of this stream = %.2f kW\"%(q)\n", + "\n", + "#Heat out \n", + "#(a) Air\n", + "#Heat in exit air = [(1.00 G) + (0.006 G × 2.01)](310 − 273) = 37.45G kW.\n", + "fd = 0.075# #mass flow rate of dry solids in kg/sec\n", + "w = 0.05*0.075/(1+0.05)# #water in the dried solids leaving in kg/secs\n", + "we = (0.050 - w)# #The water evaporated into gas stream in kg/secs\n", + "\n", + "#Assuming evaporation takes place at 295 K,then:\n", + "qout = 0.0464*(2.01*(310-295)+2449+4.18*(295-273))\n", + "print\"\\n Heat in the water vapour = %.1f kW\"%(qout)\n", + "\n", + "#the total heat in this stream = (119.30 + 37.45G) kW.\n", + "#(b) Dried solids\n", + "\n", + "\n", + "#The dried solids contain 0.0036 kg/s water and hence heat conten t of this stream is:\n", + "q1 = ((0.075*0.88)+(0.0036*4.18)/(305-273))\n", + "print\"\\n The dried solids contain 0.0036 kg/s water and hence heat content of this stream is: %.2f kW\"%(q1)\n", + " \n", + " \n", + "#(c) Losses\n", + "#These amount to 20 kJ/kg dry air or 20m kW.\n", + "#Heat Balance\n", + "G = symbols('G')\n", + "G1 = solve(113.35*G + 6.05 - 119.30 - 37.45*G - 2.59 - 20*G)[0]\n", + "print\"\\n G = %.2f kg/secs\"%(G1)\n", + "print\"\\n Water in the outlet stream %.4f kg/secs\"%(0.006*2.07+0.0464)\n", + "print\"\\n The humidity H = %.4f kg/kg dry air\"%(0.0588/2.07)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 922 Example 16.4" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " water in the product ,b = 12.8 kg\n", + "\n", + " As the final moisture content is above the critical value, all the drying is at this constant rate and the time of drying is: 11700 ksecs or 3.25 hr\n" + ] + } + ], + "source": [ + "from sympy import symbols,solve\n", + "\n", + "#In 100 kg of feed\n", + "\n", + "#mass of water = \n", + "mw = 100*30/100# #mass of water in kg\n", + "#mass of dry solids = \n", + "md = 100-30# #mass of dry solids\n", + " \n", + "#and:\n", + "#For b kg water in the dried solids: 100b/(b + 70) = 15.5\n", + "b = symbols('b')\n", + "b1 = solve(100*b - 15.5*(b+70))[0]\n", + "print\"\\n water in the product ,b = %.1f kg\"%(b1)\n", + "\n", + "#Initial water content \n", + "w1 = 30/70# #Intial moisture content in kg/kg dry solids\n", + "#Final moisture content\n", + "w2 = (12.8/70)# #Final moisture content in kg/kg dry solids\n", + "#water to be removed\n", + "w3 = (30-12.8)# #water to be removed in kg\n", + "\n", + "#Surface of drying\n", + "S = (0.03*70)# #Surface for drying in m**2\n", + "rate = (0.0007*2.1)# #Rate of drying in kg/sec\n", + "\n", + "#As the final moisture content is above the critical value, all the drying is at this constant rate and the time of drying is:\n", + "t = 17.2/0.00147\n", + "print\"\\n As the final moisture content is above the critical value, all the drying is at this constant rate and the time of drying is: %d ksecs or %.2f hr\"%(t,t/3600)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 930 Example 16.5" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " For adiabatic drying the outlet air temperature = 331.6 K\n", + "\n", + " Total heat = 419.5 kJ/kg or 146 kW\n", + "\n", + " Mass flow rate of inlet air = 2.05 kg/secs\n", + "\n", + " Mass flow rate of dry air ,Ga = 2.03 kg/secs\n", + "\n", + " the humidity of the outlet air H2 = 0.0348 kg/kg\n", + "\n", + " The cross sectional area of the dryer is 2.18 m**2\n", + "\n", + " The equivalent diameter of the dryer = 1.67 m\n", + "\n", + " Logarithmic mean temperature difference = 45.5 deg K\n", + "\n", + " The length of the dryer = 10.1 m\n", + "\n", + " Length/diameter ratio = 6 \n" + ] + } + ], + "source": [ + "from sympy import symbols,solve\n", + "from math import exp,log,pi\n", + "\n", + "#Inlet air temperature\n", + "Tair = 400# #Inlet air temperature in kelvins\n", + "H = 0.01# #Humidity is in kg/kg dry air\n", + "#*therefore wet bulb temperature = \n", + "Twetbulb = 312# #Inlet wet-bulb temperature\n", + "NTU = 1.5# #Number of transfer units\n", + "\n", + "#Then for adiabatic drying the outlet air temperature,To is given by\n", + "To = symbols('To')\n", + "To1 = solve(exp(1.5)*(To-312)-(400-312))[0]\n", + "print\"\\n For adiabatic drying the outlet air temperature = %.1f K\"%(To1)\n", + "\n", + "#Solids outlet temperature will be taken to be maximum allowable,325K\n", + "#From the steam tables in the Appendix, the latent heat of vaporisation of water at 312 K is2410 kJ/kg. Again from steam tables, the specific heat capacity of water vapour = 1.88 kJ/kg K and that of the solids will be taken as 2.18 kJ/kg K.\n", + "\n", + "#For a mass flow of solids of 0.35 kg/s and inlet and outlet moisture contents of 0.15 and 0.005 kg/kg dry solids respectively, the mass of water evaporated = 0.35(0.15 − 0.005) = 0.0508 kg/s.\n", + "\n", + "#For unit mass of solids ,the heat duty includes:\n", + " #Heat to the solids\n", + "qsolids = 2.18*(325-300)# #heat to solids in kJ/kg\n", + "#Heat to raise the moisture to the dew point\n", + "qdew = (0.15*4.187*(312-300))# #in kJ/kg\n", + "#Heat of vaporisation\n", + "qvap = 2410*(0.15-0.005)# #in kJ/kg\n", + "#Heat to raise remaining moisture to solids outlet temperature\n", + "qremaining = (0.05*4.187)*(325-312)\n", + "#Heat to raise evaporated moisture to the air outlet temp.\n", + "qevapo = (0.15-0.005)*1.88*(331.5-312)\n", + "qtotal = qsolids + qdew + qvap + qremaining + qevapo\n", + "print\"\\n Total heat = %.1f kJ/kg or %d kW\"%(qtotal,qtotal*0.35)\n", + "\n", + "#The humid heat of entering air is 1.03 kJ/kg K\n", + "#G1 (1 +H1) = Q/Cp1(T1 − T2)\n", + "#where: G1 (kg/s) is the mass flowrate of inlet air,\n", + "#H1 (kg/kg) is the humidity of inlet air,\n", + "#Q (kW) is the heat duty,\n", + "#Cp1 (kJ/kg K) is the humid heat of inlet air\n", + "#and: T1 and T2 (K) are the inlet and outlet air temperatures respectively.\n", + "G1 = symbols('G1')\n", + "G = solve(G1*(1+0.01)-146/(1.03*(400-331.5)))[0]\n", + "print\"\\n Mass flow rate of inlet air = %.2f kg/secs\"%(G)\n", + "print\"\\n Mass flow rate of dry air ,Ga = %.2f kg/secs\"%(G/1.01)\n", + "print\"\\n the humidity of the outlet air H2 = %.4f kg/kg\"%(0.01+0.0508/2.05)\n", + "\n", + "#At a dry bulb temperature of 331.5 K, with a humidity of 0.0347 kg/kg, the wet-bulb temperatureof the outlet air, from Figure 13.4 in Volume 1, is 312 K, the same as the inlet, which is the case for adiabatic drying.\n", + "\n", + "#The dryer diameter is then found from the allowable mass velocity of the air and the entering air flow and for a mass velocity of 0.95 kg/m**2.secs, the cross sectional area of the dryer is\n", + "print\"\\n The cross sectional area of the dryer is %.2f m**2\"%(2.07/0.95)\n", + "print\"\\n The equivalent diameter of the dryer = %.2f m\"%(((4*2.18)/pi)**0.5)\n", + "\n", + "#With a constant drying temperature of 312 K:\n", + "#at the inlet\n", + "deltaT1 = 400-312# #inlet temperature is in deg K\n", + "#at the outlet\n", + "deltaT2 = 331.5-312# #outlet temperature is in deg K\n", + "Tlogmean = (deltaT1 - deltaT2)/log(deltaT1/deltaT2)\n", + "print\"\\n Logarithmic mean temperature difference = %.1f deg K\"%(Tlogmean)\n", + "#The length of the dryer, L is then: L = Q/(0.0625πDG**(0.67)*\u001bTm)\n", + "#where D (m) is the diameter\n", + "#and G(kg/m**2.secs) is the air mass velocity.\n", + "L = 146/(0.0625*(pi)*1.67*(0.95)**(0.67)*45.5)\n", + "print\"\\n The length of the dryer = %.1f m\"%(L)\n", + "print\"\\n Length/diameter ratio = %d \"%(10.1/1.67)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 950 Example 16.6" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f0dc1cf0f90>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " D = 4.54 m\n" + ] + } + ], + "source": [ + "from math import sqrt\n", + "%matplotlib inline\n", + "from matplotlib.pyplot import plot,title,show,xlabel,ylabel\n", + "\n", + "H = 0.036# #Humidity is in kg/kg at 811 K\n", + "#Taking R as 90 per cent and P as 101.3 kN/m2, then, for assumed values of Tb of 321, 333 and 344 K\n", + "#Pw = 13,20 and 32 kN/m2, respectively\n", + "#G = 27.8, 12.9 and 6.02 kg/s, respectively.\n", + " \n", + "#for Tb = 321, 333 and 344 K,\n", + "#G = 7.16, 7.8 and 7.54 kg/s respectively.\n", + "Tb = [321, 333, 344]\n", + "G1 = [27.8 ,12.9, 6.02]# #Temperature is in kelvins\n", + "G = [7.16 ,7.8, 7.54]# #flow rate in kg/secs\n", + "plot(Tb,G)\n", + "plot(Tb,G1)\n", + "title(\"Temperature vs Flow rate\")\n", + "xlabel(\"Temperature Tb(K)\")\n", + "ylabel(\"Flow rate G(kg/secs)\")\n", + "show()\n", + "\n", + "\n", + "#Plotting G against Tb for each equation on the same axis, then\n", + "Go = 8.3# #Gas flow rate is in kg/secs\n", + "Tb = 340# #temperature is in Kelvins\n", + "uf = 0.61# #velocity is in m/secs\n", + "\n", + "D = sqrt(340*(8.3+(1.58*1.26))/(278*0.61))\n", + "print\"\\n D = %.2f m\"%(D)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.9" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter17.ipynb b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter17.ipynb new file mode 100644 index 00000000..ae79ec17 --- /dev/null +++ b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter17.ipynb @@ -0,0 +1,405 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 17 - Adsorption" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 986 Example 17.1" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " Specific surface = 1.747*10**5 m**2/kg \n" + ] + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f21b64ee750>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " B = 47.00 \n", + "\n", + " Total surface area = 2.040 *10**5 m**2/kg\n", + "\n", + " V = 0.0*10**(-6)m**3/kg\n" + ] + } + ], + "source": [ + "%matplotlib inline\n", + "from matplotlib.pyplot import plot,title,show,xlabel,ylabel\n", + "\n", + "\n", + "#For 1 m3 of pellet with a voidage ε, then\n", + " #Number of particles = (1 − ε)/(π/6)(15 × 10**−9)**3\n", + " #Surface area per unit volume = (1 − ε)π(15 × 10−9)2/(π/6)(15 × 10**−9)**3\n", + " #= 6(1 − ε)/(15 × 10**(−9)) m**2/m**3\n", + " #1 m**3 of pellet contains 2290(1- ε)kg solid and hence:\n", + "specific_surface = 6/(15*10**(-9)*2290)\n", + "print\"\\n Specific surface = %.3f*10**5 m**2/kg \"%(specific_surface*10**(-5))\n", + "#(a) Using the BET isotherm\n", + " \n", + " #y = (P/Po)/V *10**(-6)\n", + "y = [1500, 2660, 3576 ,4283 ,4613, 4615]\n", + " #y1 = (P/Po)/V *(1-(P/Po)\n", + "y1 = [1666 ,3333 ,5109, 7138, 9226, 11358]\n", + " #x = P/Po\n", + "x = [0.1 ,0.2 ,0.3 ,0.4 ,0.5 ,0.6]\n", + "plot(x,y)\n", + "xlabel(\"P/Po\")\n", + "ylabel(\"(P/Po)/(V *10**(-6)) or (P/Po)/(V *(1-(P/Po))\")\n", + "plot(x,y1)\n", + "show()\n", + "\n", + " #intercept, 1/VB = 300, and slope, (B − 1)/VB = 13,902 \n", + "B = (13902/300)+1\n", + "print\"\\n B = %.2f \"%(B)\n", + "V = 1/(300*47.34)# \n", + " #Total surface area\n", + "S = ((70.4*10**(-6)*808*6.2*10**(26)*0.162*10**(-18)))/28\n", + "print\"\\n Total surface area = %.3f *10**5 m**2/kg\"%(S*10**(-5))\n", + " \n", + "#(b) Using the Langmuir form of the isotherm\n", + "\n", + " #Slope 1/V = 13,902\n", + "V = 1/13902\n", + "print\"\\n V = %.1f*10**(-6)m**3/kg\"%(V*10**6)\n", + " #which agrees with the value of the BET isotherm\n", + "#It may be noted that areas calculated from the isotherm are some 20 per cent greater than the geometric surface, probably due to the existence of some internal surface within the particles" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 1000 Example 17.2" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAX8AAAEPCAYAAACqZsSmAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XeYFFX28PHvIUkWQZKCEhUBydHEqAgogoq7CPpjVZRl\nSIK4oLii6KKr4gviIoriCriC7oqBJScbQRBEYIAZgiQRQSTnNDPn/aN6ZGChp2e6q6un+3yepx+6\nuqvqHko8c+fUrXtFVTHGGBNf8ngdgDHGmMiz5G+MMXHIkr8xxsQhS/7GGBOHLPkbY0wcsuRvjDFx\nyNXkLyIlROQzEVknIiki0szN9owxxgQnn8vnHwlMV9U/iEg+oIjL7RljjAmCuPWQl4hcCqxU1Squ\nNGCMMSbH3Cz7VAb2iMiHIrJCRN4XkcIutmeMMSZIbib/fEADYLSqNgCOAc+42J4xxpgguVnz3wHs\nUNXv/dufcV7yFxGbWMgYY3JAVSWU413r+avqr8DPInKN/6OWQPIF9ov61wsvvOB5DBanxWlxWowZ\nr3Bwe7RPH+BjESkAbAYedbk9Y4wxQXA1+atqEtDYzTaMMcZknz3hG4SEhASvQwiKxRleFmd45YY4\nc0OM4eLaOP+gGhdRL9s3xpjcSETQaL3ha4wxJnpZ8jfGmDhkyd8YY/ziqQxtyd8YY4ApG6bQZGwT\nTqed9jqUiHB7nL8xxkS1o6eP0n9Wf+ZumctH931EgbwFvA4pIqznb4yJW0t3LKX+mPqkpqeyKnEV\nN151o9chRYz1/I0xcSc1PZVXFr7C29+/zei7RnN/zfu9DiniLPkbY+LKpv2b6PJFF4oVKMbK7iu5\notgVXofkCSv7GGPigqoydsVYmn/QnM61OzPz/2bGbeIH6/kbY+LAnmN76Pbfbmw7uA3fwz5qlanl\ndUies56/MSamzfhxBvXG1OPaUtey9PGllvj9rOdvjIlJx88cZ+Ccgfx343/5uMPHJFRK8DqkqGI9\nf2NMzFmxawUN32vIgZMHSEpMssR/AdbzN8bEjLT0NF7/9nVGfDeCkW1G0vn6zl6HFLUs+RtjYsK2\ng9vo8kUX8ufJzw9//oGKl1b0OqSoZmUfY0yupqpMSJpA4/cbc++19zL3T3Mt8QfBev7GmFxr/4n9\nJE5NJGVPCnO7zKVuubpeh5RrWM/fGJMrzd0yl7rv1uXKYley/M/LLfFnk/X8jTG5ysnUkwyaO4jP\n1n3Gh/d8SMsqLb0OKVey5G+MyTWSfk3ioc8f4rrS15GUmETJQiW9DinXsrKPMSbqpWs6byx+g5Yf\ntWTgjQP59x/+bYk/RNbzN8ZEtZ8P/czDXz7M6bTTLHt8GZUvq+x1SDHBev7GmKj1ydpPaPheQ+6o\ncgcLHllgiT+MrOdvjIk6B08epNf0Xvyw8wdmPDSDhlc09DqkmGM9f2NMVPFt81H33bpcVvAyVnRf\nYYnfJdbzN8ZEhVOpp3j+6+f5aPVHjG0/lruq3+V1SDHN9eQvItuAw0AacEZVm7jdpjEmd0n+LZmH\nPn+ISiUqkZSYROkipb0OKeZFouevQIKq7o9AW8aYXCRd0xm1bBR/++ZvvHr7q3St3xUR8TqsuBCp\nso/91zTGnGPnkZ088uUjHD51mCWPLaFayWpehxRXInHDV4G5IrJcRLpFoD1jTJSbnDKZ+mPqc2PF\nG1nUdZElfg9Eoud/o6ruEpHSwBwRWa+qCyPQrjEmyhw+dZi+M/uyaPsipnSaQtMKTb0OKW65nvxV\ndZf/zz0i8gXQBPg9+Q8ZMuT3fRMSEkhISHA7JGOMB77d/i1dvuhCyyotWdl9JUULFPU6pFzD5/Ph\n8/nCek5R1bCe8JyTixQG8qrqEREpAswGXlTV2f7v1c32jTHeO512mpcWvMTYFWMZc/cY7qlxj9ch\n5XoigqqGdC816J6/iBQEVFVPZeP8ZYEv/Hfv8wEfZyR+Y0zs+/6X7+k6pSuVS1RmVeIqyhUt53VI\nxu+iPX8RyQPcC3QGbsC5OSw44/WXAB8DX4bSdbeevzGx6cSZEwzxDWFc0jjebP0mnWp3siGcYeR2\nz9+HU5t/A1iV0eMXkUuA+kB74EngllACMMbElsU/L6brV12pU7YOqxNXU7ZoWa9DMhcQqOd/SVYl\nnmD2yeJ46/kbEyOOnT7GX+f/lU+TP2XUnaO4v+b9XocUs1zt+WdO6v6btVcB6cAOVT12/j7GmPjl\n2+bjsSmP0bxCc9b2WEupwqW8Dslk4aLJX0SKAd2ATsDlwG6cmn9ZEdmHU/N/X1WPRiJQY0z0OXLq\nCE/PfZopG6bwTtt3aHdtO69DMkEK9ITvl8ARoJ2qVlHV5qraTFUrA3cDx4CvIhGkMSb6zNo0i9rv\n1OZ02mnW9lxriT+XcXWcf5aNW83fmFzn4MmDPDXrKeZtncd77d6jVdVWXocUd8JR8w9qbh8RuUdE\n/p//ZT/ejYlTUzdOpfbo2lyS7xLW9FhjiT8Xy7LnLyKvAo1xavyCcw9guaoOCrlx6/kbkyvsO76P\nvjP7smTHEj5o/wEJlRK8DimuhaPnH0zyXwPUU9U0/3ZenHH/14fSsP9clvyNiXKTUybTZ0YfHqj1\nAENvG0qRAkW8DinuRWp6BwVKAPv82yX8nxljYtjuo7vpPaM3a3av4bOOn3FDxRu8DsmEUTA1/78D\nK0RkvIiMB34AXnE3LGOMV1SViWsmUufdOlS9rCqrEldZ4o9BwZR9LgcK4NT9Ffg+Y5rmkBu3so8x\nUWXnkZ0kTk1k68Gt/LP9P2l8ZWOvQzIX4OpoHxFpJyJ7gDXAMmCvqk4JV+I3xkQPVeXDlR9S7916\n1C9Xn+Xdllvij3GBav6vADer6noRaQq8DrSITFjGmEjZfmg7f/7vn/nt2G/M6TKHuuXqeh2SiYBA\nNf9UVV0PoKpLgeKRCckYEwnpms67y9+l4XsNueXqW1j6+FJL/HEkUM+/tIj0xxnbf/62qupw16Mz\nxrhiy4EtPD7lcY6dOYbvYR+1ytTyOiQTYYF6/mOBYkBR/yvzdjH3QzPGhFu6pjPyu5E0eb8Jbau3\nZXHXxZb441Sgnv9GYLaq7o1UMMYY92zYu4HHpjxGHsnDkseWUL1Uda9DMh4K1PO/Cvi3iCwSkSEi\n0lRsHTZjcp3U9FSGfTuMmz68iU61O+F7xGeJ3wQ1zr840BJoDTQB1gMzgFmqujukxm2cvzGuWvvb\nWrp+1ZVilxRjbLuxVL6sstchmTCIyNw+F2i0FnAn0EpVQ5rSz5K/Me44k3aG1759jZFLR/LybS/T\nrUE3W0A9hria/EWkLPAsUA1YDfxdVQ+H0tgF2rDkb0yYrdy1kq5TulK+aHnG3D2GipdW9DokE2Zu\nz+c/ATgK/ANndM9boTRkjHHXqdRTDJ4/mNb/ak2/pv2Y9uA0S/zmogKN9imnqn/1v58pIisjEZAx\nJvuW/bKMrl91pVrJaiQlJlG+WHmvQzJRLlDyFxEpmfEeyJtpG1Xd72pkxpgsnThzghd8LzAhaQJv\ntnmTB2o9YLV9E5RAyb84zvTNmWVsK1DFlYiMMVlSVaZunEr/2f1pUL4Bq3uspkyRMl6HZXIRW8Dd\nmFwmZU8KT856ku2HtjOi9QjaVGvjdUgmwiK2gHumBoeE0pgxJuf2n9jPEzOeoMW4FrSt3pbViast\n8Zscy1byB+5xJQpjzEWlpqcy+vvRXPf2daSmp7Ku1zqeaPoE+fPm9zo0k4sFs4ZvSPwLvi8Hdqhq\nO7fbMyaWzN86n74z+1K6cGnmdJlDnbJ1vA7JxIjsJv9GOWijL5CCzQRqTNC2HNjCX2b/hVW/ruKN\nVm9wX437bBSPCatslX1UNQ1ARJ4PZn8RqQDchTMdtP3LNSYLR04d4dl5z9Lk/SY0vqIxKb1S6HBd\nB0v8JuyyW/PP0C3I/UYAA4D0HLZjTFxI13QmJE2gxts1+OXIL6zusZpBNw+iYL6CXodmYtRFyz4i\nciTAcYWyOrGI3A38pqorRSThYvsNGTLk9/cJCQkkJFx0V2Ni0nc7vqPvzL4AfN7xc5pWaOpxRCba\n+Hw+fD5fWM8ZaGK37UATVf31At/9rKoBJw0RkVeALkAqUBDnobHJqvqnTPvYOH8Tt345/AuD5g1i\n3tZ5vHr7qzxU5yHySE5/GTfxxO1x/h/hLOhyIZOyOrGqPquqFVW1MtAJmJ858RsTr06mnuSVha9Q\n9926VCxekQ29N9ClbhdL/CaiLlr2yTSp24W+G5iDtqyLb+KaqvL5us/5y5y/0KB8A5Z1W0aVy2yW\nFOONQGWfKqq6JeDBIlVVdXOOG7eyj4kTq3evpu/Mvuw7vo8327zJbZVv8zokk4u5vZjLp0ARYArO\nQ1q7cIZrlscZ798eOKKqnXLcuCV/E+P2Ht/L4PmD+Xz95wxpMYRuDbuRL4/rz1aaGOf6Mo4iUg2n\nXn8jcLX/45+ARcCkrH4zyLJxS/4mRp1JO8Po70czdOFQHqz9IC8kvEDJQiWzPtCYIHiyhm84WfI3\nsWjWpln0m9WPqy69ihGtR1CzdE2vQzIxJhzJP9A4fwGGqupfReRvqjo4lIaMiXUb923kqdlPsX7v\neka0HkHb6m3tyVwTtS46tszfJV8mIm/j1PyNMRdw6OQhBswewA0f3ECLq1uwtsda7r7mbkv8JqoF\n6vm/AJQEOgOpIlJPVV+MWGTGRLm09DQ+XPUhg78eTNvqbUnumUzZomW9DsuYoGR1w3ck8A6QqKr9\nwt641fxNLrXwp4X0ndmXwvkLM7LNSBpe0dDrkEwccXuoZ36glqquEpG6qpoUSkMXacOSv8lVth/a\nzsA5A1n882Jev+N1WzDdeMLt6R1+AXqLyO3A6lAaMSa3O37mOEN8Q6g/pj41Lq/B+t7r6VS7kyV+\nk2sFSv41cW70DgZ2iMhIEWkWmbCMiQ6qyidrP6HGqBqs37ueld1XMiRhCIXzF/Y6NGNCEtQ4fxG5\nAugIPACUAT5V1WdDbtzKPiaK/bDzB/rO7MvxM8cZ2WYkN199s9chGQNE+CEvESkGdAD6A+VVtUwo\nDfvPacnfRJ09x/bw7LxnmfrjVP526994tN6j5M2T1+uwjPmd2zV/RKSQiHQUkc+BTcBtwNPAFaE0\nakw0Sk1P5e1lb1NrdC2KFijK+l7rebzB45b4TUwKNM5/InAHsAD4GHhIVU9EKjBjIunb7d/Sa3ov\nShQswfyH51O7TG2vQzLGVYGmF5yJM77/cKSCMSbSfj36K0/PfZp5W+bxRqs3bOimiRuByj55gOMX\n+1JECojIo+EPyRj3nUk7w4glI6g9ujblipSzoZsGgHi6BRmo518U+F5E1gPfA7/izOdfDmc+/xrA\n+65HaEyY+bb56D29N1cUu4JFXRdR4/IaXodkPHDyJCQnw6pVzispCX76CbZtg3joA2Q1vYPgzOV/\nE2fX882Yz39xqEN1bLSPiaQdh3cwYM4AFv+8mBGtR3Bfjfuspx8n9uxxknvmRL9pE1SvDvXqOa+6\ndZ3X5Zd7HW3W3J7e4UFglqruC6WBgI1b8jcRcDrtNCOWjGDY4mH0aNSDQTcPsoe0YlR6OmzefDbJ\nZyT6I0fOJvmMRF+zJhQs6HXEOePqfP44Pf3/iEgBYC4wA1hm2drkJrM3z6bPjD5UL1md7x7/jmol\nq3kdkgmT48dh7dpzE/2aNVCq1Nkk362bk+grVYqPUk52ZPmQl4gUB1oCbYDGwHqcHwSzVHV3SI1b\nz9+45KeDP9F/dn9W7lrJyDYjaXdtO69DMiH49ddzyzarVjm1+Ro1zu3R16kDl13mdbTu82QZRxGp\nBdwJtFLVViE1bsnfhNnJ1JO8sfgN3vzuTfo27cuAGwdQMF8u/d0+DqWlwcaN/5voT58+N8nXq+ck\n/gIFvI7YGxFL/iJyHc4C7gr8pKrrQ2k003kt+ZuwmbZxGn1n9qVO2ToMbz2cSiUqeR2SCeDoUVi9\n+mxdftUqp4xTvrxTqsmc6CtUsLJNZm7f8K0MPAnchTO9806coZ7lgQrAVGCEqm7LceOW/E0YbN6/\nmX6z+rFh7wb+cec/aF2ttdchmfPs3AkrV56b6HfsgFq1zk30depA8eJeRxv93E7+/8YZx+9T1TPn\nfZcfuBV4XFU75rhxS/4mBMfPHOfVRa8y+vvRDLhhAP2a9eOSfJd4HVbcU4Uff4SFC+Gbb5w/Dx2C\nhg3PTfTXXgv5Ag05MRflSc0/nCz5m5xQVb5c/yVPznqSZhWa8UarN6hQvILXYcWttDRnlE3mZJ8/\nP9xyC9x8s/NnjRqQJ+A0kiY7IpL8/UM9ewC3+D/yAe+e/9tAjhq35G+yaeO+jfSZ0Ycdh3fwjzv/\nwW2Vb/M6pLhz+jQsX3420S9eDGXLOok+I9lffbXV6N0UqeT/Ac7zAONxav5dgFRVfTyUhv3ntuRv\ngnL09FFe/uZl3l/xPs/e/Cx9mvQhf978XocVF44ehe++O5vsv/8errnmbKK/6SYn+ZvIiVTyX62q\ndbL67CLHFsSZEvoSoADwlaoOyvS9JX8TkKryn5T/8NTsp0iolMDrLV+nfLHyXocV0/btg0WLzpZx\nkpOhfv2zZZwbboBLL/U6yvjm9hO+GVJFpJqqbvI3WhVIDebkqnpSRG5V1eMikg9YJCI3qeqiEGI2\ncSL5t2T6zOjDvhP7mNhhoi2j6JIdO5xEn5Hst2+HZs2cZD9sGDRpAoUKeR2lCbdgkv8AYL6IbPVv\nVwKCnspZVTOmhS4A5AX2ZydAE38OnzrMi74XmbB6Ai+0eIHERonky2PDQsLhQiNxDh8+W69/9FGn\nl2+jcGJfwP/EIlIaOAQ0xVm4HWCDqp4MtgERyQOsAKoC76hqSg5jNTFOVfl4zcc8Pfdp2lRtQ3LP\nZMoUCXmp6LiW1Uicp5+2kTjxKtAyjo8DrwCbgSrAn1X1q+w2oKrpQD0RuRSYJSIJqurL+H7IkCG/\n75uQkEBCQkJ2mzAxIOnXJHrP6M3xM8eZ3HEyzSo08zqkXCnQSJz27Z0yjo3EyX18Ph8+ny+s5wz0\nkFcykKCqe0SkCjBRVUP6P1JEBgMnVPUN/7bd8I1zB08eZPD8wfw75d+8lPCSLZieTTYSJz65fcP3\ntKruAVDVLSKS7UcnReRynGGhB0WkEM6C8C/mLFQTS9I1nXGrxvHsvGe5t8a9pPRMoVThUl6HFfWO\nHoVvvwWfz3mtXn12JM7AgTYSxwQvUPKvICJv4YztB7gy07aq6hNBnL88MN5f988DfKSq80KK2OR6\ny3cup/f03gBMe3AaDa9o6HFE0evIEWfY5YIFTrJfu9aZJiEhAV5+2RmVU9jWpTE5EKjs8wjOLJ6Z\nf7XI2FZVHR9y41b2iSsHTx7k2XnP8sX6L3jltld4uN7D5BG705jZ4cPnJvvkZGjUyEn2LVo4yd6G\nXRq3yz5XADNUdWUoDRijqnya/Cn9Z/Wn/bXtSemZwmWF4mDFjSAcOnRusk9JgcaNnWT/+uvQtGnu\nXWrQRLdAPf9OOKt31QOSgOnAbFU9ELbGrecf8zbv30zP6T3ZdWQXY+4eQ/OKzb0OyVOHDjk3ZjOS\n/bp1zkNUCQnOq0kTS/Yma5Ga3kGA+jg/CO7A+W1hDjBTVZeF1Lgl/5h1Ou00byx+g+FLhvP0jU/T\nr1m/uJyL5+BBJ9n7fE7C37DB6c23aHE22V9is1CbbPJqGcdLcX4ItFbVbiE1bsk/Ji38aSGJ0xKp\nXKIyo+4aFVcrah04cG6y37jRqdNnJPvGjS3Zm9C5vZjLNcAwoBqwGviLqv4SSmMXaMOSfwzZd3wf\nT899mpmbZjKyzUg6XNcBifGnifbvP5vsfT7YtAmaNz97g7Zx4/hdZ9a4x+3kvwhnGueFQDuguap2\nCKWxC7RhyT8GqCofrf6IgXMG0rFWR4beNpTil8TmWnz79zsPVGUk+y1bzk32jRpZsjfuczv5r1LV\nepm2V6pq/VAau0AblvxzuQ17N9BjWg8OnTrEmLvH0OiKRl6HFFb79p2b7LdudR6kyrhB27ChM1eO\nMZHk9lDPgiLSIKMtoJB/O2Oc/4pQGja528nUk7y66FVGLRvF4FsG06tJr5iYeVMVVqyATz6BWbPg\np5/OJvv33oMGDSzZm9gQqOfvw3mo6/ePMm+r6q0hN249/1xp/tb5JE5NpHaZ2rx151sxsX7uunUw\naZKT9NPToVMnaNfO6dnb9MYm2tgC7iaifjv2G0/NfopvfvqGUXeOot217bwOKSTbtjnJ/pNPYM8e\neOAB6NzZqdvH+H1qk8uFI/lf9Nl6EWkRRAAh9/5N9EvXdMauGEvt0bUpW6QsyT2Tc23i//VX+Mc/\nnFJO48bOD4CRI53Vq4YPdz6zxG/iQaBfaNuJyDBgLrAc2IXzw6Ic0AhoCXztf5kYlfxbMonTEjmT\ndoY5XeZQt1xdr0PKtgMH4PPPnbLODz845ZznnoM77rD6vYlfAcs+IlIMuAe4Ebja//FPwCKcxdiP\nhtS4lX2i1vEzxxn6zVDeX/E+Lya8SPeG3XPVPPvHjsGUKU7CX7AAWrZ0Sjpt29rEaCb3s5q/ccXM\nTTPpNb0Xja9ozIjWIyhfrLzXIQXl1CmYOdOp4c+Y4Yy/79wZ7r0XisfmYwcmTlnyN2G168gunpz1\nJMt+WcbotqNpU62N1yFlKTXVGX8/aRJ8+SXUru0k/Pvvh9KlvY7OGHdY8jdhka7pjFk+hud9z9Ot\nQTeeu+U5CueP3hVCVGHJEifh/+c/ULGiMzTzgQegQu4fdWpMltx+yAv/ClzNVHVxKI2Y6JX0axLd\np3YnX558+B72UatMLa9DuiBVSEpyEv6nnzqrV3Xu7MyrU72619EZk/sEM6XzOdM8hLVx6/l75ujp\nowzxDWFC0gReuf0VutbvGpWram3c6NTwJ02CkyedHn7nznD99TYk08Qv13v+fnNF5A/AZMvUseG/\nG/5Lnxl9uOXqW1jbcy1lipTxOqRz/Pyz07ufNAl27oSOHeGf/3SmRraEb0x4BNPzPwoUBtKAk/6P\nVVVDHj9hPf/I2nF4B0/MeIK1v63lnbbvcHuV270O6Xd79jj1+08+cdatve8+p4efkAB5c88IU2Mi\nwm74mqCkpqcyatkohn4zlN5NevPMTc9QMJ/3awUeOuSM0Jk0Cb77Du66y0n4rVvbtMjGBBKpsg8i\ncg9wC87EbgtU9b+hNGoiZ/nO5XSf2p3ilxTn267fcu3l13oaz4kTMHWqk/DnzYNbb4VHH4XJk6FI\nEU9DMyauBFP2eRVoDHyMM7NnJ2C5qg4KuXHr+bvm8KnDDJ4/mE+TP+X1O16nS50unq2qpQqLF8P4\n8fDZZ85MmZ07Q4cOUKKEJyEZk6tFquffFqinqmn+RscBq4CQk78JP1Xl83Wf029WP1pVaUVyz2RK\nFS7lSSzbt8OECc4rb154+GFYvdrG4hsTDYJJ/gqUAPb5t0tw7jz/JkpsO7iN3tN7s+XAFiZ2mMjN\nV98c8RiOHXMmURs/HlaudB68+ugjaNLERuoYE02CSf5/B1aIyNc4ZZ8WwDOuRmWy5XTaaUYsGcGw\nxcPo37w/nz/wOQXyRu6OaXo6LFoE48bBF1840yV37+7MnlnQ+/vKxpgLCGq0j4hcgVP3V+B7Vd0V\nlsat5h+y+Vvn02t6L6pcVoW32rxF1ZJVI9b21q1OSWf8eOeJ20cegYcegvK5Yx44Y3ItG+oZx3Ye\n2clTs59iyc9LGNlmJO2vbR+RG7pHjzo3bceNc8bjd+7s1PIbNLCyjjGR4upKXuEgIhVF5GsRSRaR\ntSLyhJvtxYMzaWcYvmQ4dd6pQ5USVUjplcI9Ne5xNfGnp8P8+U6Sr1DBKe088QTs2AFvveWM3rHE\nb0zu4mrPX0TKAeVUdZWIFAV+AO5V1XX+763nnw0Lf1pIr+m9KFu0LKPuHOX6mP1Nm5ySzoQJcNll\nTlnnwQehTHTNBmFM3HF1qKeITAcmAl/mdMUuVf0V+NX//qiIrAOuANbl5HzxavfR3QycO5D5W+cz\nvNVw/lDzD6719A8dcqZZGDcOfvzRSfZffQX1XJnazxjjlUBln/eAu4GtIvJvEblPRHI8hEREKgH1\ngaU5PUe8SUtP4+1lb1P7ndqUKVyGlJ4p/LHWH8Oe+NPSYM4c52bt1VfD9OkwcKBT1hkxwhK/MbHo\noj1/Vf0S+FJEigDtgIeBd/2/EUxS1dnBNuIv+XwG9D3/t4ghQ4b8/j4hIYGEhITsxB+zvtvxHT2n\n9aT4JcVdm2d/w4azZZ1y5Zya/siRcPnlYW/KGBMCn8+Hz+cL6zmzVfMXkbrAeOB6VQ1qrkURyQ9M\nBWao6pvnfWc1//PsPb6XQXMHMe3HaQy7YxgPXv9gWHv6Bw860yWPGwfbtsH//Z+T9GvXDlsTxhiX\nRWR6B/9N2444c/qUBz7F+S0gmAAF+ABIOT/xm3OlazpjV4xl8NeD6VSrE+t6rePSgpeG5dypqU5Z\nZ/x4Z4HzVq3gueec2TPzBTW1nzEm1ly05y8if8ZJ+DWAycAkYEl2uuoichPwDbCas1NCDFLVmf7v\nrecP/LDzB3pO70m+PPkYfddo6parG5bzJic7Cf9f/3LWuX3kEWe6hZIlw3J6Y4xH3O75N8OZ2mGe\nqqbn5OSqugiXnyXIzQ6cOMBz859j8rrJ/P32v/NwvYdDXkpx3z5nQZRx45xVsLp0caZOvu668MRs\njIkNgZJ/XaAUUFVEZqrqtsiEFPvSNZ0JSRMYNG8Q99W4j5ReKZQslPPuuKrzENY778DcuXDnnTB0\nKLRsaatgGWMuLOANXxGpDLQBWgMVgIXADJwFXU6F3Hgcln1W715Nz2k9OZ12mtFtR9PoikY5Ptep\nU04vf/hwp67fp4+zwLnNkW9MbIvo3D7+Mf434/wwaAHsUdW2ITUeR8n/8KnDPP/180xcM5Ghtw3l\nsfqPkTdPzrrle/fCu+/C6NFw/fXQv79zE9emWDAmPkRsGUcAVT0NzPO/EBFbkiMIqsqktZMYMGcA\nd1a7k5ReKVxeOGcD6devhzffdIZqdugAs2fbEE1jTM4ETP4i0gDojLN+byWcETs/4YzgmQjscDm+\nXC1lTwrVMpiSAAAOyElEQVS9pvfi4MmDfPbHz2hesXm2z5FRzx8+HJYvhx49nB8CZcu6ELAxJm4E\nGuo5HTgATAGWAbtwFnMpDzTBeeq3RCiln1gt+xw9fZSXFrzEh6s+5IUWL9CjUY9sl3jOr+c/+aQz\n/UKhQi4FbYzJNVyt+YtIWVXdnUUAZVT1txw3HmPJX1WZvG4y/Wf1J6FSAsPuGEbZotnrols93xiT\nFVdr/pkTv/8p34yVvJZlJPxQEn+s2bhvI31m9GHnkZ38q8O/uOXqW7J1vNXzjTGRlOUTRSLSEWcm\nzj/iTPOwTET+6HZgucXxM8d5bv5z3PDBDbSu2poVf14RdOJXdR7AatsWWrRwJldbvx4++MASvzHG\nXcGM9nkOaJzRyxeR0jgjfv7jZmDRTlWZsmEK/Wb1o+mVTUlKTOLK4lcGdWzmev6ZM05p57PPrJ5v\njImcYJK/AHsybe/zfxa3thzYwhMznmDzgc2MbTeW26vcHtRx59fzX3vNmVzN6vnGmEgLZiKZmcAs\nEXlERB4FpuM85Rt3Tqae5KUFL9Hk/SbcdNVNJCUmBZX416+HxESoXh22boVZs5xXmzaW+I0x3siy\n56+qA0SkA3CT/6MxqvqFu2FFnxk/zqDPjD7ULVeXFd1XcNWlVwXc//zx+YmJNj7fGBM9Aq3hew0w\nDKiGMyXzAFWNu4e6fj70M31n9mX17tWMumsUbaq1Cbi/1fONMblBoLLPP3FW4LofWAG8FZGIokRq\neirDlwyn/pj61C1bl7U91wZM/Hv3OjNpVq4MEyc69fzkZHj8cUv8xpjoE6jsU1RV3/e/Xy8iKyMR\nUDRY9ssyuk/tTslCJVn82GKuKXXNRfc9f3z+rFnOzVxjjIlmgZJ/Qf/cPuCM7ink3xZAVXWF69FF\n2KGTh/jr/L8yed1kht0xjIeuf+iC6+daPd8Yk9sFmt7Bx9mlF8Gf9DM2VPXWkBuPkukdVJXPUj7j\nyVlPclf1u3i15asXXFzlQvV8m2/HGBNpbs/tc6Wq/hLKybNsPAqS/9YDW+k1vRfbD23n3bvf5aar\nbvqffc4fn//kkzY+3xjjnXAk/0A3fN8XkaUi8qqIJIhI0HP/5wZn0s7w2qLXaPx+Y26+6mZWdF/x\nP4l/714YMMDG5xtjYk+gid3uEpFCQALQAXhDRH7GecBrpqpuj0yI4bf458V0n9qdCsUrsKzbMqpc\nVuWc7w8fhhEj4K23oGNHWLsWrgxu5gZjjMkVgl7GEUBEqgB34qzpW05Vm4TUeITLPgdOHOCZuc8w\n9cepjGg9gj/W/OM5N3RPnHAWQX/tNWca5SFDoGrViIVnjDFBcbXsI477RGSAiLQGUNUtqvq2qrbH\nWc83V1BVJq6ZSM3RNcmXJx8pPVPoWKvj74n/zBl47z245hpYuNCZafOjjyzxG2NiV6A6/migJrAY\n+JuINFXVlzK+VNVTbgcXDpv2b6LHtB7sObaHLx/4kqYVmv7+XXq6Mz7/+efh6qudJ3GbNg1wMmOM\niRGBRvskA3VUNU1ECgOLVLXBBXfOaeMuln1OpZ7i9W9fZ+TSkQy6aRB9m/UlXx7nZ50qTJ0Kzz0H\nBQvCK6/A7cFNzGmMMZ5zdSUv4LSqpgGo6nG50NNOUWrBtgUkTkukesnq/zMJm88Hzz7r3NR9+WVo\n395G7hhj4k+gnv8JYFOmj6oCm/3vVVXrhNx4mHv+e4/vZcCcAczdMpe32rzFvTXu/b2u//338Ne/\nwubN8NJL0KkT5M3emurGGBMV3O75XxfKiSNJVRm3ahzPzHuGB2s/SErPFIpdUgyAlBSnvLN0KQwe\nDI89BvnzexywMcZ4LFDy/ymrbrlk0XUXkX8CbYHfVNWV6c7W711P4tREjp4+yoyHZtCgvHNbYutW\nZ6jmjBkwcCB8/LFNw2CMMRkCPeHr8w/z/J8pLUXkWhF5GliQxfk/BAJPgJ9DJ1NP8vzXz3Pzhzdz\n/3X3s/TxpTQo34Bdu6BXL2jUCCpVgh9/hL/8xRK/McZkFqjn3wp4CHhbRGoDR3AmdysKrAU+BloG\nOrmqLhSRSmGJNJO5W+bSY1oP6paty6ruq7iy+JXs3w+vv+6M13/0UWeWzdKlw92yMcbEhkDTO5zC\nWdDlnyKSF7jc/9XejFFAkbb76G76z+7Pt9u/5e273qbtNW05etQZtTNihDOfflISVKzoRXTGGJN7\nBLOAO6qapqq7/a+IJ/50Tee9H97j+neup0KxCiT3TOb2q9oyciRUq+asmLVkidPrt8RvjDFZ83ym\nziFDhvz+PiEhgYSEhHO+X7N7DYnTEknXdOb+aS41S9Vh/Hh48UWoW9eZZbNu3cjGbIwxkeTz+fD5\nfGE9Z7YmdstRA07N/78XGu0TaLDQ8TPHeWnBS3yw8gOG3jqUx+p34/PJeRg8GMqXd57KveEGV0M3\nxpio5PY4/5CJyCSgBVDKPx3086r6YVbHTf9xOr2m96J5heasTlzDyoXlaNwI8uWDUaOgZUt7KtcY\nY0LhavJX1c7Z2X/nkZ30m9mPFbtWMObuMRTa2YqOd8G+fTB0KNx3nyV9Y4wJh6Bu+LotLT2NUctG\nUffdulxT6homNF/DiN6t+NOfoFs3WLPGGcljid8YY8LD8xu+K3etpPvU7hTMV5APb1nAhP9Xk38u\ncubh+eorKFDA6wiNMSb2eN7zb/NxG/5YOZGqC308endNGjZ0nsrt1csSvzHGuMXznn/7HWt59e+l\n6dHDSfolSngdkTHGxD7Pk38RSpOSAmXLeh2JMcbED9fH+QdsPMILuBtjTCxwdQF3Y4wxscuSvzHG\nxCFL/sYYE4cs+RtjTByy5G+MMXHIkr8xxsQhS/7GGBOHLPkbY0wcsuRvjDFxyJK/McbEIUv+xhgT\nhyz5G2NMHLLkb4wxcciSvzHGxCFL/sYYE4cs+RtjTByy5G+MMXHIkr8xxsQhS/7GGBOHLPkbY0wc\nsuRvjDFxyJK/McbEIVeTv4i0EZH1IvKjiDztZlvGGGOC51ryF5G8wCigDVAT6Cwi17nVnpt8Pp/X\nIQTF4gwvizO8ckOcuSHGcHGz598E2KSq21T1DPAJcI+L7bkmt/yDsDjDy+IMr9wQZ26IMVzcTP5X\nAj9n2t7h/8wYY4zH3Ez+6uK5jTHGhEBU3cnRItIMGKKqbfzbg4B0VX0t0z72A8IYY3JAVSWU491M\n/vmADcDtwE5gGdBZVde50qAxxpig5XPrxKqaKiK9gVlAXuADS/zGGBMdXOv5G2OMiV5ujvPP8gEv\nEXnL/32SiNTP9Pk2EVktIitFZJlbMQYTp4jUEJElInJSRJ7KzrFRFGc0Xc+H/P+9V4vItyJSJ9hj\noyTGaLqW9/jjXCkiP4jIbcEeG0VxRs31zLRfYxFJFZH7s3tsFMQZ/PVU1bC/cMo8m4BKQH5gFXDd\nefvcBUz3v28KfJfpu61ASTdiy0GcpYFGwFDgqewcGw1xRuH1bA5c6n/fJuO/e6SuZygxRuG1LJLp\n/fU4z9VE47/NC8YZbdcz037zganA/dF4PS8WZ3avp1s9/2Ae8GoPjAdQ1aVACREpm+n7kO5khytO\nVd2jqsuBM9k9NkrizBAt13OJqh7yby4FKgR7bBTEmCFaruWxTJtFgb3BHhslcWaIiuvp1wf4DNiT\ng2O9jjNDUNfTreQfzANegfZRYK6ILBeRbi7FmFUMbh6bXaG2Fa3X8zFgeg6PzalQYoQou5Yicq+I\nrANmAE9k59goiBOi6HqKyJU4ifadTLEFdWwYhRJnxvugrqdbo32CvYt8sZ9QN6nqThEpDcwRkfWq\nujBMsWUWyt3uSN4pD7WtG1V1VzRdTxG5FegK3JjdY0MUSowQZddSVb8EvhSRm4GPRKSGC7EEDCGo\nnc6LE7jW/1U0Xc83gWdUVUVEOJufou3/9YvFCdm4nm71/H8BKmbarojzEyzQPhX8n6GqO/1/7gG+\nwPlVyKs43Tg2u0JqS1V3+f+Miuvpv4H6PtBeVQ9k51iPY4y6a5kproU4nbmS/v2i8t9mRpwiUsq/\nHU3XsyHwiYhsBe4HRotI+yCPjYY4s3c9XbppkQ/YjHPTogBZ3/Btxtkbf4WBYv73RYBvgVZexZlp\n3yGce8M36GM9jjOqridwFc4NrWY5/Tt6GGO0XcuqnB2u3QDYHI3/NgPEGVXX87z9PwQ6ROP1DBBn\ntq5n2IPPFNSdOE/4bgIG+T/rDnTPtM8o//dJQAP/Z1X8f+FVwNqMY72KEyiHU4M7BBwAtgNFL3Zs\ntMUZhddzLLAPWOl/LQt0bDTFGIXXcqA/jpXAQqBxpK9lKHFG2/U8b9/fk2q0Xc+LxZnd62kPeRlj\nTByyZRyNMSYOWfI3xpg4ZMnfGGPikCV/Y4yJQ5b8jTEmDlnyN8aYOGTJ38QFEblERBaISBUROeGf\n8jZZRN7xPyKfsd90EblSRHz+aXVXicgiEbkmwLnLisj0i31vTDSy5G/ixUM409+m4cyaWB+oA9QE\n7gUQkUJAKVX9BWeOlQdVtR7O7LPDLnZiVd0NHBCRBu7+FYwJH0v+Jl50Br4i0yRYqpoGLAaq+T9K\nAL6+wLELM/YRkWEissa/YEbHTPtM8bdhTK5gyd/EPBHJC9RW1Y3nfV4YuB1Y7f/oTmBm5l38f7YD\nVotIB6Auzm8MLYFhIlLOv88y4BZ3/gbGhJ8lfxMPLgeOZNquKiIrgUXAVFWd5f/8Bv9n4CT+j/37\nNQcGADcBE9XxG7AAaOzffxfOZFzG5ApuzedvTLTJPOf5Zn/N/+yXIlWAn1U11f9RRs1/RaZ9zj9P\nxn4Zn9tEWSbXsJ6/iQd7cWY4DeROnFWmMjs/0S8EHhCRPP7FMm7BKfcAlAd+CjVQYyLFev4m5qlq\nmoisFZFrgVNcuIfeGuh9/qHnnecLEWmOMwW5AgP85R9wFs34JryRG+Mem9LZxAUReQQoq6qvXeC7\nS4CFqprjVaRE5GPgDVVdmfMojYkcK/uYeDERaJv5ga4MqnoqxMRfBihhid/kJtbzN8aYOGQ9f2OM\niUOW/I0xJg5Z8jfGmDhkyd8YY+KQJX9jjIlDlvyNMSYO/X+upVVCFtJM8gAAAABJRU5ErkJggg==\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f21b6435750>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " S = 323527 m**2/kg\n" + ] + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f21b6346e50>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "%matplotlib inline\n", + "from matplotlib.pyplot import plot,title,show,xlabel,ylabel\n", + "\n", + "\n", + "#(a) \n", + " #For n = 1,\n", + " #(P/P0)/V= (P/P0)V1+ 1/B2V1\n", + " #where V is the gas phase volume equivalent to the amount adsorbed\n", + " #x = (P/Po)\n", + "x = [0.05, 0.10 ,0.15 ,0.20 ,0.25 ,0.30, 0.35, 0.40]\n", + " #y = (P/Po)/V in kg/m**3\n", + "y = [0.76 ,1.35, 1.85, 2.27, 2.66, 2.94 ,3.21, 3.42]\n", + " #y1 = (P/Po)/(V*(1-P/Po)) in kg/m**3\n", + "y1 = [0.80, 1.50, 2.18 ,2.88, 3.55, 4.20 ,4.94, 5.73]\n", + "plot(x,y)\n", + "plot(x,y1)\n", + "xlabel(\"(P/Po)\")\n", + "ylabel(\"(P/Po)/V or (P/Po)/(V*(1-P/Po))\")\n", + "show()\n", + " \n", + " #The data, which are plotted as (P /P 0)/V against P/P0 may be seen to conform to a straight line only at low values of P/P0, suggestin g that more than one layer of molecules isadsorbed.\n", + "Slope = 12.56\n", + "V1 = 1/12.56\n", + " #The surface area occupied by this absorbed volume \n", + "S = V1*6.02*10**(26)*0.162*10**(-18)/24\n", + "print\"\\n S = %d m**2/kg\"%(S)\n", + " \n", + " \n", + "#(b) \n", + " #P/P0/V*(1 − P/P0)= 1/V1*B2+(B2−1)/(V1*B2)*(P /P 0)\n", + " #y2 = (P/Po)\n", + " #x2 = 1V**2\n", + "y2 = [0.05, 0.10, 0.15, 0.20, 0.25, 0.30 ,0.35, 0.40, 0.50 ,0.60 ,0.87, 0.80]\n", + "x2 = [230 ,183 ,152 ,129, 113, 96, 84 ,73 ,53 ,37 ,26 ,20]\n", + "\n", + "plot(x2,y2)\n", + "title(\"Harkins-Jura Plot\")\n", + "xlabel(\"1/V**2(kg**2/m**6)\")\n", + "ylabel(\"P/Po\")\n", + "show()\n", + " \n", + " \n", + " \n", + " " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 1015 Example 17.3" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " m=0.666667\n", + "\n", + " z = 3.18 m\n", + "\n", + " z = 0.97 m\n", + "\n", + " For case (c)\n", + "\n", + " z = 0.56 m\n", + "\n", + " saturation = 20.5 per cent\n" + ] + } + ], + "source": [ + "from math import pi\n", + "\n", + "#For case (a):\n", + " #Cs = 10C which represents a linear isotherm.\n", + " #All concentrations move at the same velocity.If z0=0 at t = 0 for a ll concentrations, the adsorption wave propagates as a step change from the inlet to the outlet concentration.\n", + " #f (Cs ) = 10\n", + " #u = 1×10**(−4)/[(π/4)*(0.15**(2)*ε)] m/s\n", + " #where ε is the intergranular voidage = 0.4\n", + "e = 0.4\n", + "m = e/(1-e)\n", + "print\"\\n m=%f\"%(m)\n", + "t = 3600# #time is in secs\n", + "z = ((4*10**(-4))/(pi*(0.15**2)*0.4))*(3600/(1+10*(0.6/0.4)))\n", + "print\"\\n z = %.2f m\"%(z)\n", + " \n", + " \n", + "#It may be noted that, when the adsorption wave begins to emerge from the bed, the bed is saturated in equilibrium with the inlet concentration.\n", + "#Hence: uAεtC0 = zA[εC0 + (1 − ε)Cs ]\n", + "\n", + "#For case (b):\n", + "#Cs = 3C0.3 which represents a favourable isotherm.\n", + "#As C increases, f(C) decreases and points of higher concentrations are predicted to move a greater distance in a given time than lower concentrations. It is not possible for points of higher concentrationsto overtake lower concentrations, and if z0=0 for all concentrations,the adsorption wave will propagate as a step change similar to case a.\n", + "\n", + "#Hence: z = ut/[1+(1/m)(Cs/Co)]\n", + "Co = 0.003# #in kmol/m**3\n", + "z = ((4*10**(-4)*5/((pi)*0.4*0.15**2)))*(3600/(1+(0.6/0.4)*(3/Co**0.7)))\n", + "print\"\\n z = %.2f m\"%(z)\n", + "\n", + "#For case (c):\n", + "#Cs = (10**(4))*(C**2) which represents an unfavourable isotherm.\n", + "#f(C)=2* 10**4* C.\n", + "#As C increases, f (C) increases such that, in a given time, z for lower concentrations is greater than for higher concentrations. Following the progress of the breakpoint concentration,C = 0.003 kmol/m**3,then:\n", + "#f(0.003) = 60\n", + "z1 = (4*10**(-4)/(pi*0.15**(2)*0.4))*(3600/(1+(0.60/0.40)*60))\n", + "print\"\\n For case (c)\"\n", + "print\"\\n z = %.2f m\"%(z1)\n", + "\n", + "\n", + "#At breakpoint,the bed is far from saturated and:\n", + "saturation = 100*((4*10**(-4)*3600)/(pi*(0.15**(2)*0.4)))/(0.55*(1+(0.6/0.4)*(9/0.03)))\n", + "print\"\\n saturation = %.1f per cent\"%(saturation)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 1031 Example 17.5" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " m = 0.89\n", + "\n", + " Gs = 4.16*10**(-3) kg/m**2.sec \n", + "\n", + " Gs1 = 4.10*10**(-3) kg/m**2.sec\n", + "\n", + " ta = 8.3 hrs\n", + "\n", + "I= 0.0\n", + "\n", + " I=0.000106\n", + "\n", + " I=0.000745\n", + "\n", + " I=0.001570\n", + "\n", + " I=0.002556\n", + "\n", + " I=0.003675\n", + "\n", + " I=0.004906\n", + "\n", + " I=0.005568\n", + "\n", + "time = 0.0 h\n", + "\n", + "time = 1.1 h\n", + "\n", + "time = 3.0 h\n", + "\n", + "time = 3.9 h\n", + "\n", + "time = 4.6 h\n", + "\n", + "time = 5.6 h\n", + "\n", + "time = 7.1 h\n", + "\n", + "time = 8.3 h\n" + ] + } + ], + "source": [ + "from sympy import symbols,solve\n", + "\n", + "#let x = [f(C)]mean\n", + "x = (8.4*10**(-2)*1266)/(2.67*10**(-3)*1.186)\n", + " \n", + " #e is porosity\n", + "e = 0.47\n", + "m = e/(1-e)\n", + "print\"\\n m = %.2f\"%(m)\n", + " \n", + "#The velocity uc with which the adsorption wave moves through the column may be obtained from equation 17.79\n", + "uc = 6.2*10**(-6)\n", + "density = 1266# #density is in kg/m**3\n", + "Gs = uc*(1-e)*density\n", + "print\"\\n Gs = %.2f*10**(-3) kg/m**2.sec \"%(Gs*10**3)\n", + " \n", + " \n", + "#From overall balance:\n", + " #We have given eq: Gs1(0.084-0)=0.129(0.00267)\n", + " #On solving above eq :\n", + "Gs1 = symbols('Gs1')\n", + "Gs2 = solve(Gs1*(0.084-0)-0.129*(0.00267))[0]\n", + "print\"\\n Gs1 = %.2f*10**(-3) kg/m**2.sec\"%(Gs2*1000)\n", + " \n", + "#Part(b)\n", + " #time ta for the adsorption zone to move its own length za is given by:\n", + "za = 0.185\n", + "ta =(za/uc)/3600\n", + "print\"\\n ta = %.1f hrs\"%(ta)# \n", + " \n", + " #The time taken for a point at a distance z into the zone to emerge is given by:\n", + " #t = (z1/za)ta\n", + "yr = [0.0001, 0.0002, 0.0006, 0.0010 ,0.0014 ,0.0018, 0.0022, 0.0024]\n", + "yre = [0.00005, 0.0001, 0.00032, 0.00062, 0.00100, 0.00133, 0.00204, 0.00230]\n", + "I=0\n", + "I1 = 0\n", + "i=0\n", + "print\"\\nI= %.1f\"%(I)\n", + "Y=[]\n", + "while i <=7:\n", + " y.append(1/(yr[(i)]-yre[(i)]))\n", + " if i>0:\n", + " I = I + (yr[(i)]-yr[(i-1)])*(y[(i)]+y[(i-1)])/2\n", + " print\"\\n I=%f\"%(I)\n", + " \n", + " i=i+1# \n", + "\n", + "z_za = [0, 0.137, 0.362, 0.473, 0.560 ,0.674, 0.852, 1.000]\n", + "t=[]\n", + "for zza in z_za:t.append((zza)*ta)\n", + "j=0\n", + "while j<=7:\n", + " print\"\\ntime = %.1f h\"%(t[(j)])\n", + " j=j+1\n" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.9" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter18.ipynb b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter18.ipynb new file mode 100644 index 00000000..a7a02f4c --- /dev/null +++ b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter18.ipynb @@ -0,0 +1,173 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 18 - Ion Exchange" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 1062 Example 18.1" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "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\nrkJggg==\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f64d57eabd0>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " Slope = -0.011\n", + "\n", + " t(min) Cs(kg/kg) \n", + "\n", + " equation(i) equation(ii) \n", + "\n", + " 4.000 0.048 0.026 \n", + "\n", + " 20.000 0.033 0.056 \n", + "\n", + " 60.000 -0.021 0.089 \n" + ] + } + ], + "source": [ + "%matplotlib inline\n", + "from matplotlib.pyplot import plot,title,xlabel,ylabel,show\n", + "from math import pi,exp\n", + "\n", + "Cse=0.132# #in kg/kg\n", + "Cs = [0.091, 0.097 ,0.105 ,0.113 ,0.125 ,0.128, 0.132]\n", + "C=[];C1=[];C2=[]\n", + "for cc in Cs:\n", + " C.append(cc/Cse)\n", + "for cc in C:C1.append(1-cc)\n", + "for cc in C:C2.append(1-cc**2)\n", + "t = [2, 4 ,10 ,20 ,40 ,60 ,120]\n", + "\n", + "\n", + "plot(t,C1,t,C2)\n", + "title('1-(Cs/Cs* vs t(min)')\n", + "xlabel(\"1-(Cs/Cs*)\")\n", + "ylabel('t(min)')\n", + "show()\n", + "#From the plot π**2Dr/ri**2 = 0.043\n", + "#For a pellet of twice the radius, that is r = 2ri\n", + "Slope = -0.043/4\n", + "print\"\\n Slope = %.3f\"%(Slope)\n", + "\n", + "\n", + "\n", + "#Thus, when the radius = 2ri\n", + "def equation1(t):\n", + " x = 1-(6/(pi)**2)*exp(-Slope*t)\n", + " return x\n", + "\n", + "#CS/CS*=[1 − exp(−κDR/tri**2)]**0.5\n", + "#κDR/ri**2 = 0.04\n", + "#For a pellet twice the size\n", + "\n", + "def equation2(t):\n", + " \n", + " x1 = (1-exp(-0.01*t))**0.5\n", + " return x1\n", + "\n", + "print\"\\n t(min) Cs(kg/kg) \"\n", + "print\"\\n equation(i) equation(ii) \"\n", + "t = [4 ,20, 60]# #t is in min\n", + "i=0\n", + "while i<=2:\n", + " print\"\\n %.3f %.3f %.3f \"%(t[(i)],Cse*equation1(t[(i)]),Cse*equation2(t[(i)]))\n", + " i=i+1\n", + " \n", + " \n", + " " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 1072 Example 18.2" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " Concentration of NaNO3 is 0.024 kg/m**3\n", + "\n", + " p = 20 percent\n" + ] + } + ], + "source": [ + "from sympy import symbols,solve\n", + "\n", + "c_NaNO3 = 2.0# #per cent by mass\n", + "print\"\\n Concentration of NaNO3 is %.3f kg/m**3\"%((c_NaNO3/85)*(103/100))\n", + " \n", + "#HNO3 (Molecular weight = 63 kg/kmol)\n", + "#Concentration = p per cent\n", + "#Concentration = (10p/63)(1030/1000)= 0.163p kg/m3\n", + "#In the solution: xNa+ = 0.242/(0.242 + 0.163p)\n", + "#For univalent ion exchange\n", + "#yNa+/(1 − yNa+ ) = KNa+H + [xNa+ /(1 − xNa+)]\n", + "\n", + "yNa = 0.1\n", + "K_NaH = 2/1.3\n", + "p = symbols('p')\n", + "p1 = solve((0.1/0.9)*(0.163*p*(0.242+0.163*p))-1.5*(0.242*(0.242+0.163*p)))\n", + "print\"\\n p = %d percent\"%(p1[1])" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.9" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter2.ipynb b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter2.ipynb new file mode 100644 index 00000000..dbf7cfb8 --- /dev/null +++ b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter2.ipynb @@ -0,0 +1,189 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 2 - Particle Size Reduction and Enlargement" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 101 Example 2.1" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " The energy required in crushing the materials from average particle size of 75mm to 25mm by Rettingers law is 4.333 kj/kg\n", + "\n", + "The energy required for crushing the material from average particle size of by Kicks law 75mm to 25mm is 8.874 kj/kg \n", + "\n", + "\n", + " The size range required is that for coarse crushing and Kicks law more closely relates the energy required for plastic deformation before fracture occurs so the energy calculated as that by Kicks law will be taken as the more reliable result\n", + "\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import log\n", + "#Computing energy required in particle size reduction by Rittinger's law\n", + "#energy required in crusing is given by E =Kr.fc((1/L2)-(1/L1))\n", + "#Given : Energy required in crushing particles from 50mm to 10mm is 13.0kw/(kg/sec).\n", + "\n", + "Cr=13.0*(50/4)##Cr = Kr*fc\n", + "\n", + "#Energy required to crush the particles from 75mm to 25mm\n", + "E = Cr*((1/25)-(1/75))#\n", + "print\"\\n The energy required in crushing the materials from average particle size of 75mm to 25mm by Rettingers law is %.3f kj/kg\"%(E)\n", + "\n", + "#Computing the energy required for crushing by Kick's law\n", + "#E = (Kk*fc)*ln(L1/L2) by Kick's law\n", + "\n", + "Ck = (13.0)/log(50/10)##Ck = Kk*fc \n", + "\n", + "#Energy required to crush the material from 75mm to 25mm\n", + "Ek = Ck*log(75/25)#\n", + "print\"\\nThe energy required for crushing the material from average particle size of by Kicks law 75mm to 25mm is %.3f kj/kg \\n\"%(Ek)#\n", + "print\"\\n The size range required is that for coarse crushing and Kicks law more closely relates the energy required for plastic deformation before fracture occurs so the energy calculated as that by Kicks law will be taken as the more reliable result\\n\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 116 Example 2.2" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "The maximum size of the particles which should be fed to the rollers : 25 mm\n", + "\n", + "The cross sectional area for flow is 0.005 m**2\n", + "\n", + "The volumetric flow rate is 0.01 m**3/sec\n", + "\n", + "The actual throughput is 3 kg/sec\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import pi,cos\n", + "\n", + "#Calculating the maximum size of the particle that can be fed to the rollers.\n", + "#Given angle of nip = 31degree\n", + "#Given diameter of the crushimg rolls = 1m\n", + "#Distance between the crushing rolls is 12.5mm\n", + "r1 = 0.5##size of crushing rolls is in meters\n", + "b = 0.00625##Distance between the crushing rolls is 0.0125mm\n", + "r2 = (r1 + b)/(cos((pi/180)*15.5))-0.5#\n", + "print\"\\nThe maximum size of the particles which should be fed to the rollers : %d mm\"%(r2*10**3)#\n", + "\n", + "#Calculating the throughput at 2.0 Hz when the actual capacity of the machine is 12%.\n", + "#Working face of the rolls are 0.4m long\n", + "#bulk density of the feed is 2500kg/m**3\n", + "print\"\\nThe cross sectional area for flow is %.3f m**2\"%(0.0125*0.4)#\n", + "print\"\\nThe volumetric flow rate is %.2f m**3/sec\"%(2.0*0.005)#\n", + "print\"\\nThe actual throughput is %d kg/sec\"%(0.010*12*2500/100)#" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 129 Example 2.3" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "The critical speed of the rotation is 4.04 rad/sec\n", + "\n", + "The critical frequency of the rotation is 0.643 Hz\n", + "\n", + "The optimum frequency of the rotation is 0.39 Hz\n", + "\n", + "Given frequecy of the rotation is 0.80Hz\n", + "\n", + "The frequency of the rotation should be halved\n", + "\n", + "Therefore the optimal frequency is half the critical frequency\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt\n", + "#Given diameter of the ball mill is 1.2meters\n", + "#Speed of rotation is 0.80Hz\n", + "\n", + "#for small particles effective radius is 0.6meters\n", + "#critical speed of the rotation\n", + "g=9.80# #acceleration due to gravity is in m**2/sec.\n", + "r=0.6# #effective radius of rotation is in meters.\n", + "w = sqrt(g/r)#\n", + "print\"\\nThe critical speed of the rotation is %.2f rad/sec\"%(w)#\n", + "f=w/(2*pi)# #f is the frequency of the rotation and is in Hz\n", + "print\"\\nThe critical frequency of the rotation is %.3f Hz\\n\"%(f)#\n", + "optimum_frequency = 0.6*f#\n", + "print\"The optimum frequency of the rotation is %.2f Hz\"%(optimum_frequency)#\n", + "print\"\\nGiven frequecy of the rotation is 0.80Hz\\n\"\n", + "print\"The frequency of the rotation should be halved\\n\"\n", + "print\"Therefore the optimal frequency is half the critical frequency\"" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.9" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter3.ipynb b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter3.ipynb new file mode 100644 index 00000000..83703341 --- /dev/null +++ b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter3.ipynb @@ -0,0 +1,350 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 3 - MOTION OF PARTICLES IN A FLUID" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 159 Example 3.1" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " The value of (Ro/pu**2)/Re**2 is 24.197 \n", + "\n", + "\n", + " The terminal velocity of the steel ball is 0.051 m/sec or 51 mm/sec\n" + ] + } + ], + "source": [ + "d = 0.00040# #Diameter of the particle in m\n", + "p1 = 820# #Density of the fluid in kg/m**3\n", + "meu = 0.01# #Viscosity of the fluid in N s/m**2\n", + "p2 = 7870# #Density of steel in kg/m**3\n", + "g = 9.81# #Acceleartion due to gravity in m/sec**2\n", + "#Computation of terminal velocity of a spherical particle \n", + "def galileo_number():\n", + "\n", + " x = (2*d**3*(p2-p1)*p1*g)/(3*(meu)**2)# #x = (Ro/pu**2)*Re**2\n", + " return x\n", + "\n", + "x = galileo_number()#\n", + "print\"\\n The value of (Ro/pu**2)/Re**2 is %.3f \\n\"%(x)#\n", + "\n", + "\n", + "#From table 3.4 log(x) corresponds to log(Re)=0.222\n", + "Re = 1.667#\n", + "def teminal_velocity():\n", + " u=(Re*meu)/(p1*d)#\n", + " return u\n", + "\n", + "u = teminal_velocity()#\n", + "print\"\\n The terminal velocity of the steel ball is %.3f m/sec or %.0f mm/sec\"%(u,u*1000)#" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 159 Example 3.2" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " The maximum permissible value of Re is 0.500 \n", + "\n", + "maximum particle size of galena which will be carried away by water is 37.6 um\n", + "\n", + "maximum particle size of limestone which will be carried away by water is 73.5 um\n", + "\n", + "\n", + "In the overflow:\n", + "\n", + "Amount of galena is 8.600 g\n", + "\n", + "Amount of limestone is 59.200 g\n", + "\n", + "concentration of galena is 12.7 per cent\n", + "\n", + "\\concentration of galena is 87.316 per cent\n", + "\n", + "\n", + "In the underflow:\n", + "\n", + "concentration of galena is 35.4 percent\n", + "\n", + "concentration of limestone is 64.6 per cent\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt\n", + "u_water = 5*10**(-3)# #The flow velocity of the water in m/sec\n", + "p_galena = 7500# #The density of galena is in kg/m**3\n", + "p_limestone = 2700# #The density of limestone is in kg/m**3\n", + "viscosity = 0.001# #The viscosity of water in N s/m**2\n", + "\n", + "#calculating maximum value of reynold's number considering 5mm particle size\n", + "Re_max = (u_water*1000*0.0001)/(viscosity)#\n", + "print\"\\n The maximum permissible value of Re is %.3f \"%(Re_max)#\n", + "\n", + "#maximum particle size of galena which will be carried away by water\n", + "d = sqrt((u_water*(18*viscosity))/((7500-1000)*9.81))#\n", + "print\"\\nmaximum particle size of galena which will be carried away by water is %.1f um\"%(d*10**(6))#\n", + "\n", + "#maximum particle size of limestone which will be carried away by water\n", + "d1 = sqrt((u_water*(18*viscosity))/((2700-1000)*9.81))#\n", + "print\"\\nmaximum particle size of limestone which will be carried away by water is %.1f um\"%(d1*10**(6))#\n", + "\n", + "\n", + "#From the given data 43% galena and 74% limestone will be removed .\n", + "#Given that in the feed there is 20% galena and 80% limestone\n", + "#Assuming 100g feed\n", + "print\"\\n\\nIn the overflow:\"\n", + "print\"\\nAmount of galena is %.3f g\"%((20*0.43))# \n", + "print\"\\nAmount of limestone is %.3f g\"%((80*0.74))#\n", + "print\"\\nconcentration of galena is %.1f per cent\"%((20*0.43*100)/(20*0.43+80*0.74))#\n", + "print\"\\n\\concentration of galena is %.3f per cent\"%((80*0.74*100)/(20*0.43+80*0.74))#\n", + "print\"\\n\\nIn the underflow:\"\n", + "print\"\\nconcentration of galena is %.1f percent\"%((20*(1-0.43)*100)/(20*(1-0.43)+80*0.26))\n", + "print\"\\nconcentration of limestone is %.1f per cent\"%((80*0.26*100)/(20*0.57+80*0.26))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 167 Example 3.3" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " smallest particles \t\t\t largest particles\n", + "\n", + "A: 0.000 m**2 \t\t\t\t 0.001 m**2 \n", + "\n", + "dp: 0.003 m \t\t\t\t\t 0.028 m\n", + "\n", + "dp**3:2.111505*10**(-8)m**3\t\t\t2.112 *10**(-5)m**3\n", + "\n", + "v: 6.018 *10**9m**3 \t\t\t\t6.018 *10**7m**3\n", + "\n", + "k: 0.285 \t\t\t\t\t0.029 \n", + "\n", + "(Ro/pu**2)Reo**2 is 1338 for the smallest particles and 133823 for the largest particles\n", + "\n", + "Terminal velocity for the smallest particle is 0.154 m/sec\n", + "\n", + "Terminal velocity for the largest particle is 0.160 m/sec\n", + "\n", + "\n", + " Thus it is seen that all the particles settle at approximately the same velocity\n" + ] + } + ], + "source": [ + "from math import pi,sqrt\n", + "from __future__ import division\n", + "min_area =6*10**(-6)# #minimum area of mica plates in m**2\n", + "max_area =6*10**(-4)# #maximum area of mica plates in m**2\n", + "p_oil = 820# #density of the oil in kg/m**3\n", + "Viscosity = 0.01# #Viscosity is in N s/m**2\n", + "p_mica = 3000# #Density of mica in kg/m**3\n", + "\n", + "print\"\\n smallest particles \\t\\t\\t largest particles\"\n", + "print\"\\nA: %.3f m**2 \\t\\t\\t\\t %.3f m**2 \"%(min_area,max_area)#\n", + "print\"\\ndp: %.3f m \\t\\t\\t\\t\\t %.3f m\"%(sqrt(4*min_area/(pi)),sqrt(4*max_area/(pi)))#\n", + "print\"\\ndp**3:%f*10**(-8)m**3\\t\\t\\t%.3f *10**(-5)m**3\"%(sqrt(4*min_area/(pi))**(3)*10**(8),sqrt(4*max_area/(pi))**(3)*10**5)#\n", + "print\"\\nv: %.3f *10**9m**3 \\t\\t\\t\\t%.3f *10**7m**3\"%(0.285*sqrt(4*min_area/(pi))**(3)*10**(9),sqrt(4*max_area/(pi))**(3)*(10**7)*0.0285)#\n", + "print\"\\nk: %.3f \\t\\t\\t\\t\\t%.3f \"%(0.285,0.0285)#\n", + "\n", + "x1 = (4*0.285/(pi*0.01**2))*(3000-820)*(820*2.103*10**(-8)*9.81)#\n", + "x2 = (4*0.0285/(pi*0.01**2))*(3000-820)*(820*2.103*10**(-5)*9.81)#\n", + "print\"\\n(Ro/pu**2)Reo**2 is %d for the smallest particles and %d for the largest particles\"%(x1,x2)#\n", + "#From table 3.4 Re for smallest particle is 34.9 and that for the largest particle is 361\n", + "u1 = 34.9*0.01/(820*2.76*10**(-3))#\n", + "print\"\\nTerminal velocity for the smallest particle is %.3f m/sec\"%(u1)#\n", + "u2 = 361*0.01/(820*2.76*10**(-2))#\n", + "print\"\\nTerminal velocity for the largest particle is %.3f m/sec\"%(u2)#\n", + "print\"\\n\\n Thus it is seen that all the particles settle at approximately the same velocity\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 181 Example 3.4" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "Reynold no. is 28800\n", + "\n", + "Particle velocity is 0.083 m/sec\n", + "\n", + "\n", + "The distance moved with speed less than 0.083m/sec is -0.101m\n", + "\n", + " The time taken by particle to move this distance is 0.115sec\n", + "\n", + "The distance moved by the particle relative to the walls of the plant 0.239m\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import log,cos,sin\n", + "v_particle = 6# #velocity of the particle in m/sec\n", + "v_water = 1.2# #veloicity of the water in m/sec\n", + "v_rel = v_particle - v_water##relative velocity of particles relative to the fluid in m/sec\n", + "Re1 = 6*10**(-3)*v_rel*1000/(1*10**(-3))##Re1 is the reynold's no.\n", + "print\"\\nReynold no. is %d\"%(Re1)#\n", + "\n", + "#When the particle has been retarded to a velocity such that Re=500\n", + "ydot = (v_rel*500)/Re1#\n", + "print\"\\nParticle velocity is %.3f m/sec\\n\"%(ydot)#\n", + "c = 0.33/(6*10**(-3))*(1000/2500)#\n", + "f = sqrt((3*6*10**(-3)*(2500-1000)*9.81)/1000)#\n", + "def Fa(t):\n", + " y = (-1/22)*(log(cos(0.517*22*t) + 4.8/0.517*sin(0.517*22*t)))#\n", + " return y\n", + " \n", + "def deriv(t) :\n", + " yd= -0.083+(0.517*(9.28*cos(11.37*t) - sin(11.37*t))/(cos(11.37*t) + 9.28*sin(11.37*t)))#\n", + " return yd\n", + "def double_deriv(t):\n", + " ydd = -0.517*(11.37)**2*(9.28*cos(11.37*t) - sin(11.37*t))/(cos(11.37*t) + 9.28*sin(11.37*t))#\n", + " return ydd\n", + "\n", + "told = 0#\n", + "while 1:\n", + " tnew = told - deriv(told)/double_deriv(told)#\n", + " if (tnew == told) :\n", + " y = Fa(told)#\n", + " d = y#\n", + " print\"\\nThe distance moved with speed less than 0.083m/sec is %.3fm\"%(d)#\n", + " t=told#\n", + " print\"\\n The time taken by particle to move this distance is %.3fsec\"%(t)#\n", + " break#\n", + " \n", + " told = tnew#\n", + "\n", + "\n", + "\n", + "print\"\\nThe distance moved by the particle relative to the walls of the plant %.3fm\"%(1.2*t - d)#" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 183 Example 3.5" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " By trial and error the solution for d is 0.88 mm\n", + "\n", + " The rate of dissolution is -8440340.480 \n", + "\n", + " The rate of falling of the particle is -0.047 m/sec\n" + ] + } + ], + "source": [ + "#rate of dissolution of salt\n", + "def dissolution(d):\n", + " x = (3*10**(-6))-(2*10**(-4)*3.406*10**(5)*d**2)#\n", + " return x\n", + "\n", + "\n", + "#rate of falling of the particle in stokes law region\n", + "def rate_h(d):\n", + " y = 3.406*d**(2)/(-3*10**(-6)-68.1*d**2)##y is in m/sec\n", + " return y\n", + "print\"\\n By trial and error the solution for d is 0.88 mm\"\n", + "print\"\\n The rate of dissolution is %.3f \"%(dissolution(8.8*10*(-4)))#\n", + "print\"\\n The rate of falling of the particle is %.3f m/sec\"%(rate_h(8.8*10**(-4)))#" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.9" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter4.ipynb b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter4.ipynb new file mode 100644 index 00000000..27df1987 --- /dev/null +++ b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter4.ipynb @@ -0,0 +1,86 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 4 - Flow of Fluids through Granular Beds and Packed Columns" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 231 Example 4.1" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " The modified reynolds no. is 127\n", + "\n", + " The value of R1/(pu1**2) is 0.323 \n", + "\n", + " The value of Pc is -7797N/m**2\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import pi\n", + "from sympy import symbols,solve\n", + "#Calculating modified reynold's no.\n", + "a = 800# #it is in m**2/m**3\n", + "Product_rate = 0.5# #it is in g/sec\n", + "Reflux_ratio = 8# \n", + "Vapour_rate = 4.5# #it is in g/sec\n", + "G = (4.5*10**(-3))/((pi/4)*(0.1**2))## units are in kg/m**2.sec\n", + "meu = 0.02*10**(-3)# #units are in Ns/m**2\n", + "e = 0.72# \n", + "\n", + "Re1 = G/(800*0.28*0.02*10**(-3))#\n", + "print\"\\n The modified reynolds no. is %d\"%(Re1)#\n", + "\n", + "x = 4.17/Re1 + 0.29# #x = R1/(pu1**2)\n", + "print\"\\n The value of R1/(pu1**2) is %.3f \"%(x)#\n", + "\n", + "l = 16*0.15# #in meters\n", + "#Solving the integral integral of(pdP)from Pc toPs =(R1/pu**2)*S*(1-e)*G**2*l/e**3\n", + "\n", + "Pc = symbols('Pc')\n", + "y = solve(151.3-(4.73*10**(-5)*(8000**2-Pc**2)))\n", + "print\"\\n The value of Pc is %dN/m**2\"%(y[0])#" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.9" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter5.ipynb b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter5.ipynb new file mode 100644 index 00000000..fa91a745 --- /dev/null +++ b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter5.ipynb @@ -0,0 +1,300 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 5 - Sedimentation" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 264 Example 5.1" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " concentration(Y) (kg water/kg solids):\n", + "\n", + "5.0\n", + "\n", + "4.2\n", + "\n", + "3.7\n", + "\n", + "3.1\n", + "\n", + "2.5\n", + "\n", + "\n", + " water to overflow (Y-U) (kg water/kg solids):\n", + "\n", + "\n", + " 3.5\n", + "\n", + "\n", + " 2.7\n", + "\n", + "\n", + " 2.2\n", + "\n", + "\n", + " 1.6\n", + "\n", + "\n", + " 1.0\n", + "\n", + "\n", + " sedimentation rate uc (m/sec):\n", + "\n", + " 0.000200 \n", + "\n", + " 0.000120 \n", + "\n", + " 0.000094 \n", + "\n", + " 0.000070 \n", + "\n", + " 0.000050 \n", + "\n", + " \n", + "\n", + "(Y-U)/Uc (s/m):\n", + "\n", + "\n", + " 17500\n", + "\n", + "\n", + " 22500\n", + "\n", + "\n", + " 23400\n", + "\n", + "\n", + " 22900\n", + "\n", + "\n", + " 20000\n", + "\n", + "\n", + "Maximum value of (Y-U)/Uc = 23400s/m\n", + "\n", + " The required area of the thickener is :31.12m**2\n", + "\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "#Basis 1 kg of solids\n", + "feed_rate_solid = 1.33# #Mass rate of feed of solids in kg/sec\n", + "U = 1.5# #Mass rate of solids in the underflow in kg/sec\n", + "Y = [5.0,4.2,3.7,3.1,2.5]#\n", + "print\"\\n concentration(Y) (kg water/kg solids):\\n\"\n", + "for y in Y:\n", + " print\"%.1f\\n\"%(y)\n", + "print\"\\n water to overflow (Y-U) (kg water/kg solids):\\n\"\n", + "O=[]\n", + "for y in Y:\n", + " O.append(y - 1.5)##Amount of water to overflow in kg water/kg solids\n", + "for o in O:\n", + " print\"\\n %.1f\\n\"%(o)\n", + "Uc = [2.00*10**(-4),1.20*10**(-4), 0.94*10**(-4), 0.70*10**(-4), 0.50*10**(-4)]\n", + "print\"\\n sedimentation rate uc (m/sec):\\n\"\n", + "for uc in Uc:\n", + " print\" %f \\n\"%(uc)#\n", + "X =[1.75*10**4, 2.25*10**4, 2.34*10**4, 2.29*10**4, 2.00*10**4]##X = (Y-U)/Uc\n", + "print\" \\n\\n(Y-U)/Uc (s/m):\\n\"\n", + "for x in X:\n", + " print\"\\n %d\\n\"%(x)#\n", + "z = max(X)# #prints the maximum value of X\n", + "print\"\\nMaximum value of (Y-U)/Uc = %ds/m\"%(z)#\n", + "\n", + "#Calculating the require darea of the thickener\n", + "A = z*1.33/1000# #1.33 is the mass feed rate of solids in kg/sec\n", + "#1000 is the density of water in kg/m**3\n", + "print\"\\n The required area of the thickener is :%.2fm**2\\n\"%(A)#" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 265 Example 5.2" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "H(mm)\n", + "900 \t800 \t700 \t600 \t500 \t400 \t300 \t260 \t250 \t220 \t200 \t180 \t\n", + "\n", + "c(kg/m**3):\n", + "\n", + "200 \t225 \t257 \t300 \t360 \t450 \t600 \t692 \t720 \t818 \t900 \t1000 \t\n", + "\n", + "Sedimentation flux(kg.s/m**2):\n", + "\n", + "4.1667 \t3.6111 \t3.0556 \t2.5000 \t1.9444 \t1.3889 \t0.8333 \t0.6111 \t0.5556 \t0.3889 \t0.2778 \t0.1667 \t\n", + "uc/(1/c-1/1200)\n", + "kg.sec/m**2:\n", + "\n", + "0.0536 \t0.0497 \t0.0469 \t0.0440 \t0.0420 \t0.0384 \t0.0360 \t0.0330 \t0.0333 \t0.0343 \t0.0360 \t0.0400 \t\n", + "1000*(1/c-1/cu)\n", + "m**3/kg*10**3\n", + "\n", + "4.167 \t3.611 \t3.056 \t2.500 \t1.944 \t1.389 \t0.833 \t0.611 \t0.556 \t0.389 \t0.278 \t0.167 \t\n", + "\n", + "\n", + "(1/c-1/1200)/uc\n", + " m**2.kg/sec\n", + "\n", + "18.7 \t20.1 \t21.3 \t22.7 \t23.8 \t26.0 \t27.8 \t30.3 \t30.0 \t29.2 \t27.8 \t25.0 \t\n", + "\n", + "\n", + "the maximum value of (1/c-1/1200)/uc is 30.3 m**2*kg/s\n", + "\n", + " The area required is A = Qc[(1/c-1/cu)/uc]max = 202m**2\n" + ] + } + ], + "source": [ + "#Area of the tank required to give an underflow concentration of 1200kg/m**3 for a feed rate of 2 m**3/min\n", + "\n", + "#Initial height of slurry in the tank\n", + "H = [900, 800, 700, 600, 500, 400, 300, 260, 250, 220, 200, 180]\n", + "uc = [13.4, 10.76, 8.6, 6.6, 4.9, 3.2, 1.8 ,1.21, 1.11, 0.80, 0.60, 0.40]\n", + "i=0#\n", + "c=[];x=[];sed=[];y=[];z=[]\n", + "while i<12:\n", + " c.append(200*900/H[(i)])\n", + " x.append(1000*(1/c[i]-1/1200))\n", + " sed.append(c[(i)]*uc[(i)]/(1000*60))\n", + " y.append(uc[(i)]*10**(-3)/((1/c[(i)]-1/1200)*60))\n", + " z.append(1/y[(i)])\n", + " i=i+1#\n", + "\n", + "print\"\\nH(mm)\"\n", + "for h in H:print\"%d \\t\"%(h),#\n", + "print \n", + "print\"\\nc(kg/m**3):\\n\"\n", + "for cc in c:print\"%d \\t\"%(cc),\n", + "print \n", + "print\"\\nSedimentation flux(kg.s/m**2):\\n\"\n", + "for xx in x:print\"%.4f \\t\"%(xx),\n", + "print \n", + "print\"uc/(1/c-1/1200)\\nkg.sec/m**2:\\n\"\n", + "for yy in y:print\"%.4f \\t\"%(yy),\n", + "print \n", + "print\"1000*(1/c-1/cu)\\nm**3/kg*10**3\\n\"\n", + "for xx in x:print\"%.3f \\t\"%(xx),\n", + "print \n", + "print\"\\n\\n(1/c-1/1200)/uc\\n m**2.kg/sec\\n\"\n", + "for zz in z:print\"%.1f \\t\"%(zz),\n", + "print \n", + "m1=max([18.7, 20.1, 21.3, 22.7, 23.8, 26.0, 27.8, 30.3, 30.0, 29.2, 27.8, 25.0])\n", + "print\"\\n\\nthe maximum value of (1/c-1/1200)/uc is %.1f m**2*kg/s\"%(m1)#\n", + "A = 2*200*30.3/60#\n", + "print\"\\n The area required is A = Qc[(1/c-1/cu)/uc]max = %dm**2\"%(A)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 275 Example 5.3" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " concentration is:0.172\n", + "\n", + " The terminal falling velocity is 0.00872 m/sec\n", + "\n", + "The maximum value is 6.062 *10**(-4) m**3/m**2sec\n" + ] + } + ], + "source": [ + "from sympy import symbols,solve\n", + "#Assumption: Resistance force F on an isolated sphere is given by Stoke's law:F = 3*pi(meu)d*u\n", + "\n", + "C = symbols('C')\n", + "x=solve(-4.8*C+(1-C))[0]\n", + "print\"\\n concentration is:%.3f\"%(x)\n", + "\n", + "#terminal falling velocity u can be calculated by force balance\n", + "#u = d**2*g/(18*meu)*(ps-p)\n", + "def terminal_velocity():\n", + " d = 10**(-4)# #diameter is in meters\n", + " g = 9.81# #acceleration due to gravity is in m/sec**2\n", + " meu = 10**(-3)# #viscosity is in N.s/m**2\n", + " ps = 2600# #density is in kg/m**3\n", + " p = 1000# #density is in kg/m**3\n", + " \n", + " u = (d**2)*g*(ps-p)/(18*meu)#\n", + " return u\n", + "\n", + "def si_max():\n", + " u=terminal_velocity()\n", + " print\"\\n The terminal falling velocity is %.5f m/sec\"%(u)#\n", + " si=u*x*(1-x)**(4.8)#\n", + " return si\n", + "si = si_max()#\n", + "print\"\\nThe maximum value is %.3f *10**(-4) m**3/m**2sec\"%(si*10**4)\n" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.9" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter6.ipynb b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter6.ipynb new file mode 100644 index 00000000..0988ef44 --- /dev/null +++ b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter6.ipynb @@ -0,0 +1,472 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 6 - FLUIDISATION" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 298 Example 6.1" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "Galileo number = 1.004 *10**5\n", + "\n", + "Value of Remf is 40\n", + "\n", + "minimum fluidisation velocity is 36.4 mm/sec\n" + ] + } + ], + "source": [ + "from math import sqrt\n", + "#Calculating minimum fluidisation velocity\n", + "\n", + "#Calculating Galileo number\n", + "def Galileo_number():\n", + " d = 3*10**(-3)# #particle size is in meters\n", + " p = 1100# #density of liquid is in kg/m**3\n", + " ps = 4200# #density of spherical particles is in kg/m**3\n", + " g = 9.81# #acceleration due to gravity is in m/sec**2\n", + " u = 3*10**(-3)# #viscosity is in Ns/m**2\n", + " Ga = d**3*p*(ps-p)*g/u**2#\n", + " return Ga\n", + "Ga = Galileo_number()#\n", + "print\"\\nGalileo number = %.3f *10**5\"%(Ga*10**(-5))\n", + "\n", + "#Calculating Re mf\n", + "Remf = 25.7*(sqrt(1+5.53*10**(-5)*(1.003*10**5))-1)#\n", + "print\"\\nValue of Remf is %d\"%(Remf)#\n", + "\n", + "umf = Remf*(3*10**(-3))/(3*10**(-3)*1100)#\n", + "print\"\\nminimum fluidisation velocity is %.1f mm/sec\"%(umf*1000)#" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 299 Example 6.2" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " (a)\n", + "\n", + "voidage = 0.48\n", + "\n", + "minimum fluidisation velocity is 0.057 kg/m**2sec\n", + "\n", + " (b)\n", + "\n", + "terminal velocity is 0.0031m/sec\n", + "\n", + "Reynlds no =0.093\n", + "\n", + "The required mass flow rate is 2.78 kg/m**2sec\n" + ] + } + ], + "source": [ + "from math import sqrt,pi\n", + "#Calculating voidage by considering eight closely packed spheres of diameter d in a cube of size 2d\n", + "print\"\\n (a)\"\n", + "def voidage():\n", + " d = 1*10**(-4)# #diameter is in meters\n", + " meu = 3*10**(-3)# #viscosity is in Ns/m**2\n", + " ps = 2600# #density is in kg/m**3\n", + " p = 900# #density is in kg/m**3\n", + " e = (8*d**(3)-8*(pi/6)*d**(3))/(8*d**(3))#\n", + " return e\n", + "e = voidage()#\n", + "print\"\\nvoidage = %.2f\"%(e)#\n", + "\n", + "#Calculating minimum fluidisation mass flow rate\n", + "\n", + "def min_fluidis_vel():\n", + " e = voidage()#\n", + " d = 1*10**(-4)# #diameter is in meters\n", + " meu = 3*10**(-3)# #viscosity is in Ns/m**2\n", + " ps = 2600# #density is in kg/m**3\n", + " p = 900# #density is in kg/m**3 \n", + " g = 9.81# #acceleration due to gravity is in m/sec**2\n", + " Gmf = 0.0055*(e)**(3)/(1-e)*(d**2)*p*(ps-p)*g/meu#\n", + " return Gmf\n", + "Gmf = min_fluidis_vel()#\n", + "print\"\\nminimum fluidisation velocity is %.3f kg/m**2sec\"%(Gmf)#\n", + "\n", + "\n", + "print\"\\n (b)\"\n", + "def terminal_velocity():\n", + " e = voidage()#\n", + " d = 1*10**(-4)# #diameter is in meters\n", + " meu = 3*10**(-3)# #viscosity is in Ns/m**2\n", + " ps = 2600# #density is in kg/m**3\n", + " p = 900# #density is in kg/m**3 \n", + " g = 9.81# #acceleration due to gravity is in m/sec**2\n", + " u = d**(2)*g*(ps-p)/(18*meu)#\n", + " return u\n", + "print\"\\nterminal velocity is %.4fm/sec\"%(terminal_velocity())#\n", + "\n", + "#Reynolds no for this Terminal velocity is\n", + "Re = (10**(-4)*0.0031*900)/(3*10**(-3))#\n", + "print\"\\nReynlds no =%.3f\"%(Re)#\n", + "print\"\\nThe required mass flow rate is %.2f kg/m**2sec\"%(terminal_velocity()*900)#\n", + "\n", + " " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Page 305 Example 6.3" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "Galileo number = 9.42*10**5\n", + "\n", + " The Reynolds no is 1798\n", + "\n", + "velocity = 0.45 m/sec\n", + "\n", + "value of n is 2.42\n", + "\n", + "Voidage is 0.784\n" + ] + } + ], + "source": [ + "from sympy import symbols,solve\n", + "# to calculate voidage of the bed\n", + "\n", + "def Galileo_number():\n", + " d = 4*10**(-3)# #particle size is in meters\n", + " p = 1000# #density of water is in kg/m**3\n", + " ps = 2500# #density of glass is in kg/m**3\n", + " g = 9.81# #acceleration due to gravity is in m/sec**2\n", + " u = 1*10**(-3)# #viscosity is in Ns/m**2\n", + " Ga = d**3*p*(ps-p)*g/u**2#\n", + " return Ga\n", + "\n", + "print\"\\nGalileo number = %.2f*10**5\"%(Galileo_number()*10**(-5))#\n", + "\n", + "def Reynolds_no():\n", + " Ga = Galileo_number()#\n", + " Re = (2.33*Ga**(0.018)-1.53*Ga**(-0.016))**(13.3)#\n", + " return Re\n", + "print\"\\n The Reynolds no is %d\"%(Reynolds_no())#\n", + "v = Reynolds_no()*(1*10**(-3))/(0.004*1000)#\n", + "print\"\\nvelocity = %.2f m/sec\"%(v)#\n", + "\n", + "n = symbols('n')\n", + "z = solve((4.8-n)-0.043*(Galileo_number())**(0.57)*(n-2.4))[0]\n", + "print\"\\nvalue of n is %.2f\"%(z)#\n", + "\n", + "#voidage at a velocity is 0.25m/sec\n", + "e=0.1#\n", + "while 1:\n", + " enew = e -((0.25/0.45)-e**(2.42))/(-2.42*e**1.42)#\n", + " if (enew == e):\n", + " print\"\\nVoidage is %.3f\"%(e)#\n", + " break#\n", + " \n", + " e=enew#" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 345 Example 6.4" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "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\ngg==\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f2ca037f9d0>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "From the graph the value of slope is -0.002 \n", + "\n", + " b = 0.0873 kmol/kg\n" + ] + } + ], + "source": [ + "from numpy import arange,log\n", + "from sympy import symbols,solve\n", + "%matplotlib inline\n", + "from matplotlib.pyplot import plot,xlabel,ylabel,title,show\n", + "t = arange(250,2001,250) # #time is in secs\n", + "y = [0.00223, 0.00601, 0.00857, 0.0106, 0.0121, 0.0129, 0.0134 ,0.0137]\n", + "\n", + "i =0#\n", + "yo = 0.01442#\n", + "z=[];\n", + "\n", + "x=[]\n", + "while i<8:\n", + " z.append(y[(i)]/yo)\n", + " \n", + " x.append(log(y[(i)]))\n", + " i=i+1#\n", + "\n", + "title(\"slope of adsorption isotherm\")\n", + "xlabel(\"Time(sec)\")\n", + "ylabel(\"log(1-(y/yo))\")\n", + "plot(t,x)\n", + "show()\n", + "print\"\\nFrom the graph the value of slope is %.3f \"%(-0.00167)#\n", + "Gm = 0.679*10**(-6)# #units are in kmol/sec\n", + "W = 4.66# #units are in gram\n", + "b = symbols('b')\n", + "s = solve(-0.00167*4.66*b+0.679*10**(-6))[0]\n", + "print\"\\n b = %.4f kmol/kg\"%(s*10**3)#0" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 349 Example 6.5" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f2ca03fb090>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " heat transferred = 1.28 kw/m**2 of bed cross sectional area\n", + "\n", + " Volume of particles is 0.43 m**3\n", + "\n", + " Volume of 1 particle is 8.18*10**(-12) m**3\n", + "\n", + " number of particles is 5.26*10**(10)\n", + "\n", + " heat transfer coefficient = 12.1 W/m**2\n", + "\n", + " h = 61.6 W/m**2 K\n" + ] + } + ], + "source": [ + "from numpy import arange,log,pi\n", + "from sympy import symbols,solve\n", + "%matplotlib inline\n", + "from matplotlib.pyplot import plot,xlabel,ylabel,title,show\n", + "\n", + "gas_flow_rate =0.2# #units are in kg/m**2\n", + "c = 0.88# #specific heat capacity of air is kj/kg K\n", + "viscosity = 0.015*10**(-3)##viscosity is in Ns/m**2\n", + "d = 0.25*10**(-3)# #particle size is in meters\n", + "k = 0.03# #thermal conductivity is in W/m K\n", + "e = 0.57# #e is voidage\n", + "\n", + "T = [339.5, 337.7, 335.0, 333.6, 333.3, 333.2]# #temperature is in kelvins\n", + "deltaT=[]\n", + "for t in T:\n", + " deltaT.append(t - 333.2)\n", + "h = [0, 0.64, 1.27, 1.91, 2.54, 3.81]#\n", + "title(\"temperature rise as a function of bed height\")\n", + "xlabel(\"height above bed support(mm))\")\n", + "ylabel(\"deltaT(K)\")\n", + "plot(h,deltaT)\n", + "show()\n", + "\n", + "#Area under the curve gives the value of the heat teansfer integral =8.82mm K\n", + "\n", + "q = 0.2*0.88*(339.5-332.2)#\n", + "print\"\\n heat transferred = %.2f kw/m**2 of bed cross sectional area\"%(q)#\n", + "\n", + "#Assuming 1m**3 volume\n", + "Vp = (1-0.57)# #Volume of particles is in m**3\n", + "print\"\\n Volume of particles is %.2f m**3\"%(Vp)\n", + "v1 = (pi/6)*d**3# #Volume of 1 particle in m**3\n", + "print\"\\n Volume of 1 particle is %.2f*10**(-12) m**3\"%(v1*10**(12))#\n", + "print\"\\n number of particles is %.2f*10**(10)\"%(Vp/v1*10**(-10))#\n", + "\n", + "x =symbols('x')#\n", + "h = solve(1100 - x*(1.03*10**4)*(8.82*10**(-3)))[0]\n", + "print\"\\n heat transfer coefficient = %.1f W/m**2\"%(h)#\n", + "\n", + "#Nu = 0.11Re**(1.28)\n", + "Re = (0.2*0.25*10**(-3))/(0.015*10**(-3))#\n", + "h1 = 0.11*(Re)**(1.28)*k/d#\n", + "print\"\\n h = %.1f W/m**2 K\"%(h1)#" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 350 Example 6.6" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f0dedb77e50>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + " \n", + " Coefficient for heat transfer between the gas and the particles= 14.1W/m**2 K\n", + "\n", + " Let the evaporation rate be 0.1 kg/sec at a temp difference = 50 degK\n", + "\n", + " The heat flow = 2.6*10**5 W\n", + "\n", + " the effective area of the bed A = 368 m**2\n", + "\n", + " The surface area of the bed = 1200 m**2\n", + "\n", + " hence the fraction of the bed = 0.31\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from sympy import symbols,solve\n", + "%matplotlib inline\n", + "from matplotlib.pyplot import plot,xlabel,ylabel,title,show\n", + "\n", + "cp = 0.85# #specific heat capacity of the air\n", + "h = [0, 0.625, 1.25, 1.875, 2.5, 3.75]# #height in mm \n", + "T=[339.5, 337.7, 335.0 ,333.6 ,333.3, 333.2]##temperature in K\n", + "\n", + "deltaT=[]\n", + "for t in T:\n", + " deltaT.append(t - 333.2)\n", + " #temperature difference in kelvins\n", + "plot(h,deltaT)\n", + "title(\"deltaT as a function of bed height\")\n", + "xlabel(\"Height above bed support z(mm)\")\n", + "ylabel(\"Temperature difference deltaT (K)\")\n", + "show()\n", + "#From the plot area under the curve is 6.31 K mm \n", + "sp = (6/(0.25*10**(-3)))*(0.5)# #sp is surface area per unit volume in m**2/m**3\n", + "G = 0.2# #in kg/m**2sec\n", + "Cp = 850# #Cp is in J/kg K\n", + "h1 = symbols('h1')\n", + "s = solve(0.2*850*6.3-h1*1.2*10**(4)*6.31*10**(-3))[0]\n", + "print\" \\n Coefficient for heat transfer between the gas and the particles= %.1fW/m**2 K\"%(s)#\n", + "\n", + "print\"\\n Let the evaporation rate be 0.1 kg/sec at a temp difference = 50 degK\"\n", + "mdot = 0.1# #evaporation rate is 0.1 kg/sec\n", + "Latent_heat = 2.6*10**(6)#\n", + "print\"\\n The heat flow = %.1f*10**5 W\"%(mdot*Latent_heat*10**(-5))#\n", + "A=(2.6*10**5)/(14.1*50)#\n", + "print\"\\n the effective area of the bed A = %d m**2\"%(A)#\n", + "print\"\\n The surface area of the bed = %d m**2\"%(0.1*1.2*10**4)#\n", + "print\"\\n hence the fraction of the bed = %.2f\"%(369/1200)#\n" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.9" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter7.ipynb b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter7.ipynb new file mode 100644 index 00000000..749c279b --- /dev/null +++ b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter7.ipynb @@ -0,0 +1,501 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 7 - LIQUID FILTRATION" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 394 Example 7.1" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " L/υ=3.500000*10**(-3) and rμυ = 7.130 *10**(11)\n", + "\n", + " the value of V1 = 0.018 m**3\n", + "\n", + " The value of V = 0.066 m**3\n", + "\n", + " The final rate of filtration is 3.79*10**(-5) m**3/sec\n", + "\n", + " Rate of washing at 400 kN/m2 = 9.5*10**(-6) m**3/sec\n", + "\n", + " Rate of washing at 275 kN/m**2 = 6.5*10**(-6) m**3/sec\n", + "\n", + " Thus the amount of wash-water passing in 600s = 0.004 m**3\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from numpy import mat\n", + "from sympy import symbols,solve\n", + "#In the leaf filter filtration is at const pressure from the start\n", + "#V**2 + 2ALV/v = 2(-deltaP)A**2t/(ruv)\n", + "\n", + "#In the filter press,a volume V1 of filtrate is obtained under const rate conditions in time t1,and filtration is then carried out at constant pressure.\n", + "#V1**2 + 2ALV1/v = 2(-deltaP)A**2t1/(ruv) \n", + "#and (V**2 − V1**2 ) + 2AL/υ(V − V1) = 2(−P)A**2/rμυ(t − t1)\n", + "\n", + "#for the leaf filter\n", + "t2 = 300# #t2 is in secs\n", + "V2 = 2.5*10**(-4)# #V2 is in m**3\n", + "t3 = 600# #t3 is in secs\n", + "V3 = 4*10**(-4)# #V3 is in m**3\n", + "A = 0.05# #A is in m**2\n", + "deltaP = -7.13*10**(4)# #it is in N/m**2\n", + "#putting these values in above eq\n", + "\n", + "a = [[2*7.13*10**(4)*0.05**(2)*300,-2*0.05*2.5*10**(-4)],[2*7.13*10**(4)*0.05**(2)*600,-2*0.05*4*10**(-4)]]\n", + "b = [[(2.5*10**(-4))**2],[(4*10**(-4))**2]]\n", + "a=mat(a)\n", + "b=mat(b)\n", + "x=(a**-1*b)\n", + "y = [1/x[0],x[1]]\n", + "print\"\\n L/υ=%f*10**(-3) and rμυ = %.3f *10**(11)\"%(y[1]*10**3,y[0]*10**(-11))#\n", + "\n", + "#for the filter press\n", + "V1 = symbols('V1')\n", + "s = solve(V1**2 + (2.16*y[1]*V1)-(4*10**(5)*2.16**2)/y[0]*180)\n", + "print\"\\n the value of V1 = %.3f m**3\"%(s[1])\n", + "\n", + "#For a constant pressure period (t - t1)=900secs\n", + "#Calculting the total volume of filtrate\n", + "V = symbols('V')\n", + "d = solve((V**2-3.33*10**(-4))+(1.512*10**(-2)*(V-1.825*10**(-2))-5.235*10**(-6)*900))#\n", + "print\"\\n The value of V = %.3f m**3\"%(d[1])\n", + "\n", + "f = (4*10**(5)*(2.16)**2)/(7.13*10**(11)*(6.15*10**(-2) + 2.16*3.5*10**(-3)))#\n", + "print\"\\n The final rate of filtration is %.2f*10**(-5) m**3/sec\"%(f*10**(5))#\n", + "\n", + "# Assuming viscosity of the filtrate is the same as that of the wash-water\n", + "rw_400 = (0.25)*f#\n", + "print\"\\n Rate of washing at 400 kN/m2 = %.1f*10**(-6) m**3/sec\"%(rw_400*10**(6))#\n", + "\n", + "rw_275 = rw_400*(275/400)#\n", + "print\"\\n Rate of washing at 275 kN/m**2 = %.1f*10**(-6) m**3/sec\"%(rw_275*10**6)#\n", + "print\"\\n Thus the amount of wash-water passing in 600s = %.3f m**3\"%(600*rw_275)#" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 398 Example 7.2" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " Volume of 100 kg whiting = 0.033 m**3\n", + "\n", + " Volume of cake = 0.056 m**3\n", + "\n", + " Volume of liquid in cake = 0.022 m**3\n", + "\n", + " Volume of filtrate = 0.978 m**3\n", + "\n", + " volume of cake/volume of filtrate v = 0.057 \n", + "\n", + " r = 8.25*10**(13)/m**2\n", + "\n", + " optimum frame thickness = 69.7 mm\n", + "\n", + " Frame thickness = -59.26 mm\n" + ] + } + ], + "source": [ + "from sympy import symbols,solve\n", + "#The slurry contains 100kg whiting/m**3 of water\n", + "print\"\\n Volume of 100 kg whiting = %.3f m**3\"%(100/3000)#\n", + "print\"\\n Volume of cake = %.3f m**3\"%(0.0333/0.6)#\n", + "print\"\\n Volume of liquid in cake = %.3f m**3\"%(0.05556*0.4)#\n", + "print\"\\n Volume of filtrate = %.3f m**3\"%((1-0.0222))#\n", + "print\"\\n volume of cake/volume of filtrate v = %.3f \"%(0.0556/0.978)#\n", + "A = 10**(-4)# #area in sq meters\n", + "deltaP = -1.65*10**(5)# #P is in pascals\n", + "l = 0.01# #length is in meters\n", + "vol_flow_rate = 2*10**(-8)# #Volume flow rate is in m**3/sec\n", + "u = 10**(-3)# #vicosity is in Ns/m**2\n", + "\n", + "r = symbols('r')\n", + "r1 = solve((10**4)*(2*10**(-8)*r)-1.65*10**(5)/(10**(-5)))[0]\n", + "print\"\\n r = %.2f*10**(13)/m**2\"%(r1*10**(-13))#\n", + "\n", + "def optimum():\n", + " Lopt = 1.161*10**(-3)*(900)**(0.5)# #t = 900 secs\n", + " return Lopt\n", + "print\"\\n optimum frame thickness = %.1f mm\"%(2*optimum()*1000)#\n", + "\n", + "#total cycle time = 1.015L**2 + 900\n", + "#rate of cake production R = L/(1.015L**2 + 900)\n", + " \n", + "L = symbols('L')\n", + "L1 = solve(1.025*10**(6)*L**2 + 900 - 2.050*10**(6)*L**2)\n", + "print\"\\n Frame thickness = %.2f mm\"%(2*L1[0]*10**3)#" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 404 Example 7.3" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " LA/v =0.015130 A**2/rμv = 0.046 *10**(-7)\n", + "\n", + " For the full size plant:\n", + "\n", + " LA/v = 0.151 A**2/rμv=0.462543*10**(-7)\n", + "\n", + " t = 856 secs\n", + "\n", + " deltaP = 2902 kN/m**2\n" + ] + } + ], + "source": [ + "from sympy import symbols,solve\n", + "from numpy import mat\n", + "from sympy.mpmath import quad\n", + "V = 0.094# #volume in m**3\n", + "deltaP = -3530# #P is in kN/m**2\n", + "\n", + "#At t = 1105 secs\n", + "V1 = 0.166# #V is in m**3\n", + "deltaP1 = -5890# #P is in kN/m**2\n", + "\n", + "a = [[2.21*10**(6), -0.094],[6.51*10**(6),-0.166]]\n", + "b = [[0.0088],[0.0276]]\n", + "a=mat(a)\n", + "b=mat(b)\n", + "x = (a**-1)*b\n", + "y = [x[1],x[0]]\n", + "print\"\\n LA/v =%f A**2/rμv = %.3f *10**(-7)\"%(y[0],y[1]*10**7)#\n", + "print\"\\n For the full size plant:\"\n", + "print\"\\n LA/v = %.3f A**2/rμv=%f*10**(-7)\"%(10*y[0],y[1]*10**8)#\n", + "\n", + "\n", + "#Solving LHS of the integral\n", + "LHS = quad(lambda b:b+0.154+2.31,[0,1])#\n", + "#Equating LHS = RHS\n", + "t = LHS/(3.46*10**(-3))#\n", + "print\"\\n t = %d secs\"%(t)#\n", + "print\"\\n deltaP = %d kN/m**2\"%((1+0.154)/(4.64*10**(-7)*857))#\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 423 Example 7.4" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " L/v = 0.002 ruv = 3.503 *10**(10)\n", + "\n", + " Area of filtering surface = 12.566 m**2\n", + "\n", + " Bulk volume of cake deposited =0.063 m**3/revolution\n", + "\n", + " V = 0.143 m**3\n", + "\n", + " t = 26.793 secs\n", + "\n", + " time for 1 revolution =67.0 secs\n", + "\n", + " speed = 0.015Hz\n", + "\n", + " rate of filtrate production w = 2.12 kg/sec\n", + "\n", + " mass of slurry S =3.5 kg/sec\n" + ] + } + ], + "source": [ + "from sympy import symbols,solve\n", + "from numpy import mat,sqrt,pi\n", + "\n", + "\n", + "a = [[2*84300*0.02**(2)*60,-2*0.02*0.0003],[2*84300*0.02**(2)*120,-2*0.02*0.00044]]\n", + "b = [[0.0003**2],[0.00044**2]]\n", + "a=mat(a)\n", + "b=mat(b)\n", + "x = (a**-1)*b\n", + "y = [x[1],1/x[0]]#\n", + "print\"\\n L/v = %.3f ruv = %.3f *10**(10)\"%(y[0],y[1]*10**(-10))#\n", + "print\"\\n Area of filtering surface = %.3f m**2\"%(4*(pi))#\n", + "print\"\\n Bulk volume of cake deposited =%.3f m**3/revolution\"%(4*(pi)*0.005)#\n", + "\n", + "V = sqrt(1*10**(-6)*143**2)#\n", + "print\"\\n V = %.3f m**3\"%(V)#\n", + "\n", + "t =symbols('t')\n", + "t1 = solve(0.141**2 +2*2.19*10**(-3)*0.141-2*84300*(4*(pi))**(2)*t/(3.48*10**10))[0]\n", + "print\"\\n t = %.3f secs\"%(t1)#\n", + "print\"\\n time for 1 revolution =%.1f secs\"%(t1/0.4)#\n", + "print\"\\n speed = %.3fHz\"%(0.4/t1)#\n", + "print\"\\n rate of filtrate production w = %.2f kg/sec\"%(143/67.3)\n", + "print\"\\n mass of slurry S =%.1f kg/sec\"%(1.66*2.11)#" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 424 Example 7.5" + ] + }, + { + "cell_type": "code", + "execution_count": 38, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "rμv = -46728971962\n", + "\n", + "\n", + " rμl = 5362394614\n", + "\n", + " B1= -11688.555 B2= 5901.821 \n", + "\n", + " the filtration time for maximum throughput is:\n", + "\n", + " t = 23041.859 secs\n", + "\n", + " V= 1.359 m**3\n", + "\n", + "Mean rate of filtration is: 30.94 *10**-6 m**3/s\n" + ] + } + ], + "source": [ + "from sympy import symbols,solve\n", + "from numpy import mat,pi\n", + "from scipy import sqrt\n", + "V1 = 0.00025# #V is in m**3\n", + "t = 300# #t is in secs\n", + "a = mat([[7.14*10**(-6),2.86*10**(-4)],[11.42*10**(-6),2.86*10**(-4)]])\n", + "b = mat([[1.2*10**(6)],[1*10**(6)]])\n", + "x = (a**-1)*b#\n", + "\n", + "#for the plate and frame filter\n", + "B1 = x[0]/(2*2.2**2*413*10**3)#\n", + "B2 = x[1]/(2.2*413*1000)#\n", + "\n", + "print\"\\nrμv = %d\\n\"%(x[0])#\n", + "print\"\\n rμl = %d\"%(x[1])#\n", + "print\"\\n B1= %.3f B2= %.3f \"%(B1,B2)#\n", + "print\"\\n the filtration time for maximum throughput is:\"\n", + "\n", + "t1 = 21.6*10**3#\n", + "t0= t1 +B2*sqrt(t1/B1)[0]\n", + "\n", + "print\"\\n t = %.3f secs\"%abs(t0)#\n", + "V = sqrt(t1/B1)[0]\n", + "print\"\\n V= %.3f m**3\"%abs(V)#\n", + "fr=((V/(t1+t0))/10**-6)[0,0]\n", + "print\"\\nMean rate of filtration is: %.2f *10**-6 m**3/s\"%abs(fr)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 426 Example 7.6" + ] + }, + { + "cell_type": "code", + "execution_count": 48, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "Thickness of cake produced is : 5.7 mm\n", + "\n", + " The value of K is 3.38*10**(-10)\n", + "\n", + " The thickness is -0.0182 m\n", + "\n", + " The minimum number of plates required is 6\n", + "\n", + " The sizes of frames which will give exactly the required rate of filtration when six are used are 46.716 mm\n", + "\n", + "\n", + "\n", + " Thus any frame thickness between 47 and 99 mm will be satisfactory. In practice,50 mm (2 in) frames would probably be used.\n" + ] + } + ], + "source": [ + "from math import pi, sqrt,ceil\n", + "from sympy import symbols,solve\n", + "\n", + "A=0.6*0.6*pi# #in m**2\n", + "rate=1.25*10**-4# # in m**3/s\n", + "\n", + "v_w=0.2/(3*10**3)#\n", + "v_f=10**-3-v_w#\n", + "\n", + "v=v_w/v_f#\n", + "v_rate=rate*v#\n", + "w=360*0.2#\n", + "\n", + "t=v_rate*w/A#\n", + "print\"\\nThickness of cake produced is : %.1f mm\"%(t/10**-4)#\n", + "K = symbols('K')\n", + "K1 = solve((1.25*10**(-4)*360)**2-K*(6.5*10**(4)*(0.36*(pi))**(2)*72))[0]\n", + "print\"\\n The value of K is %.2f*10**(-10)\"%(K1*10**(10))#\n", + "\n", + "#Filter press\n", + "#Using a filter press with n frames of thickness b m the total time, for one complete cycle of the press =(tf+120n+240),where tf is the time during which filtration is occurring\n", + "#overall rate of filtration = Vf/(tf + 120n + 240)\n", + "\n", + "# Vf = 0.3**(2)*n*b/0.143\n", + "#tf = 2.064*10**5 b**2\n", + "\n", + "b = symbols('b')\n", + "b1 = solve(b**2 - 0.0458*b - 0.001162)#\n", + "print\"\\n The thickness is %.4f m\"%(b1[0])#\n", + "\n", + "def number_of_plates():\n", + " \n", + " n = (0.030 + 25.8*b1[1]**2)/(0.629*b1[1]-0.015)#\n", + " return n\n", + "n = number_of_plates()#\n", + "print\"\\n The minimum number of plates required is %d\"%(ceil(n))#\n", + "\n", + "d = symbols('d')\n", + "d1 = solve(ceil(n)*(0.629*d-0.015)-0.030-25.8*d**2)[0]\n", + "print\"\\n The sizes of frames which will give exactly the required rate of filtration when six are used are %.3f mm\"%(d1*10**3)#\n", + "print\"\\n\\n\\n Thus any frame thickness between 47 and 99 mm will be satisfactory. In practice,50 mm (2 in) frames would probably be used.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 430 Example 7.7" + ] + }, + { + "cell_type": "code", + "execution_count": 50, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " t1 = 825secs\n", + "\n", + " t -t1 = 2178 secs\n", + "\n", + " cycle time = 4083 secs\n", + "\n", + " Increase in filtration rate is 9.2 per cent\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "t1 = 600/(1/4)*(11/32)#\n", + "print\"\\n t1 = %dsecs\"%(t1)#\n", + "#Substituting gives \n", + "deltaT = (19200/3)*(784-121+34)/2048#\n", + "print\"\\n t -t1 = %d secs\"%(deltaT)# \n", + "Cycle_time = 180+900+t1+deltaT#\n", + "print\"\\n cycle time = %d secs\"%(Cycle_time)#\n", + "Increase = (0.000214 - 0.000196)/(0.000196)*100#\n", + "print\"\\n Increase in filtration rate is %.1f per cent\"%(Increase)#\n", + " " + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.9" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter8.ipynb b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter8.ipynb new file mode 100644 index 00000000..ed9bfc41 --- /dev/null +++ b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter8.ipynb @@ -0,0 +1,206 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 8 - Membrane Separation Processes" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 460 Example 8.2" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "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\nVuL/AKOrVmLW7TWCAAAAAElFTkSuQmCC\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7f2751936d50>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " Jo = 0.099 m/h\n", + "\n", + " Jf = 0.000 m/h\n", + "\n", + " Jav = 0.025 m/h\n", + "\n", + " Area = 79.650 m**2\n" + ] + } + ], + "source": [ + "%matplotlib inline\n", + "from matplotlib.pyplot import plot,title,xlabel,ylabel,show\n", + "from math import log\n", + "\n", + "#From the gel polarisation model:\n", + " #J = (1/A)(dV/dt) = hD ln(Cg/Cf)\n", + " #Cf = Co(Vo/V)\n", + "#where Co and Vo are the initial concentration and volume,respectively and Cf and V are the values at subsequent times\n", + "#Combining these eq gives\n", + " #dV/dt = A(hDln(Cg/Co)-hDln(Vo/V))\n", + "V = [10, 5 ,3 ,2, 1]#\n", + "y = [9.90, 13.64, 18.92, 27.30, 112.40]\n", + "plot(V,y)\n", + "title(\"Area under the curve is 184.4\")\n", + "xlabel(\"Volume(m**3)\")\n", + "ylabel(\"(J - hDln(Vo/V))**(-1)\")\n", + "show()\n", + "\n", + "#(b)\n", + "Jo = 0.04*log(250/20)#\n", + "print\"\\n Jo = %.3f m/h\"%(Jo)#\n", + "Jf = 0.04*log(250/200)#\n", + "print\"\\n Jf = %.3f m/h\"%(Jf)#\n", + "Jav = Jf + 0.27*(0.101-0.008)#\n", + "print\"\\n Jav = %.3f m/h\"%(Jav)#\n", + "#For the removal of 9m**3 filtrate in 4 hours\n", + "Area = (9/4)/Jav#\n", + "print\"\\n Area = %.3f m**2\"%(Area)#" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 462 Example 8.3" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " Cl = 4 kg/m**3\n", + "\n", + " below this concentration the membrane flux is 0.04 m/h\n", + "\n", + " A = 300 m**2\n", + "\n", + " the no of required modules are 10 \n", + "\n", + " The procedure is to use trial and error to estimate the value of C1 that gives the optimum values of A1 and A2\n", + "\n", + " If C1 = 5kg/m**3 then A1 = 62 m**2 and A2 = 23 m**2\n", + "\n", + " an arrangement of 3 modules −1 module is required.\n", + "\n", + "\n", + "\n", + " If C1 = 4 kg/m**3 then A1 = 54m**2 and A2 = 30m**2\n", + "\n", + " an arrangement of 2 modules −1 module is almost sufficient.\n", + "\n", + "\n", + "\n", + " If C1 = 4.5 kg/m**3 then A1 = 58m**2 and A2 = 26 m**2\n", + "\n", + " an arrangement of 2 modules −1 module which meets the requirement\n", + "\n", + "\n", + " This arrangement requires the minimum number of modules.\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import log\n", + "#It is assumed that Q0 is the volumetric flowrate of feed\n", + "# Q2 the volumetric flowrate of concentrate\n", + "#C0 the solute concentration in the feed\n", + "# C2 the solute concentration in the concentrate\n", + "# F the volumetric flowrate of membrane permeate\n", + "# A the required membrane area.\n", + "# It is also assumed that there is no loss of solute through the membrane.\n", + "Cl = 3#\n", + "while 1:\n", + " Clnew = Cl -(0.04-0.02*log(30/Cl))/(Cl**(-1)/50)#\n", + " if Clnew == Cl:\n", + " break#\n", + " \n", + " Cl = Clnew#\n", + "\n", + "print\"\\n Cl = %d kg/m**3\"%(Cl)#\n", + "print\"\\n below this concentration the membrane flux is 0.04 m/h\"\n", + "\n", + "#This does not pose a constraint for the single stage as the concentration of solute C2 will be that of the final concentrate, 20 kg/m3.\n", + "#Conservation of solute gives:QoCo = Q2C2\n", + "#A fluid balance gives : Qo = F + Q2\n", + "#Combining these eq and substituting Known values:\n", + "A = (2.438/0.02)/log(30/20)#\n", + "print\"\\n A = %d m**2\"%(A)#\n", + "#The tubular membranes to be used are available as 30 m**2modules.\n", + "print\"\\n the no of required modules are %d \"%(A/30)#\n", + "\n", + "#Part(b)\n", + "\n", + "#Conservation of solute gives = QoCo = Q1C1 = Q2C2\n", + "#A fluid balance on stage 2 gives Q1 = Q2 + F2\n", + "#A fluid balance on stage 2 gives Q1 = Q2 +F2\n", + "#Substituting given values in above eqns\n", + "#2.5 = 1.25/C1 + 0.02A1ln(30/C1)\n", + "def a(C1):\n", + " A1 = (2.5-1.25/C1)/(0.02*log(30/C1))#\n", + " return A1\n", + "def b(C1):\n", + " A2 = (1.25/C1 - 0.0625)/0.00811\n", + " return A2\n", + "\n", + "print\"\\n The procedure is to use trial and error to estimate the value of C1 that gives the optimum values of A1 and A2\"\n", + "print\"\\n If C1 = 5kg/m**3 then A1 = %d m**2 and A2 = %d m**2\"%(a(5),b(5))#\n", + "print\"\\n an arrangement of 3 modules −1 module is required.\"\n", + "print\"\\n\\n\\n If C1 = 4 kg/m**3 then A1 = %dm**2 and A2 = %dm**2\"%(a(4),b(4))#\n", + "print\"\\n an arrangement of 2 modules −1 module is almost sufficient.\"\n", + "print\"\\n\\n\\n If C1 = 4.5 kg/m**3 then A1 = %dm**2 and A2 = %d m**2\"%(a(4.5),b(4.5))#\n", + "print\"\\n an arrangement of 2 modules −1 module which meets the requirement\"\n", + "print\"\\n\\n This arrangement requires the minimum number of modules.\"" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.9" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter9.ipynb b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter9.ipynb new file mode 100644 index 00000000..906b3118 --- /dev/null +++ b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/Chapter9.ipynb @@ -0,0 +1,145 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chapter 9 - CENTRIFUGAL SEPARATIONS" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 482 Example 9.1" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " Terminal falling velocity of particles of diameter = 2.45 m/sec\n", + "\n", + " E = 1.02*10**(4) m**2\n", + "\n", + " For coal-in-oil mixture\n", + "\n", + " uo = 3.92*10**-6 m/sec\n", + "\n", + " d = 4 um\n" + ] + } + ], + "source": [ + "from __future__ import division\n", + "from math import sqrt\n", + "d_particle = 5# #particle size is in um\n", + "p = 1000# #density of water in kg/m**3\n", + "ps = 2800# #density of solids in kg/m**3\n", + "viscosity = 10**(-3)# #viscosity is in Ns/m**2\n", + "uo = ((d_particle*10**(-6))**2)*(ps-p)*9.81/(18*viscosity)#\n", + "print\"\\n Terminal falling velocity of particles of diameter = %.2f m/sec\"%(uo*10**5)#\n", + "Q = 0.25# #volumetric flow rate is in m**3/sec\n", + "print\"\\n E = %.2f*10**(4) m**2\"%((Q/uo)*10**(-4))#\n", + "\n", + "print\"\\n For coal-in-oil mixture\"\n", + "uo1 = 0.04/(Q/uo)#\n", + "print\"\\n uo = %.2f*10**-6 m/sec\"%(uo1*10**6)#\n", + "\n", + "d = sqrt((18*0.01*uo1)/((1300-850)*9.81))#\n", + "print\"\\n d = %d um\"%((d/3)*10**6)#" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Page 488 Example 9.3" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + " the value of ru/v = 3.25*10**12\n", + "\n", + " Value of ro = 0.069 mm\n", + "\n", + " angular frequency = 432.1rad/s\n", + " \n", + " time required = 65173.320 secs\n" + ] + } + ], + "source": [ + "from sympy import symbols, solve\n", + "from __future__ import division\n", + "from math import sqrt,pi\n", + "from scipy import log\n", + "#In the filter press\n", + "# V**2 + 2(AL/v)V = 2(-deltaP)A**2*t/(ruv)\n", + "\n", + "l = 0.025# #l is in meters\n", + "L = 0.003# #L is in meters\n", + "deltaP = 350# #it is in N/m**2\n", + "t = 3600# #t is in secs\n", + "\n", + "# x = v/ru\n", + "x = symbols('x')#\n", + "x1 = solve(0.025**2 + 2*0.003*0.025 - 2*3.5*10**(5)*3600*x)[0]\n", + "print\"\\n the value of ru/v = %.2f*10**12\"%((1/x1)*10**(-12))#\n", + "\n", + "#In the centrifuge\n", + "R = 0.15# #R is in meters\n", + "H = 0.20# #H is in meters\n", + "V = 0.00225# #V is in m**3\n", + "r = symbols('r')\n", + "r1 = solve(pi*(R**2 - r**2)*H-V)\n", + "print\"\\n Value of ro = %.3f mm\"%(r1[1]/2)#\n", + "print\"\\n angular frequency = %.1frad/s\"%((r1[1]/2*10**3)*2*(pi))#\n", + "\n", + "#(R**2 -r**2)(1+2L/R)+2r**2ln(r/R) = 2vtpw**2/ru(R**2-ro**2)\n", + "t = symbols('t')#\n", + "t1 = solve((R**2 - r1[0]**2)*(1+2*(L/R))+2*(r1[0]**2)*log(r1[0]/R)-2*t*1000*408.4**(2)/(3.25*10**12)*(R**2-(r1[0]/2)**2))#\n", + "print\" \\n time required = %.3f secs\"%abs(t1[0])#" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.9" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/screenshots/Chapter11GraphicalIntegration.png b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/screenshots/Chapter11GraphicalIntegration.png Binary files differnew file mode 100644 index 00000000..ca1b6689 --- /dev/null +++ b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/screenshots/Chapter11GraphicalIntegration.png diff --git a/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/screenshots/Chapter11MccabeThieleMethod.png b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/screenshots/Chapter11MccabeThieleMethod.png Binary files differnew file mode 100644 index 00000000..a2a12786 --- /dev/null +++ b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/screenshots/Chapter11MccabeThieleMethod.png diff --git a/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/screenshots/Chapter11RefluxRatio.png b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/screenshots/Chapter11RefluxRatio.png Binary files differnew file mode 100644 index 00000000..80c69771 --- /dev/null +++ b/Coulson_And_Richardsons_Chemical_Engineering,_Volume_2_by_J._M._Coulson,_J._F._Richardson,_J._R._Backhurst_And_J._H._Harker/screenshots/Chapter11RefluxRatio.png |