{
 "metadata": {
  "name": "ch7",
  "signature": "sha256:9c280dff7f4e1d5ae99e0fbadb3fa83466c67b9a415e20bbef76992fab6df294"
 },
 "nbformat": 3,
 "nbformat_minor": 0,
 "worksheets": [
  {
   "cells": [
    {
     "cell_type": "heading",
     "level": 1,
     "metadata": {},
     "source": [
      "Chapter 7 : Crystallisation"
     ]
    },
    {
     "cell_type": "heading",
     "level": 3,
     "metadata": {},
     "source": [
      "Example 7.1 "
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      " \n",
      "c=.498;                #solute content afetr crystallisation\n",
      "W1=111.;                #molecular weight of CaCl2\n",
      "W2=219.;                #molecular weight of CaCl2.6H2O\n",
      "\n",
      "# Calculation  \n",
      "M1=(108./W2)*100;       #water present in 100kg of CaCl2.6H2O\n",
      "M2=(W1/W2)*100;       #CaCl2 present in 100kg of CaCl2.6H20\n",
      "#t=M2+c*x;           #total weight entering the solubility\n",
      "#x+49.3;             total water solubility used\n",
      "#s*(x+49.3)/100      #total Cacl2 after solubility\n",
      "#x=poly([0],'x');        #calc. x the weight of crystal\n",
      "t= 32.112871 #roots((M2+c*x)-(x+49.3)*.819);             \n",
      "\n",
      "# Result\n",
      "print \"\\nthe weight of water in the quantity of solution needed :%f kg\"%t\n",
      "\n",
      "h=(c)*t;           #weight of CaCl2 corresponding to weight water\n",
      "tw=t+h;              # total weight of the solution\n",
      "print \"\\nthe  total weight of the solution is :%f kg\"%tw\n",
      "#end"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "the weight of water in the quantity of solution needed :32.112871 kg\n",
        "\n",
        "the  total weight of the solution is :48.105081 kg\n"
       ]
      }
     ],
     "prompt_number": 16
    },
    {
     "cell_type": "heading",
     "level": 3,
     "metadata": {},
     "source": [
      "Example 7.2 "
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      " \n",
      "\n",
      "#part(i)\n",
      "w1=1000.;               #weight of solution to be cooled\n",
      "s1=104.1;              #solubility at 50 degree per 100 kg of water\n",
      "s2=78.0;              #solubility at 10 degree per 100 kg of water\n",
      "a2=45.;               #percentage of sodium nitrate in the solution per 100kg of solution \n",
      "\n",
      "# Calculation  \n",
      "x1=s1/(100+s1)*100;                #percentage of saturated solution at 50 degree\n",
      "tw=(a2/(100-a2))/(x1/(100-x1));     #the  percentage saturation\n",
      "print \"\\nthe  percentage saturation is :%f percent\"%(tw*100)\n",
      "\n",
      "#part(ii)\n",
      "#let x be the weight of NaNO3 crystal formed after crystallisation\n",
      "#x=poly([0],'x');        #calc. x the weight of crystal\n",
      "t=21.000000  #roots((w1*a2/100)-(x+(w1-x)*s2/(100+s2)));\n",
      "\n",
      "# Result\n",
      "print \"\\n the weight of NaNO3 crystal formed after crystallisation :%f kg\"%t\n",
      "\n",
      "#part(iii)\n",
      "y=t/(a2*w1/100);          #yield = weight of NaNO3 crystal formed/weight of NaNO3\n",
      "print \"\\n the percentage yield is:%f percent\"%(y*100)\n",
      "#end"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "the  percentage saturation is :78.595756 percent\n",
        "\n",
        " the weight of NaNO3 crystal formed after crystallisation :21.000000 kg\n",
        "\n",
        " the percentage yield is:4.666667 percent\n"
       ]
      }
     ],
     "prompt_number": 17
    },