{ "cells": [ { "cell_type": "markdown", "metadata": { "collapsed": false }, "source": [ "# The Non Random Two Liquids (NRTL) model for *excess Gibbs energy* ($g^E$) and a case study of Liquid-Liquid equilibria of Ethyl acetate (1) + water (2) + ethanol (3)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Having previously discussed *Excess thermodynamic properties*, excess Gibbs energy *models*, the NRTL model specifically, and VLE, we now proceed to study LLE." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Requiremens\n", "As usually we start by gathering in the initial cells any packages what we shall use in the current notebook." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## The NumPy package\n", "for array structures and operations" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": true }, "outputs": [], "source": [ "import numpy as np" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## The pyplot interface from the matplotlib package\n", "for generating plots" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": true }, "outputs": [], "source": [ "from matplotlib import pyplot as plt\n", "%matplotlib inline" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## physical constants in the international system of units from the scipy package" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false, "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "R = 8.3144598 J.mol⁻1.K⁻1\n" ] } ], "source": [ "from scipy.constants import R\n", "\n", "# print it to check its value\n", "print('R = ',R,'J.mol⁻1.K⁻1')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# The NRTL model\n", "as presented in previous lecture, is reproduced below in a minimalist numpy/numba format" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [], "source": [ "from numba import jit\n", "@jit\n", "def Gamma(T,c_x,q_alpha, q_A):\n", " q_tau = q_A/T\n", " q_G = np.exp(-(q_alpha*q_tau))\n", " l_D = ((1/((q_G.T) @ c_x)).T)\n", " q_E = (q_tau*q_G) * l_D \n", " gamma = np.exp(((q_E+(q_E.T))-(((q_G * l_D) * (c_x.T)) @ (q_E.T))) @ c_x)\n", " return gamma" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# System target of this case study\n", "Ethyl acetate (1) + water (2) + ethanol (3)\n" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# Ethyl acetate (1) + water (2) + ethanol (3)\n", "\n", "# some identification variables\n", "# which integer index shall correspond to which component here\n", "i_EA = 0\n", "i_W = 1\n", "i_E = 2\n", "\n", "# name of the components of the system in a format suitable for labeling of the plots\n", "compNames = ['ethyl acetate', 'water', 'ethanol']\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Fitted parameters\n", "from Renon and Prausnitz, 1969." ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# 3 binary aĺpha parameters\n", "\n", "alpha12 = 0.4\n", "\n", "alpha23 = 0.3\n", "\n", "alpha13 = 0.3\n", "\n", "# 6 binary Dgij parameters\n", "Dg12 = 1335 * 4.184 #J/K\n", "Dg21 = 2510 * 4.184 #J/K\n", "\n", "Dg23 = 976 * 4.184 #J/K\n", "Dg32 = 88 * 4.184 #J/K\n", "\n", "Dg13 = 301 * 4.184 #J/K\n", "Dg31 = 322 * 4.184 #J/K" ] }, { "cell_type": "markdown", "metadata": { "collapsed": true }, "source": [ "## Feeding the fitted parameters to the model in matrix structure:\n", "we will assemble the parameters in a matrix structure compatible with the current imlementation of the model" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "collapsed": false }, "outputs": [], "source": [ "#assemble matrix with regressed parameters Dg_i,j, according to the model all diagonal terms are zero\n", "Dg = np.array([[0, Dg12, Dg13],\n", " [Dg21, 0, Dg23],\n", " [Dg31, Dg32, 0]])\n", "\n", "\n", "#assemble symmetric matrix alpha\n", "alpha = np.array([[0, alpha12, alpha13],\n", " [alpha12, 0, alpha23],\n", " [alpha13, alpha23, 0]])\n", "\n", "A= Dg/R" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Thermodynamic condition for the system target of the case study\n", "* ELL equilibria at constant temperature of 70 °C and constant atmospheric pressure\n", "* Varying in phases composition, overall composition and relative amount of phases" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "collapsed": true }, "outputs": [], "source": [ "T = 273+70 #K" ] }, { "cell_type": "markdown", "metadata": { "collapsed": true }, "source": [ "# Liq-Liq Equilibria Flash\n", "Now we start discussing the Liq-Liq equilibria flash calculation\n", "\n", "it works as follows:\n", "\n", "The degrees of Freedom for a flash calculation are temperature - T, pressure - P and global composition - z\n", "\n", "\n", "\n", "**Equilibriuma criteria**\n", "\n", "$$\\mu_{i}^{\\rm {L1}}=\\mu_{i}^{\\rm {L2}}, \\forall i$$\n", "\n", "**derived criteria after analytical simplification of repeated contributions:**\n", "\n", "$$x_{i}^{\\rm {L1}} \\gamma_{i}^{\\rm {L1}}= x_{i}^{\\rm {L2}} \\gamma_{i}^{\\rm {L2}}, \\forall i$$\n", "\n", "**Devised algorithm**\n", "\n", "based on Rachford and Rice\n", "successive substitution (fixed point search) of K,XI,XII,beta meeting the following criteria\n", "\n", "|*variables* | number |\n", "| :-: | :-: |\n", "| $K$ | (C) |\n", "| $\\gamma^{I}, \\gamma^{II}$ | (2C) |\n", "| $x^{I}, x^{II}$ | (2C) |\n", "| $\\beta$ | (1) |\n", "| **total** | **(5C+1)** |\n", "\n", "| - - - - - - - - - - - - - - - - *equations* - - - - - - - - - - - - - - - - | number |\n", "| :-: | :-: |\n", "| $K(\\gamma^{I},\\gamma^{II})=\\gamma^I/\\gamma^{II}$ | (C) |\n", "| $\\gamma=f^{\\gamma}(x)$ | (2C) |\n", "| $x^I(\\beta,K)=$ | (C) |\n", "| $x^{II}(K,x^I)=Kx^I$ | (C) |\n", "| $F(\\beta ,K)= \\sum_i \\left[ \\frac{z_i(K_i-1)} {1+ \\beta (K_i-1)} \\right]=0$ | (1) |\n", "| **total** | **(5C+1)** |" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## A closure for the model\n", "\n", "Noticing how the recursive use of the model is to be performed:\n", "* the model is a function of T, x, alpha and A\n", "* T is constant throughout all calculations of interest in this notebook\n", "* the parameters matrix alpha and A depend on the components present in the system and a indexing order specified, however not on specific composition\n", "---\n", "* we could use with convenience a model implementation tha provides gamma as a function of x at constant pre-specified T alpha and A\n", "\n", "we will use th lambda function to create that convenient interface implementation form the previously implemented model." ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "collapsed": true }, "outputs": [], "source": [ "#using the lambda function, create a closure defining the model NRTL with constant T and paramters for the algorithm to work with.\n", "MODEL = lambda x: Gamma(T,x,alpha,A)" ] }, { "cell_type": "markdown", "metadata": { "collapsed": true }, "source": [ "# The algorithm\n", "based on Rachford and Rice (1952) approach to LV equilibrium\n", "\n", "\n", "Ref: Rachford HH, Rice JD, Petroleum Trans AIME 1952;195:327-328" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## explicit implementation\n", "first we provide an explicit (regarding the loops through the lists of comps and phases) implementation\n", "\n", "* note how the 4th argument is MODEL, which shall match a function of one variable, correspondig to the model for gamma as a function of x under study." ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "collapsed": false }, "outputs": [], "source": [ "def ELLflash_explicit(Z,beta0,K0,MODEL,qolog):\n", " \n", " #copy intial guesses to local variables\n", " beta=beta0.copy() #we use the '.copy()' function to enforce the creation of *copies* and not *views*,\n", " # so the local variables initially assume the same values of the initial guesse but tehn vary independently\n", " K=K0.copy()\n", "\n", " converged = 0 # flag indicating convergence, 0 means not converged yet\n", " \n", " if qolog: #consider a logical variable to enable or disable the logging of every intermediate step values and reporting it\n", " itlogi=0\n", " itlogv=np.ndarray(2,dtype=object)\n", " itlogv[0]=np.zeros(100*100)\n", " itlogv[1]=np.zeros([100*100,3])\n", " \n", " #initialize local arrays for intemediate values and for results\n", " a = np.zeros(3)\n", " XI = np.zeros(3)\n", " XII = np.zeros(3)\n", " \n", " #initialize counters of total number of iterations\n", " looped2=0\n", " looped3=0\n", " \n", " #managing loop for fixed point point algorithm\n", " looping2 = 0\n", " while ( (looping2 == 0) # means do at least once\n", " or ((ResK)>1e-5 # convergence criteria\n", " and looping2 < 100) ): # max number of iterations\n", "\n", " # copy k from previous iteration\n", " prevK = K.copy()\n", " \n", " #Solve RachfordRice equation for beta with a newton raphson loop\n", " looping3 = 0\n", " while ( (looping3 == 0) # means do at least once\n", " or ((ResBeta)>1e-5 # convergence criteria\n", " and looping3 < 100) ): #max number of iterations\n", " \n", " prevbeta = beta.copy()\n", "\n", " for i in range(3):\n", " a[i] = ( (K[i]-1) / (1+beta*(K[i]-1)) ) \n", " \n", " R=0 #residue funtion (F)\n", " for j in range(3):\n", " R+=Z[j]*a[j]\n", "\n", " J=0 #jacobian (Fprime)\n", " for j in range(3):\n", " J-=Z[j]*a[j]*a[j]\n", " \n", " beta -= R/J #NR step \n", " \n", " if beta[0,0]<0:\n", " beta[0,0]=0\n", " \n", " if 1L2 (II)\n", "* Then the new beta is 1-beta\n", "* the new x1 is x2 and the new x2 is x1,\n", "* then the new k=x2/x1 is old x1/x2, therefore new_K is the old_K^-1\n" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "collapsed": false, "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "at T 343 Z [[ 0.42 0.52 0.06]]\n", "with ig of k0 [[ 29. 0.36842105 2.33333333]] beta0 [[ 0.71]]\n", "solution is\n", "xi [ 0.02191969 0.94784455 0.03023576]\n", "xii [ 0.58176493 0.34614 0.07209507]\n", "beta [[ 0.71105421]]\n", "converged? 1 -- 1 means yes\n" ] } ], "source": [ "beta0=1-BETA_test\n", "k0=K_test**-1\n", "Z=Z_test\n", "\n", "ans=ELLflash_explicit(Z,beta0,k0,MODEL,True)\n", "\n", "print('at T', T, 'Z', Z.T)\n", "print('with ig of k0', k0.T,'beta0', beta0)\n", "print('solution is')\n", "print('xi',ans[0].T)\n", "print('xii',ans[1].T)\n", "print('beta',ans[2])\n", "print('converged?',ans[3], '-- 1 means yes')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "* isn't\n", "\n", ">- at T 343 Z [[ 0.42 0.52 0.06]]\n", ">- with ig of k0 [[ 0.03448276 2.71428571 0.42857143]] beta0 [[ 0.29]]\n", ">- solution is\n", ">- xi [ 0.58176023 0.34614498 0.07209479]\n", ">- xii [ 0.02191961 0.9478448 0.03023559]\n", ">- beta [[ 0.28893979]]\n", ">- converged? 1 -- 1 means yes\n", "\n", "\n", "\n", "* the same solution as\n", "\n", ">- at T 343 Z [[ 0.42 0.52 0.06]]\n", ">- with ig of k0 [[ 5.08089396 0.13232837 0.96433093]] beta0 [[ 0.36027409]]\n", ">- solution is\n", ">- xi [ 0.02191977 0.94784429 0.03023594]\n", ">- xii [ 0.58176983 0.3461348 0.07209537]\n", ">- beta [[ 0.71104794]]\n", ">- converged? 1 -- 1 means yes\n", "\n", "\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# the mathematical posed system has 2 equivalent solutions, convergence to one or another depends on the initial guess\n", "\n", "# the mathematical posed system has also a inifinity of trivial solutions, convergence to that is dependent on initial guess too, when x1==x2==z exactly , k->[1,1,1] exactly, while beta could assume any value and it would not alter the value of our residue functions for there is a K-1 in the numerator" ] }, { "cell_type": "markdown", "metadata": { "collapsed": true }, "source": [ "# with one set of initial guesses the problem converges" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "collapsed": false, "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "at T 343 Z [[ 0.42 0.52 0.06]]\n", "with ig of k0 [[ 0.1 1. 10. ]] beta0 [[ 0.5]]\n", "solution is\n", "xi [ 0.58175966 0.34614558 0.07209475]\n", "xii [ 0.0219196 0.94784483 0.03023557]\n", "beta [[ 0.28893906]]\n", "converged? 1 -- 1 means yes\n" ] } ], "source": [ "#we picked an ad-hoc known problematic point here \n", "\n", "beta0=np.array([[.5]])\n", "k0=np.array([[0.1 , 1 , 10]]).T \n", "Z=Z_test\n", "\n", "ans=ELLflash_explicit(Z,beta0,k0,MODEL,True)\n", "\n", "print('at T', T, 'Z', Z.T)\n", "print('with ig of k0', k0.T,'beta0', beta0)\n", "print('solution is')\n", "print('xi',ans[0].T)\n", "print('xii',ans[1].T)\n", "print('beta',ans[2])\n", "print('converged?',ans[3], '-- 1 means yes')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## see the it log" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig1, ax1 = plt.subplots(1,1)\n", "ax1b = ax1.twinx()\n", "\n", "xiz=np.arange(ans[5])\n", "\n", "ax1.plot(xiz[0:ans[5]-2],(ans[6][0][0:ans[5]-2]))\n", "\n", "ax1b.semilogy(xiz[0+2:ans[5]],(ans[6][1][0+2:ans[5],0]))\n", "ax1b.semilogy(xiz[0+2:ans[5]],(ans[6][1][0+2:ans[5],1]))\n", "ax1b.semilogy(xiz[0+2:ans[5]],(ans[6][1][0+2:ans[5],2]))\n", "\n", "\n", "ax1.set_xlim(0,ans[5])\n", "ax1.set_ylim(0,1)\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": { "collapsed": true }, "source": [ "# however with a dfferent one it does not" ] }, { "cell_type": "code", "execution_count": 45, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "at T 343 Z [[ 0.42 0.52 0.06]]\n", "with ig of k0 [[ 0.9 1. 1.1]] beta0 [[ 0.5]]\n", "solution is\n", "xi [ 0.42 0.52 0.06]\n", "xii [ 0.41973892 0.52026554 0.05999553]\n", "beta [[ 0.]]\n", "converged? 0 -- 1 means yes\n" ] } ], "source": [ "beta0=np.array([[.5]])\n", "k0=np.array([[.9 , 1 , 1.1]]).T \n", "Z=Z_test\n", "\n", "ans=ELLflash_explicit(Z,beta0,k0,MODEL,True)\n", "\n", "print('at T', T, 'Z', Z.T)\n", "print('with ig of k0', k0.T,'beta0', beta0)\n", "print('solution is')\n", "print('xi',ans[0].T)\n", "print('xii',ans[1].T)\n", "print('beta',ans[2])\n", "print('converged?',ans[3], '-- 1 means yes')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# However note,\n", "\n", "don't \n", "\n", ">- xi [ 0.42 0.52 0.06]\n", "\n", "and\n", "\n", ">- xii [ 0.41973892 0.52026554 0.05999553]\n", "\n", " in the solution found\n", " \n", " represent the same phase?" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## see the it log" ] }, { "cell_type": "code", "execution_count": 46, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig1, ax1 = plt.subplots(1,1)\n", "ax1b = ax1.twinx()\n", "\n", "xiz=np.arange(ans[5])\n", "\n", "ax1.plot(xiz[0:ans[5]-2],(ans[6][0][0:ans[5]-2]))\n", "\n", "ax1b.semilogy(xiz[0+2:ans[5]],(ans[6][1][0+2:ans[5],0]))\n", "ax1b.semilogy(xiz[0+2:ans[5]],(ans[6][1][0+2:ans[5],1]))\n", "ax1b.semilogy(xiz[0+2:ans[5]],(ans[6][1][0+2:ans[5],2]))\n", "\n", "\n", "ax1.set_xlim(0,ans[5])\n", "\n", "ax1.set_ylim(0,1)\n", "ax1b.set_ylim(.9,1.1)\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false }, "source": [ "# note how the K values converged to 1 instead ofg out from 1" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# using linear algebra" ] }, { "cell_type": "code", "execution_count": 47, "metadata": { "collapsed": false }, "outputs": [], "source": [ "def ELLflash(Z,beta0,K0,MODEL): #ELLflash_linalg\n", " \n", " beta=beta0.copy()\n", " K=K0.copy()\n", " \n", " converged = 0\n", " \n", " looped2 = 0\n", " looped3 = 0\n", " \n", " looping2 = 0\n", " while ( (looping2 == 0) # means do at least once\n", " or ((ResK)>0.0001 # convergence criteria\n", " and looping2 < 100) ): # max number of iterations\n", "\n", " prevK = K.copy() \n", " \n", " looping3 = 0\n", " while ( (looping3 == 0)\n", " or (ResBeta>0.0001 # convergence criteria\n", " and looping3 < 100) ): #max number of iterations\n", " \n", " prevbeta = beta.copy()\n", " \n", " a = (1/(1+beta*(K-1))) * (K-1)\n", " beta = beta+(1/((Z.T*a.T) @ a)) @ (Z.T @ a)\n", "\n", " if beta[0,0]<0:\n", " beta[0,0]=0\n", " \n", " if 1" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "#create a figure\n", "fig1, ax1 = plt.subplots(1,1)\n", "\n", "# we create a plot with a secondary y axis using the twinx fnction\n", "ax1b = ax1.twinx()\n", "\n", "#create a common x axis representing the iterations\n", "xiz=np.arange(ans[5])\n", "\n", "#plot itlog for beta (dont plot last 2 point to create visual cue that beta belongs to left axis)\n", "ax1.plot(xiz[0:ans[5]-2],(ans[6][0][0:ans[5]-2]))\n", "\n", "#plot itlog for Ks (dont plot first 2 point to create visual cue that K belongs to 2nd axis)\n", "ax1b.semilogy(xiz[0+2:ans[5]],(ans[6][1][0+2:ans[5],0]))\n", "ax1b.semilogy(xiz[0+2:ans[5]],(ans[6][1][0+2:ans[5],1]))\n", "ax1b.semilogy(xiz[0+2:ans[5]],(ans[6][1][0+2:ans[5],2]))\n", "\n", "\n", "ax1.set_xlim(0,ans[5]-1)\n", "ax1.set_ylim(0,1)\n", "\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# As in Lecture GE1, did linear algebra make a difference here?" ] }, { "cell_type": "code", "execution_count": 50, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "100 loops, best of 3: 19 ms per loop\n", "converged? 1 -- 1 means yes. to beta = [[ 0.28895829]]\n", "100 loops, best of 3: 5.08 ms per loop\n", "converged? 1 -- 1 means yes. to beta = [[ 0.28904542]]\n" ] } ], "source": [ "ig = iguess(Z,MODEL)\n", "beta0=ig[0]\n", "k0=ig[1]\n", "# no linalg, close to solution\n", "%timeit ELLflash_explicit(Z,beta0,k0,MODEL,False)\n", "ans=ELLflash_explicit(Z,beta0,k0,MODEL,False)\n", "print('converged?',ans[3],'-- 1 means yes.','to beta = ',ans[2])\n", "\n", "# linalg, close to solution\n", "%timeit ELLflash(Z,beta0,k0,MODEL)\n", "ans=ELLflash(Z,beta0,k0,MODEL)\n", "print('converged?',ans[3],'-- 1 means yes.','to beta = ',ans[2])\n", "#approximately 1/3 ~ 1/4 the time here" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# grid calc plot\n", "as a simple idea to vary the independent variables of the system under study -- that is the overall composition\n", "and calculate the equilibrium condition for each we propose the following grid:" ] }, { "cell_type": "code", "execution_count": 106, "metadata": { "collapsed": false, "scrolled": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "attempnt calculation for 196\n", "done 22\n" ] } ], "source": [ "nspace = 20\n", "\n", "Z1 = np.linspace(0,1,nspace) # a linear grid in Z1\n", "Z2 = np.linspace(0,1,nspace) # a linear grid in Z2\n", "\n", "Z1[0]=1e-9\n", "Z2[0]=1e-9\n", "\n", "\n", "Z1[-1]=1-2e-9\n", "Z2[-1]=1-2e-9\n", "\n", "#linear space for z1,z2 inside [0,1]x[0,1]\n", "rawZs = np.ndarray((nspace,nspace), dtype=object)\n", "\n", "flags = np.zeros((nspace,nspace))\n", "\n", "for i in range(nspace):\n", " for j in range(nspace):\n", " rawZs[i,j]=np.array([Z1[i],Z2[j],1-Z1[i]-Z2[j]]) #calculate the 3rd molar fraction, which is dependent on the previous 2\n", " if ( Z1[i] + Z2[j] < 1 ): # filter all points in the cartesina Z1,Z2 that meet the requirements of non-negative and summing 1 molar fractions\n", " flags[i,j] = 1 #auxiliar flags array help with thais fltering\n", "\n", "Zs = rawZs[np.where(flags==1)] #valid zs - the simplex where z1+z2<=1 and z3=1-z1-z2 (conseq z1+z2+Z3=1 forall z1,z2,z3 in [0,1])\n", "\n", "npts = Zs.shape[0] #number of valid pts\n", "\n", "print('attempnt calculation for',npts)\n", "\n", "Results_beta = np.zeros([npts])\n", "Results_conv = np.zeros([npts])\n", "Results_Z = np.zeros([npts,3])\n", "Results_XI = np.zeros([npts,3])\n", "Results_XII = np.zeros([npts,3])\n", "Results_K0 = np.ndarray(npts, dtype = object)\n", "Results_K = np.ndarray(npts, dtype = object)\n", "Results_beta0 = np.zeros([npts])\n", "\n", "l=0\n", "for k in range(npts):\n", " \n", " # for each point in the grid,\n", " \n", " # calculate the initial guess\n", " beta0, K0 = iguess(np.array([Zs[k]]).T,MODEL)\n", " \n", " #then calculate the flash\n", " ans = ELLflash(np.array([Zs[k]]).T,beta0,K0,MODEL)\n", " \n", " if (0ans[2] and ans[3]!=0):\n", "\n", " Results_XI[l,:] = ans[0][0:3,0]\n", " Results_XII[l,:] = ans[1][0:3,0]\n", " Results_beta[l] = ans[2]\n", " Results_conv[l] = ans[3]\n", "\n", " Results_Z[l,:] = Zs[k]\n", " \n", " Results_beta0[l] = beta0[0,0]\n", " Results_K0[l] = K0\n", " \n", " Results_K[l] = Results_XII[l,:]/Results_XI[l,:]\n", " \n", " l+=1\n", " \n", "print('done',l)\n", " \n", "ndone=l-1" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "* of a grid with 196 points we foundo solutions for 22 points\n", "* lets soon see wether we tried calculations at conditions that do not have solution, or at conds that had solutions but our algorithms missed" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# filter only the converged results" ] }, { "cell_type": "code", "execution_count": 107, "metadata": { "collapsed": false }, "outputs": [], "source": [ "fResults_XI = Results_XI[:][np.where(Results_conv!=0)]\n", "fResults_XII = Results_XII[:][np.where(Results_conv!=0)]\n", "fResults_beta = Results_beta[np.where(Results_conv!=0)]\n", "fResults_Z = Results_Z[:][np.where(Results_conv!=0)]" ] }, { "cell_type": "code", "execution_count": 108, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# identify the results for analysis and plotting\n", "XI_EA=fResults_XI[:,0]\n", "XI_W=fResults_XI[:,1]\n", "XI_E=fResults_XI[:,2]\n", "\n", "XII_EA=fResults_XII[:,0]\n", "XII_W=fResults_XII[:,1]\n", "XII_E=fResults_XII[:,2]\n", "\n", "Z_EA=fResults_Z[:,0]\n", "Z_W=fResults_Z[:,1]\n", "Z_E=fResults_Z[:,2]" ] }, { "cell_type": "code", "execution_count": 109, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# plot mole fractions results in axis of E vs EA plot(dataEA,dataE)" ] }, { "cell_type": "code", "execution_count": 110, "metadata": { "collapsed": false, "scrolled": true }, "outputs": [ { "data": { "image/png": "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\ntmondbly3Kc2cdpZsns3dXTKlOHefdeujCDp31+daOeN203J8MBA7ik//bRIo0aMbpo1y3lfLl7k\n+Q9Y35wAACAASURBVAsWpO5Q797cH2/Visl/Tlm+nNLnNWqwLw89xGt65x17B7WHhATutefPT3ns\np59mol7lynQ+O+X4cd6Te+7h9fTowet77DFnNSU8zJzJff/GjdmXli3poHWSXe7h6lX6T/Ln533u\n04daSvXr20dBebNtG/1L5cuL9O0r0rkzbT73nHPfgdstMm4c/QfBwexX/fqUSbEqPmXG+fP0ExUq\nxICIJ5+kM75tW9bMMD21iabTokW8npo1eX8ffJBJgcOH+yY1r8mKpL+TGsCXAL6weqXlpH51FOAX\necYMDhxOIjc82bPTpiUfOC9d4kDWvr2zP46xYzl4ppRY2LyZk8SPP9rbuHqVk9srrySX24iNpaZT\nUJB5tFVK1qzh9f/5Z3JH/alTjD56/nl7GyJ0JLdokVQASYT2Fi6kfSeV4M6c4YA3blxy4biYGEpW\n1KvnbBKeMYN2UgrzHTjAKLTx4+1tJCRw0OzVK7lOV0ICHd9Fi9Ixb4cncmjmzOTfjQsXOFF06uQs\nQGLkSA7GKYX51q9noMW8efY2oqL4EDBkSPJAiBs3KPBYvrzSgX9T06lyZdlXsCADCLz7HhbGCfn/\n/s++L5qsTIZMEH1Ur7Sc1K+OeudBjB/vTCuoVy9rcbX4eP4B22kFXbrEp0cr+YUtW5xpBYWE8Enf\nanB5/nlnWkENG1qrikZGciC00wrat48rl+ho8+M//WSrFSQiDP198UXzY2435SbstII8WldW0UGh\noXzSvXJFbeePP/jUb/U5vP++yFNPqW2IUOvqs8/Mj8XGcsKyKzbl0bqykipZu5YRZHYPJ599xv5Y\nfWf69bPW5UrE7XJJSIkSEpg3r3mk06VLXJ2YlWrV/FdI/wkiVUNWlcudlpOlqaPeE0RkJCWqVVsY\nUVGUV1a1mTyZiU8qvvlG5PHH1W2aNLEv9dmggTppz7PaUbFvH1csqm2kN99kgpqK115TJ+3Fx/Mp\nVzXRuN32Nb3//JNPqCp+/12dtCfC7apJk9RtOndWJ+1duMDvg9Wk6GmTL586z+HLL7nNo+LTT9VJ\neyJcTa5YoW5z333qpL3du7nyUrF9u0i5chJ67Ji1ptOrrzpXNtZkRfwed21j7QzDqGEYxk4A+wDs\nNwxju2EY1f12eqQHefMCRYuqC7mcP88w1gIFrNtUq8YQQhWnTrGdivSwU7EiHZnx8WoblSurnZzp\n0ZccOXgelZ3YWDq4VeG5men+FipEx+yFC9Ztzp5laK5K6yozXZPHhigCTU6eBKpVQ1DZstaaTk76\norktcRKMPQnA/4lIkIiUBjAYwOSM7ZYNN24kTQBWFCjAAVdVJS0szD4yJTCQ7VSkh53Tp4G771ZH\nRQUGUqBQNSCkR19E7O0EBPBlJ36XWe7v1aus7KbKYyhUiA8dqsqFmemaPDZUUWeFCwOhoYCItaaT\nk75obk/slhgAdjv5XUa/4L3FNG2aWk7ZQ4cO1lsTbjdlvH/6SW3DoxVktVV15Ai3WuycsR99pN6a\nGDrU3sHs0Qqy2pqIi2O0ll0Vto0bGRFmVZFs6VI6R+2csQMGqLcmeva0dzDHxDDqyUyuQ4SRX060\nrn74gZFPVn3+5hs6mO1o3Zo1Psxwu+kD+vVXtY3jx3lNVltVe/c607oaMYLRdla89pq9g9kjR79+\nfbJfJ4t0ypNH4p0UvdJkVTLOBwHgFwDvAiiT+BoK4Je0nNSvjnomiHXruFef4gtvyqZNjEhJqXGU\nkMB9+tq1nVVxe+UVDj4pq9idOkXpBCdRNpcucfD+4ovUg9jcubwmq0EyZdtSpVJHcV2/zgHZySDo\ndlPu4Ykn+D5v9u6ln8Ou/oIIJ8fChSkHkdL+p5/SEeuk8t/YsQwY8I6oEuE9a9bMWZTNjRu08dZb\nqX00q1axn07Kl/71Fz+LlMV+4uO5V9+wobMqbgMHMqoqpQhhWBgn+QkT7G2cP8/PIiQk+XfG7Wbk\nXLFitGfHDz/ws0gp8nj1qoS2by/BRYua+yY0/xUydIIoAIa27kh8fQ6gQFpO6ldHAT7dWQmyWbF4\nMf+QWrZk6OHrr9Ox16qVefUxM+LjRV5+OSl/YvRoDq758jE6xqku1D//iNSqRUG9d95hDHq9enzC\n27bN+TVNncrInk6dGO740kscAHv0cK4LFRPDSLDChfn+UaMYb1+woDMhRA9btnDia9CA1/P228yl\nqFMnqWSnHW43z58vH1dZo0dTADF/fhbncZrbce4cQ3dLl2ZoqEfYsFgxroqc8scf/J4FB7Nfr73G\nSLW2bZ2JO4pwdfbcc/ycBgzgNfXowWscN855Xw4d4mquenWuMocN44NNxYoiu3Y5txMSwr506cK+\nvPACV769e4v72jWt6fTfxu9xN0O1mNITwzBEZs0COnfm3rcvxMUBv/ySlEn98MNAnTq+dyI8HJg9\nm1pMJUsCPXpw39oXRJgRu3IlM6kbN2ZGq6/ZtTEx1FA6epRO+65d6ej2lcOHgXnzkjKpu3enL8QX\nXC5g0SJg0yZeR3Aw9YJ8zci+cAH46Sfe5yJFgMcfB4oX980GwKz5P/+kL6FWLeo53XGHbzY8Okoe\nLaZHHmFWtq+cPMnvzKVL1O/q0UMdOGGGCHWYVq/m/5s2ZWa3L3pOAD/j2bOZSZ0vH/DYY0C5cjcP\na02n/ywZJ7VhGEY9AG+D20s3Pagicp+/J/UHwzAkq0xmGk1WRURrOv0HydAJ4hCA18Ea1TfLs4mI\nTZhG+mIYhshHHwFPP83IDF+4cIEKn7t3cwXRsSPQoYPvOkrbtgE//JC0gnj6aaBKFd9s3LgBzJ2b\npObauDHw5JPq0EozTpyg8qlHi6l7d2og+fLU7nkynTMnaQXRr5+65KYZUVG8L54VRJs2XNH4utI7\ncICfk0fNtXdv31d6CQnAH38ACxcmrSD69vV9pXf+PDBtGvD339Ri6tQJePBB31Z6kqjn5K3m+vTT\nVM31hevXuVr0qLk2bQr06uW7jlJoKL8z//zDaK4ePSxXeparCbebOlfz53MVW6UKvzP+rPQ0twq/\nJwgna9QIEfldRI6LSJjn5e8J08ShQ/zjmjLF+Xu++44D37593PqoXRsYO5byz//848zGtWtAly5A\nt24caDxbQi1bUkra5XJmZ9s25g3MmMGJoWVLbjWVLUsRQCeIAKNG8TouXaKgXfnywEsvUWhPFefv\nTUQEB5pXXmGf2rXje2vVAsaMcWYD4EBcrhwHr5YteV3Tp9Pmjh3ObCQkAAMGAK1acdJu354hzJ57\nripr6s2RI0D16sD48bw/wcEc4CtW5D13yqRJzAM5coRbOffdB4wezXtjF77qISaGDyK9egHFinFy\ncbv5Gb3yiroUrjebNvHznT2bg3nz5tzOK1eODxlOEAGGDqXQZUwM72+ZMkn3/PLlVG8JCgpKnTdx\n6hTQsCEwZAjvT7t2DM+uUYP3XPPfw85JASqxfgugJ4AunldaHB/+vOCJYjp8mJEdThzVS5YwI/jA\ngdTHJkygc9iJU7dXL2ZTp4x4io6mE9SJREZ4OGUwUkb8iDBipnBhZsbaERJCh2VKGQe3m+U9mza1\nd5q7XBQbHDIkddvTpxllYyeRIULRxMKFGTabkrlz6Ry2kpvw5vXXGTSQMss5NpZZ1E4kMqKj6Sw3\nq5K3fz+/B8uX29v5/Xc6uc0yxMePpwPeiWBfly7sd0qH75Ur/IxsJDJEhBFKVkEZq1fz3u/fb2/n\ns88YHJEyKMPlolRK69bK70xoaKgEt24t9e+6S/YNGpS67cmTdJrPmGHfF82/QYZGMf0AYBuA78CK\nb9MATE3LSf3qqHcexPz5zrSC7PIcOna0HwiPHlXnOZw+zWgbO62gd99V5zmMG2c/ECYkmIvaeXC7\nRapVs9cKWrZMXdN782ZnWkG9eqlDfAcNsh8IL11iZI9VnsPVq860gkJC1CG+P/7IgdCOhg3VNb3b\ntGHYqAqP1pVVCHVoKKPFvEUbzXj9dXVN71GjGCGlwqN1tXev+XGXi6J/ZpO8F+7ff5eQoCDrSKc1\naxid5zSiT3MrydAJ4lBaTpBer2QTRHw8B42UcfPenD/PgUeV5zB/PkMXVXz0kX0CW8eO9rLfVaqo\n4/AvXBDJlUv9B7ZxI0MeVYwbx/BKFQMGqAd2z0SzZYt1G5dLJCBAHfa5eTNXOyp++ME+d2PQIJGP\nP1a3ad1ancAWG0stJlX50hMn+FSuCqv98UeGA6sYMUI9sItworHLNSlTxnpgF2EeTv78ahurVlFm\nXMWoUQwnVvHUUyJff52kEJsyb8Lt5op8zx61Hc2/gd/jrhMfxAbDMDJXvFuOHNyjjoqybhMdzXBC\nVXhjkSJqGx47RYuq26SHnYIFGY7r0cf5N/tiGPZ24uO5j66SO8lM9/eOOxjaGR2ttlGokNoR7bQv\ndgWp0sOOx4YoAk2iotLn/ibaMfVNJCQ4+85oshxOJohGAHYZhnHIMIw9hmH8bRjGnozumJLz5+lk\nLVHCuk2xYnS+qbSCtm2zzx2oUAHYutX6uEj62Nm1i5FRqvrL5cvT6arSCkqPvty4Qad++fLWbQIC\nOPDs3p0+fVENculxTeHhdNCqBssSJfh9UTn6nfZl2zbr4758Z1R2PDZUkWueYAHVg4eTvlSsePP+\nmmo6bdvGnJrEOtma/wh2SwwAQWavtCxb/HnBe4vp7bephW/HgAHcxzUjJkakQgX7wjgerSCrimSL\nF9NBZ7df/8MPlAU3y1J1u+kEf/99tQ0RbqWEhJgfO3OGfbWqXeHBoxVkte8/YYIzrasRI+iHMNsW\ni4+nI9xO68rlor9j2TLz47t3O9O6WrWKn4NV0MH//Z+zYkpPPSXy3nvmx6Ki1D4gD1eucOvHqkDR\nr78607r69ls6782+W263yKOPOpN5adrUOjv+5El17QoPBw/SYZ5ii+6mptPdd8sHVavqLOzMScb5\nIDLLCwAjVd5/n1FMdoOgCH0UpUtzIPMWTjt4kNFHffs6c6p99x3P6V2RKyFBZM4c7lk7kXGIi6O/\no1u35H2PiGAkSc2aqXV7zNi9m+cMCUkeTbN1K/f7R460tyFCyYYaNZJLfFy/LvL11xwInJTovHKF\nzu6XX04+cISFMYqnfXtnukWLF/Oc8+Yl7f+73byvJUo4i45xu1nytFWr5JpDkZG81jJlGFBgR1gY\nzzlmTPKoqv37OdAOHGhvQ4QikUFBnLg835n4ePowAgPVdR48xMYy0KJXr+TlRc+d48NPvXr2jm4R\nfsaBgayX4fHJud30aVWuTC0sJ3j0y7yF/a5dE/n8cwkNDJTgJk20plPm5DaZIAoU4FOTL/WbT5zg\nYFWgAPWY6tXjYDRqlHONHxEOXtWqcdXRujUnjIYNnf2he7h+nc7AAgW4mmjenI70vn19q9+8ezd1\ngooU4YBYowYHo4kTnUeRuN0MCS1dmu9v1YoTT3Cwb/WbL15kcZx8+Xg9jRtzdTJ4sPP6zSKsg12/\nPoUIW7dmZE316s5EAz0kJPBhoHBh2mrZkve6Wzc+KTvl2DE6zgsU4H2pU4dRSR984Fv95p9+4gBc\nqRKvqUQJfu7r1jm3cfUqtbLy5+cE1awZ73X//vaRc95s3877UbQo+1KtGp3KU6c6t+GpzV6yJB9o\nWrXixNO+vciBA+a1sDWZAb/H3aylxXTqlNrvoOL0aWD/fu6dN2jge5YvwL3jXbuSMqn91aqJieG+\nr8vF5Ctfs3w9HDvGZL+8eZkE5aueE8A+bN1Kh2iFCv7vIV+4QH9E9uzsi69Zvh727UvSYqpZ03c9\nJ4A+lK1b6aupXp1FgPzh1Cng4EFqMTVo4LueE8DvzI4dSVpMvmbee4iKArZvp73atX3Xc/Jw9Chw\n/Dgd9vXq+a7nBNCfsXUrv8cVKzLpzgut6ZTpyDipjcyC1mLSaLIOIlrTKRORoVIbmYeHHgJ+/10d\n8ZISEWDBAmovlSrFp+RXX6WMgi9cvgyMG8en2hIlKDkQEqKuWGfGzp3AM8/wSb10aWoo/fWXbzbi\n46nv06IFVzJVqwLvvcdVki+EhwPvvsv3lyxJqYwff1RHvJixejWVQUuX5nX176+ObjLj6lXgm2/4\npF6iBFdW48cDV674ZufwYeDll/k5lypF5d6FC337zrjdwK+/UpKiZEk+JQ8ezBWbL1y8CHz4IaU6\nSpSgDMnkyc6lQzxs20Y9qTJlgKAgoGdPYP1632zExQHff0+pjxIluLIaMUJdtteMkyeBt9/mSqhk\nSaB1a+pEpZCbsaxe52H5ckqplC5N2ZBBg6icq8lcpGV/6la+ALDS1733MtLEyV6wy8Vop+rVRaZP\np+9i715GQQUGiixY4GgDT44do5OzVy8WlDlxgjIeHTpQwkCVfOXN5MncAx4zho7UY8dEvvqK/gOn\nReOvX2eSVZMm9IucOEEH9fPP07bTuhJbttCH8cILfM+JE5THaNyYe8pO/QfvvMN789VXvJ5DhxhI\nULSo8/3tiAiR++5jEaOlS9mXv/5iAaRy5Zz7nH77jZ/rO+/wcw4NZfXBatVEnn3WmX8mIYG1Pu67\nj87xsDAmf73xBm0vWeKsL4cP05/y1FMsbnXypMiffzJQoX59Z4WURHhfixVjwuaRI6wp8tlntD1m\njDMbMTEMymjWjPfoxAl+/gMGMMvaicSLCH0nhQuzgNaOHbQzezav55FHLJNSk/kmxoyR+P/9jz6m\nkBBG1B08yOCKIkVEZs501heNL/g/7qblzbfyBU+Y67VrIg88wIpldnz1FQc8s0iPzZvts7FFOKjU\nrWt+Preb4ZOdO9v3ZccODppmGj/nzzNE8/ff7e387390upo5AOfPpyPUbnC/do3aRGaSEvHxdOq/\n9pp9X375hQ7YiIjUxw4d4vU6GXweeYTnMxvAx49nMSK7wf3kSX6eZiGo0dEMKDDTaUrJxx/T2W4W\nVrt2LScJu0JTLhcd/2bhyG43J/OePe37smkTPyczmZEzZxge7GTCeu45FmIyC8qYNYsTvFX5WQ/R\n0fw8Fy1KfSwujpP70KFKE6GhoRJco4bUz5VL9qWs2CdCiZLChTlhaNKT22iCEHGmFeRycdBVRYwM\nGsQqaCrWruUgaHUup1pB/fqpn/h+/JFRISqiohhZo4rIadPGPix0+nSuEqxwqhXUvDmfIK0YNYpP\n7irstK48WkFmA4o3777L1ZAVTrSCPFpXqlVY374iH36o7oud1lVkJD9Hu4eTXr1EPvnE+vjUqSIP\nPaS2cekSI6DOnbNu88ADDNlWERLCCEIrDh/m4J6yhG0K3A0aSMhzz1lHOr3zDqO2NOmJ3+Nu1vJB\neKhfn/vkx49btwkPZ+RHkybWbbp1s5dMXrmSe6VW0R533cW96lWr7O107Wp9vEsXYM0atQz09u1J\n/gIrnF6Tqi9BQZRV377duk1CArBuHfDoo2nry+rVlMLOlcv8eLZs7Gtar+mBB+gTUPlpjh1j1FTd\nutZtfLm/VhFYefNSZnvNGmd20tKXTZtYU0Ml2eHEzooV6r5UrEjfxh6FyMLVqzD27MHAL7+09k04\n6YvmlpE1JwjDoCSFqg6Dy8U2qjBJOxvedlSkhx1PhIdqgrhVfXFiRxKdvqrIlMx0f335zmR0X9LL\nTs6c/L6IwgHvdqdPX9LDjtvNCT9bNmtNJyd90dwysuYEceAAo4dUMfslS/IPR/VEs3CheoUBAI0a\nqaNg4uOBpUsZoWJn588/rY8vXswnV9WAW6sWo4MuXrRu4/SaVH2JiKDmU61a1m1y5mRE19Klae/L\nkiXWkVMi6XNNO3cyR0OVR1OuHFedhw5Zt0mPvty4wafkRo3SZmfhQn7vVA9BdesCmzcDkZFqO2m9\nptOnmWNRo4Z1m9y5GYmVuHIyjXSaOtW+L5pbR1r2p27lCx4fREIC90Kt9HK8GTWKzjMz59z/t3fl\n4VFU2fc8AoSwJoEAKhB2EBSQTVAEIotEFgVkcwMEBxDGGRUdcUOU+SHqyCiOZEBxGUFBRRYVQVkl\nigjKvqNhDSQQ1hCSTur+/jhdSXents5GkDrf1x8duvr2q6pXb7n33HN137dR0NgXWVnMnp4/3/jz\n118nQ8QOa9aQrWQU4ExNZYa3mV6OL4YNozSHkX/7xx8ZD/GVFTHCmTOMMaxfn/szTWNQc8QI+7bM\nns0AslH84MQJ+vOdZA1bkQ4++YTZyHastT17eD8PHMj9mcdDX70T1s+zz4r072/8e7t2OdO68nh4\n7makg8mTrWNAOpYtY98zyrI/f57ZzFYxIB2DB5uTDlavJnvITuvq5Eme+6ZNuT/TNMbYrGJAOt55\nR6RDh1xECk3TJO6VV6RKiRIyZexYNwu7YHGVBKnXrqWIXJcuzmiY6ek8vmtXPgiaxgdr5kyyfWbN\ncnZ5N23iQ/TsswwQaxqDcmPHciCwC1DrmDiRgfO5c9n+zExSbVu3dq4LlZJCCubgwWRGaRof3tde\nY5DQiGVihK++4vGvv87vaxrPc+BA6u04oWFmZVH/qG1b2svM5HnNmcOBzaku1IEDpG2OG8cJW9M4\nCD/zDJkzvto/VoiLowzErFkMsGsatZBuv10kNta6NoiOtDRKUvToQYKCpnHCnTGDlFAnk7gIJ9+o\nKN7zo0dpZ9cuUkvr1nUu/fHUU6zwN28e2+/xUOyvRQvqQjnpM0lJpPo+8ABZZZrG/5syhW1cscJZ\nWxYs4HMwbRr7oaaRLtuvH/uA3cJEhH1k4EDStL/9ln0oLY0U9jp1JOHpp43rTbjID66SCeL666kF\nE4zGT3o66a5Nm4qEhIiULMkdyJo1zm2IcBAbO5ZFZ0JC+KA8/bS5IqoZFi/mgBUSwlfbthx0gqnE\ndfYscw2io2kjLIx8e6d8dh2bN3PQKFOGdmrXpl0nD7qOrCyyotq0yTmnrl1FliwJri2Jicw1iIqi\njUqVyGZxOvnqWLWKtNmSJWnnhhuoTmtH4/TFpUvMNWjUiDZKleKuIj4+uLbs3UumXIUKtFO9OhcZ\ndjTZQCxYQMaYfn3bt+ckHEyfOX2aE3aNGrRRtqzI8OHWBYmMsHEj2VWhobRTty5zNJyIBurIzKRS\n7U035ZxTjx6cMERcTaeCR57H3atLasPjoR86L/ozOkRoJy+6PL7IyqKt/MoPeDy0kRfNIh0ijAHY\nBSHtkJmZHYTMFzIy7AkGdtA0vgri+hanPgPkTXPLF1dIn3E1nQoMV4nUxqVL+fvuwYOkv+Znojl1\nCkhICF4CwheaRsmCgwf5sOYVFy6wLcHKJQTi+HHaSU3Nuw2Ph+dz6JA1E8sOZ86wLSkpebchwvuc\nkJC/PpOWRhvHjuWvz5w8STtWgWI7ZGXx2h48GLwUii/Onyc9PCkp7zYAFlbKb5/JyOD5HD5seH1N\nmU6BOH2aEiv56TMujJGf7UdRvgAwSPb3vwcnjX3mDLOdK1dmcl3VqvThf/SRcxsi1M6PjaWLqV49\n/jtwIOsEOEVWFl1kdesyQzY6mn7tF18Mzm12+DCDyJUqsS0REQz8OY0/6Pj6a0pIR0TQji4jbZfA\n5Yu0NPrZq1fn+Vx7LeMP06cHJ429fTszxH2vb8+eTIp0Ck2ju+uGG3if69Rh4PqJJ5zV2tBx6hRr\nXERG8l5FRdEdYld3PBA//EBpjUqVeE0qVmQGtW+9CjtkZjJOVLs23UO1ajF+Nnmys5iKjoQExrn0\nPhMeTreVWaEmMyxcyKz0yMgcO6NHB+dqTU1lfKlqVZ7XNdfQnTdjhqnbzLAW9pYtVDGoWDHn+vbp\nYxxIv7qR93E3P18uyhcA+qMffpgDgJNJ4swZMj2GD6dOkAgHre++Y9Du+ecdXV359lsOErNm5bA9\nzpzhgxsVxWCxHTSND+gtt3Cy0R+EbdvYqbt1c/bAHzzIgK5v/CMjg5mw113nXP9o1iwOOJ9/niPb\nkZjIoGh0tLOCTJcuMZ5y992USdDP88cf6ScfMcKZn3zjRl7Hf/0rZyBPTSWZICrK+SD2zDPsG99/\nn/O7Bw6wXsVNNzmbJE6dYrxq1KgcDaisLE6+DRs6q/onwlhT1aqcsPTs4pQUBoarVXNWcyMri2SE\nTp0YDNaxeTMXKz17Oout7N/PvvH88znxj/R0TnjXXONc/0jXDVu4MIcZePQo5V/q1nVWkOniRS5m\nBgxg0F6E9+qHH0jWeOQR0z7jF5sYM0Y8lStzwaXHzC5cIEuqSpXgY4x/blwlE4SOv/yFOwk7jB9v\nzg5KSuJqd/Nmaxvp6XyIzAoDffwxBx+7gXDxYg5eRiUxMzM5QUyfbm1DhCuml182/mz3bq7ojLSR\nfHHihHVJzEmT+ADbYdo0ssSMaMQXLnAS/uYbaxuaxh3d3LnGn69cycHNbiDctInHGZ27pjGI//TT\n1jZEyKQaM8b4s8REDvr6wGaGtDRObEY0YhEGaG+5xb4t8+ezWJGRfIXHw4nDCRMvNpaLGSNs28Yd\npF3xocOHeZwZaWDCBBIe7DBlCosxGe0uz54ly2/lSksTCX/8IV3LlpU29esbM52WLuXOJJiCYH9u\nFN8JAkAPALsB7AXwD4PP7wWwxftaB+BGEzs5p6trBVlxty9d4kpi/37zY15+mdtjK8yfb53noGsF\n2blCYmOtKZJr1nBAtcKRI3xIfUthBmLYMFJerTBlinWeg64VZLcibNjQOs9h9myR3r2tbcTHW2td\niTBPYsECazsjR1rnOehaQVa7tNRUe62rZ5+1X5x89JF1noPHw12g3eIkJsY6z2HZMk4gVvj9dz4H\nVhpJgwfbL04mTrTOczh1iosOK2VjTeMOxErr6p137BcnK1aIdsMNEjdjhjnTqU0b+8XJ1YM8j9+F\nGqRWSpUA8DaAOwA0BTBEKRVYUut3AB1FpDmAyQBm2RqOjgYiIxm0M8OxY0C5ckC9eubHdO5sX7dg\n2zYeZ4YSJYBOnfJv57bbmMFrFbTetYvVxKyqtRXEOVWsyBoGu3aZH5ORQe0iq6xXp23p1Mma7VlU\nQwAAIABJREFUJVQQ59SgAasIJiaaH3PwIDWLrLSuCqItJUvyfltl+Tuxo7dFLALo27ezxkaZMvZ2\nrLB1q3VbIiOBRo2ss9DPnSPJw0rrymFbVEwMRo0eba7p5MSOC1sUNoupLYB9InJQRDwAPgVwl+8B\nIrJeRHR6x3oA9jVFRcjgser0oaE8xopRc/68tQ3dzrlz1scUhJ3UVA6SVhTGomqLEzt6O60KJhWn\n65uVxWts12fOn7cecIvTOek2rOiqZcoUTFsKwk7p0lwApacXWFtMmU5O7LiwR362H3YvAP0BzPT5\n+34Ab1kcP973+IDPcjZM339Pv7WV31/TuP22Yvbcd599XYnNm+nbNkvWOX3aXk5ZhG6JCRPMP//v\nf+3rSly6RB+4lV5+u3b2dSUWLCB7yQw7dzLuYhc0792b/nQzPPWUfV2JY8d4/cx84BkZjBXZJXS9\n9hrjDGb46ismJVpB0+jmW7XK/Jj+/e3rSvz8M4O2Zm6zpCSesx3RYvRoxoPM8Oab9nUl7OToNY1Z\n2cuXW9uZO5cKBmb49VcyrOz8/t26MW5nhkcfta0rYSZHn810atVKdkRE2MvoXD0onjGIYCYIADEA\ndgCIMPlcJk6cKBPHj5eJVarIKqvBVoeu42NEwVu4kNRMJ2yo7t1JlQ2ckDwe+m9HjrS3sW8ffcE/\n/ZT7s717OQiuXWtvZ/JkVgYzylx96y1mm9s9pB4P/f5vv537s/Pn6fOfMsW+LatWsd1GcZ74eHNt\npEAMH87s3MBJWNNYvSw21t7GyZNkBxllcCcm8nzN9LR88f77JBMYBbvnz+f52mWaaxrv0TPP5O4z\n6elcCIwbZ98WvYCOkc9+5072Xyc04Oee48BsFLN79VUy/ewoyZcukTZstCA4c4bUVydFvL79lhOJ\nUZXAVat4vk5kSIYMYb8J6OtaZqbEdewoVUqXdrOwc1BsJ4h2AL71+ftpGAeqmwHYB6CehS2upq65\nxjk9VYTyAtWqMci2ejUHkCFD+HD5UgetcPIkg1633soA5Nq1XPE3a8bBy07oTMc333A19/DDDDCu\nXEmOfuXKIu+958xGZiaF0erWJS10zRpSXO+8k8FyJwOyCAf1unVJlfzsM9p5/XUOAg8/7DyHYeZM\ntv+JJ3g+337LCbNy5WzpBFukpnISbt6c9tauZUC/fXsOPKdOObOzfj3v9b33csewejVFHatVc05P\n1TQO7Ndcw76zZg13ZAMHcnJwqgt1/DhX5h07csW8di0DsE2bktbsNO9l4UKulkeP5ip/xQpOmpGR\n9oWhdHg83C03aEAJkbVrGfzu3p0LqIMHndnZvZtB5j59uAtds4YyG7VqmQtIGmH6dC4e/vEPTgpL\nl3Kwr1LFuS7UuXMM4rdsyUlr7VpO7m3binToIAlbt7qaTjnI8xheqFIbSqkQAHsAdAGQCGADgCEi\nssvnmFoAVgB4QETWW9gSGTOGxc2bNQuuIdu3A3FxDFqFhgK9ewMPPghERDi34fEAixYBH39MOewa\nNYCHHgK6dQtOhuH4cRauX7mSfvH27YFRoyg17RQiwE8/ATNnUmK5YkVgwABg0CAWMHKKixeBTz8F\nPvuMPtsGDYCHH7aXkA7EgQPAf//L4jQhIUDXrsCIEUD16s5taBqlw2fPZhZ01arAAw/wXgUj53D6\nNPDBB5SwTk+nZPno0UDTps5tAMDmzTyn7dvpy77rLranUiXnNjIygC+/BObMYZZvzZq8LrffHlyf\nOXaM93r1at77W29ln4mOdm5DhAWeZs0iuaBSJfaXgQOD89VfuAB88gnwxRd837gx8Je/MBAeDPbu\n5TO5cSOD9nfcwecpKsq5jawsYOlS3u/ERKBaNWDoUKBnT6BkSYgIZs6cieeeew5PPPEExo8fj5L5\nlV65MpFnqY1C12JSSvUA8CYYEH9PRF5RSo0CYwozlVKzAPQDcBA8EY+I5OptBaLF5MKFi6sOrqZT\nMZ4gCgpKKZGffgJuvjl4kTER4JdfcnYQd9zB1UawSEvjikXfQXTvnjexsoQElijVdxDBrm4BrrhX\nr+YOokIF4M47g1vd6jhzhud0/jzLjHbsmDdhuu3bc3YQt98e3OpWh1586cgR7iBiY/PGRElMBL77\nLmcH0bp13vrM+vWkmoaFsaxsMKtbHRcvstDOqVNArVrcceZlFXvgAAvt6DuIxoFscQfQNO5cDxwA\nwsPZZypUCN7O6dPsM/oO4rbb8ib8t2ULn8uSJYEuXbjDChYZGSy2pe8gYmP5jAfAdjdx9Cjw/fe0\n16oVy7T+eZB3Vcb8+KeK8gWAeistWgSntfLbb/RT1qtH3/3AgWSQPPSQcVazETSNAbgqVShlPXIk\n4xHXXutcpkCEsYy+femfv+8+JrVdey0T8YKRtV6+nNeieXO2pXdvntPTTzvPHvV4yDIKD6dPeeRI\nxlQaNiRLzCkOHGBG73XX8Xzuu4/n16+f89iBCGM7115LGYaRI3mdo6LI1HHq275wgW0ID+d91mM1\nrVsHJ4X+yy+8tg0aMKHwnntoc9Qo64QzX2ga/fOVKzPb/OGHyTCrUcNZsFzHiRMsehUVxUzloUMZ\nP+va1XlNCRHqbtWpw2dh5EjajIhgjMZpvCkjg7Ia4eGUVxk5kjGVxo2Dk7bYs4eZ5DVr5hAUIiNF\nBg2yz+j2xbvvMr7UqROvb0wMWX4WLLNcmk7nzrHPRkSQcPLQQ4yz3HxzjnzMlY/iGaQuyBcAduS5\nc/mwONGx37WLHeajj/wfgjNn2Cm7d3f2cEyZQmZLoDTFxo0M0FnR9nSkpnJye/xx/4kpI4PB4Vq1\nnAme6UyPZcv8B85jxzjR2GWG6xg5kjpKiYk5/6dpObpTThhVx47xIX/jDX8pjNRU0npbthS5eFF2\n7twpH3zwgew0Ezb86CM+lIET/549pJ3aZYaLcGLs2lXk/vv9Bxm9XkXVqs5E8rZu5fl/+ql/30hJ\n4UTRu7ezCWviREqwBJIG1q/nZPrZZ/Y2zp3jADxhgv/ElJ7OrPG6da0zl3UsW8aBNFDC4sgRLnSc\nyNaI8Nr26OFP6dY0Ej+qVDGXFvHFoUNcCLz9tj9r7fx5Spy0a+csgD9zJs8/cOLfsYOLHIvMcD9N\np9q1xTN8uD8zLTOTEibVq+douF3ZuEomCB1vvOFMK2jIEK7ijODx8AG2S8dPSeGKyWy1tnGjM62g\nGTPIGDIbXMaOdaYV1LYtBfaMcO4cBwI7raDt28nSMZPsmDfPmVbQ+PHkrfsgWaeHappIbKzMieki\nQJgADQUIk3Hj/I+X9HQ+iGaChwcPWudJ6Fi8WKRVK/Md1P/9nzOtoL59uWsxQkYGJywbraBsrSuz\nCX/dOq7m7XZ706Yx78IMI0ZQCdgKutbVV18Zf376NAd3u4FQXwyZMfY+/JALDjuMG8edq1lbY2Ls\n2VkXL7LNZguO/fsN8yQCkfCf/0jXSpXMmU4vvMCdyZWPq2yCOHuWssVWOQxnz1L+16p05rvvclVo\nhRkzuPW0wq23cgtvhbZtuZIzw969XOVaYccOrtitBpYJE0gftML48dQUMoPHw0nPaqLRNLpPfHIg\nDh06JCVLlpTD3sn04H//K/EoIcAWofN8iwBh/juJxYuZd+GDpKQk2bBhgyTpyqMDB3LFaIW+fa2V\nbE+dYn+w0rE6eZL9yuqYt9/mStoK06bR1WWFVq3sKZ3Nmlm7brZu5aBthU2b6F612ik/9hh3PFYY\nN85cJFKEE33Vqtau0sxMXl8rpeAvv+QkYYX585nXYYU+fewl/WNjRZszx7x63fHj7DNO3YrFF3ke\nd6+sgkE6KlZkQOr4cfNjkpOpDxMebn7M9dezWIkVjhzhcVYoCDv16zOQmZFhbaNhQ2s5joJoS8mS\n/J0jR8yPSU+n3EG9esjIyED//vejR49+yMzMRI8e/dC///348cwZ1EQJMM0F3n9rYMOGDaZt+eST\neYiOboxu3UYjOroxPvlkXsGck94XkpPNjzl+HLjmGmutq+LUZ3QbYkE0OXyYx1kRD5y05fBhwIr9\nU7o0dc+s+sy5c2yrVTC6INoShB3VtClGjRplrOlUrRpJEqdPW9v5E+PKnCAuXWJFrMqVzY+JjOSA\na1XxKiHBnplSpQqPs0JB2Dl6lOKCVqyoKlUoKGc1IBREW0T4O1Z2QkP5OnYMpUuXRv36dbBz5yYA\ny7Fjx0bUr18H7atXRzKyAOiidFsBHEFbX868T1uSk5MxYsQjSEtbhbNnNyEtbRVGjHgEl3bvNmxL\ncnIyfvnlFyQnJ9uf04ULfNAjI82PqVyZ1fmstIKKU5/RbVgxiKKiWEEuv31Gt2MGveKdlZ3y5Xmc\n1SRdEG3Jgx1DTaeTJzl+5IUd+GdBfrYfRfmCr4tp9mxrOWUdvXqJxMUZf6ZpdG1YySmLsCBKeLg5\nI2fvXvpD7bKpX32VgXEzPPustZyy3ubrrzcvoJOebi+nLMJgYp065nGTZctEbrzRPhg7alR2Vvvx\n48cFUAJAlCohx48fFxk8WL7ocJs3BtHAOAaRmkp/8f79smHDBqlUqaXXHcVXdPkbxVOhQi5//ty5\nn0pYWKRUqtRSwsIiJX7sOAbpzdr8zjtk3tiha1dzWfasLLoKFy2ytqFrBZlJcmzbxriLndbVSy9Z\ny7I/8QRfVsjKYjDXTJY9LY1BY7sCRqtXk61kJl2xaBHVBuwwdKi1LPvdd/NeWeHsWT6TZq6qxETr\nZ1bHe+9xHAnoM9lMp5o1ZYcTmZfij6soBrF2LVkmP/5of1k2bOCxgeJrHo/Ik0/SD+ykittjj5FK\nF9jhDh0iu8mJBk1KCgfladP8/cGaRp9qtWrOGBNffEGqZOADffEiaYJ2gn/6b/bpwyB+4MS2dSvt\nL1xob2f/fvqdP/9cdu3cKfffP1x27dol998/THY99RR936dP27OYXn9dpFkzObl5s4SFRWbHLCKx\nRn4oUVJSH3nE7/CkpCS/44AtUqlMhGTceCPjL95BTI9lnP7iC3NNo0D88APPKXBAzchgQL59e2dU\n4jFj6CcPDK7/8UdOeU07JCUx5vTOO/6DmKYxkFu9urPKf3PnsoBOYEzpwgUOyHaCf/pvdu/O2Eog\ny2jTJpIenJS83bWL9yJQUDIrixNHo0bWMSAdkyfz+Q2sWZKURCaUneCfCPt+06YMRgdqOi1dKnHl\nykmViIg/g6bTVTJBdO7MhyKY2svLl7PzduzIQNzjjzMA262bfeU1HZmZOfzv4cOpCTV4MP9+5RXn\nPP3ff2enbtCAjKXnnyeTqn794HI7PvyQK9RevchieeQR7mLuu8+5LlRqKgeGKlX4/RdfJMuqcmXn\nGj8izBmoV4/n9fzzHKDr1+dq0mluh6ZRK6lSJfnjllvkpZJh8r9SkZICJTt79sz18BrtNCpWvEl+\nXbaMiqM1asjOnj1lcskyEh9SXo5CyYpnLILygfj6a07YMTG8Lo89xj4UG+u8HrrHwx1heDh3AXqV\nvvBwsvCcYu9e5mQ0bkwCwnPPMXjdqBEnc6eYNYtc/7vuYltGj2YfGjbMeRD2/HmyqqpWFfnrX3lt\nevRgH7Lbifvip5+4023bloPzU09x8dS+vfPcDk3j81ypEvv9pElU8w0P53Vymttx7BjHhuhokjcm\nTmQ7atYUWbvWuBb2lYc8j7tXVib1/PnUxCldOrgv6zpKW7fSb96rF9C8efCNSEwE5s/PyaQeNCg4\nPSeA41l8vL8WU/fuwWcvp6YCn3+eo8XUr591cSQz7N8PLFiQo8V0zz3B6TkBPI9ly4Cff87RYgpW\nzwmgXtG8eUjdtw8nS5RAuWHDUOWGG3IdlpycjOjoxkhLWwUGvrciLCwGBw/uRlRUFE6vXIk37+iF\nEpkPYDPuwBJEo1RY9+zPdRsJCQmoXbt29v/5ISMDWLgwR4upTx/AoC22OHqUfUbXYho0KHiftgiw\ndq2/FlOXLsH3mQsXqLulazHdcw9Qu3ZwNgDqKH35ZU4mdb9+zDYPBllZzDD31WJq0yb4PnPyJDBv\nXk4m9aBBzMIPFhs3MiPb42FRrl69sjPeRa54TaerJJPahQsv9BhExYo3SVhYpMyd+2n2Z2Y7jA1e\n9d7A+IXvd3NRbF248OIK3k1cJTuIKVOA4cOD11FKSgLef99/B9GnT3CaOCLAhg1Ucz15kjuIYcOC\n11FKS+OKUt9BtGsXvEooQJbG7Nk5WkwDBnBVGcwKTNOAFSu4E9F3EA89FLyO0tmzwEcf+e8gBgwI\nXkdp+3Yqcx49SobJAw9wVWkCw12Ax4Oz//sfFv1lDEKyumILOuF9tEVqWH8cPLgbAEx3H99/vxIj\nRjyC0qVrIyL9dyzscweah5Tg6rhPn2yVUMcQr+ru3Lk5WkzDhwevo6Sr7uo7iFtuAe6/P3gdpQMH\n2Gd+/52U30GDWO412D6zbFnODqJRIyrUWpVpNcLp08CHH+bsILp3B/r3N9RRssSWLbSj7yAefDB4\nHSVddXfpUu4gWrbks23AkhSr3cSxY7y+O3dyF3733dSGsqKlFw3yvIO4smiuBw7w4Zo50/l3Zs9m\nJ967l4JrbdoA06aRR71vnzMbFy/yZg8ZQgnrXr3Ykbt1ozx2ZqYzO7/8wnyHTz+lwFm3bsAPP1Dq\n++uvndkQAV58kYJi585x0GrUCHj8cQ4cVhRCXyQl8fjx43lNe/akcF/LlsDLL1vTIn2xZAnbv24d\nz+e22yhvXb8+H34nyMzkINO9OwfjXr34sA8cCPTty0nVAFFRUWjTpk3O5LB3L9CkCSp98AGuf/B+\nrCy1BjeWmoq9uB0rhw5CVFQUEhISULp0bfjmZpQqFY3ffvstm2I7+OzD+PVSFjZ9sRDnOnTA+QYN\ncOH555HZtCnwxx/+9FoznD9PMbyhQzl49u5Nl1DnzsC4cdalcH3x44+8vgsW8LtdulBUrm5dChI6\ngQgwYQIXI+npvL716wNjx3KCSElxZicxkc/Ps89yYdSzJ/tbs2bAq686swFQKrxePT4P3bvTZfb+\n+1ygOK0jnZHBBUTPnnSx9u5NCnPfvpz4rKjKvtixg89PXBzdoj16sA3161PWPABKKeO8iTff5DU5\nepT3vXlzYNIkuqvs8jGKM/Kz/SjKF3QX0759DCAZVQ4LxNKlDEgbafDMmMHAmE06vogwID1kSDYt\nNFtO4vx5ygvYZS6LUPemalU/imS2nZ9+IrNj82Z7O++8QwqqD+0zOTmZQbsnn6REhl3QPCuLYmRP\nP519bHZbEhPJ7LDLXBZhYD0qyq+qWbadBQsY6A1kmRjhiSdIL/W5F8nJyWSYDRpkn7kswnsRHe3X\n7l27dsmGDRvkVHw8qZzLlxsyoMLCImXZsmVSqVJL6YOF8geipQ4OSMWKN8nLL/9TypQJl0qVWsr4\nUmXlRKVwCS8TIRUq3CShoeESF2dyne6+mwHgQPbL2bMUJLTLXBYhXTYqypiUsXYtg8NOXB1vvEFd\nrEBSRlYWmVkxMfZ9JjOTWmIvvpj72CNHqH9kl7kswr5etaqxtMqnn5IM4IQ8MnYsi2QFkjIuXcoR\nErTD6dNk7BnRmnUqskUme7amU4UKMiUyUjxGxbpeeYXyLHZSPIWLvI+7+flyUb7gG4P48ktnWkEd\nO1qzK/r0IbvDCnqpUG9HDJSTyOZc22kFPfecX55DLjuvv26vFZSZycnRh67pZ0fTOLjbaQUtX+5X\n0ztXWzZscKYVNGSIHyMnl50xY+y1glJSyETxmfD87Og1le0owDNm+OU55GrLJ59kawUZxS/0iWM9\nbpBeWJw9cYSGVhSgpACHBVgl36KE3Id/+kmH5JokdK0rMwr1wYOOtIJk/Hjrmt6TJ9trBelaV2bi\nlllZZJ3Z0cYXLybryGwiWbuWzCq7iaZvX2uK7/DhHFStoGtdmTHKzp0jY+vIEWs706ZZU3zff5+T\nkBU0TRIaN5auN91kHpvo2NGZOGPh4SqbIDweDhpWHeDECQ48VjP3ggX2mi5Tp4qMHSvp6enSr999\n0qRJawEgTZu2kX797pOMjAwqfM6da22ncWORjRvN7SQmipQpY/2A/fQTdw8i5nZeecVe0fUvfxF5\n4w3rc2rSxLrecVaWSGioSEqKuZ34eNqxwscfZw/spnYefthe0bVLF5FFi8xtXLhAXR3v6tQoGL1w\n+ttyAkrCK7SQMmUipEmTVlKiRKQAEKCNALEyENVkEXr7BMCbSWhoRf+g9qRJkjpmjHWwu1s39j8r\n1K5trVp85Aj7uBVWrrRPYHv5ZXtF1wcesE5g0zTSna1k1S9dYh+3qum9Zg13O1aYNcteH23YMEtF\nVxHhItNKH+3iRZGyZa3bu2ePSI0arIVtpuk0e7YzcdHCQ57H3SsrBqGjZEn6G8+fNz/mwgVSUK2k\nK6pWtbYB8POqVU3lJEqVKlUwdqpVY4DMKp7htQHA3M411xTNOXk89KNHRJjbufZax20p9HMqV45E\ngAsXABjELwDcdXsMIhvUx/IVM3Ho0B7cfnsnaNppAMsBbAQQhZM4jQpI9H6D0iGlStVCgo8kxq4N\nv+Cfsz7w15MKRBB9xhS6DbGIF50/b0/qcNoWKztKkVhgZSctjRR1q+B6QbSloOyEhVH+xkqu5/x5\nICoKKiTEXNPJSVuKK/IzuxTlC747CH2LaTWzp6bymKNHzTN5p01jco0VPvyQCWRiIiehyykHZmsH\nonPnbJluQzubNnHFaIUDB+iT9mayGtoZN45JQ1Z44YVsmW5DG2lpdKslJFjbqVmTBZnM7Myfz5W9\nFb7/nr5t787J0E5srH3Njfvuy5bpNrRx+DDdDlaJhLpKsHeX4WsHUFKmTLh81qqNxCFEgGYCRAow\nVcLCIrN3CklJSTK2VFmZj25+MQ7fnUTSiRNyMTpaUuyk5tu1s1YJjo/nztQKO3cy/mK1kx450lwW\nX8eTT1rH2s6fp9vMKuaUlWUvR//RR9nPmymWLGEymxViYsxl8XX062cdaztwgJ4Kq2t38mQuF7Nf\nvYkpU8Tz3HO5ZPGLGFeZi2nCBFZ+ssOoUfLdTS2N6xFcuMAt8Q8/WNvQfeBbt3plJIb7/StLlzJA\nZ5e5OWcOO7XHk9vOzp2UtP7nP+3PqWvXbB9uLjtr1nAQtMtG1bWCEhONz+ntt1kFzQ4vvUQfrqbl\ntrN1KwPhn35qbSMri/dh+XLjc/ryS2daV6tXM0M9NdX4nB57jBnjdhg6NFtfSv9+fHy8xMb2lh+X\nLxepVUs+n/CshIZWlPLlbzDMwahRsbmcQoQ0xG7DHIyBpcvL9hJlJKxMRPZ3DfMv3nuPA51RLEiX\nS/nXv+zPqUMHFk0ywqFD1rUrdOzZw8WJWQD59deZpW2HZ54xf3bT06ksYCfz4vFkZzob4uefnWld\nffstY3ZmmeRjxlB5wQ6DBhk+uwkJCdK1UydpU6qU7HAiXVN4uEomiHPnOCjVqmUfgBKRnxculN+h\nZCJGSwWczQ4q7v/qKwaOHnrImUzG//5HNpRvFTePhwHwqChnJTo9HsoS9OvHIKWOpCR2xBYtrHdE\nOrZtIwvkP//J6diaxofi+uudTTIivI5NmzIgrSMtjZND1arO2DFnz3L3NHas/8CRkMC4wp13mou7\n+WL5cl7H+fNzBsOsLD7A111nH98R4TUYOpQ7td27c/7/zBkO+HXqOKvYd+gQB5/Jk/3vx/btnOC9\nk4xZQp0e7H4IEyUBtSQGMyWsTIQkJSVJ0tGjMqxUOUlChHTA2uzdRVzcTMPEvaQjR+Rsq1aS1rev\n/6R//DjlO9q2dVY299dfeX1nzcrRUdI07kAaNHA2yYhwcG/e3J+BlJrKnXj16rkrLhohJYX99LHH\n/LXNDhzgzqFvX2cyGUuWcDfy5Zf+fWbJErbliy/sbWgaYxnduvm3PSWFu6UGDZwxqn7/nbu0qVP9\niQdbtojWqpXEde1qHJsoOlwlE0REBLVgfAdYE8yd+6mUKlVerkNtmYcBkoJwWYVOshGhklqpEoXB\nnOq1iHBVc+ONVMaMieHAdcstzkpz6khLIyslMpLug9tuy9HqsSpsFIht27jCj4rigNikCQfAd991\nbkPTuL2uXZvf79yZK/U77giuFm9KCifa8HCez803c8f11FPOSkfqWL06p2ZzTAzPp1mz3KJuVsjM\n5MBerRq1oTp1YrsGDaIqr1MkJHAij4jgdWnRgqykV1911Gd0ltQDYbVlhwqRc9Wqi8TESHqVKhIf\nUl7a4cfsIHf58jdIaGh4LtqtPmlUq9hC3goJlUvlynGC6tAhpz722bPOz+m33+juq1qV17dxY7KX\nzJRrjaBpXEDUrMlnoXNn3uuePZ2Vc9WRnJyjm9SxIye6KlU4AQVDB/3uOwbga9XiOUVHcwcSjFab\nx0PKcVQUbel95t57nS0odOzfzx1dZCSvS/PmHCOmTSPT6fJmYed53L2yMqmPHWNBFxskJyejVq2G\nuHRpCoBnAaxCNVRFEyzBJYzDe5s34Pq8aDGJMBtb12IKNiNWR2oqsGkTM6lbtAhez0lHQgKTBytW\nZOJcsNo8ANuwaRODaPXrB59FrSMlhQlGISFA69bB6znp2L2bRWeqVgVuvDF4bR6ASVIbN/Lfpk2D\nz7zXcewY21OmDBPErAgPAcjO8o6ORtSxY8CpU0gpVw41bu/pl8UdGnobSpeuh/Pnf83+bvnyN8Lj\nOYL09DXZx0WV6Yy9n74PiOD3ihVR88YbjTWk7PD776yBEB7OJK689pmNGxnwb9jQugCQFU6eBLZt\nI+mkdevg9Zx07NzJe1W9Ou93XvrMpUs8J4+HNvKi5wSw7+7dy/7furVf5r3IZdN0crWYfPH0088I\nECrAjQKUF6CSAPWN6xG4cFGECMzB0HcKvjuI0NCKUqHCTbm0pF5++Z9+rqi4uJmubtQViMuwm8j7\nuJufLxflCwD16BcssNzmv/bav7yTQ1Mvy+QV6YOy8q0KkfTKlelSGTfO30/tBKdOiUzIWGPaAAAY\nuElEQVSZQr+97sJ4+21nmdi+2LiRvvKaNem37NfPPrEtEBkZdA106EB/a4MG3J47iMv44fBhBvwb\nNKCd224jiyTYrM/vv6fv+NpreV7DhgUnXy5CFsz06eTAV6vGOhtTpzqX19axcyfjBLVr0y3Uowez\n151Ksouwf33+OQkB1avT3fW3vzFpMhgkJ9Pl1aQJz6lNG5EZMyQpIcFvYLebNNrgY5lTopQcViXk\nMKrKPAyQ2zBKgDCpUCG3WKFhfOTSJfLx27dnWxo1YmzGSaa7LxIS6D6sX5/XplMnxoiC8a1rGuNL\nffqwz9SqRSaVVQ6FEc6epQunRQueU7NmDJYH464VYXxp1Ci245pr6DL7+uvg+kxmJmOSt9/O61K3\nLgPcRtnVYsB00q/f8eNkITZuzHO6+Wa6gvNXF/sqmSDmzKFv7/77DZkdgZODwhSZjdKyBaXky/4D\nOCDu2sUHw6hoiRkOHKB/84EHGNg7epSDYp8+bI/TuhL//S87z9Sp9FkePJgj+eGkwIkI2TxdunAw\nX7iQbfn1V+rzV6vmH3S2wvr19Ec/+ij900ePMuDXoQMnYqcdcsIEPgwzZvB89u9nJmz16s5jIklJ\n9GnfdZfIihVsS3w873OdOs7rSuiMpxde4H0+fJgT3g03MM7jJOaUmUlmVosWHPiOHGFM5plnaPvb\nb521ZfduTpbDh/NaHztGkkNsrEjr1rkmvsBBXZ80xpepIcegZHmPWGlWoanUQoKMxRRJQAl5BuNy\nUWkDlWrj4mbKxjVrJL19e/rpv/qK13fTJpIjqlfPpirb4ocf+Nw8/jgH86NHOZG2a8faJE6Kb2ka\nA9QNGjBofugQJ95//pP90WktkmPHOIj278/41bFjjAcOHkzbTutK6ESTSZMYRzl8mBNp48ZcaDiZ\nJDIyuNBr3Zr2jhxhnPDJJ2nbYgHot5tYtIgT5l/+wuf46FGRb75hEL19++BiTv64SiYIEQ6QHTvm\nKroSFzdTgDLC0pbhAkyVcSgr6xAm4aUrZD942VpBGzYwwGYXvNQ0Br68HHs/G5rGoLOTUpabNnEA\n378/t53kZFJl7UpZinAlO3Cg3wSZbWfhQnYwu8H94kWulHwmyGwbHo/IPffYl7IUIVOkcWNywQPt\n7NvH83WiL9WrF1elPg9jtp1p07jytntQDx3i/TSqGnfhAgcxu1KWIgxEd+7sdw2z2xIfz9+wc+lk\nZXHX4MOx9+sz48bZZwKLSMo330h61apyctMmHw2p1QJskKpoIvtRV7rj22wX1LJlywLcVVMFCJN3\nS1WWj0uUkpcnvZzbHTVvHhc/drvGc+c4gBtlHutqAs86KMo0Zw4XA0ar/J07OaBa5Uno6NrVXM9q\nyhQuoOxw4AAnfaOdy7lz9BLMnm1v56WXSO4wmiBXreJvWOxqNE2TuHfekSolSsiUAQNyM500jZIq\nw4bZt8UYV9EEIcLBvXbt7EEyKSlJQkLKeWMNjQSoJArlZC9KS3uUytbKMdQKshNNC9CYyWXDqVbQ\n8OHsuF4YagXFxFjb0DVmfFZHuex0724vmvb++1zJmtnQtYLsSj927EhqqpmdyZPtRdN0rSufAdnP\njq4VFB9vbee55zjwmsGJVlBmJt0MPu6xXOcUcB8NYad15VQraMgQv3K206e/LYCSsmUbCRAmQ/GS\nfI3YXIKDnBySBIiUcPwgp1FWorxxuEB3lIjkuo+GmDHDupztvn0c3O0WJ23bWu/c7e6jCF1C1aub\nT2oG99EQdlpXAffREHZaVyJcDNiVJV68WBKaNzePTZw6xSTOEyes7RjjKpsgRLh9967Gly1b5nUt\nRQjQUoAIqYHScgyQ11593Vyf59tv7VcakyaJTJhgrVt03332K43atUX27jW3c/68SEiItRtk1SqR\nW28VEQvdonfesV9pPPigyLvvWp9Tu3aWSpbi8bC9GRnmdrZupfvJCu++m53NbmrniSeoF2SFW2+1\nzmbXNK6ArQblvXuzs9lN27Jwob1+14QJIpMmWV/f/v3t8zu8NacD7dSte4PcdNMtUiU0XNKgcgkO\ncgexQYDm0gOfyHcomYtG67eTePNNe/2uAQPss9lbtLDW77pwgVpMViKQv/1mr981fTrdMFZ49FF7\n/a6WLalvZoasLA7KPjvkXNiyxT6b/fPPucOywt//LjJ1qnlsQoSxETv9LmPkedy9MrWYANLHvJr6\nH330MYAQAKsBbAKwGiVQAqFhZTH+ySfM9XnKlLHX5dc0ICTEWrfIpy15tqNT/KzseG0AFrpFoaFF\nc07ipUeXKGF9Tg7bUlDnZAql+Lnd9fXSDvPdZ0qWLJg+Y2Dn9993oFu327Fz7xaULhmCgwm7MGQI\n61289947CAuLQfnyDwHYixLYhEyURWD9C1/tqGDaYgk7O5pGWq0Vtbao2uLEjlJsq8M+UxBtMa03\n4dROQSM/s0tRvuC7g9DllDMyvLGHkgLU86MFhqCunAsPt9YKsttiijDpxqsVZGhD32La0dUGDhR5\n6y3ztuhyylY4edJUKyjbjp2csgjZV/fcY27DTk5ZR6tW2VpBhnbs5JRFRLZu9dMKymUnMZHbfK8U\nhykee8xaK2jjRrodrFav6el+WkGmWld2hAIfOXpDGxcv0q3mE48yhI8cvanWVceOub6mB7zj4mZK\ndGhFSQGkItaZ7yBiY+l2tIKdHL2udWWlBuBEjn7KFLrxrGAnR69pjOnZJbHaydHHx9O9aeViunjR\n3sU8ciTdrVbwkaPX4bebePFF8YSHM9YWPK4iF1NmJh+cF1+UpKQkr2uplFBvKWcbDYTJiUcfzZZ7\nyKXPs3Qpb6zdQ5qVRVbEJ58Ya/y8+mquG2uItWs5QJ04kdvOr79ysHXC4Bg+PJtdkcvOnDkceOxi\nB2fP8tx//NFYF2rUKPs6AyIcVFq3NtY/+uEHugHtYgciHORef11EDLSYXnuNW3g7BtLeveaDri5z\nYldnQISDf9++IpmZuduyZAljM3YMGY+Hgd+FC437zEsv2dcZEOGkWK+eyMmTue1s3Mhgr02dgaSk\nJNl2YzP5d8kyUrFCi9wxiJUr6Xqz07o6dYrn/ssvuT/TNLo1//pX+3OaMYPuQKNYxZEjXPgZEQ0C\n0bYt5WaM8N57ZBfaERu2beOCwEiUMj2dMcF//9u+LePHM85g1Ec3b+bEaZeVnZ7OhZJBFnhCQoJ0\nrV1b2kRE5DVv4iqZIFatInuhWzeRS5fk0Uf/7mUu1RCgtHeSqCtAmDz00MO86LGxvNErVvAGnj3L\nTnrttexITvDbb+xITz/NzqRpXGWOHk2ftZ3qqY5Jk/jA/+9/fCAzMshcatnSuS7U6dPc0QwYwIdV\n07jif+UVDpBW+va++OYbHj91Klk5WVlcmfXvz/bYFUAS4XeGDuXktmgRB8aLFxkkr1vXftWk448/\nOHmOGUN6qKbx//7xD+7OnPLjZ87kfY2L40o2M5N05M6d6b91kt+RlsYJv3t30iezsngt3n6bbbHz\nw+v4+WcGbZ97jqs+TePOd8QI9gGnOSsTJjC4PncucxnS08kea9bMOQ0zOVk8jRvLyTvukJQVK/id\nxETenypV7JWIdSxcyHN6/XXuZrOy6MO/6y7GrOwWJiK8J4MHk9//9dfsM6mpXGxER2cvFGyxdy+l\nLB59lO81jaykJ57gJBOo3GyG6dO5kJk1i+3PzCSVuUMHUled5HekpjKWeeedpAJnZXH3/e9/c/K1\nIwDoWLeO1/fFF8mu1DT2/aFDRWvYUOJefTWvmk5XyQTRtClvaHq6JCUlSYkSZQWoIEAt779lBQiV\nHj165FyajIycMp0lSoiULs0bb6fiGog//uAKKSJCRCkOFs88Ezyr4KuvOMmFhLA97dpxwggmKefc\nOW7F69RhW8qV4wpu69bg2uLtfFK2LO3UrUu7Th50HVlZnBBuvpnnU7IkB1crmWojHD/OwbBaNbYl\nMpKUXqeTr441a0g7LlWK7WnWjAuCYJL/Ll2iO7BJE9oIDeWEbBXQNML+/RzEK1XiOV17LXNwnObN\n6Fi4kIuckBC+br2VLolg+syZM5wQoqPZlvLlOVkFuyL99Vfmp4SF8do0aMBgsBPRQB1ZWSR1tGqV\n02fuvNPejRiIo0dzcg2U4q748ced50DoWLGCQWS9z7RowcWGXUVFX6SlkXrfqBFtlCnDidBpXpKO\nPXu4g69QgedUowYnDK+7N49Z2Hked68sLSafti5fvhx33NELQEkANQEcBpAJoDLmzXsTAwcOzG0k\nK4tBp7xotQTasQqIOoF4vWF50cIJbEt+z0nEPsjrBJrGdhSX61sQ51Sc+oweoCyIPlNcrm9x6zPF\n5ZnU7Rick0jQmk55bsiVxWJKS8t+e+jQIXByWA9gj/ffkgBSEBMTY/z9kJD837SkJIpxpaTkz47O\nkMgvCuKcdIZPfpCRAezfTzG4/DIt8tsWoGDOSW9Lfq+vbie/sGMAFWVbjh4F9u3LrtCXZxTEQAoU\nXJ/J7/VNTeV1OXzYutKfE5ickyXTyReZmXwm84FCnyCUUj2UUruVUnuVUv8wOeYtpdQ+pdRmpVQL\nU2M1agB/+xuQkoK0tDQANeBL3wOuw9Ch9+ZN5dIOP/0E9OgBNGoE3H03ULcuMGAAsGNHwf/WlYS0\nNOCFF4BatYDYWCAmBmjQAHjzzaKn5LkofHz5JXDzzUDLlsBdd1HJddQo4Pjxy92yy4ukJOCRR3g9\n+vSh+m/r1sBnnxXaT0ZHR2P58uUYMWIEOnXqhFdeeQWZmZlUpJ0yBahTB+jWLX8/kh//lN0LnID2\nA4gGUArAZgCNA46JBfC19/3NANab2GKwb/RokaZNZfePPxoyl3KVFS0ILF1KP+fs2Tnsi3PnSOOM\ninLGuihArHIaVCxsXLrEAHC/fjnyCHrxoltvZVwkGD95HlBsrkUxQKFfi7feIiljyZIc/3xiIuMA\ndeoEV3OjkFGk/eLECcZi/va3nGuQlUUiSP36ZDoWMrJjE61by46YGEp/eGVuAHSW4hikBtAOwFKf\nv58G8I+AY+IADPL5exeAaga2cq7GqFFy9J57pE2btj76S4Uk5a3nOfhwqpN9g4xz5vjVVC4KTLST\nBykqvPEGWWI+9L7sa5OaSlLBV18VahOKzbUoBijUa3H4MIkDPqQBv+fgmWeoKFAIWLdunbzwwguy\nbt06x98p0n4xYoS5dtmRI2SKmai6FiQ0TZO4YcOkSsmSMmXy5GymE4AXJY9jeGG7mK4Do8c6jnj/\nz+qYowbH+OG+HXsQ+vnn2PbLKQAKTZuWwc6dmzB9+psF0WZ/LFoEXH89cNttAIDDhw/jmmuuwZEj\nR/j54MH0w27YUPC/XdwRFwc891y239bv2pQtC4wfz2NcXPl4913g3nuzC0rleg7Gjwe+/ppFgAoQ\n3bvfiQ4duuGllz5Bhw7dcMcddxao/Xzj7Fngiy+Ap54y/vy664ChQ4GZMwu9KUopjNq9Gxvj4rBi\n9Wrz2EQQuLKC1ADi4+Mxd93POIVaqIWvAazHjh37kZLfoLEZtm0DOnVCRkYG+ve/Hz169ENmZiZ6\n9OiH/v3vhycrC+jUiZXmriZkZDAg3b69+bW59dar77r8WbF1q/VzUL48Kyzu3VtgPxkfH4/vvlsN\nElD2AliP5ctXIz4+vsB+I984cICTplUFus6di+452LYN0QMG+MUm8oNCpbkqpdqB25se3r+fBl1F\nU32OiQOwSkTmef/eDaCTiJwIsHVl8HFduHDhophBRPJEFSvsgqi/AKivlIoGkAhgMIAhAccsBjAW\nwDzvhHImcHIA8n6CLly4cOEibyjUCUJEspRS4wAsB91Z74nILqXUKH4sM0XkG6XUnUqp/QBSAQwv\nzDa5cOHChQtnuGIyqV24cOHCRdGi2AWpCzSx7gqH3bVQSt2rlNrifa1TSt14OdpZFHDSL7zHtVFK\neZRS/YqyfUUJh89IZ6XUb0qp7UqpVUXdxqKCg2ekolJqsXes2KaUGnYZmlnoUEq9p5Q6oZQyjYbn\nadzMKz+2MF4owMS6K/3l8Fq0A1DJ+77H1XwtfI5bAeArAP0ud7svY7+oBGAHgOu8f1e53O2+jNdi\nAoAp+nUAcApAycvd9kK4Fh0AtACw1eTzPI2bxW0H0RbAPhE5KCIeAJ8CuCvgmLsAfAQAIvIzgEpK\nqWpF28wige21EJH1InLW++d62OSPXMFw0i8A4K8APgeQVJSNK2I4uRb3AvhCRI4CgIgUbHJC8YGT\nayEAKnjfVwBwSkQyi7CNRQIRWQfgtMUheRo3i9sEUSiJdVconFwLX4wEsLRQW3T5YHstlFLXArhb\nRGYgH+qVVwCc9IuGACKVUquUUr8opR4ostYVLZxci7cBNFFKHQOwBcDfiqhtxQ15GjcLm+bqogig\nlIoB2V8dLndbLiP+DcDXB/1nniTsUBJASwC3AygH4Cel1E8ikj9pzysTdwD4TURuV0rVA/CdUqqZ\niORThvbqQHGbII4CqOXzdw3v/wUeU9PmmD8DnFwLKKWaAZgJoIeIWG0xr2Q4uRatAXyqlFKgrzlW\nKeURkcVF1MaigpNrcQTASRG5BOCSUmotgOagv/7PBCfXYjiAKQAgIgeUUn8AaAxgY5G0sPggT+Nm\ncXMxZSfWKaVKg4l1gQ/4YgAPAtmZ2oaJdX8C2F4LpVQtAF8AeEBEDlyGNhYVbK+FiNT1vuqAcYhH\n/oSTA+DsGVkEoINSKkQpVRYMSu4q4nYWBZxci4MAugKA1+feEMDvRdrKooOC+c45T+NmsdpBiJtY\nlw0n1wLA8wAiAbzjXTl7RKTt5Wt14cDhtfD7SpE3sojg8BnZrZRaBmArgCwAM0Ukf6ptxRAO+8Vk\nAB/40D+fEpFCEm67fFBKzQXQGUBlpdQhABMBlEY+x003Uc6FCxcuXBiiuLmYXLhw4cJFMYE7Qbhw\n4cKFC0O4E4QLFy5cuDCEO0G4cOHChQtDuBOECxcuXLgwhDtBuHDhwoULQ7gThItiD6XUUKXUdAfH\nveaVdJ5qd2wBtauTUqq9z9/vByMz7v3+ksJpHaCUuksp1bigjnNx9cGdIFxcKXCSsPMwgGYi4lcX\nQCkVUjhNQmcAt+TTRmEmIt0NoGkBHufiKoM7QbgodHilEHZ5V9h7lFIfK6W6eIsc7VFKtfYeF6GU\n+tJbAOlHpdQNQfzGIgDlAWxSSg3w/tYMpdR6AFO9hYR+VEpt8v5uA+/3SvjsPDYrpcYa2K6ilPpc\nKfWz99Vesc76aAB/V0r9qpS61Xt4J6VUvFJqv76bUEp9qJTq42PvY6VUb5vrtVYptdH7aufz2T+U\nUlsViwH9n/f/6iqllnqVW9copRp6dzZ9ALzqbV8dpdRIpdQG73c/U0qVMTkulz2n98HFnwyXu9CF\n+/rzv8CCLhkAmnj/3gjgXe/7PgAWeN+/BeB57/sYUIUTAIYCeMvB75zzef8+gMU+f5cHUML7vguA\nz73vxwCYjxxVgXADu3MA3OJ9XxPATu/7iQAeD/jNed7314O1CgCgI4Avve8rAjgALs46+bbRx04Z\nAKW97+sD+MX7PhbAOgChvm0F8D2Aet73bQGs8GlPPx+7ET7vXwYw1uQ4Q3vu6+p7FSstJhd/avwh\nOXpAO8DKbwCwDUBt7/sOAPoBgIisUkpFKqXK5+M3P/N5Hw7gI+/OQZCjQ9YFwAwRjoYicsbATlcA\n13v1rgCgvFcEzwgLvXZ2KaWqet+vVUr9RylVGcA9YDEfLcdcLpQG8LZiWcgsAA182vq+iKTrbVVK\nlQPdXJ/5tK+Uid0blVKTvdeiHIBlgQcEac/FnxzuBOGiqJDu817z+VuDeT/Mb02HVJ/3LwNYKSL9\nvO6hYOo0KwA3C6uW5fyn8QDve56+B3wE4AFQcXSYze89BuC4iDTzxk/SLI4tAeC0iLS0sQkAHwDo\nIyLblVJDwR1Mfuy5+JPDjUG4KCo4Gex/AHA/ACilOgNIluAKu1j9RkXk6N/7Kll+B2CUHshWSkUY\nfHc5fCqRKaWae9+e99p10p4PAfwdVNfcbfEdgDWlE73vHwSgB9m/AzBcKRWmt1VEzgP4Qyl1j0/7\nmpm0rzyA40qpUgDu8/n/7ONs7Lm4yuBOEC6KCmLy3hcvAmillNoC4P/g1a/3hVKqt1LqxTz8xmsA\nXlFKbYJ/v38XLMW4VSn1G4Ah3t+ZpJTq5T3mbwBae4Pn2wGM8v7/EgB9fYLUgb+Z/beIJIE1Gd43\nabsv3gEwzNuehvDuhERkGajrv1Ep9SuAJ7zH3w9ghDfIvh2M6wCs0fykNzBfB5SH3wBOxL71IQKP\nu8/EnourDK7ctwsXRQBvzGILgJbeVboLF8Ue7g7ChYtChlKqC4CdIBPLnRxcXDFwdxAuXLhw4cIQ\n7g7ChQsXLlwYwp0gXLhw4cKFIdwJwoULFy5cGMKdIFy4cOHChSHcCcKFCxcuXBjCnSBcuHDhwoUh\n/h+E+ngbfsUWJwAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots(1,1)\n", "\n", "plt.axis([0,1,0,1])\n", " \n", "plt.scatter(XI_EA,XI_E) \n", "plt.scatter(XII_EA,XII_E) \n", "\n", "ZS=np.zeros([npts,3])\n", "for i in range(npts):\n", " ZS[i,:]=Zs[i]\n", "\n", "plt.scatter(ZS[:,0],ZS[:,2],marker='o',s=80, facecolors='none', edgecolors='r') \n", " \n", "plt.scatter(Z_EA,Z_E,marker='*')\n", "\n", "plt.xlabel('mol. frac.' + compNames[i_EA])\n", "plt.ylabel('mol. frac.' + compNames[i_E]) \n", "\n", "#UNCOMMENT THIS LINE TO PLOT THE FAILED POINT\n", "#failedpoint= [0.42105263 , 0.52631579 , 0.05263158]\n", "#plt.scatter(failedpoint[0],failedpoint[2],marker='d')\n", "\n", "plt.plot([0,1],[1,0],color='k')\n", "\n", "ax.spines['right'].set_visible(False)\n", "ax.spines['top'].set_visible(False)\n", "ax.yaxis.set_ticks_position('left')\n", "ax.xaxis.set_ticks_position('bottom')\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# note that we tried flash at every open circle, but converged only at asteriscs\n", "# outside the visible phase diagram, we sholud not have convergence because there is indeed no soltuiotn foe LLE\n", "# however inside the phase envelope there is solution but our algorithm failed\n", "# see discussions on that on notebook GE6" ] }, { "cell_type": "code", "execution_count": 111, "metadata": { "collapsed": false }, "outputs": [], "source": [ "#sort mole fraction LEFT and RIGHT of the crit point, so we can connect the dots\n", "# sort points arbitrariyl identified by the algorith as XI and XII into XIl XIr XIIL XIIr\n", "\n", "X_EA_crit=.2 #approximately\n", "\n", "XI_EAl=XI_EA[np.where(XI_EA<=X_EA_crit)]\n", "XI_EAr=XI_EA[np.where(XI_EA>X_EA_crit)]\n", "XII_EAl=XII_EA[np.where(XII_EA<=X_EA_crit)]\n", "XII_EAr=XII_EA[np.where(XII_EA>X_EA_crit)]\n", "\n", "XI_Wl=XI_W[np.where(XI_EA<=X_EA_crit)]\n", "XI_Wr=XI_W[np.where(XI_EA>X_EA_crit)]\n", "XII_Wl=XII_W[np.where(XII_EA<=X_EA_crit)]\n", "XII_Wr=XII_W[np.where(XII_EA>X_EA_crit)]\n", "\n", "XI_El=XI_E[np.where(XI_EA<=X_EA_crit)]\n", "XI_Er=XI_E[np.where(XI_EA>X_EA_crit)]\n", "XII_El=XII_E[np.where(XII_EA<=X_EA_crit)]\n", "XII_Er=XII_E[np.where(XII_EA>X_EA_crit)]" ] }, { "cell_type": "code", "execution_count": 112, "metadata": { "collapsed": false, "scrolled": false }, "outputs": [], "source": [ "#cooncatenate points from arbitrary XI and XII into L and R arrays,\n", "#which actually defines the two different phases I and II\n", "\n", "Lx = np.concatenate((XI_EAl,XII_EAl),axis=0)\n", "Ly = np.concatenate((XI_El,XII_El),axis=0)\n", "\n", "Rx = np.concatenate((XI_EAr,XII_EAr),axis=0)\n", "Ry = np.concatenate((XI_Er,XII_Er),axis=0)\n", "\n", "sLy=np.sort(Ly)\n", "sLx=np.sort(Lx)\n", "sRy=np.sort(Ry)\n", "sRx=-np.sort(-Rx)\n" ] }, { "cell_type": "code", "execution_count": 113, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYgAAAEZCAYAAACNebLAAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3XmcHHd54P/PU1cf093Tc2s0o9O2sA0+AVuAg2U7C4YE\nDCSbNWxIOGOWcC9nyAb/EjZAQsAcSQjgEMgmwAb4JSbcsS3AxgYTLJ+SLVm35tBoZrpn+u6q+u4f\n3Rr1jHqkluzWjKTn/XrVq7uqa6q/U6+Z5/l+n29VtxhjUEoppRaylroBSimllidNEEoppZrSBKGU\nUqopTRBKKaWa0gShlFKqKU0QSimlmtIEoZRSqilNEOq0JSK7ROTaJtuvFpF9i/zMl0SkLCIz9WVW\nRO4/yfe/U0Red4zXr6ofv/G9QhF5ecM+7xSRURHJiMgXRcRteG2jiDwhIttF5MoFx36ViNxXP+YB\nEfmOiDzvZH4PpRajCUKdqY51B+jHjDGp+pI0xlzWlgYYc1f9+CljTAr4TWAW+D6AiLwQeC9wDbAG\nOAf4/xoO8WfAdcALgA8f3igi7wI+Ud/WD6wG/hp4STt+D3X20gSh1CJEJC0i3xaRgyIyWX++sv7a\nh4FfAz5bHx18uoVDvgb4hjGmWF//PeBWY8w2Y0wW+FPgtY1NAOz6crhNKWpJ5M3GmH8zxhSNMYEx\n5rvGmPc/2d9ZqUaaIJRanAX8PbCKWi+9QK2njjHmj4GfAm+pjxDedqwDiUgc+C3gHxo2Px14oGH9\nAaBfRLrq638CfA/4NvDB+rbnABHgX0/6t1KqRZog1NnoPSIyJSLT9ccvNdvJGDNljPn/jTFlY0we\n+Ajw/JN8z98CJowxP23YlgCyDesz1EYNyfr7/8wYs8EYc4Ex5hf1fXqAQ8aY8CTboVTLnKVugFJL\n4C+NMX9yvJ1EJAbcArwQSFML3gkREXPin3L5e8BXFmzLAamG9U5qcyezxzjOJNArIpYmCdVuOoJQ\nanH/EzgPeLYxJs2R0YPUH1tKEiIyDGzi6ATxCHBJw/qlwLgxZvoYh7sHKAMva+W9lXoyNEGo050n\nIpGG5fCErizYHjmJYyeBIjAjIt3AzQteHwfWt3Cc3wPuNsbsWrD9K8DrReSC+rzDHwNNy12HGWNm\ngA8Bfy0iN4hITEQcEbleRD7aQluUapkmCHW6+w61yeNi/fFD9e0r6+tzr4nI4WD+3gX3Jhxc5Ni3\nAHHgEPAz4LsLXv8U8F/rVzjdcow2/i7zJ6cBMMb8APgL4E5gF/AERyehoxhjPgG8i1pCOQjsBf4Q\nnbhWTzFp5xcGicit1K79HjfGXLzIPp8GXgTkgdcYY7a0rUFKKaVa1u4RxJeoTfA1JSIvAs4xxpwH\n3AR8rs3tUUop1aK2JghjzF3AsSbcbqA+cWeM+TnQKSID7WyTUkqp1iz1HMQQ0PiZOQfq25RSSi2x\npU4QSimllqmlvlHuALWPMThsuL7tKCLSvtl0pZQ6gxlj5Ph7He1UjCCEIzcWLXQbtWvEEZGNQMYY\nM77YgYwxuhjDhz70oSVvw3JZ9FzoudBzcezlyWjrCEJE/pnaHaQ9IrKX2jXqHmCMMZ83xnxXRF4s\nIjuoXeb62sWPppRS6lRqa4IwxryqhX3e0s42KKWUOjk6SX0a2rRp01I3YdnQc3GEnosj9Fw8Ndp6\nJ/VT6eQ+QFMppc5uIoJZxpPUSimlTkOaIJRSSjWlCUIppVRTmiCUUko1pQlCKaVUU5oglFJKNaUJ\nQimlVFOaIJRSSjWlCUIppVRTmiCUUko1pQlCKaVUU5oglFJKNaUJQimlVFOaIJRSSjWlCUIppVRT\nmiCUUko1pQlCKaVUU5oglFJKNaUJQimlVFOaIJRSSjWlCUIppVRTmiCUUko1pQlCKaVUU5oglFJK\nNaUJQimlVFOaIJRSSjWlCUIppVRTmiCUUko1pQlCKaVUU5oglFJKNaUJQimlVFOaIJRSSjWlCUIp\npVRTmiCUUko11fYEISLXi8g2EXlcRN7X5PWUiNwmIltE5CEReU2726SUUur4xBjTvoOLWMDjwHXA\nCHAfcKMxZlvDPh8AUsaYD4hIL/AYMGCM8Rccy7SzrUopdSYSEYwxcjI/2+4RxBXAdmPMHmNMFfga\ncMOCfQyQrD9PApMLk4NSSqlTr90JYgjY17C+v76t0WeBC0VkBHgAeHub26SUUqoFzlI3AHghcL8x\n5loROQf4kYhcbIzJLdzx5ptvnnu+adMmNm3adMoaqZRSp4PNmzezefPmp+RY7Z6D2AjcbIy5vr7+\nfsAYYz7WsM+/Ax8xxtxdX78deJ8x5pcLjqVzEEopdYKW8xzEfcC5IrJGRDzgRuC2BfvsAX4dQEQG\ngA3Azja3Syml1HG0tcRkjAlE5C3AD6klo1uNMVtF5Kbay+bzwIeBfxCRB+s/9l5jzFQ726WUUur4\n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\npf4D8cxLAPcPqL4AAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.axis([0,1,0,1])\n", " \n", "plt.scatter(Lx,Ly) \n", "plt.scatter(Rx,Ry) \n", "\n", "plt.plot(sLx,sLy)\n", "plt.plot(sRx,sRy)\n", "\n", "# plot every calculated tieline\n", "for i in range(0,ndone):\n", " plt.plot([XI_EA[i],XII_EA[i]],[XI_E[i],XII_E[i]])\n", " \n", "plt.xlabel('mol. frac.' + compNames[i_EA])\n", "plt.ylabel('mol. frac.' + compNames[i_E]) \n", "\n", "plt.title('LLE at '+str(T-273)+'°C') \n", "\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 114, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAY4AAAEZCAYAAACAZ8KHAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzsnXdUVFfXxp+romJBOlbE3ns0djGW2BITjTWamKhpdlM0\nsUaNiiU29E2MNfbYW4zRWABBREFAiljoCAy9w8zc5/tjMCH5LEy52M5vrbNg7szd+wwL5uGcXY5E\nEgKBQCAQFJdSz3oCAoFAIHixEMIhEAgEAr0QwiEQCAQCvRDCIRAIBAK9EMIhEAgEAr0QwiEQCAQC\nvRDCIRAIBAK9EMIheCmRJClckqQ3HnG9hyRJ0Y+5Z7skSfmSJGUUjkxJkvwM9H9RkqSPn/B810L7\nRX3JkiS9W+Q1MyRJeiBJUpokSVskSTIr8lxHSZLuSZJ0R5Kk1/9je7QkST6FNmMlSTotSVIXQ96H\nQPAohHAIXkWeVPXqQtKicFQm2UaRCZAehfYtSFoAGAQgE8AfACBJ0psAvgHQE0BtAPUAfF/ExGIA\nvQD0BbDk4UVJkmYC+LHwmj0ARwAbAbylxPsQvJoI4RAIDECSJEtJkk5KkpQoSVJy4ffVC59bAqAb\nANfC1cT6YpgcB+AQydzCxx8A2EoylGQ6gEUAPio6BQClC8fDOVlAJy5fkDxOMpekluTvJGcb+54F\ngocI4RAIDKMUgG0AakH3X30OdP/Zg+RcAO4AJheuKKY+yZAkSRUADAWwo8jlZgD8izz2B2AvSZJV\n4eP5AM4AOAlgTuG1TgDKAThm8LsSCIqBEA6B4N98LUlSiiRJqYVftz/qRSRTSB4lmU8yG8AyAN0N\n9DkUgIqke5FrlQCkF3mcAd0qo3Khf0+SDUk2IXmt8DU2AJJIygbOQyAoFmWe9QQEgueMlSTnP+1F\nkiSZA1gL4E0AltB9qFeSJEmi/p1DPwDw63+uZQGwKPK4CnSxmcwn2EkGYCtJUikhHgIlESsOgcAw\nvgTQAEB7kpb4Z7UhFX4tlnhIklQTgDP+v3AEAWhV5HFrAAkkU59gzgtAPoB3iuNbIDAUIRyCl5my\nkiSVKzIeBpKl/1wvZ4DtygByAWRIkmQNYOF/nk8AULcYdj4AcIVk+H+u/wpgvCRJTQrjGnMBPHLb\n7CEkMwAsALBRkqTBkiSZS5JURpKkfpIkLS/GXASCYiGEQ/Aycxq6oHVu4dcFhderFz7++zlJkh5+\nyH/zn9qKxMfYXgugAoAkAJ4Afv/P8+sADCvMuFr7hDmOwb+D4gAAkmcBrABwEUA4gHv4/+L0/yD5\nI4CZ0AlNIoAoAJMgAuYCEyIpfZCTJEn9oPsjKwVdeqHLf54fDWBW4cNM6FIJA4pzr0AgEAhKHkWF\nQ5KkUgDCoCtUigPgA2AkydAir+kIIIRkeqFQLCTZsTj3CgQCgaDkUXqrqgOAOyQjSaoB7AcwuOgL\nSF4tLHACgKsAahT3XoFAIBCUPEoLRw0ARfsCxeAfYXgUE6ArajLkXoFAIBCUAM9NHYckST2ha6nQ\n9VnPRSAQCASPR2nhiIWuHcNDahZe+xeSJLUEsBlAvyJ56sW6t/B+ZSP8AoFA8BJCUnr6q/4/Sm9V\n+QCoL0lSbUmSygIYCeBE0RdIkuQI4DCAsSTv6XNvUUg+12PBggXPfA5inmKeYp5ing+HMSi64iCp\nlSRpMoA/8U9KbYgkSZ/qnuZmAPMAWAPYJEmSBEBNssPj7lVyvgKBQCB4OorHOEj+AaDRf679XOT7\niQAmFvdegUAgEDxbROV4CeHs7Pysp1AsxDxNi5inaRHzfD5QvHK8JDCsIalAIBC8ukiSBD6nwXGB\nQCAQvGQI4RAIBAKBXgjhEAgEAoFeCOEQCAQCgV4I4RAIBAKBXgjhEAgEAoFeCOEQCAQCgV4I4RAI\nBAKBXgjhEAgEAoFeCOEQCAQCgV4I4RAIBAKBXgjhEAgEAoFeCOEQCAQCgV4I4RAIBAKBXgjhEAgE\nAoFeCOEQCAQCgV4I4RAIBAKBXgjhEAgEAoFeCOEQCAQCgV4I4RAIBAKBXgjhEAgEAoFeCOEQCAQC\ngV4I4RAIBAKBXgjhEAgEAoFeCOEQCAQCgV4I4RAIBAKBXgjhEAgEAoFeCOEQCAQCgV4I4RAIBAKB\nXgjhEAgEAoFeCOEQCAQCgV4I4RAIBAKBXgjhELwyqFQq+Pj4QKVSPeupCAQvNEI4BK8E+/YdgKNj\nQ/TsORaOjg2xb9+BZz0lgeCFRSL5rOdgNJIk8WV4HwJlUKlUqFGjHtQ2FiitrQmtKgxmZmrExt6H\nnZ3ds56eQPBMkCQJJCVD7hUrDsFLj5+fH6TXW+HzHR0w/6d4wGoX1GoZfn5+z3pqAsELiRAOwUtN\nmlqNfaVv45f592EbBKxe/zkw4SOgocWznppA8MJS5llPQCBQijOqWFwInYXhZf7AquUaXPhjIYCW\n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\n4v8DLGYZ/eBL3z8AAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.axis([0,.8,0,.2])\n", " \n", "plt.scatter(Lx,Ly) \n", "plt.scatter(Rx,Ry) \n", "\n", "plt.plot(sLx,sLy)\n", "plt.plot(sRx,sRy)\n", "\n", "\n", "# plot every calculated tieline\n", "for i in range(0,ndone):\n", " plt.plot([XI_EA[i],XII_EA[i]],[XI_E[i],XII_E[i]])\n", "\n", "plt.xlabel('mol. frac.' + compNames[i_EA])\n", "plt.ylabel('mol. frac.' + compNames[i_E]) \n", " \n", "plt.title('LLE at '+str(T-273)+'°C') \n", " \n", "plt.show()\n" ] }, { "cell_type": "code", "execution_count": 115, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "(array([[ 1.43020513e-02],\n", " [ 9.85697948e-01],\n", " [ 5.47056472e-10]]), array([[ 7.65267420e-01],\n", " [ 2.34732578e-01],\n", " [ 1.42895098e-09]]), array([[ 0.51360284]]), 1, 65, 102)\n" ] } ], "source": [ "# Warm restart GCP\n", "MODEL = lambda x: Gamma(T,x,alpha,A)\n", "\n", "nspace = 400\n", "\n", "#Z0 = np.array([0.1 , 0.85 , 0.05]).T\n", "Z0 = np.array([[0.4 , 0.6-1e-9 , 1e-9]]).T\n", "\n", "ig = iguess(Z0,MODEL)\n", "\n", "ans = ELLflash(Z0,ig[0],ig[1],MODEL)\n", "print (ans)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# having noticed the algorithm converges on ost of the points in the first proposed grid, and being able to calculate beta, XI and XII for (theoretically) any Z\n", "# we now proceed to a secondary objective, create a grid that will generate a figure with tielines more evenly spcaced, we dont care now for pronting values of beta, but rather only plot XI and xII to assemble the LLE envelope in the phase diagram.\n", "\n", "* we start with a equilibrium point close to the binary line\n", "* we proceed with variations of Z that we expect will yeld tie lines evenly spaced coming from the almost binary calculation up to close to the LLE crit point\n", " * the next Z shall be the middle point of the tileine from the previous Z plus a small vector in the direction perepndicular to the tieline\n", "* we use the initial guess functionfor the frist flash\n", "* but noticign the sequential calculations, we use a warm restart methodology, the solution of each flash is the initial guess for the next" ] }, { "cell_type": "code", "execution_count": 116, "metadata": { "collapsed": false, "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "done 17\n" ] } ], "source": [ "nspace = 100\n", " \n", "Z0 = np.array([0.4 , 0.6-3e-9 , 3e-9]) #first calculation point, aprox. binary of EA and W: Z_E = 1e-9\n", "\n", "Zs = np.ndarray((nspace), dtype=object)\n", "\n", "flags = np.zeros((nspace))\n", "\n", "npts = nspace\n", "\n", "Results_beta = np.zeros([npts])\n", "Results_conv = np.zeros([npts])\n", "Results_Z = np.zeros([npts,3])\n", "Results_XI = np.zeros([npts,3])\n", "Results_XII = np.zeros([npts,3])\n", "\n", "Zs[0]=Z0\n", "\n", "beta0, K0 = iguess(np.array([Zs[0]]).T,MODEL)\n", "\n", "l=0\n", "\n", "for k in range(nspace-1):\n", "\n", " try:\n", " \n", " ans = ELLflash(np.array([Zs[k]]).T,beta0,K0,MODEL)\n", " #succeeds:\n", "\n", " if (0ans[2][0,0] and ans[3]!=0):\n", "\n", " Results_XI[l,:] = ans[0][0:3,0]#np.array([ans[0][0][0],ans[0][1][0],ans[0][2][0]])\n", " Results_XII[l,:] = ans[1][0:3,0] #np.array([ans[1][0][0],ans[1][1][0],ans[1][2][0]])\n", " Results_beta[l] = ans[2]\n", " Results_conv[l] = ans[3]\n", "\n", " Results_Z[l,:] = Zs[k]\n", "\n", " x=Zs[k][2]\n", " y=Zs[k][1] \n", "\n", " \n", " Results_XI[l,:] = ans[0][0:3,0]\n", "\n", " \n", " vec = Results_XII[l,:] - Results_XI[l,:]\n", " \n", " vm = 0.5*(Results_XII[l,:] + Results_XI[l,:])\n", "\n", " \n", " ww1=1\n", " ww2 = vec[2]*ww1/vec[1]\n", "\n", " w1 = ww1/(np.sqrt(ww1**2+ww2**2))\n", " w2 = ww2/(np.sqrt(ww1**2+ww2**2))\n", " \n", " xm=vm[2]\n", " ym=vm[1]\n", " d=0.01\n", " x=xm+w1*d\n", " y=ym+w2*d\n", " z=1-y-x\n", " Zs[k+1]=[z,y,x]\n", "\n", " \n", " beta0=ans[2].copy()\n", " K0=ans[1]/ans[0]\n", "\n", " l+=1\n", " \n", " #else:\n", " #raise ValueError\n", "\n", " except:\n", " break # after first non cinvergence, break the grid\n", "\n", "print('done',l)\n", "ndone=l\n", "\n", "\n", "\n", "\n", "\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# filter only the converged results" ] }, { "cell_type": "code", "execution_count": 117, "metadata": { "collapsed": false }, "outputs": [], "source": [ "fResults_XI = Results_XI[:][np.where(Results_conv!=0)]\n", "fResults_XII = Results_XII[:][np.where(Results_conv!=0)]\n", "fResults_beta = Results_beta[np.where(Results_conv!=0)]\n", "fResults_Z = Results_Z[:][np.where(Results_conv!=0)]" ] }, { "cell_type": "code", "execution_count": 118, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# identify the results for analysis and plotting\n", "XI_EA=fResults_XI[:,0]\n", "XI_W=fResults_XI[:,1]\n", "XI_E=fResults_XI[:,2]\n", "\n", "XII_EA=fResults_XII[:,0]\n", "XII_W=fResults_XII[:,1]\n", "XII_E=fResults_XII[:,2]\n", "\n", "Z_EA=fResults_Z[:,0]\n", "Z_W=fResults_Z[:,1]\n", "Z_E=fResults_Z[:,2]" ] }, { "cell_type": "code", "execution_count": 119, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# plot mole fractions results in axis of E vs EA plot(dataEA,dataE)" ] }, { "cell_type": "code", "execution_count": 120, "metadata": { "collapsed": false, "scrolled": true }, "outputs": [ { "data": { "image/png": "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\n3PrYQMTq/wAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.axis([0,1,0,1])\n", " \n", "plt.scatter(XI_EA,XI_E) \n", "plt.scatter(XII_EA,XII_E) \n", "\n", "ZS=np.zeros([npts,3])\n", "for i in range(npts):\n", " ZS[i,:]=Zs[i]\n", "\n", "plt.scatter(ZS[:,0],ZS[:,2],marker='o',s=80, facecolors='none', edgecolors='r') \n", " \n", "plt.scatter(Z_EA,Z_E,marker='*')\n", "\n", "plt.xlabel('mol. frac.' + compNames[i_EA])\n", "plt.ylabel('mol. frac.' + compNames[i_E]) \n", "\n", "#UNCOMMENT THIS LINE TO PLOT THE FAILED POINT\n", "#failedpoint= [0.42105263 , 0.52631579 , 0.05263158]\n", "#plt.scatter(failedpoint[0],failedpoint[2],marker='d')\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# note that we tried flash at every open circle, but converged only at asteriscs\n", "# outside the visible phase diagram, we sholud not have convergence because there is indeed no soltuiotn foe LLE\n", "# however inside the phase envelope there is solution but our algorithm failed\n", "# see discussions on that on notebook GE6" ] }, { "cell_type": "code", "execution_count": 121, "metadata": { "collapsed": false }, "outputs": [], "source": [ "#sort mole fraction LEFT and RIGHT of the crit point, so we can connect the dots\n", "# sort points arbitrariyl identified by the algorith as XI and XII into XIl XIr XIIL XIIr\n", "\n", "X_EA_crit=.2 #approximately\n", "\n", "XI_EAl=XI_EA[np.where(XI_EA<=X_EA_crit)]\n", "XI_EAr=XI_EA[np.where(XI_EA>X_EA_crit)]\n", "XII_EAl=XII_EA[np.where(XII_EA<=X_EA_crit)]\n", "XII_EAr=XII_EA[np.where(XII_EA>X_EA_crit)]\n", "\n", "XI_Wl=XI_W[np.where(XI_EA<=X_EA_crit)]\n", "XI_Wr=XI_W[np.where(XI_EA>X_EA_crit)]\n", "XII_Wl=XII_W[np.where(XII_EA<=X_EA_crit)]\n", "XII_Wr=XII_W[np.where(XII_EA>X_EA_crit)]\n", "\n", "XI_El=XI_E[np.where(XI_EA<=X_EA_crit)]\n", "XI_Er=XI_E[np.where(XI_EA>X_EA_crit)]\n", "XII_El=XII_E[np.where(XII_EA<=X_EA_crit)]\n", "XII_Er=XII_E[np.where(XII_EA>X_EA_crit)]" ] }, { "cell_type": "code", "execution_count": 122, "metadata": { "collapsed": false, "scrolled": false }, "outputs": [], "source": [ "#cooncatenate points from arbitrary XI and XII into L and R arrays,\n", "#which actually defines the two different phases I and II\n", "\n", "Lx = np.concatenate((XI_EAl,XII_EAl),axis=0)\n", "Ly = np.concatenate((XI_El,XII_El),axis=0)\n", "\n", "Rx = np.concatenate((XI_EAr,XII_EAr),axis=0)\n", "Ry = np.concatenate((XI_Er,XII_Er),axis=0)\n", "\n", "sLy=np.sort(Ly)\n", "sLx=np.sort(Lx)\n", "sRy=np.sort(Ry)\n", "sRx=-np.sort(-Rx)\n" ] }, { "cell_type": "code", "execution_count": 145, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nrkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.axis([0,1,0,1])\n", " \n", "plt.scatter(Lx,Ly) \n", "plt.scatter(Rx,Ry) \n", "\n", "plt.plot(sLx,sLy)\n", "plt.plot(sRx,sRy)\n", "\n", "# plot every calculated tieline\n", "for i in range(0,ndone):\n", " plt.plot([XI_EA[i],XII_EA[i]],[XI_E[i],XII_E[i]])\n", " \n", "plt.xlabel('mol. frac. ' + compNames[i_EA])\n", "plt.ylabel('mol. frac. ' + compNames[i_E]) \n", "\n", "plt.title('LLE at '+str(T-273)+'°C') \n", "\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 148, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.axis([0,.8,0,.2])\n", " \n", "plt.scatter(Lx,Ly) \n", "plt.scatter(Rx,Ry) \n", "\n", "plt.plot(sLx,sLy)\n", "plt.plot(sRx,sRy)\n", "\n", "\n", "# plot every calculated tieline\n", "for i in range(0,ndone):\n", " plt.plot([XI_EA[i],XII_EA[i]],[XI_E[i],XII_E[i]])\n", "\n", "plt.xlabel('mol. frac. ' + compNames[i_EA])\n", "plt.ylabel('mol. frac. ' + compNames[i_E]) \n", " \n", "plt.title('LLE at '+str(T-273)+'°C') \n", " \n", "plt.show()\n" ] }, { "cell_type": "markdown", "metadata": { "collapsed": true }, "source": [ "# publication ready format for our graphical abstract" ] }, { "cell_type": "code", "execution_count": 154, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "#bonus: some drafts for saving the fig in publication quality format\n", "\n", "from matplotlib import rcParams as rc\n", "\n", "fig_width = 9 / 2.54 #in inches\n", "fig_height = 9 / 2.54 #in inches\n", "fig_size = [fig_width,fig_height]\n", "\n", "#FONTS & TICKS\\n\",\n", "params = {'backend': 'ps',\n", "'axes.labelsize': 12, #in pts\n", "'font.size': 8, #in pts\n", "'legend.fontsize': 8, #in pts\n", "'xtick.labelsize': 10, #in pts\n", "'ytick.labelsize': 10, #in pts\n", "'text.usetex': False,\n", "'figure.figsize': fig_size}\n", "rc.update(params)\n", "\n", "GAfig, GAax1 = plt.subplots(1,1)\n", "\n", "plt.axis([0,1,0,1])\n", " \n", "#plt.scatter(Lx,Ly) \n", "#plt.scatter(Rx,Ry) \n", "\n", "plt.plot(sLx,sLy,color='k')\n", "plt.plot(sRx,sRy,color='k')\n", "\n", "\n", "# plot every calculated tieline\n", "for i in range(0,ndone,2):\n", " plt.plot([XI_EA[i],XII_EA[i]],[XI_E[i],XII_E[i]])\n", "\n", "plt.xlabel('mol. frac. ' + compNames[i_EA])\n", "plt.ylabel('mol. frac. ' + compNames[i_E]) \n", " \n", "plt.title('[ethyl acetate; water; ethanol] \\n LLE at '+str(T)+' K') \n", "\n", "#plt.legend() \n", "\n", "plt.plot([0,1],[1,0],color='k')\n", "\n", "GAax1.spines['right'].set_visible(False)\n", "GAax1.spines['top'].set_visible(False)\n", "GAax1.yaxis.set_ticks_position('left')\n", "GAax1.xaxis.set_ticks_position('bottom')\n", "\n", "\n", "plt.tight_layout()\n", "\n", "GAfig.savefig('fig3.png', dpi=1000)\n", " \n", "plt.show() #finally show the plot. It shows in the output section of the cell if the magic command %matplotlib inline was used in the beginning of the notebook" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] } ], "metadata": { "anaconda-cloud": {}, "kernelspec": { "display_name": "Python [Root]", "language": "python", "name": "Python [Root]" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.5.2" } }, "nbformat": 4, "nbformat_minor": 1 }