{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "*This notebook contains course material from [CBE20255](https://jckantor.github.io/CBE20255)\n", "by Jeffrey Kantor (jeff at nd.edu); the content is available [on Github](https://github.com/jckantor/CBE20255.git).\n", "The text is released under the [CC-BY-NC-ND-4.0 license](https://creativecommons.org/licenses/by-nc-nd/4.0/legalcode),\n", "and code is released under the [MIT license](https://opensource.org/licenses/MIT).*" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "< [Binary Phase Diagrams for Ideal Mixtures](http://nbviewer.jupyter.org/github/jckantor/CBE20255/blob/master/notebooks/07.06-Binary-Phase-Diagrams-for-Ideal-Mixtures.ipynb) | [Contents](toc.ipynb) | [Bubble and Dew Points for Multicomponent Mixtures](http://nbviewer.jupyter.org/github/jckantor/CBE20255/blob/master/notebooks/07.08-Bubble-and-Dew-Points-for-Multicomponent-Mixtures.ipynb) >
"
]
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "5WXZyjKQyKp9"
},
"source": [
"# Bubble and Dew Points for Binary Mixtures"
]
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "5WXZyjKQyKp9"
},
"source": [
"## Summary\n",
"\n",
"This notebook illustrates the use of Raoult's Law and Antoine's equation to compute the bubble and dew points for an ideal solution. The video is used with permission from [LearnChemE](http://learncheme.ning.com/), a project at the University of Colorado funded by the National Science Foundation and the Shell Corporation."
]
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "RQItYLeQyKp_"
},
"source": [
"## Overview of the Calculations\n",
"\n",
"![BubbleDewPointCalculations.png](https://github.com/jckantor/CBE20255/blob/master/notebooks/figures/BubbleDewPointCalculations.png?raw=true)"
]
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "HIc89m0byKqA"
},
"source": [
"## Bubble Point Calculations for Binary Mixtures\n",
"\n",
"For an ideal binary mixture of components $A$ and $B$, applying Raoult's law at the bubble point temperature gives the constraint\n",
"\n",
"\\begin{equation}\n",
"P = x_A P_A^{sat}(T) + x_B P_B^{sat}(T)\n",
"\\end{equation}\n",
"\n",
"where $x_A P_A^{sat}(P)$ and $x_B P_B^{sat}(P)$ are the partial pressures of $A$ and $B$, respectively. This relationship is the basis for an interative procedure for computing the bubble point temperature.\n",
"\n",
"Step 1: Guess the temperature.\n",
"\n",
"Step 2: Compute the 'K-factors'\n",
"\n",
"\\begin{equation}\n",
"K_A = \\frac{P^{sat}_A(T)}{P}\\qquad\\mbox{and}\\qquad K_B = \\frac{P^{sat}_B(T)}{P}\n",
"\\end{equation}\n",
"\n",
"Step 3: Compute the vapor phase mole fractions \n",
"\n",
"\\begin{equation}\n",
"y_A = K_A x_A\\qquad\\mbox{and}\\qquad y_B = K_B x_B\n",
"\\end{equation}\n",
"\n",
"Step 4: Check if $y_A + y_B = 1$. Adjust the temperature and repeat until the vapor phase mole fractions sum to one."
]
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "xTt9vtkEyKqB"
},
"source": [
"### Solution by Manual Iteration\n",
"\n",
"We're given a binary mixture composed of acetone and ethanol at atmospheric pressure where the liquid phase mole fraction of acetone is 0.40. The problem is to find the equilibrium temperature and the composition of the vapor phase."
]
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "ad1-YW8tyKqC"
},
"source": [
"Initialize the Python workspace with with default settings for plots."
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "LU0IIdAJyKqD"
},
"outputs": [],
"source": [
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"%matplotlib inline"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "OgTliHQdX2hb"
},
"outputs": [],
"source": [
"from scipy.optimize import brentq\n",
"\n",
"class Species(object):\n",
" \n",
" def __init__(self, name='no name', Psat=lambda T: null):\n",
" self.name = name\n",
" self.Psat = Psat\n",
" \n",
" # compute saturation pressure given temperature. \n",
" def Psat(self, T):\n",
" raise Exception('Psat() has not been defined for ' + self.name)\n",
" \n",
" # compute saturation temperature given pressure\n",
" def Tsat(self, P):\n",
" return brentq(lambda T: self.Psat(T) - P, -50, 200)\n",
"\n",
"\n",
"acetone = Species('acetone', lambda T: 10**(7.02447 - 1161.0/(T + 224)))\n",
"benzene = Species('benzene', lambda T: 10**(6.89272 - 1203.531/(T + 219.888)))\n",
"ethanol = Species('ethanol', lambda T: 10**(8.04494 - 1554.3/(T + 222.65)))\n",
"hexane = Species('hexane', lambda T: 10**(6.88555 - 1175.817/(T + 224.867)))\n",
"toluene = Species('toluene', lambda T: 10**(6.95808 - 1346.773/(T + 219.693)))\n",
"p_xylene = Species('p_xylene', lambda T: 10**(6.98820 - 1451.792/(T + 215.111)))"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "ICbm_Z_-yKqG"
},
"outputs": [],
"source": [
"A = acetone\n",
"B = ethanol\n",
"\n",
"P = 760\n",
"xA = 0.4\n",
"xB = 1 - xA"
]
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "4kDs3ZeuyKqJ"
},
"source": [
"We will use Antoine's equation to compute the saturation pressures for the pure components. These function are stored as entries in a simple Python dictionary."
]
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "FRj4uIqCyKqN"
},
"source": [
"The next cell performs the calculations outlined above. Execute this cell with different values of `T` until the vapor phase mole fractions sum to one."
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 34
},
"colab_type": "code",
"executionInfo": {
"elapsed": 325,
"status": "ok",
"timestamp": 1541161520302,
"user": {
"displayName": "",
"photoUrl": "",
"userId": ""
},
"user_tz": 240
},
"id": "k1pWMU0tyKqO",
"outputId": "d1bb8121-d066-41dc-ecb2-8856e460942e"
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"1.337689658645641\n"
]
}
],
"source": [
"T = 65\n",
"\n",
"KA = A.Psat(T)/P\n",
"KB = B.Psat(T)/P\n",
"\n",
"yA = KA*xA\n",
"yB = KA*xB\n",
"\n",
"print(yA + yB)"
]
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "rUmHpaqKyKqU"
},
"source": [
"### Solution with a Root-Finding Function\n",
"\n",
"To compute the bubble point for a binary mixture we need to solve the equation\n",
"\n",
"$$P = x_A P^{sat}_A(T_{bubble}) + x_B P^{sat}_B(T_{bubble})$$\n",
"\n",
"where $P$ and $x_A$ (and therefore $x_B = 1 - x_A$) are known. The bubble point composition is given by\n",
"\n",
"$$y_A = \\frac{x_A P^{sat}_A(T)}{P}\\qquad\\mbox{and}\\qquad y_B = \\frac{x_B P^{sat}_B(T)}{P}$$\n",
"\n",
"Matlab and Python functions for solving equations rely on *root-finding* methods, that is, methods that find the *zeros* of a function. In this case we need to write our problem as\n",
"\n",
"$$x_A \\frac{P^{sat}_A(T)}{P} + x_B\\frac{P^{sat}_B(T)}{P} = 1$$\n",
"\n",
"Here we use the `brentq` function from the scipy.optimize library to return the root of this equation."
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 34
},
"colab_type": "code",
"executionInfo": {
"elapsed": 258,
"status": "ok",
"timestamp": 1541161568813,
"user": {
"displayName": "",
"photoUrl": "",
"userId": ""
},
"user_tz": 240
},
"id": "hbZkm79ByKqU",
"outputId": "8dc3e7c4-0f30-4419-8f97-9449645907e8"
},
"outputs": [
{
"data": {
"text/plain": [
"68.5195836108029"
]
},
"execution_count": 7,
"metadata": {
"tags": []
},
"output_type": "execute_result"
}
],
"source": [
"from scipy.optimize import brentq\n",
"\n",
"brentq(lambda T: xA*A.Psat(T)/P + xB*B.Psat(T)/P - 1.0, 0, 100)"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 51
},
"colab_type": "code",
"executionInfo": {
"elapsed": 380,
"status": "ok",
"timestamp": 1541161672447,
"user": {
"displayName": "",
"photoUrl": "",
"userId": ""
},
"user_tz": 240
},
"id": "oy2swJa4yKqY",
"outputId": "040666cb-4399-4205-d07e-35aa00d7a97f"
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Bubble point temperature = 68.520 [deg C]\n",
"Bubble point composition = 0.598, 0.402\n"
]
}
],
"source": [
"def Tbub(X) :\n",
" xA, xB = X\n",
" return brentq(lambda T: xA*A.Psat(T)/P + xB*B.Psat(T)/P - 1.0, 0, 100)\n",
"\n",
"print(\"Bubble point temperature = {:6.3f} [deg C]\".format(Tbub((xA,xB))))\n",
"\n",
"yA = xA*A.Psat(Tbub((xA,xB)))/P\n",
"yB = xB*B.Psat(Tbub((xA,xB)))/P\n",
"\n",
"print(\"Bubble point composition = {:.3f}, {:.3f}\".format(yA,yB))"
]
},
{
"cell_type": "markdown",
"metadata": {
"colab_type": "text",
"id": "okQp3TUzyKqb"
},
"source": [
"### Bubble Point Curve for a Txy Diagram\n",
"\n",
"It's a relatively simply matter to encapsulate the bubble point calculation into a function that, given the liquid phase mole fraction for an ideal binary mixture, uses a root-finding procedure to return the bubble point temperature."
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 393
},
"colab_type": "code",
"executionInfo": {
"elapsed": 395,
"status": "ok",
"timestamp": 1541161741203,
"user": {
"displayName": "",
"photoUrl": "",
"userId": ""
},
"user_tz": 240
},
"id": "FAGRsVuuyKqc",
"outputId": "063dce60-2ee1-4e1b-f76a-dfacdd47a45a"
},
"outputs": [
{
"data": {
"text/plain": [
"Text(0.5,1,'Bubble Point for acetone/ethanol at 760.0 [mmHg]')"
]
},
"execution_count": 13,
"metadata": {
"tags": []
},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
" "
]
}
],
"metadata": {
"colab": {
"collapsed_sections": [],
"name": "Copy of Bubble_and_Dew_Points_for_Binary_Mixtures.ipynb",
"provenance": [
{
"file_id": "https://github.com/jckantor/CBE20255/blob/master/notebooks/Bubble_and_Dew_Points_for_Binary_Mixtures.ipynb",
"timestamp": 1541161908223
}
],
"toc_visible": true,
"version": "0.3.2"
},
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"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.7.3"
}
},
"nbformat": 4,
"nbformat_minor": 2
}