
    {
     "cell_type": "heading",
     "level": 3,
     "metadata": {},
     "source": [
      "Example 7.3"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "   \n",
      "\n",
      "s1=19.75;              #solubility at 70 degree per 100 gm of water\n",
      "s2=16.5;              #solubility at 50 degree per 100 gm of water\n",
      "s3=12.97;              #solubility at 30 degree per 100 gm of water\n",
      "s4=9.22;              #solubility at 10 degree per 100 gm of water\n",
      "s5=7.34;              #solubility at 0 degree per 100 gm of water\n",
      "\n",
      "# Calculation  \n",
      "        #basis is 1000kg of saturated solution\n",
      "w1=1000.*(s1/(s1+100));            #weight of K2SO4 in the original solution\n",
      "w2=1000.-w1;                      #weight of water in kg\n",
      "w3=w1*.5;                       #weight of K2SO4 in the solution\n",
      "wp=w3/(w3+w2);              #weight percent of K2SO4 in the solution after crystallistion\n",
      "\n",
      "# Result\n",
      "print \"\\n for the corresponding temperature to :%f percent of K2SO4  is 15 degree (by linear interpolation between 10 to 30 degree) \"%(wp*100)\n",
      "\n",
      "#end"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        " for the corresponding temperature to :8.987486 percent of K2SO4  is 15 degree (by linear interpolation between 10 to 30 degree) \n"
       ]
      }
     ],
     "prompt_number": 18
    },
    {
     "cell_type": "heading",
     "level": 3,
     "metadata": {},
     "source": [
      "Example 7.4 "
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "   \n",
      "\n",
      "#part(i)\n",
      "a1=146.;                #solubility at 70 degree\n",
      "a2=121.;                #solubility at 10 degree\n",
      "t1=58.;                 # percentage of solute content\n",
      "t2=40.66;\n",
      "\n",
      "# Calculation  and  Result\n",
      "x1=a1/(100+a1) *100;        #percentage of saturated solution at 50 degree\n",
      "tw=(t1/42.)/(x1/t2);    #the  percentage saturation\n",
      "print \"\\nthe  percentage saturation is :%f percent\"%(tw*100)\n",
      "\n",
      "#part(ii)\n",
      "p1=2000*.58;              #weight of solute in 200kg of solution 2000*.58\n",
      "#let x be the weight of  crystal formed after crystallisation\n",
      "#x=poly([0],'x');         #calc. x the weight of crystal\n",
      "t=231.743929  #roots((1160)-(x+(1055.02-.547*x)));             \n",
      "print \"\\n the weight of NaNO3 crystal formed after crystallisation :%f kg\"%t\n",
      "\n",
      "#part(iii)\n",
      "y=t/p1;            #yield = weight of NaNO3 crystal formed/weight of NaNO3\n",
      "print \"\\n the percentage yield is:%f percent\"%(y*100)\n",
      "#end"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "the  percentage saturation is :94.608102 percent\n",
        "\n",
        " the weight of NaNO3 crystal formed after crystallisation :231.743929 kg\n",
        "\n",
        " the percentage yield is:19.977925 percent\n"
       ]
      }
     ],
     "prompt_number": 19
    },
    {
     "cell_type": "heading",
     "level": 3,
     "metadata": {},
     "source": [
      "Example 7.5"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "  \n",
      "\n",
      "p1=.3;                   #percentage of the solute in the solution\n",
      "w1=1000.;                 #weight of the solution taken\n",
      "w2=142.;                 #molecular weight of Na2SO4.\n",
      "\n",
      "# Calculation  \n",
      "M1=(w2/(180+w2));        #solute (Na2SO4) present in the Na2CO3.10H2O solution\n",
      "s1=40.8;              #solubility of Na2SO4 at 30 degree per 100 gm of water\n",
      "s2=9.0;              #solubility of Na2SO4 at 10 degree per 100 gm of water\n",
      "#percent weight of solute in Na2SO4.10H2O= 144/322\n",
      "#let x be the weight of crystal formed \n",
      "#x=poly([0],'x');         #calc. x the weight of crystal\n",
      "t= 576.477290 #roots((w1*40.8/140.8)-(.442*x+(w1-x)*(s2/(100+s2))));             \n",
      "\n",
      "# Result\n",
      "print \"\\n the weight of  crystal formed after crystallisation :%f kg\"%t\n",
      "\n",
      "#end"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        " the weight of  crystal formed after crystallisation :576.477290 kg\n"
       ]
      }
     ],
     "prompt_number": 20
    },
    {
     "cell_type": "heading",
     "level": 3,
     "metadata": {},
     "source": [
      "Example 7.6 "
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "   \n",
      "\n",
      "s1=12.5;                  #solubility of Na2CO3 at 10 degree per 100 gm of water\n",
      "p1=.3;                   #percentage of the solute in the solution\n",
      "w1=2000.;                 #weight of the solution taken\n",
      "w2=106.;                 #molecular weight of Na2CO3.\n",
      "\n",
      "# Calculation  \n",
      "M1=(w2/(180+w2));        #solute (Na2CO3) present in the Na2CO3.10H2O solution\n",
      "#let x be the quantity of Na2CO3.10H2O crystal formed\n",
      "#x=poly([0],'x');         #calc. x the weight of crystal\n",
      "t= 1455.688623 #roots(w1*p1-M1*x-(w1-x)*(s1/(100+s1)));    \n",
      "\n",
      "# Result\n",
      "print \"\\n the weight of quantity of Na2CO3.10H2O  :%f kg\"%t\n",
      "#in the book the ans is wrong, they have calculated 2000*0.3-2000*12.5/112.5 as =x(miscalculation)\n",
      "\n",
      "p=(286./106)*w1*p1;           #weight of Na2CO3.10H2O crystal present in the original solution\n",
      "y=t/p;                 #percentage yield \n",
      "print \"\\n percentage yield :%f percent\"%(y*100)\n",
      "#end"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        " the weight of quantity of Na2CO3.10H2O  :1455.688623 kg\n",
        "\n",
        " percentage yield :89.920160 percent\n"
       ]
      }
     ],
     "prompt_number": 21
    },
    {
     "cell_type": "heading",
     "level": 3,
     "metadata": {},
     "source": [
      "Example 7.7 "
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      " \n",
      "s1=139.8;              #solubility at 80 degree per 100 gm of water\n",
      "s2=110.5;              #solubility at 20 degree per 100 gm of water\n",
      "w2=174.2;                 #molecular weight of K2CO3.10H2O\n",
      "\n",
      "# Calculation  \n",
      "M1=(138/w2)*100;        #water present in 100kg of K2CO3.10H2O\n",
      "#let x be the quantity of Na2CO3.10H2O\n",
      "#x=poly([0],'x');         #calc. x the weight of crystal\n",
      "t=108.634036 #roots(500*(139.8/239.8)-.7921*x-(500-x)*110.5/210.5);             \n",
      "\n",
      "# Result\n",
      "print \"\\n the weight of quantity of K2CO3.10H2O formed  :%f kg\"%t\n",
      "\n",
      "p=(174./138)*500*(139.8/239.8);       #weight of crystal present in the original solution\n",
      "y=t/p;                 #percentage yield \n",
      "print \"\\n percentage yield :%f percent\"%(y*100)\n",
      "#end"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        " the weight of quantity of K2CO3.10H2O formed  :108.634036 kg\n",
        "\n",
        " percentage yield :29.557504 percent\n"
       ]
      }
     ],
     "prompt_number": 14
    },
    {
     "cell_type": "heading",
     "level": 3,
     "metadata": {},
     "source": [
      "Example 7.8 "
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "  \n",
      "\n",
      "s1=20.51;                  #solubility at 10 degree per 100 gm of water\n",
      "w2=277.85;                 #molecular weight of FeSO4.7H2O\n",
      "\n",
      "# Calculation  and  Result\n",
      "#let x be the quantity of Na2CO3.10H2O\n",
      "#x=poly([0],'x');         #calc. x the weight of crystal\n",
      "t= 549.684973 #roots(900*.4-.5465*x-(900-x)*20.5/120.5);             \n",
      "print \"\\n the weight of quantity of FeSO4.7H2O formed  :%f kg\"%t\n",
      "\n",
      "p=(277.85/151.85)*900*(0.4);       #weight of crystal present in the original solution\n",
      "y=t/p;                             #percentage yield \n",
      "print \"\\n percentage yield :%f percent\"%(y*100)\n",
      "#end"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        " the weight of quantity of FeSO4.7H2O formed  :549.684973 kg\n",
        "\n",
        " percentage yield :83.447967 percent\n"
       ]
      }
     ],
     "prompt_number": 22
    },
    {
     "cell_type": "heading",
     "level": 3,
     "metadata": {},
     "source": [
      "Example 7.9"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      " \n",
      "#part(i)\n",
      "a1=229.7;              #solubility at 60 degree\n",
      "a2=174.7;              #solubility at 60 degree\n",
      "t1=68;                # percentage of sodium nitrate\n",
      "t2=30.34;\n",
      "\n",
      "# Calculation and  Result\n",
      "x1=a1/329.7 *100;        #percentage of saturated solution at 50 degree\n",
      "tw=(t1/32.)/(x1/t2);    #the  percentage saturation\n",
      "print \"\\nthe  percentage saturation is :%f percent\"%(tw*100)\n",
      "\n",
      "#part(ii)\n",
      "#let x be the weight of Cesium chloride crystal formed after crystallisation\n",
      "#x=poly([0],'x');        #calc. x the weight of crystal\n",
      "t=120.960000 #roots(1000*.68-(x+(1000-x)*174.7/274.7));             \n",
      "print \"\\n the weight of CaCl2 crystal formed after crystallisation :%f kg\"%t\n",
      "\n",
      "#part(iii)\n",
      "y=t/680.;          #yield = weight of CaCl2 crystal formed/weight of CaCl2\n",
      "print \"\\n the percentage yield of Cesium chloride  is:%f percent\"%(y*100)\n",
      "#end"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        "the  percentage saturation is :92.540632 percent\n",
        "\n",
        " the weight of CaCl2 crystal formed after crystallisation :120.960000 kg\n",
        "\n",
        " the percentage yield of Cesium chloride  is:17.788235 percent\n"
       ]
      }
     ],
     "prompt_number": 23
    },
    {
     "cell_type": "heading",
     "level": 3,
     "metadata": {},
     "source": [
      "Example 7.10"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "  \n",
      "\n",
      "s1=38.8;              #solubility at 30 degree per 100 gm of water\n",
      "s2=12.5;              #solubility at 10 degree per 100 gm of water\n",
      "w2=296;                 #molecular weight of Na2CO3.10H2O\n",
      "per=116./w2 *100;        #percentage solute in Na2CO3.10H2O\n",
      "\n",
      "#let x be the quantity of Na2CO3.10H2O\n",
      "w=200.;                    #original solotion weight\n",
      "\n",
      "# Calculation  \n",
      "m1=w*(s2/(s2+100));       #weight of Na2CO3.10H2O needed to dissolve Na2CO3 present in the original solotion \n",
      "w3=w-m1;                 #weight of water \n",
      "#w4=m1+per/100;            weight of Na2CO3 after dissolution\n",
      "x1=s1/(s1+100);           #weight fraction of solute after dissolution \n",
      "\n",
      "# Result\n",
      "print \"\\n the weight of quantity of Na2CO3.10H2O  formed  :%f kg\"%w3\n",
      "\n",
      "#for the total solution after dissolution\n",
      "#x=poly([0],'x');        #calc. x the weight of crystal\n",
      "t= 300.485784 #roots((m1+per*x/100)-((m1+per*x/100)+(w3+.609*x))*x1);             \n",
      "print \"\\nweight of Na2CO3.10H2O needed to dissolve Na2CO3 present in the original solution  %f kg\"%t\n",
      "\n",
      "#end"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        " the weight of quantity of Na2CO3.10H2O  formed  :177.777778 kg\n",
        "\n",
        "weight of Na2CO3.10H2O needed to dissolve Na2CO3 present in the original solution  300.485784 kg\n"
       ]
      }
     ],
     "prompt_number": 24
    },
    {
     "cell_type": "heading",
     "level": 3,
     "metadata": {},
     "source": [
      "Example 7.11"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "   \n",
      "\n",
      "s1=35.;                #percentage of solution\n",
      "x1=6000.;              #weight of Na2CO3 solution\n",
      "s2=21.5;              #solubility at 20 degree per 100 gm of water\n",
      "w2=296.;                 #molecular weight of Na2CO3.10H2O\n",
      "\n",
      "# Calculation  \n",
      "per=116./w2 *100;        #percentage solute in Na2CO3.10H2O\n",
      "w1=s1*x1;            #weight of solute\n",
      "w3=x1*0.04;          #weight of solution lost by vaporisation\n",
      "#let x be the quantity of Na2CO3.10H2O formed \n",
      "#making material balance \n",
      "#x=poly([0],'x');        #calc. x the weight of crystal\n",
      "t= 5049.122335 #roots(2100-(.391*x)-(6000-240-x)*(21.5/121.5));             \n",
      "\n",
      "# Result\n",
      "print \"\\n the weight of Na2CO3.10H2O crystal formed after crystallisation :%f kg\"%t\n",
      "\n",
      "\n",
      "#end"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        " the weight of Na2CO3.10H2O crystal formed after crystallisation :5049.122335 kg\n"
       ]
      }
     ],
     "prompt_number": 25
    },
    {
     "cell_type": "heading",
     "level": 3,
     "metadata": {},
     "source": [
      "Example 7.12"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      " \n",
      "\n",
      "C=1000.;                      #crystal formed in kg\n",
      "hf=26.002;                   #enthalpy of the feed at 80 degree in cal/g\n",
      "hl=-1.33;                   #enthalpy of the saturated sol at 30 degree in cal/g\n",
      "hc=-50.56;                 #enthalpy of crystal\n",
      "xf=40./(100+40);\n",
      "xm=30./(100+30);\n",
      "xc=151.84/277.85;        #151.84 is the weight of FeSO4\n",
      "        #component balance\n",
      "\n",
      "Hf=26.002;                #enthalpy of the feed at 80 degree in cal/g\n",
      "Hv=612.;                  #\n",
      "Hm=-1.33;               #enthalpy of the saturated sol at 30 degree in cal/g\n",
      "Hc=-50.56;             #enthalpy of crystal leaving the crystalliser\n",
      "from numpy import matrix\n",
      "from numpy import linalg\n",
      "#solving these we gt \n",
      "\n",
      "# Calculation  \n",
      "a=matrix([[1,-1,-1],[.286,-.231,0],[26.002,1.33,-612]])\n",
      "b=matrix([[10000],[5470],[-505600]])\n",
      "x=linalg.inv(a)*b;                    #solving out the values using matrices \n",
      "t1=x[0];                        #3 solution of the eqn\n",
      "t2=x[1];\n",
      "t3=x[2];\n",
      "\n",
      "# Result\n",
      "print \"\\n the feed rate F= : %f kg/hr \\n value of M= : %f kg/hr\\n value of V=: %f kg/hr\"%(t1,t2,t3)\n",
      "#end"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        " the feed rate F= : 45556.688340 kg/hr \n",
        " value of M= : 32723.865218 kg/hr\n",
        " value of V=: 2832.823122 kg/hr\n"
       ]
      }
     ],
     "prompt_number": 26
    },
    {
     "cell_type": "heading",
     "level": 3,
     "metadata": {},
     "source": [
      "Example 7.13 "
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      " \n",
      "\n",
      "import math\n",
      "C=800.;                       #crystal formed in kg/hr\n",
      "t2=49.;                        #temp. of the entering fed\n",
      "t1=27.;                       #temp. of the product\n",
      "t3=21.;                       #temp. of the leaving cooling water\n",
      "t4=15.;                      #temp. of the enetring  cooling water\n",
      "U=175.;                      #overall heat transfer coefficient\n",
      "F=140*151.85/277.85;       #feed concentration \n",
      "xf=F/240;                  #concentration in feed solution\n",
      "P=74*151.85/277.85;        #product concentration \n",
      "xm=P/174;                  #concentration of FeSO4 in product solution\n",
      "xc=151.85/277.85;         #\n",
      "       \n",
      "# Calculation  \n",
      "#solving these we get\n",
      "F=800*.3141/0.0866;        #feed conc.\n",
      "M=F-C;                     #product concentration \n",
      "        #making energy balance\n",
      "        #heat to be removed by cooling water =heat to be removed from solution + heat of crystallization\n",
      "cp=.7;                    #specific heat capacity\n",
      "dt=(t2-t1);              #change in temp.\n",
      "dh=15.8;                 #heat of crystallization\n",
      "Q=F*cp*dt+dh*C;          #heat to be removed by cooling water\n",
      "cp=1;                    #specific heat capacity of water\n",
      "dt=(t3-t4);                   #change in temp.\n",
      "mw=Q/(cp*dt);            #cooling water needed\n",
      "\n",
      "# Result        \n",
      "print \"\\n cooling water requiement is :%f kg/hr\"%mw\n",
      "    #Q=U*A*(dtlm)\n",
      "dtlm=((t2-t3)-(t1-t4))/(math.log((t2-t3)/(t1-t4)));#log mean temp. difference\n",
      "A=Q/(U*dtlm);                    #area of the crystallizer section\n",
      "l=A/1.3;\n",
      "print \"\\n length of crystallliser sections needed is :%f m\"%l\n",
      "\n",
      "#end"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "\n",
        " cooling water requiement is :9554.149346 kg/hr\n",
        "\n",
        " length of crystallliser sections needed is :13.343753 m\n"
       ]
      }
     ],
     "prompt_number": 27
    }
   ],
   "metadata": {}
  }
 ]
}