REQUIRE "atoms.a4l"; (* => atoms.a4l, measures.a4l, system.a4l, basemodel.a4l *) PROVIDE "components.a4l"; (* * * WARNINGS: * - The contents of this file represent a physical * properties database of minimal functionality. Such a * database is just messy conceptually in a declarative language, * so we do not apologize for the modeling style found in this * file. * * - We, of course, would like to replace it with a small wrapper to a * thermodynamic information database with a much wider range * of chemical species. We are aware of no such database of * significant size being placed in the public domain * in source form which we can distribute to all our users. * * 1: * Add species or new correlation coefficients as you need them. * Models you create in the ASCEND IV language are Not subject to * the GNU Public License (GPL) UNLESS you base those models on GNU Public * Licensed ASCEND Libraries. All ASCEND libraries distributed from * Carnegie Mellon are distributed under the GPL unless explicitly noted * as being in the public domain in the distributed source code. * * In the interest of promoting research, we make an EXCEPTION to the * above condition for proprietary physical property data integrated * with ASCEND library models for non-commercial research purposes only. * * If you base a commercial application on GNU Public Licensed ASCEND IV * libraries or modifications or extensions of those libraries, then the * models you create must be released in source code form per the GPL. * * 2: If you have such a properties database to donate, please let us know. * 3: * If you create a wrapper to a proprietary database for use with * ASCEND in a way that entangles your code with our sources, you * are required under the terms of the ASCEND GPL * to _give_ the wrapper code back to us and to make it otherwise * available for public use. This does not require making the * proprietary database public, just the interface. If releasing * such an interface violates the proprietary licensing, then do not * create it in an entangled fashion. * 4: * If you have questions about any of the above, please contact us * ascend+developers@cs.cmu.edu and aw0a@cs.cmu.edu. We will consider * alternative licensing arrangements on a case-by-case basis subject * to keeping the lawyers and accountants on all sides happy. *) (* * components.a4l * by Joseph J. Zaher and Ben Allan * Part of the ASCEND Library * $Date: 1998/08/10 16:03:36 $ * $Revision: 1.1 $ * $Author: ballan $ * $Source: /afs/cs.cmu.edu/project/ascend/Repository/models/small_components.a4l,v $ * * This file is part of the ASCEND Modeling Library. * * Copyright (C) 1994 Joseph J Zaher * Copyright (C) 1997 Benjamin Andrew Allan * * The ASCEND Modeling Library is free software; you can redistribute * it and/or modify it under the terms of the GNU General Public * License as published by the Free Software Foundation; either * version 2 of the License, or (at your option) any later version. * * The ASCEND Modeling Library is distributed in hope that it * will be useful, but WITHOUT ANY WARRANTY; without even the implied * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * See the GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with the program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139 USA. Check * the file named COPYING. *) (** ** ** C O M P O N E N T S . A 4 L ** ---------------------------------------- ** ** AUTHOR: Joseph J. Zaher ** ** DATES: 07/91 - Original code. ** 02/92 - Made compatible with new set version of ASCEND. ** Expanded data base, revised vapor pressure data, ** and added UNIFAC group and subgroup sets with help ** of Bob Huss. ** 07/92 - Expanded data base with help of Kay C. Dee. ** 08/92 - Replaced name attribute of each component with a ** formula attribute. Component names are free to be ** specified by the user. ** 03/94 - Made compatible with gnu-ascend. ** 08/94 - Made compatible with H,G or H,S thermo library, ** and with Wilson models written by Boyd Safrit. ** 02/96 - Made compatible with ASCEND IV. Ben Allan. ** 01/97 - Addition OF td_component_constants by _____ ** 01/97 - All constants checked by Jennifer Perry ** 03/97 - Added container models for data groups. BAA. ** 03/98 - 99% of the code in this file should be reduced ** to a call on a database. ** ** ** CONTENTS: ASCEND structure for component physical property constants. ** All anticipated constants which may be used by the models ** of "thermodynamics.a4l" are created in a general model where ** a consistent reference state (298.15{K} and 1.0{atm}) is ** chosen. Specific refinements to actual chemical species are ** made UNIVERSAL to ensure only one instantiation of the ** constants for each component is maintained throughout a ** user's simulation. A reference enthalpy and entropy is ** chosen by default to be those of formation of the component ** from its elements at the reference state. ** ** **) (* Wilson pairs checked by Boyd i_propanol-water i_propanol-ethylene_glycol ethylene_glycol-water acetone-chloroform acetone-benzene acetone-methanol methanol-water benzene-chloroform propadiene-propylene provided by Vince Verneulli OF Sim Sci propadiene-propane provided by Vince Verneulli OF Sim Sci propylene-propane provided by Vince Verneulli OF Sim Sci *) MODEL compmodel() REFINES cmumodel(); METHODS METHOD check_self; END check_self; METHOD check_all; END check_all; METHOD default_self; END default_self; METHOD default_all; END default_all; METHOD specify; END specify; METHOD scale_self; END scale_self; METHOD scale_all; END scale_all; METHOD bound_self; END bound_self; METHOD bound_all; END bound_all; END compmodel; UNIVERSAL MODEL UNIFAC_constants() REFINES compmodel; (* REFERENCE: The reference for the bulk of this MODEL is Reid, Prausnitz & Poling, Properties of Gases and Liquids, 1986, Chapter 8. DISCLAIMER: DISCLAIMER: DISCLAIMER: DISCLAIMER: DISCLAIMER: DISCLAIMER: The authors of ASCEND and Carnegie Mellon University make absolutely NO WARRANTY about the accuracy of this transcription of the RPP data or of the original data itself, nor do they provide any guarantee that the data here represented is suitable for any purpose academic or commercial. DISCLAIMER: DISCLAIMER: DISCLAIMER: DISCLAIMER: DISCLAIMER: DISCLAIMER: NOTES: The frontiers of group contribution methods have moved on well past the data presented here and the correlations it is used with. Users with a penchant for thermodynamic detail are advised to MODEL their own favorite correlations. COMMON USAGE: The local name of every instance of this MODEL (since it is UNIVERSAL) should always be uc. In the comments that follow, we will use uc where applicable. ANNOTATED: 10/96 Ben Allan *) groups IS_A set OF integer_constant; (* * uc.groups is the main group list (the ones we support) from RPP * Table 8.21 column 1. * Currently supported groups are (in RPP Main index) * 1,2,3,4,5,6,7,8,9,23, and 11 *) groups :== [1..47]; (* fix a 10, 12-22, 24-47 *) (* * uc.sub[i IN uc.groups] is the set of secondary groups for the ith * main group. This is the column 2 data of RPP Table 8-21. * The UNION of uc.sub[i] is uc.subgroups, basically the set of * rows in Table 8-21 that we have entered. *) sub[groups] IS_A set OF symbol_constant; sub[1] :== ['CH3', 'CH2', 'CH', 'C']; sub[2] :== ['CH2=CH', 'CH=CH', 'CH2=C', 'CH=C', 'C=C']; sub[3] :== ['ACH', 'AC']; sub[4] :== ['ACCH3', 'ACCH2', 'ACCH']; sub[5] :== ['OH']; sub[6] :== ['CH3OH']; sub[7] :== ['H2O']; sub[8] :== ['ACOH']; sub[9] :== ['CH3CO', 'CH2CO']; sub[10] :== ['CHO']; sub[11] :== ['CH3COO', 'CH2COO']; sub[12] :== ['HCOO']; sub[13] :== ['CH3O', 'CH2O', 'CH-O', 'FCH2O']; sub[14] :== ['CH3NH2', 'CH2NH2', 'CHNH2']; sub[15] :== ['CH3NH', 'CH2NH', 'CHNH']; sub[16] :== ['CH3N', 'CH2N']; sub[17] :== ['ACNH2']; sub[18] :== ['C5H5N', 'C5H4N', 'C5H3N']; sub[19] :== ['CH3CN', 'CH2CN']; sub[20] :== ['COOH', 'HCOOH']; sub[21] :== ['CH2Cl', 'CHCl', 'CCl']; sub[22] :== ['CH2Cl2', 'CHCl2', 'CCl2']; sub[23] :== ['CHCl3', 'CCl3']; sub[24] :== ['CCl4']; sub[25] :== ['ACCl']; sub[26] :== ['CH3NO2', 'CH2NO2', 'CHNO2']; sub[27] :== ['ACNO2']; sub[28] :== ['CS2']; sub[29] :== ['CH3SH', 'CH2SH']; sub[30] :== ['Furfural']; sub[31] :== ['(CH2OH)2']; sub[32] :== ['I']; sub[33] :== ['Br']; sub[34] :== ['CH-trip-C', 'C-trip-C']; sub[35] :== ['Me2SO']; sub[36] :== ['Acry']; sub[37] :== ['Cl(C=C)']; sub[38] :== ['ACF']; sub[39] :== ['DMF-1', 'DMF-2']; sub[40] :== ['CF3', 'CF2', 'CF']; sub[41] :== ['COO']; sub[42] :== ['SiH3', 'SiH2', 'SiH', 'Si']; sub[43] :== ['SiH2O', 'SiHO', 'SiO']; sub[44] :== ['NMP']; sub[45] :== ['tert-N']; sub[46] :== ['Amide']; sub[47] :== ['CON(Me)2', 'CONMeCH2', 'CON(CH2)2']; subgroups IS_A set OF symbol_constant; (* * uc. subgroups is the total list of secondary groups we accomodate. *) subgroups :== UNION[sub[i] | i IN groups]; group[subgroups] IS_A integer_constant; (* * Next we have a horribly named array, group, that lets us look up the * main group given a particular subgroup. So, for example, * if we want to know the main group of 'CHCl3', then * group['CHCl3'] will give it to us: 'CCl3'. * Note, then, that the assignments which follow in most * cases expand to have several left-hand-sides. *) FOR i IN groups CREATE group[sub[i]] :== i; END FOR; a[groups][groups] "binary group interaction parameters" IS_A UNIFAC_a; (* * Now we have uc.a[m][n], a portion of RPP Table 8-22, the main group * interaction matrix which is asymmetric and in principle * dense but in our practice rather sparse. * Adding a main group to this MODEL means adding a row and * column to uc.a, which is a non-trivial exercise until we * get a proper tabular assignment syntax implemented. * Note that such an syntax has been completely scoped but * we've just not yet got round to implementation. * When we do implement, this will be the first test MODEL. * a[i][j] should have i and j being integer_constant! *) (* we would like the ascend TABLE syntax or a database * external lookup to handle this data entry. *) (* row 1 *) a[1][1] :== 0.0 {K}; a[1][2] :== 86.020 {K}; a[1][3] :== 61.13 {K}; a[1][4] :== 76.50 {K}; a[1][5] :== 986.5 {K}; a[1][6] :== 697.2 {K}; a[1][7] :== 1318.0 {K}; a[1][8] :== 1333.0 {K}; a[1][9] :== 476.4 {K}; a[1][10] :== 677 {K}; a[1][11] :== 232.1 {K}; a[1][12] :== 741.4 {K}; a[1][13] :== 251.5 {K}; a[1][14] :== 391.5 {K}; a[1][15] :== 225.7 {K}; a[1][16] :== 206.6 {K}; a[1][17] :== 920.7 {K}; a[1][18] :== 287.7 {K}; a[1][19] :== 597 {K}; a[1][20] :== 663.5 {K}; a[1][21] :== 35.93 {K}; a[1][22] :== 53.76 {K}; a[1][23] :== 24.90 {K}; a[1][24] :== 104.3 {K}; a[1][25] :== 321.5 {K}; a[1][26] :== 661.5 {K}; a[1][27] :== 543 {K}; a[1][28] :== 153.6 {K}; a[1][29] :== 184.4 {K}; a[1][30] :== 354.5 {K}; a[1][31] :== 3025 {K}; a[1][32] :== 335.8 {K}; a[1][33] :== 479.5 {K}; a[1][34] :== 298.9 {K}; a[1][35] :== 526.5 {K}; a[1][36] :== 689 {K}; a[1][37] :== -4.189 {K}; a[1][38] :== 125.8 {K}; a[1][39] :== 485.3 {K}; a[1][40] :== -2.859 {K}; a[1][41] :== 387.1 {K}; a[1][42] :== -450.4 {K}; a[1][43] :== 252.7 {K}; a[1][44] :== 13.89 {K}; a[1][45] :== 383 {K}; a[1][46] :== -1380 {K}; a[1][47] :== 729 {K}; (* row 2 *) (* the ?!? numbers in group 2 are bogus. probably entered by ka. * they have been replaced. part looks like a paste of row 4. *) (* old: a[2][1] :== 2520 {K}; (*?!?*) a[2][2] :== 0.0 {K}; (*?!?*) a[2][3] :== 340.7 {K}; (*?!?*) a[2][4] :== 4102 {K}; (*?!?*) a[2][5] :== 693.9 {K}; (*?!?*) a[2][6] :== 1509.0 {K}; (*?!?*) a[2][7] :== 634.2 {K}; (*?!?*) a[2][8] :== 547.4 {K}; (*?!?*) a[2][9] :== 524.5 {K}; (*?!?*) a[2][11] :== 71.23 {K}; (*?!?*) END old *) a[2][1] :== -35.36 {K}; a[2][2] :== 0.0 {K}; a[2][3] :== 38.81 {K}; a[2][4] :== 74.15 {K}; a[2][5] :== 524.1 {K}; a[2][6] :== 787.6 {K}; a[2][7] :== 270.6 {K}; a[2][8] :== 526.1 {K}; a[2][9] :== 182.6 {K}; a[2][10] :== 448.8 {K}; a[2][11] :== 37.85 {K}; a[2][12] :== 449.1 {K}; a[2][13] :== 214.5 {K}; a[2][14] :== 240.9 {K}; a[2][15] :== 163.9 {K}; a[2][16] :== 61.11 {K}; a[2][17] :== 749.3 {K}; a[2][18] :== 0 {K}; a[2][19] :== 336.9 {K}; a[2][20] :== 318.9 {K}; a[2][21] :== 204.6 {K}; a[2][22] :== 5.892 {K}; (* old a[2][23] :== 4584.0 {K}; (*?!?*) END old *) a[2][23] :== -13.99 {K}; a[2][24] :== -109.7 {K}; a[2][25] :== 393.1 {K}; a[2][26] :== 357.5 {K}; a[2][27] :== 0 {K}; a[2][28] :== 76.3 {K}; a[2][29] :== 0 {K}; a[2][30] :== 0 {K}; a[2][31] :== 0 {K}; a[2][32] :== 0 {K}; a[2][33] :== 0 {K}; a[2][34] :== 31.14 {K}; a[2][35] :== -137.4 {K}; a[2][36] :== 0 {K}; a[2][37] :== -66.46 {K}; a[2][38] :== 0 {K}; a[2][39] :== -70.45 {K}; a[2][40] :== 0 {K}; a[2][41] :== 48.33 {K}; a[2][42] :== 0 {K}; a[2][43] :== 0 {K}; a[2][44] :== 0 {K}; a[2][45] :== 0 {K}; a[2][46] :== 2340 {K}; a[2][47] :== 0 {K}; (* row 3 *) a[3][1] :== -11.12 {K}; a[3][2] :== 3.446 {K}; a[3][3] :== 0.0 {K}; a[3][4] :== 167.0 {K}; a[3][5] :== 636.10 {K}; a[3][6] :== 637.3 {K}; a[3][7] :== 903.8 {K}; a[3][8] :== 1329.0 {K}; a[3][9] :== 25.77 {K}; a[3][11] :== 5.994 {K}; a[3][10] :== 347.3 {K}; a[3][12] :== -92.55 {K}; a[3][13] :== 32.14 {K}; a[3][14] :== 161.7 {K}; a[3][15] :== 122.8 {K}; a[3][16] :== 90.49 {K}; a[3][17] :== 648.2 {K}; a[3][18] :== -4.449 {K}; a[3][19] :== 212.5 {K}; a[3][20] :== 537.4 {K}; a[3][21] :== -18.81 {K}; a[3][22] :== -144.4 {K}; a[3][23] :== -231.9 {K}; a[3][24] :== 3 {K}; a[3][25] :== 538.2 {K}; a[3][26] :== 168 {K}; a[3][27] :== 194.9 {K}; a[3][28] :== 52.07 {K}; a[3][29] :== -10.43 {K}; a[3][30] :== -64.69 {K}; a[3][31] :== 210.4 {K}; a[3][32] :== 113.3 {K}; a[3][33] :== -13.59 {K}; a[3][34] :== 0 {K}; a[3][35] :== 169.9 {K}; a[3][36] :== 0 {K}; a[3][37] :== -259.1 {K}; a[3][38] :== 389.3 {K}; a[3][39] :== 245.6 {K}; a[3][40] :== 0 {K}; a[3][41] :== 103.5 {K}; a[3][42] :== -432.3 {K}; a[3][43] :== 238.9 {K}; a[3][44] :== -23.88 {K}; a[3][45] :== 109 {K}; a[3][46] :== 75.9 {K}; a[3][47] :== 784 {K}; (* row 4 *) a[4][1] :== -69.70 {K}; a[4][2] :== -113.6 {K}; a[4][3] :== -146.80 {K}; a[4][4] :== 0.0 {K}; a[4][5] :== 803.20 {K}; a[4][6] :== 603.2 {K}; a[4][7] :== 5695.00 {K}; a[4][8] :== 547.4 {K}; a[4][9] :== -52.10 {K}; a[4][10] :== 586.6 {K}; a[4][11] :== 5688.0 {K}; a[4][12] :== 115.2 {K}; a[4][13] :== 213.1 {K}; a[4][14] :== 0 {K}; a[4][15] :== 49.29 {K}; a[4][16] :== 23.5 {K}; a[4][17] :== 664.2 {K}; a[4][18] :== 52.8 {K}; a[4][19] :== 6096 {K}; a[4][20] :== 603.8 {K}; a[4][21] :== -114.1 {K}; a[4][22] :== -111 {K}; a[4][23] :== -12.14 {K}; a[4][24] :== -141.3 {K}; a[4][25] :== -126.9 {K}; a[4][26] :== 3629 {K}; a[4][27] :== 4448 {K}; a[4][28] :== -9.451 {K}; a[4][29] :== 0 {K}; a[4][30] :== -20.36 {K}; a[4][31] :== 4975 {K}; a[4][32] :== 0 {K}; a[4][33] :== -171.3 {K}; a[4][34] :== 0 {K}; a[4][35] :== 4284 {K}; a[4][36] :== 0 {K}; a[4][37] :== 0 {K}; a[4][38] :== 101.4 {K}; a[4][39] :== 5629 {K}; a[4][40] :== 0 {K}; a[4][41] :== 69.26 {K}; a[4][42] :== 683.3 {K}; a[4][43] :== 355.5 {K}; a[4][44] :== 6.214 {K}; a[4][45] :== 1320 {K}; a[4][46] :== 482 {K}; a[4][47] :== 386 {K}; (* row 5 *) a[5][1] :== 156.40 {K}; a[5][2] :== 475.000 {K}; a[5][3] :== 89.60 {K}; a[5][4] :== 25.82 {K}; a[5][5] :== 0.0 {K}; a[5][6] :== -137.1 {K}; a[5][7] :== 353.50 {K}; a[5][8] :== -259.7 {K}; a[5][9] :== 84.0 {K}; a[5][10] :== 441.8 {K}; a[5][11] :== 101.1 {K}; a[5][12] :== 193.1 {K}; a[5][13] :== 28.06 {K}; a[5][14] :== 83.02 {K}; a[5][15] :== 42.7 {K}; a[5][16] :== -323 {K}; a[5][17] :== -52.39 {K}; a[5][18] :== 170 {K}; a[5][19] :== 6.712 {K}; a[5][20] :== 199 {K}; a[5][21] :== 75.62 {K}; a[5][22] :== -112.1 {K}; a[5][23] :== -98.12 {K}; a[5][24] :== 143.1 {K}; a[5][25] :== 287.8 {K}; a[5][26] :== 256.5 {K}; a[5][27] :== 157.1 {K}; a[5][28] :== 477 {K}; a[5][29] :== 147.5 {K}; a[5][30] :== -120.5 {K}; a[5][31] :== -318.9 {K}; a[5][32] :== 313.5 {K}; a[5][33] :== 133.4 {K}; a[5][34] :== 0 {K}; a[5][35] :== -202.1 {K}; a[5][36] :== 0 {K}; a[5][37] :== 225.8 {K}; a[5][38] :== 44.78 {K}; a[5][39] :== -143.9 {K}; a[5][40] :== 0 {K}; a[5][41] :== 190.3 {K}; a[5][42] :== -817.7 {K}; a[5][43] :== 202.7 {K}; a[5][44] :== 796.9 {K}; a[5][45] :== 0 {K}; a[5][46] :== 0 {K}; a[5][47] :== 0 {K}; (* row 6 *) a[6][1] :== 16.51 {K}; a[6][2] :== -12.520 {K}; a[6][3] :== -50.00 {K}; a[6][4] :== -44.50 {K}; a[6][5] :== 249.1 {K}; a[6][6] :== 0.0 {K}; a[6][7] :== -181.0 {K}; a[6][8] :== -101.7 {K}; a[6][9] :== 23.39 {K}; a[6][10] :== 306.4 {K}; a[6][11] :== -10.72 {K}; a[6][12] :== 193.4 {K}; a[6][13] :== -128.6 {K}; a[6][14] :== 359.3 {K}; a[6][15] :== 266 {K}; a[6][16] :== 53.9 {K}; a[6][17] :== 489.7 {K}; a[6][18] :== 580.5 {K}; a[6][19] :== 36.23 {K}; a[6][20] :== -289.5 {K}; a[6][21] :== -38.32 {K}; a[6][22] :== -102.5 {K}; a[6][23] :== -139.4 {K}; a[6][24] :== -67.8 {K}; a[6][25] :== 17.12 {K}; a[6][26] :== 75.14 {K}; a[6][27] :== 0 {K}; a[6][28] :== -31.09 {K}; a[6][29] :== 37.84 {K}; a[6][30] :== 0 {K}; a[6][31] :== 0 {K}; a[6][32] :== 0 {K}; a[6][33] :== 106.3 {K}; a[6][34] :== 0 {K}; a[6][35] :== -399.3 {K}; a[6][36] :== 0 {K}; a[6][37] :== 33.47 {K}; a[6][38] :== -48.25 {K}; a[6][39] :== -172.4 {K}; a[6][40] :== 0 {K}; a[6][41] :== 165.7 {K}; a[6][42] :== 0 {K}; a[6][43] :== 0 {K}; a[6][44] :== 0 {K}; a[6][45] :== 214 {K}; a[6][46] :== 0 {K}; a[6][47] :== 0 {K}; (* row 7 *) a[7][1] :== 300.00 {K}; a[7][2] :== 496.100 {K}; a[7][3] :== 362.30 {K}; a[7][4] :== 377.60 {K}; a[7][5] :== -229.10 {K}; a[7][6] :== 289.6 {K}; a[7][7] :== 0.0 {K}; a[7][8] :== 324.5 {K}; a[7][9] :== -195.40 {K}; a[7][10] :== -257.3 {K}; (* a[7][11] :== 14.42 {K}; ?!?*) a[7][11] :== 72.87 {K}; a[7][12] :== 0 {K}; a[7][13] :== 540.5 {K}; a[7][14] :== 48.89 {K}; a[7][15] :== 168 {K}; a[7][16] :== 304 {K}; a[7][17] :== -59.29 {K}; a[7][18] :== 459 {K}; a[7][19] :== 112.6 {K}; a[7][20] :== -14.09 {K}; a[7][21] :== 325.4 {K}; a[7][22] :== 370.4 {K}; a[7][23] :== 353.7 {K}; a[7][24] :== 497.5 {K}; a[7][25] :== 678.2 {K}; a[7][26] :== 220.6 {K}; a[7][27] :== 399.5 {K}; a[7][28] :== 887.1 {K}; a[7][29] :== 0 {K}; a[7][30] :== 188 {K}; a[7][31] :== 13.53 {K}; a[7][32] :== 0 {K}; a[7][33] :== 0 {K}; a[7][34] :== 0 {K}; a[7][35] :== -139 {K}; a[7][36] :== 160.8 {K}; a[7][37] :== 0 {K}; a[7][38] :== 0 {K}; a[7][39] :== 319 {K}; a[7][40] :== 0 {K}; a[7][41] :== -197.5 {K}; a[7][42] :== 0 {K}; a[7][43] :== 0 {K}; a[7][44] :== 832.2 {K}; a[7][45] :== 365 {K}; a[7][46] :== 0 {K}; a[7][47] :== 0 {K}; (* row 8 *) a[8][1] :== 275.8 {K}; a[8][2] :== 217.5 {K}; a[8][3] :== 25.34 {K}; a[8][4] :== 244.2 {K}; a[8][5] :== -451.6 {K}; a[8][6] :== -265.2 {K}; a[8][7] :== -601.8 {K}; a[8][8] :== 0.0 {K}; a[8][9] :== -356.1 {K}; a[8][10] :== 0 {K}; a[8][11] :== -449.4 {K}; a[8][12] :== 0 {K}; a[8][13] :== 0 {K}; a[8][14] :== 0 {K}; a[8][15] :== 0 {K}; a[8][16] :== 0 {K}; a[8][17] :== 119.9 {K}; a[8][18] :== -305.5 {K}; a[8][19] :== 0 {K}; a[8][20] :== 0 {K}; a[8][21] :== 0 {K}; a[8][22] :== 0 {K}; a[8][23] :== 0.0 {K}; a[8][24] :== 1827 {K}; a[8][25] :== 0 {K}; a[8][26] :== 0 {K}; a[8][27] :== 0 {K}; a[8][28] :== 0 {K}; a[8][29] :== 0 {K}; a[8][30] :== 0 {K}; a[8][31] :== -687.1 {K}; a[8][32] :== 0 {K}; a[8][33] :== 0 {K}; a[8][34] :== 0 {K}; a[8][35] :== 0 {K}; a[8][36] :== 0 {K}; a[8][37] :== 0 {K}; a[8][38] :== 0 {K}; a[8][39] :== 0 {K}; a[8][40] :== 0 {K}; a[8][41] :== -494.2 {K}; (* a[8][42] :== undefined in book. *) a[8][43] :== 0 {K}; a[8][44] :== 0 {K}; a[8][45] :== 0 {K}; a[8][46] :== 0 {K}; a[8][47] :== 0 {K}; (* row 9 *) a[9][1] :== 26.76 {K}; a[9][2] :== 42.920 {K}; a[9][3] :== 140.10 {K}; a[9][4] :== 365.80 {K}; a[9][5] :== 164.5 {K}; a[9][6] :== 108.7 {K}; a[9][7] :== 472.5 {K}; a[9][8] :== -133.1 {K}; a[9][9] :== 0.0 {K}; a[9][10] :== -37.36 {K}; a[9][11] :== -213.7 {K}; a[9][12] :== -38.47 {K}; a[9][13] :== -103.6 {K}; a[9][14] :== 0 {K}; a[9][15] :== 0 {K}; a[9][16] :== -169 {K}; a[9][17] :== 6201 {K}; a[9][18] :== 165.1 {K}; a[9][19] :== 481.7 {K}; a[9][20] :== 669.4 {K}; a[9][21] :== -191.7 {K}; a[9][22] :== -284 {K}; a[9][23] :== -354.6 {K}; a[9][24] :== -39.2 {K}; a[9][25] :== 174.5 {K}; a[9][26] :== 137.5 {K}; a[9][27] :== 0 {K}; a[9][28] :== 216.1 {K}; a[9][29] :== -46.28 {K}; a[9][30] :== -163.7 {K}; a[9][31] :== 0 {K}; a[9][32] :== 53.59 {K}; a[9][33] :== 245.2 {K}; a[9][34] :== -246.2 {K}; a[9][35] :== -44.58 {K}; a[9][36] :== 0 {K}; a[9][37] :== -34.57 {K}; a[9][38] :== 0 {K}; a[9][39] :== -61.7 {K}; a[9][40] :== 0 {K}; a[9][41] :== -18.8 {K}; a[9][42] :== 0 {K}; a[9][43] :== 0 {K}; a[9][44] :== 0 {K}; a[9][45] :== 135 {K}; a[9][46] :== -1680 {K}; a[9][47] :== -58 {K}; (* row 10 *) a[10][1] :== 505.7 {K}; a[10][2] :== 56.3 {K}; a[10][3] :== 23.39 {K}; a[10][4] :== 106.6 {K}; a[10][5] :== -404.8 {K}; a[10][6] :== -340.2 {K}; a[10][7] :== 232.7 {K}; a[10][8] :== 0 {K}; a[10][9] :== 128 {K}; a[10][10] :== 0 {K}; a[10][11] :== -110.3 {K}; a[10][12] :== 11.31 {K}; a[10][13] :== 304.1 {K}; a[10][14] :== 0 {K}; a[10][15] :== 0 {K}; a[10][16] :== 0 {K}; a[10][17] :== 0 {K}; a[10][18] :== 0 {K}; a[10][19] :== 0 {K}; a[10][20] :== 0 {K}; a[10][21] :== 751.9 {K}; a[10][22] :== 0 {K}; a[10][23] :== -483.7 {K}; a[10][24] :== 0 {K}; a[10][25] :== 0 {K}; a[10][26] :== 0 {K}; a[10][27] :== 0 {K}; a[10][28] :== 0 {K}; a[10][29] :== 0 {K}; a[10][30] :== 0 {K}; a[10][31] :== 0 {K}; a[10][32] :== 0 {K}; a[10][33] :== 0 {K}; a[10][34] :== 0 {K}; a[10][35] :== 0 {K}; a[10][36] :== 0 {K}; a[10][37] :== 0 {K}; a[10][38] :== 0 {K}; a[10][39] :== 0 {K}; a[10][40] :== 0 {K}; a[10][41] :== 0 {K}; a[10][42] :== 0 {K}; a[10][43] :== 0 {K}; a[10][44] :== 0 {K}; a[10][45] :== -7.18 {K}; a[10][46] :== 333 {K}; a[10][47] :== 6810 {K}; (* row 11 *) a[11][1] :== 114.8 {K}; a[11][2] :== 132.1 {K}; a[11][3] :== 85.84 {K}; a[11][4] :== -170.0 {K}; a[11][5] :== 245.4 {K}; a[11][6] :== 249.6 {K}; a[11][7] :== 10000.0 {K}; a[11][8] :== -36.72 {K}; a[11][9] :== 372.2 {K}; a[11][10] :== 185.1 {K}; a[11][11] :== 0.0 {K}; a[11][12] :== 372.9 {K}; a[11][13] :== -235.7 {K}; a[11][14] :== 0 {K}; a[11][15] :== -73.5 {K}; a[11][16] :== 0 {K}; a[11][17] :== 475.5 {K}; a[11][18] :== 0 {K}; a[11][19] :== 494.6 {K}; a[11][20] :== 660.2 {K}; a[11][21] :== -34.74 {K}; a[11][22] :== 108.9 {K}; a[11][23] :== -209.7 {K}; a[11][24] :== 54.47 {K}; a[11][25] :== 629 {K}; a[11][26] :== -81.13 {K}; a[11][27] :== 0 {K}; a[11][28] :== 183 {K}; a[11][29] :== 0 {K}; a[11][30] :== 202.3 {K}; a[11][31] :== -101.7 {K}; a[11][32] :== 148.3 {K}; a[11][33] :== 18.88 {K}; a[11][34] :== 0 {K}; a[11][35] :== 52.08 {K}; a[11][36] :== -28.61 {K}; a[11][37] :== -83.3 {K}; a[11][38] :== 0 {K}; a[11][39] :== 0 {K}; a[11][40] :== 0 {K}; a[11][41] :== 560.2 {K}; a[11][42] :== 0 {K}; a[11][43] :== 0 {K}; a[11][44] :== 0 {K}; a[11][45] :== -54.6 {K}; a[11][46] :== 0 {K}; a[11][47] :== 6960 {K}; (* row 12 *) a[12][1] :== 90.49 {K}; a[12][2] :== -62.55 {K}; a[12][3] :== 1967 {K}; a[12][4] :== 2347 {K}; a[12][5] :== 191.2 {K}; a[12][6] :== 155.7 {K}; a[12][7] :== 0 {K}; a[12][8] :== 0 {K}; a[12][9] :== 70.42 {K}; a[12][10] :== 35.35 {K}; a[12][11] :== -261.1 {K}; a[12][12] :== 0 {K}; a[12][13] :== 0 {K}; a[12][14] :== 0 {K}; a[12][15] :== 0 {K}; a[12][16] :== 0 {K}; a[12][17] :== 0 {K}; a[12][18] :== 0 {K}; a[12][19] :== 0 {K}; a[12][20] :== -356.3 {K}; a[12][21] :== 0 {K}; a[12][22] :== 0 {K}; a[12][23] :== -287.2 {K}; a[12][24] :== 36.84 {K}; a[12][25] :== 0 {K}; a[12][26] :== 0 {K}; a[12][27] :== 0 {K}; a[12][28] :== 0 {K}; a[12][29] :== 4.339 {K}; a[12][30] :== 0 {K}; a[12][31] :== 0 {K}; a[12][32] :== 0 {K}; a[12][33] :== 0 {K}; a[12][34] :== 0 {K}; a[12][35] :== 0 {K}; a[12][36] :== 0 {K}; a[12][37] :== 0 {K}; a[12][38] :== 0 {K}; a[12][39] :== 0 {K}; a[12][40] :== 0 {K}; a[12][41] :== -70.24 {K}; a[12][42] :== 0 {K}; a[12][43] :== 0 {K}; a[12][44] :== 0 {K}; a[12][45] :== 0 {K}; a[12][46] :== 0 {K}; a[12][47] :== 0 {K}; (* row 13 *) a[13][1] :== 83.36 {K}; a[13][2] :== 26.51 {K}; a[13][3] :== 52.13 {K}; a[13][4] :== 65.69 {K}; a[13][5] :== 237.7 {K}; a[13][6] :== 238.4 {K}; a[13][7] :== -314.7 {K}; a[13][8] :== 0 {K}; a[13][9] :== 191.1 {K}; a[13][10] :== -7.838 {K}; a[13][11] :== 461.3 {K}; a[13][12] :== 0 {K}; a[13][13] :== 0 {K}; a[13][14] :== 0 {K}; a[13][15] :== 141.7 {K}; a[13][16] :== 0 {K}; a[13][17] :== 0 {K}; a[13][18] :== 0 {K}; a[13][19] :== -18.51 {K}; a[13][20] :== 664.6 {K}; a[13][21] :== 301.1 {K}; a[13][22] :== 137.8 {K}; a[13][23] :== -154.3 {K}; a[13][24] :== 47.67 {K}; a[13][25] :== 66.15 {K}; a[13][26] :== 95.18 {K}; a[13][27] :== 0 {K}; a[13][28] :== 140.9 {K}; a[13][29] :== -8.538 {K}; a[13][30] :== 0 {K}; a[13][31] :== -20.11 {K}; a[13][32] :== -149.5 {K}; a[13][33] :== -202.3 {K}; a[13][34] :== 0 {K}; a[13][35] :== 172.1 {K}; a[13][36] :== 0 {K}; a[13][37] :== 240.2 {K}; a[13][38] :== -273.9 {K}; a[13][39] :== 254.8 {K}; a[13][40] :== 0 {K}; a[13][41] :== 417 {K}; a[13][42] :== 0 {K}; a[13][43] :== 0 {K}; a[13][44] :== 0 {K}; a[13][45] :== 5780 {K}; a[13][46] :== 131 {K}; a[13][47] :== 0 {K}; (* row 14 *) a[14][1] :== -30.48 {K}; a[14][2] :== 1.163 {K}; a[14][3] :== -44.850 {K}; a[14][4] :== 0 {K}; a[14][5] :== -164 {K}; a[14][6] :== -481.7 {K}; a[14][7] :== -330.4 {K}; a[14][8] :== 0 {K}; a[14][9] :== 0 {K}; a[14][10] :== 0 {K}; a[14][11] :== 0 {K}; a[14][12] :== 0 {K}; a[14][13] :== 0 {K}; a[14][14] :== 0 {K}; a[14][15] :== 63.72 {K}; a[14][16] :== -41.11 {K}; a[14][17] :== -200.7 {K}; a[14][18] :== 0 {K}; a[14][19] :== 0 {K}; a[14][20] :== 0 {K}; a[14][21] :== 0 {K}; a[14][22] :== 0 {K}; a[14][23] :== 0 {K}; a[14][24] :== -99.81 {K}; a[14][25] :== 68.81 {K}; a[14][26] :== 0 {K}; a[14][27] :== 0 {K}; a[14][28] :== 0 {K}; a[14][29] :== -70.14 {K}; a[14][30] :== 0 {K}; a[14][31] :== 0 {K}; a[14][32] :== 0 {K}; a[14][33] :== 0 {K}; a[14][34] :== 0 {K}; a[14][35] :== 0 {K}; a[14][36] :== 0 {K}; a[14][37] :== 0 {K}; a[14][38] :== 0 {K}; a[14][39] :== 0 {K}; a[14][40] :== 0 {K}; a[14][41] :== 0 {K}; a[14][42] :== 0 {K}; a[14][43] :== 0 {K}; a[14][44] :== 0 {K}; a[14][45] :== 0 {K}; a[14][46] :== 0 {K}; a[14][47] :== 0 {K}; (* row 15 *) a[15][1] :== 65.33 {K}; a[15][2] :== -28.7 {K}; a[15][3] :== -22.31 {K}; a[15][4] :== 223 {K}; a[15][5] :== -150 {K}; a[15][6] :== -500 {K}; a[15][7] :== -448.2 {K}; a[15][8] :== 0 {K}; a[15][9] :== 0 {K}; a[15][10] :== 0 {K}; a[15][11] :== 136 {K}; a[15][12] :== 0 {K}; a[15][13] :== -49.3 {K}; a[15][14] :== 108.8 {K}; a[15][15] :== 0 {K}; a[15][16] :== -189.2 {K}; a[15][17] :== 0 {K}; a[15][18] :== 0 {K}; a[15][19] :== 0 {K}; a[15][20] :== 0 {K}; a[15][21] :== 0 {K}; a[15][22] :== 0 {K}; a[15][23] :== 0 {K}; a[15][24] :== 71.23 {K}; a[15][25] :== 4350 {K}; a[15][26] :== 0 {K}; a[15][27] :== 0 {K}; a[15][28] :== 0 {K}; a[15][29] :== 0 {K}; a[15][30] :== 0 {K}; a[15][31] :== 0 {K}; a[15][32] :== 0 {K}; a[15][33] :== 0 {K}; a[15][34] :== 0 {K}; a[15][35] :== 0 {K}; a[15][36] :== 0 {K}; a[15][37] :== 0 {K}; a[15][38] :== 0 {K}; a[15][39] :== 0 {K}; a[15][40] :== 0 {K}; a[15][41] :== -38.77 {K}; a[15][42] :== 0 {K}; a[15][43] :== 0 {K}; a[15][44] :== 0 {K}; a[15][45] :== 0 {K}; a[15][46] :== 0 {K}; a[15][47] :== 0 {K}; (* row 16 *) a[16][1] :== -83.98 {K}; a[16][2] :== -25.38 {K}; a[16][3] :== -223.9 {K}; a[16][4] :== 109.9 {K}; a[16][5] :== 28.6 {K}; a[16][6] :== -406.8 {K}; a[16][7] :== -598.8 {K}; a[16][8] :== 0 {K}; a[16][9] :== 225.3 {K}; a[16][10] :== 0 {K}; a[16][11] :== 0 {K}; a[16][12] :== 0 {K}; a[16][13] :== 0 {K}; a[16][14] :== 38.89 {K}; a[16][15] :== 865.9 {K}; a[16][16] :== 0 {K}; a[16][17] :== 0 {K}; a[16][18] :== 0 {K}; a[16][19] :== 0 {K}; a[16][20] :== 0 {K}; a[16][21] :== 0 {K}; a[16][22] :== -73.85 {K}; a[16][23] :== -352.9 {K}; a[16][24] :== -8.238 {K}; a[16][25] :== -86.36 {K}; a[16][26] :== 0 {K}; a[16][27] :== 0 {K}; a[16][28] :== 0 {K}; a[16][29] :== 0 {K}; a[16][30] :== 0 {K}; a[16][31] :== 0 {K}; a[16][32] :== 0 {K}; a[16][33] :== 0 {K}; a[16][34] :== 0 {K}; a[16][35] :== 243.1 {K}; a[16][36] :== 0 {K}; a[16][37] :== 0 {K}; a[16][38] :== -196.3 {K}; a[16][39] :== 0 {K}; a[16][40] :== 0 {K}; a[16][41] :== 0 {K}; a[16][42] :== 0 {K}; a[16][43] :== 0 {K}; a[16][44] :== 0 {K}; a[16][45] :== 0 {K}; a[16][46] :== 0 {K}; a[16][47] :== 0 {K}; (* row 17 *) a[17][1] :== 1139 {K}; a[17][2] :== 2000 {K}; a[17][3] :== 247.5 {K}; a[17][4] :== 762.8 {K}; a[17][5] :== -17.4 {K}; a[17][6] :== -118.1 {K}; a[17][7] :== -367.8 {K}; a[17][8] :== -253.1 {K}; a[17][9] :== -450.3 {K}; a[17][10] :== 0 {K}; a[17][11] :== -294.8 {K}; a[17][12] :== 0 {K}; a[17][13] :== 0 {K}; a[17][14] :== -15.07 {K}; a[17][15] :== 0 {K}; a[17][16] :== 0 {K}; a[17][17] :== 0 {K}; a[17][18] :== 0 {K}; a[17][19] :== -281.6 {K}; a[17][20] :== 0 {K}; a[17][21] :== 287 {K}; a[17][22] :== 0 {K}; a[17][23] :== 0 {K}; a[17][24] :== 882 {K}; a[17][25] :== 287.9 {K}; a[17][26] :== 0 {K}; a[17][27] :== -139.3 {K}; a[17][28] :== 0 {K}; a[17][29] :== 0 {K}; a[17][30] :== 0 {K}; a[17][31] :== -136.9 {K}; a[17][32] :== 0 {K}; a[17][33] :== 0 {K}; a[17][34] :== 0 {K}; a[17][35] :== 0 {K}; a[17][36] :== 0 {K}; a[17][37] :== 0 {K}; a[17][38] :== 0 {K}; a[17][39] :== -334.4 {K}; a[17][40] :== 0 {K}; a[17][41] :== -89.42 {K}; a[17][42] :== 0 {K}; a[17][43] :== 0 {K}; a[17][44] :== 0 {K}; a[17][45] :== 0 {K}; a[17][46] :== 0 {K}; a[17][47] :== 0 {K}; (* row 18 *) a[18][1] :== -101.6 {K}; a[18][2] :== 0 {K}; a[18][3] :== 31.87 {K}; a[18][4] :== 49.8 {K}; a[18][5] :== -132.3 {K}; a[18][6] :== 378.2 {K}; a[18][7] :== -332.9 {K}; a[18][8] :== -341.6 {K}; a[18][9] :== -51.54 {K}; a[18][10] :== 0 {K}; a[18][11] :== 0 {K}; a[18][12] :== 0 {K}; a[18][13] :== 0 {K}; a[18][14] :== 0 {K}; a[18][15] :== 0 {K}; a[18][16] :== 0 {K}; a[18][17] :== 0 {K}; a[18][18] :== 0 {K}; a[18][19] :== -169.7 {K}; a[18][20] :== -153.7 {K}; a[18][21] :== 0 {K}; a[18][22] :== -351.6 {K}; a[18][23] :== -114.7 {K}; a[18][24] :== -165.1 {K}; a[18][25] :== 0 {K}; a[18][26] :== 0 {K}; a[18][27] :== 0 {K}; a[18][28] :== 0 {K}; a[18][29] :== 0 {K}; a[18][30] :== 0 {K}; a[18][31] :== 0 {K}; a[18][32] :== 0 {K}; a[18][33] :== 0 {K}; a[18][34] :== 0 {K}; a[18][35] :== 0 {K}; a[18][36] :== 0 {K}; a[18][37] :== 0 {K}; a[18][38] :== 0 {K}; a[18][39] :== 0 {K}; a[18][40] :== 0 {K}; a[18][41] :== 0 {K}; a[18][42] :== 0 {K}; a[18][43] :== 0 {K}; a[18][44] :== 0 {K}; a[18][45] :== 0 {K}; a[18][46] :== 0 {K}; a[18][47] :== 0 {K}; (* row 19 *) a[19][1] :== 24.82 {K}; a[19][2] :== -40.62 {K}; a[19][3] :== -22.97 {K}; a[19][4] :== -138.4 {K}; a[19][5] :== -185.4 {K}; a[19][6] :== 157.8 {K}; a[19][7] :== 242.8 {K}; a[19][8] :== 0 {K}; a[19][9] :== -287.5 {K}; a[19][10] :== 0 {K}; a[19][11] :== -266.6 {K}; a[19][12] :== 0 {K}; a[19][13] :== 38.81 {K}; a[19][14] :== 0 {K}; a[19][15] :== 0 {K}; a[19][16] :== 0 {K}; a[19][17] :== 777.4 {K}; a[19][18] :== 134.3 {K}; a[19][19] :== 0 {K}; a[19][20] :== 0 {K}; a[19][21] :== 88.75 {K}; a[19][22] :== -152.7 {K}; a[19][23] :== -15.62 {K}; a[19][24] :== -54.86 {K}; a[19][25] :== 52.31 {K}; a[19][26] :== -0.515 {K}; a[19][27] :== 0 {K}; a[19][28] :== 230.9 {K}; a[19][29] :== 21.37 {K}; a[19][30] :== 0 {K}; a[19][31] :== 0 {K}; a[19][32] :== 0 {K}; a[19][33] :== 0 {K}; a[19][34] :== -203 {K}; a[19][35] :== 0 {K}; a[19][36] :== 81.57 {K}; a[19][37] :== 3.509 {K}; a[19][38] :== 0 {K}; a[19][39] :== 0 {K}; a[19][40] :== 0 {K}; a[19][41] :== 120.3 {K}; a[19][42] :== 0 {K}; a[19][43] :== 0 {K}; a[19][44] :== 0 {K}; a[19][45] :== 0 {K}; a[19][46] :== 0 {K}; a[19][47] :== 0 {K}; (* row 20 *) a[20][1] :== 315.3 {K}; a[20][2] :== 1264 {K}; a[20][3] :== 62.32 {K}; a[20][4] :== 268.2 {K}; a[20][5] :== -151 {K}; a[20][6] :== 1020 {K}; a[20][7] :== -66.17 {K}; a[20][8] :== 0 {K}; a[20][9] :== -297.8 {K}; a[20][10] :== 0 {K}; a[20][11] :== -256.3 {K}; a[20][12] :== 312.5 {K}; a[20][13] :== -338.5 {K}; a[20][14] :== 0 {K}; a[20][15] :== 0 {K}; a[20][16] :== 0 {K}; a[20][17] :== 0 {K}; a[20][18] :== -313.5 {K}; a[20][19] :== 0 {K}; a[20][20] :== 0 {K}; a[20][21] :== 44.42 {K}; a[20][22] :== 120.2 {K}; a[20][23] :== 76.75 {K}; a[20][24] :== 212.7 {K}; a[20][25] :== 0 {K}; a[20][26] :== 0 {K}; a[20][27] :== 0 {K}; a[20][28] :== 0 {K}; a[20][29] :== 0 {K}; a[20][30] :== 0 {K}; a[20][31] :== 0 {K}; a[20][32] :== 0 {K}; a[20][33] :== -95 {K}; a[20][34] :== 0 {K}; a[20][35] :== -561.2 {K}; a[20][36] :== 0 {K}; a[20][37] :== -11.16 {K}; a[20][38] :== 0 {K}; a[20][39] :== -246.5 {K}; a[20][40] :== 0 {K}; a[20][41] :== -337 {K}; a[20][42] :== 169.3 {K}; a[20][43] :== 127.2 {K}; a[20][44] :== 0 {K}; a[20][45] :== 0 {K}; a[20][46] :== 0 {K}; a[20][47] :== 0 {K}; (* row 21 *) a[21][1] :== 91.46 {K}; a[21][2] :== 97.51 {K}; a[21][3] :== 4.68 {K}; a[21][4] :== 122.9 {K}; a[21][5] :== 562.2 {K}; a[21][6] :== 529 {K}; a[21][7] :== 698.2 {K}; a[21][8] :== 0 {K}; a[21][9] :== 286.3 {K}; a[21][10] :== -47.51 {K}; a[21][11] :== 35.38 {K}; a[21][12] :== 0 {K}; a[21][13] :== 225.4 {K}; a[21][14] :== 0 {K}; a[21][15] :== 0 {K}; a[21][16] :== 0 {K}; a[21][17] :== 429.7 {K}; a[21][18] :== 0 {K}; a[21][19] :== -62.41 {K}; a[21][20] :== 326.4 {K}; a[21][21] :== 0 {K}; a[21][22] :== 108.3 {K}; a[21][23] :== 249.2 {K}; a[21][24] :== 62.42 {K}; a[21][25] :== 464.4 {K}; a[21][26] :== 32.75 {K}; a[21][27] :== 0 {K}; a[21][28] :== 450.1 {K}; a[21][29] :== 59.02 {K}; a[21][30] :== 0 {K}; a[21][31] :== 0 {K}; a[21][32] :== 0 {K}; a[21][33] :== -125.9 {K}; a[21][34] :== 0 {K}; a[21][35] :== 0 {K}; a[21][36] :== 0 {K}; a[21][37] :== -245.4 {K}; a[21][38] :== 0 {K}; a[21][39] :== 0 {K}; a[21][40] :== 0 {K}; a[21][41] :== 63.67 {K}; a[21][42] :== 0 {K}; a[21][43] :== 0 {K}; a[21][44] :== 0 {K}; a[21][45] :== 0 {K}; a[21][46] :== 0 {K}; a[21][47] :== 0 {K}; (* row 22 *) a[22][1] :== 34.01 {K}; a[22][2] :== 18.25 {K}; a[22][3] :== 121.3 {K}; a[22][4] :== 140.8 {K}; a[22][5] :== 747.7 {K}; a[22][6] :== 669.9 {K}; a[22][7] :== 708.7 {K}; a[22][8] :== 0 {K}; a[22][9] :== 423.2 {K}; a[22][10] :== 0 {K}; a[22][11] :== -132.9 {K}; a[22][12] :== 0 {K}; a[22][13] :== -197.7 {K}; a[22][14] :== 0 {K}; a[22][15] :== 0 {K}; a[22][16] :== -141.4 {K}; a[22][17] :== 0 {K}; a[22][18] :== 587.3 {K}; a[22][19] :== 258.6 {K}; a[22][20] :== 339.6 {K}; a[22][21] :== -84.53 {K}; a[22][22] :== 0 {K}; a[22][23] :== 0 {K}; a[22][24] :== 56.33 {K}; a[22][25] :== 0 {K}; a[22][26] :== 0 {K}; a[22][27] :== 0 {K}; a[22][28] :== 0 {K}; a[22][29] :== 0 {K}; a[22][30] :== 0 {K}; a[22][31] :== 0 {K}; a[22][32] :== 177.6 {K}; a[22][33] :== 0 {K}; a[22][34] :== 0 {K}; a[22][35] :== 215 {K}; a[22][36] :== 0 {K}; a[22][37] :== 0 {K}; a[22][38] :== 0 {K}; a[22][39] :== 0 {K}; a[22][40] :== 0 {K}; a[22][41] :== -96.87 {K}; a[22][42] :== 0 {K}; a[22][43] :== 0 {K}; a[22][44] :== 0 {K}; a[22][45] :== 0 {K}; a[22][46] :== 0 {K}; a[22][47] :== 0 {K}; (* row 23 *) a[23][1] :== 36.70 {K}; a[23][2] :== 51.060 {K}; a[23][3] :== 288.5 {K}; a[23][4] :== 33.61 {K}; a[23][5] :== 742.1 {K}; a[23][6] :== 649.1 {K}; a[23][7] :== 826.7 {K}; a[23][8] :== 0.0 {K}; a[23][9] :== 552.1 {K}; a[23][10] :== 242.8 {K}; a[23][11] :== 176.5 {K}; a[23][12] :== 488.9 {K}; a[23][13] :== -20.93 {K}; a[23][14] :== 0 {K}; a[23][15] :== 0 {K}; a[23][16] :== -293.7 {K}; a[23][17] :== 0 {K}; a[23][18] :== 18.98 {K}; a[23][19] :== 74.04 {K}; a[23][20] :== 1346 {K}; a[23][21] :== -157.1 {K}; a[23][22] :== 0 {K}; a[23][23] :== 0.0 {K}; a[23][24] :== -30.1 {K}; a[23][25] :== 0 {K}; a[23][26] :== 0 {K}; a[23][27] :== 0 {K}; a[23][28] :== 116.6 {K}; a[23][29] :== 0 {K}; a[23][30] :== -64.38 {K}; a[23][31] :== 0 {K}; a[23][32] :== 86.4 {K}; a[23][33] :== 0 {K}; a[23][34] :== 0 {K}; a[23][35] :== 363.7 {K}; a[23][36] :== 0 {K}; a[23][37] :== 111.2 {K}; a[23][38] :== 0 {K}; a[23][39] :== 0 {K}; a[23][40] :== 0 {K}; a[23][41] :== 255.8 {K}; a[23][42] :== 0 {K}; a[23][43] :== 0 {K}; a[23][44] :== 0 {K}; a[23][45] :== 0 {K}; a[23][46] :== 0 {K}; a[23][47] :== 0 {K}; (* fixme (* row 24 *) a[24][1] :== a[24][2] :== a[24][3] :== a[24][4] :== a[24][5] :== a[24][6] :== a[24][7] :== a[24][8] :== a[24][9] :== a[24][10] :== a[24][11] :== a[24][12] :== a[24][13] :== a[24][14] :== a[24][15] :== a[24][16] :== a[24][17] :== a[24][18] :== a[24][19] :== a[24][20] :== a[24][21] :== a[24][22] :== a[24][23] :== a[24][24] :== a[24][25] :== a[24][26] :== a[24][27] :== a[24][28] :== a[24][29] :== a[24][30] :== a[24][31] :== a[24][32] :== a[24][33] :== a[24][34] :== a[24][35] :== a[24][36] :== a[24][37] :== a[24][38] :== a[24][39] :== a[24][40] :== a[24][41] :== a[24][42] :== a[24][43] :== a[24][44] :== a[24][45] :== a[24][46] :== a[24][47] :== (* row 25 *) a[25][1] :== a[25][2] :== a[25][3] :== a[25][4] :== a[25][5] :== a[25][6] :== a[25][7] :== a[25][8] :== a[25][9] :== a[25][10] :== a[25][11] :== a[25][12] :== a[25][13] :== a[25][14] :== a[25][15] :== a[25][16] :== a[25][17] :== a[25][18] :== a[25][19] :== a[25][20] :== a[25][21] :== a[25][22] :== a[25][23] :== a[25][24] :== a[25][25] :== a[25][26] :== a[25][27] :== a[25][28] :== a[25][29] :== a[25][30] :== a[25][31] :== a[25][32] :== a[25][33] :== a[25][34] :== a[25][35] :== a[25][36] :== a[25][37] :== a[25][38] :== a[25][39] :== a[25][40] :== a[25][41] :== a[25][42] :== a[25][43] :== a[25][44] :== a[25][45] :== a[25][46] :== a[25][47] :== (* row 26 *) a[26][1] :== a[26][2] :== a[26][3] :== a[26][4] :== a[26][5] :== a[26][6] :== a[26][7] :== a[26][8] :== a[26][9] :== a[26][10] :== a[26][11] :== a[26][12] :== a[26][13] :== a[26][14] :== a[26][15] :== a[26][16] :== a[26][17] :== a[26][18] :== a[26][19] :== a[26][20] :== a[26][21] :== a[26][22] :== a[26][23] :== a[26][24] :== a[26][25] :== a[26][26] :== a[26][27] :== a[26][28] :== a[26][29] :== a[26][30] :== a[26][31] :== a[26][32] :== a[26][33] :== a[26][34] :== a[26][35] :== a[26][36] :== a[26][37] :== a[26][38] :== a[26][39] :== a[26][40] :== a[26][41] :== a[26][42] :== a[26][43] :== a[26][44] :== a[26][45] :== a[26][46] :== a[26][47] :== (* row 27 *) a[27][1] :== a[27][2] :== a[27][3] :== a[27][4] :== a[27][5] :== a[27][6] :== a[27][7] :== a[27][8] :== a[27][9] :== a[27][10] :== a[27][11] :== a[27][12] :== a[27][13] :== a[27][14] :== a[27][15] :== a[27][16] :== a[27][17] :== a[27][18] :== a[27][19] :== a[27][20] :== a[27][21] :== a[27][22] :== a[27][23] :== a[27][24] :== a[27][25] :== a[27][26] :== a[27][27] :== a[27][28] :== a[27][29] :== a[27][30] :== a[27][31] :== a[27][32] :== a[27][33] :== a[27][34] :== a[27][35] :== a[27][36] :== a[27][37] :== a[27][38] :== a[27][39] :== a[27][40] :== a[27][41] :== a[27][42] :== a[27][43] :== a[27][44] :== a[27][45] :== a[27][46] :== a[27][47] :== (* row 28 *) a[28][1] :== a[28][2] :== a[28][3] :== a[28][4] :== a[28][5] :== a[28][6] :== a[28][7] :== a[28][8] :== a[28][9] :== a[28][10] :== a[28][11] :== a[28][12] :== a[28][13] :== a[28][14] :== a[28][15] :== a[28][16] :== a[28][17] :== a[28][18] :== a[28][19] :== a[28][20] :== a[28][21] :== a[28][22] :== a[28][23] :== a[28][24] :== a[28][25] :== a[28][26] :== a[28][27] :== a[28][28] :== a[28][29] :== a[28][30] :== a[28][31] :== a[28][32] :== a[28][33] :== a[28][34] :== a[28][35] :== a[28][36] :== a[28][37] :== a[28][38] :== a[28][39] :== a[28][40] :== a[28][41] :== a[28][42] :== a[28][43] :== a[28][44] :== a[28][45] :== a[28][46] :== a[28][47] :== (* row 29 *) a[29][1] :== a[29][2] :== a[29][3] :== a[29][4] :== a[29][5] :== a[29][6] :== a[29][7] :== a[29][8] :== a[29][9] :== a[29][10] :== a[29][11] :== a[29][12] :== a[29][13] :== a[29][14] :== a[29][15] :== a[29][16] :== a[29][17] :== a[29][18] :== a[29][19] :== a[29][20] :== a[29][21] :== a[29][22] :== a[29][23] :== a[29][24] :== a[29][25] :== a[29][26] :== a[29][27] :== a[29][28] :== a[29][29] :== a[29][30] :== a[29][31] :== a[29][32] :== a[29][33] :== a[29][34] :== a[29][35] :== a[29][36] :== a[29][37] :== a[29][38] :== a[29][39] :== a[29][40] :== a[29][41] :== a[29][42] :== a[29][43] :== a[29][44] :== a[29][45] :== a[29][46] :== a[29][47] :== (* row 30 *) a[30][1] :== a[30][2] :== a[30][3] :== a[30][4] :== a[30][5] :== a[30][6] :== a[30][7] :== a[30][8] :== a[30][9] :== a[30][10] :== a[30][11] :== a[30][12] :== a[30][13] :== a[30][14] :== a[30][15] :== a[30][16] :== a[30][17] :== a[30][18] :== a[30][19] :== a[30][20] :== a[30][21] :== a[30][22] :== a[30][23] :== a[30][24] :== a[30][25] :== a[30][26] :== a[30][27] :== a[30][28] :== a[30][29] :== a[30][30] :== a[30][31] :== a[30][32] :== a[30][33] :== a[30][34] :== a[30][35] :== a[30][36] :== a[30][37] :== a[30][38] :== a[30][39] :== a[30][40] :== a[30][41] :== a[30][42] :== a[30][43] :== a[30][44] :== a[30][45] :== a[30][46] :== a[30][47] :== (* row 31 *) a[31][1] :== a[31][2] :== a[31][3] :== a[31][4] :== a[31][5] :== a[31][6] :== a[31][7] :== a[31][8] :== a[31][9] :== a[31][10] :== a[31][11] :== a[31][12] :== a[31][13] :== a[31][14] :== a[31][15] :== a[31][16] :== a[31][17] :== a[31][18] :== a[31][19] :== a[31][20] :== a[31][21] :== a[31][22] :== a[31][23] :== a[31][24] :== a[31][25] :== a[31][26] :== a[31][27] :== a[31][28] :== a[31][29] :== a[31][30] :== a[31][31] :== a[31][32] :== a[31][33] :== a[31][34] :== a[31][35] :== a[31][36] :== a[31][37] :== a[31][38] :== a[31][39] :== a[31][40] :== a[31][41] :== a[31][42] :== a[31][43] :== a[31][44] :== a[31][45] :== a[31][46] :== a[31][47] :== (* row 32 *) a[32][1] :== a[32][2] :== a[32][3] :== a[32][4] :== a[32][5] :== a[32][6] :== a[32][7] :== a[32][8] :== a[32][9] :== a[32][10] :== a[32][11] :== a[32][12] :== a[32][13] :== a[32][14] :== a[32][15] :== a[32][16] :== a[32][17] :== a[32][18] :== a[32][19] :== a[32][20] :== a[32][21] :== a[32][22] :== a[32][23] :== a[32][24] :== a[32][25] :== a[32][26] :== a[32][27] :== a[32][28] :== a[32][29] :== a[32][30] :== a[32][31] :== a[32][32] :== a[32][33] :== a[32][34] :== a[32][35] :== a[32][36] :== a[32][37] :== a[32][38] :== a[32][39] :== a[32][40] :== a[32][41] :== a[32][42] :== a[32][43] :== a[32][44] :== a[32][45] :== a[32][46] :== a[32][47] :== (* row 33 *) a[33][1] :== a[33][2] :== a[33][3] :== a[33][4] :== a[33][5] :== a[33][6] :== a[33][7] :== a[33][8] :== a[33][9] :== a[33][10] :== a[33][11] :== a[33][12] :== a[33][13] :== a[33][14] :== a[33][15] :== a[33][16] :== a[33][17] :== a[33][18] :== a[33][19] :== a[33][20] :== a[33][21] :== a[33][22] :== a[33][23] :== a[33][24] :== a[33][25] :== a[33][26] :== a[33][27] :== a[33][28] :== a[33][29] :== a[33][30] :== a[33][31] :== a[33][32] :== a[33][33] :== a[33][34] :== a[33][35] :== a[33][36] :== a[33][37] :== a[33][38] :== a[33][39] :== a[33][40] :== a[33][41] :== a[33][42] :== a[33][43] :== a[33][44] :== a[33][45] :== a[33][46] :== a[33][47] :== (* row 34 *) a[34][1] :== a[34][2] :== a[34][3] :== a[34][4] :== a[34][5] :== a[34][6] :== a[34][7] :== a[34][8] :== a[34][9] :== a[34][10] :== a[34][11] :== a[34][12] :== a[34][13] :== a[34][14] :== a[34][15] :== a[34][16] :== a[34][17] :== a[34][18] :== a[34][19] :== a[34][20] :== a[34][21] :== a[34][22] :== a[34][23] :== a[34][24] :== a[34][25] :== a[34][26] :== a[34][27] :== a[34][28] :== a[34][29] :== a[34][30] :== a[34][31] :== a[34][32] :== a[34][33] :== a[34][34] :== a[34][35] :== a[34][36] :== a[34][37] :== a[34][38] :== a[34][39] :== a[34][40] :== a[34][41] :== a[34][42] :== a[34][43] :== a[34][44] :== a[34][45] :== a[34][46] :== a[34][47] :== (* row 35 *) a[35][1] :== a[35][2] :== a[35][3] :== a[35][4] :== a[35][5] :== a[35][6] :== a[35][7] :== a[35][8] :== a[35][9] :== a[35][10] :== a[35][11] :== a[35][12] :== a[35][13] :== a[35][14] :== a[35][15] :== a[35][16] :== a[35][17] :== a[35][18] :== a[35][19] :== a[35][20] :== a[35][21] :== a[35][22] :== a[35][23] :== a[35][24] :== a[35][25] :== a[35][26] :== a[35][27] :== a[35][28] :== a[35][29] :== a[35][30] :== a[35][31] :== a[35][32] :== a[35][33] :== a[35][34] :== a[35][35] :== a[35][36] :== a[35][37] :== a[35][38] :== a[35][39] :== a[35][40] :== a[35][41] :== a[35][42] :== a[35][43] :== a[35][44] :== a[35][45] :== a[35][46] :== a[35][47] :== (* row 36 *) a[36][1] :== a[36][2] :== a[36][3] :== a[36][4] :== a[36][5] :== a[36][6] :== a[36][7] :== a[36][8] :== a[36][9] :== a[36][10] :== a[36][11] :== a[36][12] :== a[36][13] :== a[36][14] :== a[36][15] :== a[36][16] :== a[36][17] :== a[36][18] :== a[36][19] :== a[36][20] :== a[36][21] :== a[36][22] :== a[36][23] :== a[36][24] :== a[36][25] :== a[36][26] :== a[36][27] :== a[36][28] :== a[36][29] :== a[36][30] :== a[36][31] :== a[36][32] :== a[36][33] :== a[36][34] :== a[36][35] :== a[36][36] :== a[36][37] :== a[36][38] :== a[36][39] :== a[36][40] :== a[36][41] :== a[36][42] :== a[36][43] :== a[36][44] :== a[36][45] :== a[36][46] :== a[36][47] :== (* row 37 *) a[37][1] :== a[37][2] :== a[37][3] :== a[37][4] :== a[37][5] :== a[37][6] :== a[37][7] :== a[37][8] :== a[37][9] :== a[37][10] :== a[37][11] :== a[37][12] :== a[37][13] :== a[37][14] :== a[37][15] :== a[37][16] :== a[37][17] :== a[37][18] :== a[37][19] :== a[37][20] :== a[37][21] :== a[37][22] :== a[37][23] :== a[37][24] :== a[37][25] :== a[37][26] :== a[37][27] :== a[37][28] :== a[37][29] :== a[37][30] :== a[37][31] :== a[37][32] :== a[37][33] :== a[37][34] :== a[37][35] :== a[37][36] :== a[37][37] :== a[37][38] :== a[37][39] :== a[37][40] :== a[37][41] :== a[37][42] :== a[37][43] :== a[37][44] :== a[37][45] :== a[37][46] :== a[37][47] :== (* row 38 *) a[38][1] :== a[38][2] :== a[38][3] :== a[38][4] :== a[38][5] :== a[38][6] :== a[38][7] :== a[38][8] :== a[38][9] :== a[38][10] :== a[38][11] :== a[38][12] :== a[38][13] :== a[38][14] :== a[38][15] :== a[38][16] :== a[38][17] :== a[38][18] :== a[38][19] :== a[38][20] :== a[38][21] :== a[38][22] :== a[38][23] :== a[38][24] :== a[38][25] :== a[38][26] :== a[38][27] :== a[38][28] :== a[38][29] :== a[38][30] :== a[38][31] :== a[38][32] :== a[38][33] :== a[38][34] :== a[38][35] :== a[38][36] :== a[38][37] :== a[38][38] :== a[38][39] :== a[38][40] :== a[38][41] :== a[38][42] :== a[38][43] :== a[38][44] :== a[38][45] :== a[38][46] :== a[38][47] :== (* row 39 *) a[39][1] :== a[39][2] :== a[39][3] :== a[39][4] :== a[39][5] :== a[39][6] :== a[39][7] :== a[39][8] :== a[39][9] :== a[39][10] :== a[39][11] :== a[39][12] :== a[39][13] :== a[39][14] :== a[39][15] :== a[39][16] :== a[39][17] :== a[39][18] :== a[39][19] :== a[39][20] :== a[39][21] :== a[39][22] :== a[39][23] :== a[39][24] :== a[39][25] :== a[39][26] :== a[39][27] :== a[39][28] :== a[39][29] :== a[39][30] :== a[39][31] :== a[39][32] :== a[39][33] :== a[39][34] :== a[39][35] :== a[39][36] :== a[39][37] :== a[39][38] :== a[39][39] :== a[39][40] :== a[39][41] :== a[39][42] :== a[39][43] :== a[39][44] :== a[39][45] :== a[39][46] :== a[39][47] :== (* row 40 *) a[40][1] :== a[40][2] :== a[40][3] :== a[40][4] :== a[40][5] :== a[40][6] :== a[40][7] :== a[40][8] :== a[40][9] :== a[40][10] :== a[40][11] :== a[40][12] :== a[40][13] :== a[40][14] :== a[40][15] :== a[40][16] :== a[40][17] :== a[40][18] :== a[40][19] :== a[40][20] :== a[40][21] :== a[40][22] :== a[40][23] :== a[40][24] :== a[40][25] :== a[40][26] :== a[40][27] :== a[40][28] :== a[40][29] :== a[40][30] :== a[40][31] :== a[40][32] :== a[40][33] :== a[40][34] :== a[40][35] :== a[40][36] :== a[40][37] :== a[40][38] :== a[40][39] :== a[40][40] :== a[40][41] :== a[40][42] :== a[40][43] :== a[40][44] :== a[40][45] :== a[40][46] :== a[40][47] :== (* row 41 *) a[41][1] :== a[41][2] :== a[41][3] :== a[41][4] :== a[41][5] :== a[41][6] :== a[41][7] :== a[41][8] :== a[41][9] :== a[41][10] :== a[41][11] :== a[41][12] :== a[41][13] :== a[41][14] :== a[41][15] :== a[41][16] :== a[41][17] :== a[41][18] :== a[41][19] :== a[41][20] :== a[41][21] :== a[41][22] :== a[41][23] :== a[41][24] :== a[41][25] :== a[41][26] :== a[41][27] :== a[41][28] :== a[41][29] :== a[41][30] :== a[41][31] :== a[41][32] :== a[41][33] :== a[41][34] :== a[41][35] :== a[41][36] :== a[41][37] :== a[41][38] :== a[41][39] :== a[41][40] :== a[41][41] :== a[41][42] :== a[41][43] :== a[41][44] :== a[41][45] :== a[41][46] :== a[41][47] :== (* row 42 *) a[42][1] :== a[42][2] :== a[42][3] :== a[42][4] :== a[42][5] :== a[42][6] :== a[42][7] :== a[42][8] :== a[42][9] :== a[42][10] :== a[42][11] :== a[42][12] :== a[42][13] :== a[42][14] :== a[42][15] :== a[42][16] :== a[42][17] :== a[42][18] :== a[42][19] :== a[42][20] :== a[42][21] :== a[42][22] :== a[42][23] :== a[42][24] :== a[42][25] :== a[42][26] :== a[42][27] :== a[42][28] :== a[42][29] :== a[42][30] :== a[42][31] :== a[42][32] :== a[42][33] :== a[42][34] :== a[42][35] :== a[42][36] :== a[42][37] :== a[42][38] :== a[42][39] :== a[42][40] :== a[42][41] :== a[42][42] :== a[42][43] :== a[42][44] :== a[42][45] :== a[42][46] :== a[42][47] :== (* row 43 *) a[43][1] :== a[43][2] :== a[43][3] :== a[43][4] :== a[43][5] :== a[43][6] :== a[43][7] :== a[43][8] :== a[43][9] :== a[43][10] :== a[43][11] :== a[43][12] :== a[43][13] :== a[43][14] :== a[43][15] :== a[43][16] :== a[43][17] :== a[43][18] :== a[43][19] :== a[43][20] :== a[43][21] :== a[43][22] :== a[43][23] :== a[43][24] :== a[43][25] :== a[43][26] :== a[43][27] :== a[43][28] :== a[43][29] :== a[43][30] :== a[43][31] :== a[43][32] :== a[43][33] :== a[43][34] :== a[43][35] :== a[43][36] :== a[43][37] :== a[43][38] :== a[43][39] :== a[43][40] :== a[43][41] :== a[43][42] :== a[43][43] :== a[43][44] :== a[43][45] :== a[43][46] :== a[43][47] :== (* row 44 *) a[44][1] :== a[44][2] :== a[44][3] :== a[44][4] :== a[44][5] :== a[44][6] :== a[44][7] :== a[44][8] :== a[44][9] :== a[44][10] :== a[44][11] :== a[44][12] :== a[44][13] :== a[44][14] :== a[44][15] :== a[44][16] :== a[44][17] :== a[44][18] :== a[44][19] :== a[44][20] :== a[44][21] :== a[44][22] :== a[44][23] :== a[44][24] :== a[44][25] :== a[44][26] :== a[44][27] :== a[44][28] :== a[44][29] :== a[44][30] :== a[44][31] :== a[44][32] :== a[44][33] :== a[44][34] :== a[44][35] :== a[44][36] :== a[44][37] :== a[44][38] :== a[44][39] :== a[44][40] :== a[44][41] :== a[44][42] :== a[44][43] :== a[44][44] :== a[44][45] :== a[44][46] :== a[44][47] :== (* row 45 *) a[45][1] :== a[45][2] :== a[45][3] :== a[45][4] :== a[45][5] :== a[45][6] :== a[45][7] :== a[45][8] :== a[45][9] :== a[45][10] :== a[45][11] :== a[45][12] :== a[45][13] :== a[45][14] :== a[45][15] :== a[45][16] :== a[45][17] :== a[45][18] :== a[45][19] :== a[45][20] :== a[45][21] :== a[45][22] :== a[45][23] :== a[45][24] :== a[45][25] :== a[45][26] :== a[45][27] :== a[45][28] :== a[45][29] :== a[45][30] :== a[45][31] :== a[45][32] :== a[45][33] :== a[45][34] :== a[45][35] :== a[45][36] :== a[45][37] :== a[45][38] :== a[45][39] :== a[45][40] :== a[45][41] :== a[45][42] :== a[45][43] :== a[45][44] :== a[45][45] :== a[45][46] :== a[45][47] :== (* row 46 *) a[46][1] :== a[46][2] :== a[46][3] :== a[46][4] :== a[46][5] :== a[46][6] :== a[46][7] :== a[46][8] :== a[46][9] :== a[46][10] :== a[46][11] :== a[46][12] :== a[46][13] :== a[46][14] :== a[46][15] :== a[46][16] :== a[46][17] :== a[46][18] :== a[46][19] :== a[46][20] :== a[46][21] :== a[46][22] :== a[46][23] :== a[46][24] :== a[46][25] :== a[46][26] :== a[46][27] :== a[46][28] :== a[46][29] :== a[46][30] :== a[46][31] :== a[46][32] :== a[46][33] :== a[46][34] :== a[46][35] :== a[46][36] :== a[46][37] :== a[46][38] :== a[46][39] :== a[46][40] :== a[46][41] :== a[46][42] :== a[46][43] :== a[46][44] :== a[46][45] :== a[46][46] :== a[46][47] :== (* row 47 *) a[47][1] :== a[47][2] :== a[47][3] :== a[47][4] :== a[47][5] :== a[47][6] :== a[47][7] :== a[47][8] :== a[47][9] :== a[47][10] :== a[47][11] :== a[47][12] :== a[47][13] :== a[47][14] :== a[47][15] :== a[47][16] :== a[47][17] :== a[47][18] :== a[47][19] :== a[47][20] :== a[47][21] :== a[47][22] :== a[47][23] :== a[47][24] :== a[47][25] :== a[47][26] :== a[47][27] :== a[47][28] :== a[47][29] :== a[47][30] :== a[47][31] :== a[47][32] :== a[47][33] :== a[47][34] :== a[47][35] :== a[47][36] :== a[47][37] :== a[47][38] :== a[47][39] :== a[47][40] :== a[47][41] :== a[47][42] :== a[47][43] :== a[47][44] :== a[47][45] :== a[47][46] :== a[47][47] :== END fixme *) R[subgroups] "group molecular volume contribution", Q[subgroups] "group molecular area contribution" IS_A UNIFAC_size; (* *R and Q are the unifac volume and surface contributions, *indexed by subgroup, columns 4 & 5 in RPP Table 8-21 *) R['CH3'] :== 0.9011; R['CH2'] :== 0.6744; R['CH'] :== 0.4469; R['C'] :== 0.2195; R['CH2=CH'] :== 1.3454; R['CH=CH'] :== 1.1167; R['CH2=C'] :== 1.1173; R['CH=C'] :== 0.8886; R['C=C'] :== 0.6605; R['ACH'] :== 0.5313; R['AC'] :== 0.3652; R['ACCH3'] :== 1.2663; R['ACCH2'] :== 1.0396; R['ACCH'] :== 0.8121; R['OH'] :== 1.000; R['CH3OH'] :== 1.4311; R['H2O'] :== 0.9200; R['ACOH'] :== 0.8952; R['CH3CO'] :== 1.6724; R['CH2CO'] :== 1.4457; R['CHO'] :== 0.9980; R['CH3COO'] :== 1.9031; R['CH2COO'] :== 1.6764; R['HCOO'] :== 1.242; R['CH3O'] :== 1.145; R['CH2O'] :== 0.9183; R['CH-O'] :== 0.6908; R['FCH2O'] :== 0.9183; R['CH3NH2'] :== 1.5959; R['CH2NH2'] :== 1.3692; R['CHNH2'] :== 1.1417; R['CH3NH'] :== 1.4337; R['CH2NH'] :== 1.207; R['CHNH'] :== 0.9795; R['CH3N'] :== 1.1865; R['CH2N'] :== 0.9597; R['ACNH2'] :== 1.06; R['C5H5N'] :== 2.9993; R['C5H4N'] :== 2.8332; R['C5H3N'] :== 2.6670; R['CH3CN'] :== 1.8701; R['CH2CN'] :== 1.6434; R['COOH'] :== 1.3013; R['HCOOH'] :== 1.5280; R['CH2Cl'] :== 1.4654; R['CHCl'] :== 1.2380; R['CCl'] :== 1.006; R['CH2Cl2'] :== 2.2564; R['CHCl2'] :== 2.0606; R['CCl2'] :== 1.8016; R['CHCl3'] :== 2.8700; R['CCl3'] :== 2.6401; R['CCl4'] :== 3.39; R['ACCl'] :== 1.1562; R['CH3NO2'] :== 2.0086; R['CH2NO2'] :== 1.7818; R['CHNO2'] :== 1.5544; R['ACNO2'] :== 1.4199; R['CS2'] :== 2.057; R['CH3SH'] :== 1.877; R['CH2SH'] :== 1.651; R['Furfural'] :== 3.168; R['(CH2OH)2'] :== 2.4088; R['I'] :== 1.264; R['Br'] :== 0.9492; R['CH-trip-C'] :== 1.292; R['C-trip-C'] :== 1.0613; R['Me2SO'] :== 2.8266; R['Acry'] :== 2.3144; R['Cl(C=C)'] :== 0.7910; R['ACF'] :== 0.6948; R['DMF-1'] :== 3.0856; R['DMF-2'] :== 2.6322; R['CF3'] :== 1.0406; R['CF2'] :== 1.0105; R['CF'] :== 0.615; R['COO'] :== 1.38; R['SiH3'] :== 1.6035; R['SiH2'] :== 1.4443; R['SiH'] :== 1.2851; R['Si'] :== 1.047; R['SiH2O'] :== 1.4338; R['SiHO'] :== 1.303; R['SiO'] :== 1.1044; R['NMP'] :== 3.981; R['tert-N'] :== 0.2854; R['Amide'] :== 1.466; R['CON(Me)2'] :== 2.859; R['CONMeCH2'] :== 2.632; R['CON(CH2)2'] :== 2.405; Q['CH3'] :== 0.848; Q['CH2'] :== 0.540; Q['CH'] :== 0.228; Q['C'] :== 0.0; Q['CH2=CH'] :== 1.176; Q['CH=CH'] :== 0.867; Q['CH2=C'] :== 0.988; Q['CH=C'] :== 0.676; Q['C=C'] :== 0.485; Q['ACH'] :== 0.40; Q['AC'] :== 0.120; Q['ACCH3'] :== 0.968; Q['ACCH2'] :== 0.660; Q['ACCH'] :== 0.348; Q['OH'] :== 1.200; Q['CH3OH'] :== 1.432; Q['H2O'] :== 1.400; Q['ACOH'] :== 0.680; Q['CH3CO'] :== 1.488; Q['CH2CO'] :== 1.180; Q['CHO'] :== 0.948; Q['CH3COO'] :== 1.728; Q['CH2COO'] :== 1.420; Q['HCOO'] :== 1.188; Q['CH3O'] :== 1.088; Q['CH2O'] :== 0.78; Q['CH-O'] :== 0.468; Q['FCH2O'] :== 1.1; Q['CH3NH2'] :== 1.544; Q['CH2NH2'] :== 1.236; Q['CHNH2'] :== 0.924; Q['CH3NH'] :== 1.244; Q['CH2NH'] :== 0.936; Q['CHNH'] :== 0.624; Q['CH3N'] :== 0.94; Q['CH2N'] :== 0.632; Q['ACNH2'] :== 0.816; Q['C5H5N'] :== 2.113; Q['C5H4N'] :== 1.833; Q['C5H3N'] :== 1.553; Q['CH3CN'] :== 1.724; Q['CH2CN'] :== 1.416; Q['COOH'] :== 1.224; Q['HCOOH'] :== 1.532; Q['CH2Cl'] :== 1.264; Q['CHCl'] :== 0.952; Q['CCl'] :== 0.724; Q['CH2Cl2'] :== 1.988; Q['CHCl2'] :== 1.684; Q['CCl2'] :== 1.448; Q['CHCl3'] :== 2.410; Q['CCl3'] :== 2.184; Q['CCl4'] :== 2.91; Q['ACCl'] :== 0.844; Q['CH3NO2'] :== 1.868; Q['CH2NO2'] :== 1.56; Q['CHNO2'] :== 1.248; Q['ACNO2'] :== 1.104; Q['CS2'] :== 1.65; Q['CH3SH'] :== 1.676; Q['CH2SH'] :== 1.368; Q['Furfural'] :== 2.481; Q['(CH2OH)2'] :== 2.248; Q['I'] :== 0.992; Q['Br'] :== 0.832; Q['CH-trip-C'] :== 1.088; Q['C-trip-C'] :== 0.784; Q['Me2SO'] :== 2.472; Q['Acry'] :== 2.052; Q['Cl(C=C)'] :== 0.724; Q['ACF'] :== 0.524; Q['DMF-1'] :== 2.736; Q['DMF-2'] :== 2.12; Q['CF3'] :== 1.38; Q['CF2'] :== 0.92; Q['CF'] :== 0.46; Q['COO'] :== 1.2; Q['SiH3'] :== 1.263; Q['SiH2'] :== 1.006; Q['SiH'] :== 0.749; Q['Si'] :== 0.41; Q['SiH2O'] :== 1.062; Q['SiHO'] :== 0.764; Q['SiO'] :== 0.466; Q['NMP'] :== 3.2; Q['tert-N'] :== 0.092; Q['Amide'] :== 1.336; Q['CON(Me)2'] :== 2.428; Q['CONMeCH2'] :== 2.12; Q['CON(CH2)2'] :== 1.812; METHODS METHOD check_self; END check_self; METHOD check_all; END check_all; METHOD default_self; END default_self; METHOD default_all; END default_all; METHOD specify; END specify; METHOD scale_self; END scale_self; METHOD scale_all; END scale_all; METHOD bound_self; END bound_self; METHOD bound_all; END bound_all; END UNIFAC_constants; MODEL component_constants( supported_components IS_A set OF symbol_constant; ) REFINES compmodel; rpp_index "Reid, Prausnitz, and Poling 5th ed. species index" IS_A integer_constant; formula "molecular formula" IS_A symbol_constant; subgroups IS_A set OF symbol_constant; groups "UNIFAC groups in the molecule" IS_A set OF integer_constant; wilson_set "molecules for which we have binary parameters with this species" IS_A set OF symbol_constant; uc IS_A UNIFAC_constants; mw "molecular weight" IS_A molar_weight_constant; Tb "normal boiling point" IS_A boiling_temperature; Tc "critical temperature" IS_A critical_temperature; Pc "critical pressure" IS_A critical_pressure; Vc "critical volume" IS_A critical_volume; Zc "critical compressibility" IS_A critical_compressibility; omega "Pitzer's acentric factor" IS_A acentric_factor; cpvapa "heat capacity coefficient" IS_A heat_capacity_a_constant; cpvapb "heat capacity coefficient" IS_A heat_capacity_b_constant; cpvapc "heat capacity coefficient" IS_A heat_capacity_c_constant; cpvapd "heat capacity coefficient" IS_A heat_capacity_d_constant; Hf "enthalpy of formation" IS_A enthalpy_of_formation_constant; Gf "free energy of formation" IS_A free_energy_of_formation_constant; vpa, vpb, vpc, vpd IS_A vapor_pressure_constant; vp_correlation "the vapor pressure correlation form" IS_A integer_constant; (* vpa, vpb, vpc, vpd are defined as wild real refinements. * They must be assigned values with appropriate units. * The values in RPP have units appropriate (but unstated) * to the vp_correlation specified. * For Equation 1: vpa, vpb, vpc, vpd are DIMENSIONLESS (no units). * For Equation 2: vpa, vpc are DIMENSIONLESS, vpb is in {K}, * and vpd is {K^2/bar}. * For Equation 3: vpa DIMENSIONLESS, vpb, vpc are in {K}, vpd not used. *) Hv IS_A heat_of_vaporization_constant; Tliq "reference temperature for Vliq, lden" IS_A reference_temperature; Vliq "molar volume data point" IS_A reference_molar_volume; lden "density at standard conditions" IS_A reference_mass_density; T0 "standard temperature" IS_A reference_temperature; P0 "standard pressure" IS_A reference_pressure; H0 "standard enthalpy", G0 "standard free energy" IS_A reference_molar_energy; S0 "standard entropy" IS_A reference_molar_entropy; T0 :== 298.15{K}; P0 :== 1.0{atm}; (* data checked by: Jennifer L Perry 1/97 *) METHODS METHOD check_self; RUN uc.check_self; END check_self; METHOD check_all; RUN check_self; END check_all; METHOD default_self; RUN uc.default_self; END default_self; METHOD default_all; RUN default_self; END default_all; METHOD specify; RUN uc.specify; END specify; METHOD bound_self; RUN uc.bound_self; END bound_self; METHOD bound_all; RUN bound_self; END bound_all; METHOD scale_self; RUN uc.scale; END scale_self; METHOD scale_all; RUN scale_self; END scale_all; END component_constants; MODEL td_component_constants( component_name IS_A symbol_constant; ) WHERE ( (component_name IN supported_components) == TRUE; ) REFINES component_constants( (* note: keep this list consistent with td_component_data_set *) (* each component name we support should be in the SELECT below *) supported_components :== [ 'hydrogen', 'carbon_dioxide', 'water', 'chloroform', 'methane', 'methanol', 'ethylene', 'ethane', 'ethanol', 'propylene', 'acetone', 'propane', 'propadiene', 'n_propanol', 'i_propanol', 'ethylene_glycol', 'n_butane', 'i_butane', 'butene_1', 'n_butanol', 'i_butanol', 'n_pentane', 'i_pentane', 'benzene', 'n_hexane', 'toluene', 'n_heptane', 'styrene', 'ethylbenzene', 'n_octane', 'diethylbenzene', 'n_decane', 'diphenyl', 'pentanol_1', 'dodecane', 'chloro_benzene', 'oxygen', 'nitrogen' ]; ); nu[subgroups] "numbers of each UNIFAC group in the molecule" IS_A integer_constant; lambda[ wilson_set] IS_A Wilson_constant; del_ip[ wilson_set] IS_A Wilson_energy_constant; groups :== UNION[[uc.group[i]] | i IN subgroups]; Vliq :== mw/lden; S0 :== (H0-G0)/T0; H0 :== Hf; G0 :== Gf; (* At some point we need to choose either Gf Or G0, etc and stay with it*) SELECT(component_name) (*No. 75 equilibrium_hydrogen*) CASE 'hydrogen': rpp_index :== 75; formula :== 'H2'; subgroups :== []; wilson_set :== []; mw :== 2.016 {g/g_mole}; Tb :== 20.3 {K}; Tc :== 33.0 {K}; Pc :== 12.9 {bar}; Vc :== 64.3 {cm^3/g_mole}; Zc :== 0.303; omega :== -0.216; cpvapa :== 27.14 {J/g_mole/K}; cpvapb :== 9.274e+1 {J/g_mole/K^2}; cpvapc :== -1.381e-5 {J/g_mole/K^3}; cpvapd :== 7.645e-9 {J/g_mole/K^4}; Hf :== 0.00 {J/g_mole}; Gf :== 0.00 {J/g_mole}; vpa :== -5.57929; vpb :== 2.60012; vpc :== -0.85506; vpd :== 1.70503; vp_correlation :== 1; Hv :== 216 {cal/g_mole};(*Reid, et.al 2nd ed.*) Tliq :== 20.0 {K}; lden :== 0.071 {g/cm^3}; (*No. 99*) CASE 'carbon_dioxide': rpp_index :== 99; formula :== 'CO2'; subgroups :== []; wilson_set :== []; mw :== 44.010 {g/g_mole}; Tb :== 194.7 {K}; (*Reid, et.al 2nd ed.*) Tc :== 304.1 {K}; Pc :== 73.8 {bar}; Vc :== 93.9 {cm^3/g_mole}; Zc :== 0.274; omega :== 0.239; cpvapa :== 19.80 {J/g_mole/K}; cpvapb :== 7.344e-2 {J/g_mole/K^2}; cpvapc :== -5.602e-5 {J/g_mole/K^3}; cpvapd :== 1.715e-8 {J/g_mole/K^4}; Hf :== -3.938e+5 {J/g_mole}; Gf :== -3.946e+5 {J/g_mole}; vpa :== -6.95626; vpb :== 1.19695; vpc :== -3.12614; vpd :== 2.99448; vp_correlation :== 1; Hv :== 4100 {cal/g_mole}; (*Reid, et.al 2nd ed.*) Tliq :== 293 {K}; (*Reid, et.al 2nd ed.*) lden :== 0.777 {g/cm^3}; (*Reid, et.al 2nd ed.*) (*No. 77*) CASE 'water': rpp_index :== 77; formula :== 'H2O'; subgroups :== ['H2O']; wilson_set :== ['CH3OH','(CH3)2CO','(CH3)2CHOH','C2H6O2','H2O']; mw :== 18.015 {g/g_mole}; Tb :== 373.2 {K}; Tc :== 647.3 {K}; Pc :== 221.2 {bar}; Vc :== 57.1 {cm^3/g_mole}; Zc :== 0.235; omega :== 0.344; cpvapa :== 32.24 {J/g_mole/K}; cpvapb :== 1.924e-3 {J/g_mole/K^2}; cpvapc :== 1.055e-5 {J/g_mole/K^3}; cpvapd :== -3.596e-9 {J/g_mole/K^4}; Hf :== -2.420e+5 {J/g_mole}; Gf :== -2.288e+5 {J/g_mole}; vpa :== -7.76451; vpb :== 1.45838; vpc :== -2.77580; vpd :== -1.23303; vp_correlation :== 1; Hv :== 9717.0 {cal/g_mole}; (*Reid, et.al 2nd ed.*) Tliq :== 293.0 {K}; lden :== 0.998 {g/cm^3}; nu['H2O'] :== 1; lambda['CH3OH'] :== 0.94934; lambda['(CH3)2CO'] :== 0.40640; lambda['(CH3)2CHOH'] :== 0.78363; lambda['C2H6O2'] :== 1.35289; lambda['H2O'] :== 1.0; del_ip['(CH3)2CHOH'] :== 5085.76 {J/g_mole}; del_ip['(CH3)2CO'] :== 5997.845 {J/g_mole}; del_ip['CH3OH'] :== 2.0760E+002 {J/g_mole}; del_ip['C2H6O2'] :== 3946.12 {J/g_mole}; del_ip['H2O'] :== 0.0 {J/g_mole}; (* No. 103 *) CASE 'chloroform': rpp_index :== 103; formula :== 'CHCl3'; subgroups :== ['CHCl3']; wilson_set :== ['CHCl3','C6H6','(CH3)2CO']; mw :== 119.378 {g/g_mole}; Tb :== 334.3 {K}; Tc :== 536.4 {K}; Pc :== 53.7 {bar}; Vc :== 238.9 {cm^3/g_mole}; Zc :== 0.293; omega :== 0.218; cpvapa :== 24.00 {J/g_mole/K}; cpvapb :== 1.893e-1 {J/g_mole/K^2}; cpvapc :== -1.841e-4 {J/g_mole/K^3}; cpvapd :== 6.657e-8 {J/g_mole/K^4}; Hf :== -1.013e+5 {J/g_mole}; Gf :== -6.858e+4 {J/g_mole}; vpa :== -6.95546; vpb :== 1.16625; vpc :== -2.13970; vpd :== -3.44421; vp_correlation :== 1; Hv :== 7100 {cal/g_mole}; (*Reid, et.al 2nd ed.*) Tliq :== 293.15 {K}; lden :== 1.489 {g/cm^3}; nu['CHCl3'] :== 1; lambda['(CH3)2CO'] :== 1.49288; lambda['C6H6'] :== 1.92309; lambda['CHCl3'] :== 1.0; del_ip['(CH3)2CO'] :== -1359.32 {J/g_mole}; del_ip['C6H6'] :== -1638.28 {J/g_mole}; del_ip['CHCl3'] :== 0.0 {J/g_mole}; (* No. 116 *) CASE 'methane': rpp_index :== 116; formula :== 'CH4'; subgroups :== ['CH3']; wilson_set :== []; mw :== 16.043 {g/g_mole}; Tb :== 111.6 {K}; Tc :== 190.4 {K}; Pc :== 46.0 {bar}; Vc :== 99.0 {cm^3/g_mole}; Zc :== 0.288; omega :== 0.011; cpvapa :== 19.25 {J/g_mole/K}; cpvapb :== 5.213e-2 {J/g_mole/K^2}; cpvapc :== 1.197e-5 {J/g_mole/K^3}; cpvapd :== -1.132e-8 {J/g_mole/K^4}; Hf :== -7.490e+4 {J/g_mole}; Gf :== -5.087e+4 {J/g_mole}; vpa :== -6.00435; vpb :== 1.18850; vpc :== -0.83408; vpd :== -1.22833; vp_correlation :== 1; Hv :== 1955 {cal/g_mole}; (*Reid, et.al 2nd ed.*) Tliq :== 111.7 {K}; lden :== 0.425 {g/cm^3}; nu['CH3'] :== 1; (* No. 117 *) CASE 'methanol': rpp_index :== 117; formula :== 'CH3OH'; subgroups :== ['CH3', 'OH']; wilson_set :== ['H2O','(CH3)2CO','CH3OH']; mw :== 32.042 {g/g_mole}; Tb :== 337.7 {K}; Tc :== 512.6 {K}; Pc :== 80.9 {bar}; Vc :== 118.0 {cm^3/g_mole}; Zc :== 0.224; omega :== 0.556; cpvapa :== 21.15 {J/g_mole/K}; cpvapb :== 7.092e-2 {J/g_mole/K^2}; cpvapc :== 2.587e-5 {J/g_mole/K^3}; cpvapd :== -2.852e-8 {J/g_mole/K^4}; Hf :== -2.0133e+5 {J/g_mole}; Gf :== -1.626e+5 {J/g_mole}; vpa :== -8.54796; vpb :== 0.76982; vpc :== -3.10850; vpd :== 1.54481; vp_correlation :== 1; Hv :== 8426 {cal/g_mole}; (*Reid, et.al 2nd ed.*) Tliq :== 293 {K}; lden :== 0.791 {g/cm^3}; nu['CH3'] :== 1; nu['OH'] :== 1; lambda['H2O'] :== 0.43045; lambda['(CH3)2CO'] :== 0.77204; lambda['CH3OH'] :== 1.0; del_ip['(CH3)2CO'] :== 2.6493E+002 {J/g_mole}; del_ip['H2O'] :== 1.1944E+002 {J/g_mole}; del_ip['CH3OH'] :== 0.0 {J/g_mole}; (* No. 155 *) CASE 'ethylene': rpp_index :== 155; formula :== 'C2H4'; subgroups :== ['CH2=CH']; wilson_set :== []; mw :== 28.054 {g/g_mole}; Tb :== 169.3 {K}; Tc :== 282.4 {K}; Pc :== 50.4 {bar}; Vc :== 130.4 {cm^3/g_mole}; Zc :== 0.280; omega :== 0.089; cpvapa :== 3.806 {J/g_mole/K}; cpvapb :== 1.566e-1 {J/g_mole/K^2}; cpvapc :== -8.348e-5 {J/g_mole/K^3}; cpvapd :== 1.755e-8 {J/g_mole/K^4}; Hf :== 5.234e+4 {J/g_mole}; Gf :== 6.816e+4 {J/g_mole}; vpa :== -6.32055; vpb :== 1.16819; vpc :== -1.55935; vpd :== -1.83552; vp_correlation :== 1; Hv :== 3237 {cal/g_mole}; (*Reid, et.al 2nd ed.*) Tliq :== 163{K}; lden :== 0.577 {g/cm^3}; nu['CH2=CH'] :== 1; (* No. 168 *) CASE 'ethane': rpp_index :== 168; formula :== 'C2H6'; subgroups :== ['CH3']; wilson_set :== []; mw :== 30.070 {g/g_mole}; Tb :== 184.6 {K}; Tc :== 305.4 {K}; Pc :== 48.8 {bar}; Vc :== 148.3 {cm^3/g_mole}; Zc :== 0.285; omega :== 0.099; cpvapa :== 5.409 {J/g_mole/K}; cpvapb :== 1.781e-1 {J/g_mole/K^2}; cpvapc :== -6.938e-5 {J/g_mole/K^3}; cpvapd :== 8.713e-9 {J/g_mole/K^4}; Hf :== -8.474e+4 {J/g_mole}; Gf :== -3.295e+4 {J/g_mole}; vpa :== -6.34307; vpb :== 1.01630; vpc :== -1.19116; vpd :== -2.03539; vp_correlation :== 1; Hv :== 3515 {cal/g_mole}; (*Reid, et.al 2nd ed.*) Tliq :== 183.0 {K}; lden :== 0.548 {g/cm^3}; nu['CH3'] :== 2; (* No. 170 *) CASE 'ethanol': rpp_index :== 170; formula :== 'C2H5OH'; subgroups :== ['CH3', 'CH2', 'OH']; wilson_set :== []; mw :== 46.069 {g/g_mole}; Tb :== 351.4 {K}; Tc :== 513.9 {K}; Pc :== 61.4 {bar}; Vc :== 167.1 {cm^3/g_mole}; Zc :== 0.240; omega :== 0.644; cpvapa :== 9.014 {J/g_mole/K}; cpvapb :== 2.141e-1 {J/g_mole/K^2}; cpvapc :== -8.390e-5 {J/g_mole/K^3}; cpvapd :== 1.373e-9 {J/g_mole/K^4}; Hf :== -2.350e+5 {J/g_mole}; Gf :== -1.684e+5 {J/g_mole}; vpa :== -8.51838; vpb :== 0.34163; vpc :== -5.73683; vpd :== 8.32581; vp_correlation :== 1; Hv :== 9260 {cal/g_mole}; (*Reid, et.al 2nd ed.*) Tliq :== 293.15 {K}; lden :== 0.789 {g/cm^3}; nu['CH3'] :== 1; nu['CH2'] :== 1; nu['OH'] :== 1; (* No. 194 *) CASE 'propylene': rpp_index :== 194; formula :== 'C3H6'; subgroups :== ['CH3', 'CH2', 'CH']; wilson_set :== ['C3H4','C3H8','C3H6']; mw :== 42.081 {g/g_mole}; Tb :== 225.5 {K}; Tc :== 364.9 {K}; Pc :== 46.0 {bar}; Vc :== 181.0 {cm^3/g_mole}; Zc :== 0.274; omega :== 0.144; cpvapa :== 3.710 {J/g_mole/K}; cpvapb :== 2.345e-1 {J/g_mole/K^2}; cpvapc :== -1.160e-4 {J/g_mole/K^3}; cpvapd :== 2.205e-8 {J/g_mole/K^4}; Hf :== 2.043e+4 {J/g_mole}; Gf :== 6.276e+4 {J/g_mole}; vpa :== -6.64231; vpb :== 1.21857; vpc :== -1.81005; vpd :== -2.48212; vp_correlation :== 1; Hv :== 4400 {cal/g_mole}; (*Reid, et.al 2nd ed.*) Tliq :== 223.0 {K}; lden :== 0.612 {g/cm^3}; nu['CH3'] :== 1; nu['CH2'] :== 1; nu['CH'] :== 1; lambda['C3H4'] :== 1.150; lambda['C3H8'] :== 1.057; lambda['C3H6'] :== 1.0; del_ip[wilson_set] :== MAX_REAL * 1e-12{J/g_mole}; (* No. 196 *) CASE 'acetone': rpp_index :== 196; formula :== '(CH3)2CO'; subgroups :== ['CH3', 'CH3CO']; wilson_set :== ['H2O','CH3OH','CHCl3','C6H6','(CH3)2CO']; mw :== 58.080 {g/g_mole}; Tb :== 329.2 {K}; Tc :== 508.1 {K}; Pc :== 47.0 {bar}; Vc :== 209.0 {cm^3/g_mole}; Zc :== 0.232; omega :== 0.304; cpvapa :== 6.301 {J/g_mole/K}; cpvapb :== 2.606e-1 {J/g_mole/K^2}; cpvapc :== -1.253e-4 {J/g_mole/K^3}; cpvapd :== 2.038e-8 {J/g_mole/K^4}; Hf :== -2.177e+5 {J/g_mole}; Gf :== -1.532e+5 {J/g_mole}; vpa :== -7.45514; vpb :== 1.20200; vpc :== -2.43926; vpd :== -3.35590; vp_correlation :== 1; Hv :== 6960 {cal/g_mole}; (*Reid, et.al 2nd ed.*) Tliq :== 293.15{K}; lden :== 0.790 {g/cm^3}; nu['CH3'] :== 1; nu['CH3CO'] :== 1; lambda['H2O'] :== 0.16924; lambda['CH3OH'] :== 0.65675; lambda['CHCl3'] :== 1.29452; lambda['C6H6'] :== 0.75632; lambda['(CH3)2CO'] :== 1.0; del_ip['CH3OH'] :== 23.2321 {J/g_mole}; del_ip['H2O'] :== 1674.817 {J/g_mole}; del_ip['C6H6'] :== 1364.63 {J/g_mole}; del_ip['CHCl3'] :== -468.831 {J/g_mole}; del_ip['(CH3)2CO'] :== 0.0 {J/g_mole}; (* No. 206 *) CASE 'propane': rpp_index :== 206; formula :== 'C3H8'; subgroups :== ['CH3', 'CH2']; wilson_set :== ['C3H4','C3H8','C3H6']; mw :== 44.094 {g/g_mole}; Tb :== 231.1 {K}; Tc :== 369.8 {K}; Pc :== 42.5 {bar}; Vc :== 203.0 {cm^3/g_mole}; Zc :== 0.281; omega :== 0.153; cpvapa :== -4.224 {J/g_mole/K}; cpvapb :== 3.063e-1 {J/g_mole/K^2}; cpvapc :== -1.586e-4 {J/g_mole/K^3}; cpvapd :== 3.215e-8 {J/g_mole/K^4}; Hf :== -1.039e+5 {J/g_mole}; Gf :== -2.349e+4 {J/g_mole}; vpa :== -6.72219; vpb :== 1.33236; vpc :== -2.13868; vpd :== -1.38551; Hv :== 4487 {cal/g_mole}; (*Reid, et.al 2nd ed.*) Tliq :== 231.0 {K}; lden :== 0.582 {g/cm^3}; vp_correlation :== 1; nu['CH3'] :== 2; nu['CH2'] :== 1; lambda['C3H4'] :== 1.439; lambda['C3H8'] :== 1.0; lambda['C3H6'] :== 1.062; (* we don't have this data yet *) FOR w IN wilson_set CREATE del_ip[w] :== MAX_REAL*1e-12{J/g_mole}; END FOR; (* No. 185 *) CASE 'propadiene': rpp_index :== 185; formula :== 'C3H4'; subgroups :== ['CH2', 'CH2=C']; wilson_set :== ['C3H4','C3H8','C3H6']; mw :== 40.065 {g/g_mole}; Tb :== 238.7 {K}; Tc :== 393.0 {K}; Pc :== 54.7 {bar}; Vc :== 162.0 {cm^3/g_mole}; Zc :== 0.271; omega :== 0.313; cpvapa :== 9.906 {J/g_mole/K}; cpvapb :== 1.977e-1 {J/g_mole/K^2}; cpvapc :== -1.182e-4 {J/g_mole/K^3}; cpvapd :== 2.782e-8 {J/g_mole/K^4}; Hf :== 1.923e5 {J/g_mole}; Gf :== 2.025e5 {J/g_mole}; vpa :== 6.5361; vpb :== 1054.72{K}; vpc :== -77.08{K}; vpd :== 0; vp_correlation :== 3; Hv :== 4450.0 {cal/g_mole}; (*Reid, et.al 2nd ed.*) lden :== 0.658 {g/cm^3}; Tliq :== 238.0 {K}; nu['CH2'] :== 2; nu['CH2=C'] :== 2; lambda['C3H4'] :== 1.0; lambda['C3H8'] :== 1.353; lambda['C3H6'] :== 1.136; FOR w IN wilson_set CREATE (* we don't have this data yet *) del_ip[w] :== MAX_REAL * 1e-12{J/g_mole}; END FOR; (* No. 207 n_propanol *) CASE 'n_propanol': rpp_index :== 207; formula :== 'C3H7OH'; subgroups :== ['CH3', 'CH2', 'OH']; wilson_set :== []; mw :== 60.096 {g/g_mole}; Tb :== 370.4 {K}; Tc :== 536.7 {K}; Pc :== 51.7 {bar}; Vc :== 218.5 {cm^3/g_mole}; Zc :== 0.253; omega :== 0.623; cpvapa :== 2.470 {J/g_mole/K}; cpvapb :== 3.325e-1 {J/g_mole/K^2}; cpvapc :== -1.855e-4 {J/g_mole/K^3}; cpvapd :== 4.296e-8 {J/g_mole/K^4}; Hf :== -2.566e+5 {J/g_mole}; Gf :== -1.619e+5 {J/g_mole}; vpa :== -8.05594; vpb :== 0.0425183; vpc :== -7.51296; vpd :== 6.89004; vp_correlation :== 1; Hv :== 9980 {cal/g_mole}; (*Reid, et.al 2nd ed.*) lden :== 0.804 {g/cm^3}; Tliq :== 293.0 {K}; nu['CH3'] :== 1; nu['CH2'] :== 2; nu['OH'] :== 1; (* No. 208 isopropyl alcohol *) CASE 'i_propanol': rpp_index :== 208; formula :== '(CH3)2CHOH'; subgroups :== ['CH3', 'CH', 'OH']; wilson_set :== ['H2O','C2H6O2','(CH3)2CHOH']; mw :== 60.096 {g/g_mole}; Tb :== 355.4 {K}; Tc :== 508.3 {K}; Pc :== 47.6 {bar}; Vc :== 220.0 {cm^3/g_mole}; Zc :== 0.248; omega :== 0.665; cpvapa :== 32.43 {J/g_mole/K}; cpvapb :== 1.885e-1 {J/g_mole/K^2}; cpvapc :== 6.406e-5 {J/g_mole/K^3}; cpvapd :== -9.261e-8 {J/g_mole/K^4}; Hf :== -2.726e+5 {J/g_mole}; Gf :== -1.177e+5 {J/g_mole}; vpa :== -8.16927; vpb :== -0.0943213; vpc :== -8.10040; vpd :== 7.85000; vp_correlation :== 1; Hv :== 9520 {cal/g_mole}; (*Reid, et.al 2nd ed.*) lden :== 0.786 {g/cm^3}; Tliq :== 293.0 {K}; nu['CH3'] :== 2; nu['CH'] :== 1; nu['OH'] :== 1; lambda['H2O'] :== 0.03094; lambda['C2H6O2'] :== 1.80740; lambda['(CH3)2CHOH'] :== 1.0; del_ip['H2O'] :== 6255.66 {J/g_mole}; del_ip['C2H6O2'] :== -1319.20 {J/g_mole}; del_ip['(CH3)2CHOH'] :== 0.0 {J/g_mole}; (* No 171 *) CASE 'ethylene_glycol': rpp_index :== 171; formula :== 'C2H6O2'; subgroups :== ['CH2','OH']; wilson_set :== ['H2O','(CH3)2CHOH','C2H6O2']; mw :== 62.069 {g/g_mole}; Tb :== 470.5 {K}; Tc :== 645 {K}; Pc :== 77 {bar}; Vc :== 55.71723{cm^3/g_mole}; Zc :== 0.270; omega :== (0.9145 + 1.20)/2; (*Calculated using Perry's, p. 3-257*) cpvapa :== 3.570e+1 {J/g_mole/K}; cpvapb :== 2.483e-1 {J/g_mole/K^2}; cpvapc :== -1.497e-4 {J/g_mole/K^3}; cpvapd :== 3.010e-8 {J/g_mole/K^4}; Hf :== -3.896e5 {J/g_mole}; Gf :== -3.047e5 {J/g_mole}; vpa :== 13.6299; vpb :== 6022.18{K}; vpc :== -28.25{K}; vpd :== 0; vp_correlation :== 3; Hv :== 12550.0 {cal/g_mole}; (*Reid, et.al 2nd ed.*) lden :== 1.114 {g/cm^3}; Tliq :== 293.0 {K}; nu['CH2'] :== 2; nu['OH'] :== 2; lambda['H2O'] :== 0.42861; lambda['(CH3)2CHOH'] :== 0.23018; lambda['C2H6O2'] :== 1.0; del_ip['H2O'] :== -2661.746 {J/g_mole}; del_ip['(CH3)2CHOH'] :== 2167.164 {J/g_mole}; del_ip['C2H6O2'] :== 0.0 {J/g_mole}; (* No. 258 *) CASE 'n_butane': rpp_index :== 258; formula :== 'C4H10'; subgroups :== ['CH3', 'CH2']; wilson_set :== []; mw :== 58.124 {g/g_mole}; Tb :== 272.7 {K}; Tc :== 425.2 {K}; Pc :== 38.0 {bar}; Vc :== 255 {cm^3/g_mole}; Zc :== 0.274; omega :== 0.199; cpvapa :== 9.487 {J/g_mole/K}; cpvapb :== 3.313e-1 {J/g_mole/K^2}; cpvapc :== -1.108e-4 {J/g_mole/K^3}; cpvapd :== -2.822e-9 {J/g_mole/K^4}; Hf :== -1.262e+5 {J/g_mole}; Gf :== -1.610e+4 {J/g_mole}; vpa :== -6.88709; vpb :== 1.15157; vpc :== -1.99873; vpd :== -3.13003; vp_correlation :== 1; Hv :== 5352 {cal/g_mole}; (*Reid, et.al 2nd ed.*) lden :== 0.579 {g/cm^3}; Tliq :== 293.0 {K}; nu['CH3'] :== 2; nu['CH2'] :== 2; (* No. 259 isobutane*) CASE 'i_butane': rpp_index :== 259; formula :== '(CH3)3CH'; subgroups :== ['CH3', 'CH']; wilson_set :== []; mw :== 58.124 {g/g_mole}; Tb :== 261.4 {K}; Tc :== 408.2 {K}; Pc :== 36.5 {bar}; Vc :== 263 {cm^3/g_mole}; Zc :== 0.283; omega :== 0.183; cpvapa :== -1.390 {J/g_mole/K}; cpvapb :== 3.847e-1 {J/g_mole/K^2}; cpvapc :== -1.846e-4 {J/g_mole/K^3}; cpvapd :== 2.895e-8 {J/g_mole/K^4}; Hf :== -1.346e+5 {J/g_mole}; Gf :== -2.090e+4 {J/g_mole}; vpa :== -6.95579; vpb :== 1.50090; vpc :== -2.52717; vpd :== -1.49776; vp_correlation :== 1; Hv :== 5090 {cal/g_mole}; (*Reid, et.al 2nd ed.*) lden :== 0.557 {g/cm^3}; Tliq :== 293.0 {K}; nu['CH3'] :== 3; nu['CH'] :== 1; (* No. 236 *) CASE 'butene_1': rpp_index :== 236; formula :== 'C4H8'; subgroups :== ['CH3','CH2','CH']; wilson_set :== []; mw :== 56.108 {g/g_mole}; Tb :== 266.9 {K}; Tc :== 419.6 {K}; Pc :== 40.2 {bar}; Vc :== 240 {cm^3/g_mole}; Zc :== 0.277; omega :== 0.191; cpvapa :== -2.994 {J/g_mole/K}; cpvapb :== 3.532e-1 {J/g_mole/K^2}; cpvapc :== -1.990e-4 {J/g_mole/K^3}; cpvapd :== 4.463e-8 {J/g_mole/K^4}; Hf :== -37.5e+3 {J/g_mole}; Gf :== 7.134e+4 {J/g_mole}; vpa :== -6.88204; vpb :== 1.27051; vpc :== -2.26284; vpd :== -2.61632; vp_correlation :== 1; Hv :== 5352 {cal/g_mole}; (*Reid, et.al 2nd ed.*)(* need to find this *) lden :== 0.595 {g/cm^3}; Tliq :== 293.0 {K}; nu['CH3'] :== 1; nu['CH2'] :== 2; nu['CH'] :== 1; (* No. 260*) CASE 'n_butanol': rpp_index :== 260; formula :== 'C4H9OH'; subgroups :== ['CH3', 'CH2', 'OH']; wilson_set :== []; mw :== 74.123 {g/g_mole}; Tb :== 390.9 {K}; Tc :== 563.1 {K}; Pc :== 44.2 {bar}; Vc :== 274.0 {cm^3/g_mole}; Zc :== 0.259; omega :== 0.593; cpvapa :== 3.266 {J/g_mole/K}; cpvapb :== 4.180e-1 {J/g_mole/K^2}; cpvapc :== -2.242e-4 {J/g_mole/K^3}; cpvapd :== 4.685e-8 {J/g_mole/K^4}; Hf :== -2.749e+5 {J/g_mole}; Gf :== -1.509e+5 {J/g_mole}; vpa :== -8.00756; vpb :== 0.53783; vpc :== -9.34240; vpd :== 6.68692; vp_correlation :== 1; Hv :== 10300 {cal/g_mole}; (*Reid, et.al 2nd ed.*) lden :== 0.810 {g/cm^3}; Tliq :== 293 {K}; nu['CH3'] :== 1; nu['CH2'] :== 3; nu['OH'] :== 1; (* No. 262 isobutanol*) CASE 'i_butanol': rpp_index :== 262; formula :== '(CH3)2CHCH2OH'; subgroups :== ['CH3','CH2','CH','OH']; wilson_set :== []; mw :== 74.123 {g/g_mole}; Tb :== 381.0 {K}; Tc :== 547.8 {K}; Pc :== 43.0 {bar}; Vc :== 273 {cm^3/g_mole}; Zc :== 0.257; omega :== 0.592; cpvapa :== -7.708 {J/g_mole/K}; cpvapb :== 4.689e-1 {J/g_mole/K^2}; cpvapc :== -2.884e-4 {J/g_mole/K^3}; cpvapd :== 7.231e-8 {J/g_mole/K^4}; Hf :== -2.834e+5 {J/g_mole}; Gf :== -1.674e+5 {J/g_mole}; vpa :== 10.2510; vpb :== 2874.73{K}; vpc :== -100.3{K}; vpd :== 0; vp_correlation :== 3; Hv :== 10050 {cal/g_mole}; (*Reid, et.al 2nd ed.*) lden :== 0.802 {g/cm^3}; Tliq :== 293.0 {K}; nu['CH3'] :== 2; nu['CH2'] :== 1; nu['CH'] :== 1; nu['OH'] :== 1; (* No. 311 *) CASE 'n_pentane': rpp_index :== 311; formula :== 'C5H12'; subgroups :== ['CH3', 'CH2']; wilson_set :== []; mw :== 72.151 {g/g_mole}; Tb :== 309.2 {K}; Tc :== 469.7 {K}; Pc :== 33.7 {bar}; Vc :== 304 {cm^3/g_mole}; Zc :== 0.263; omega :== 0.251; cpvapa :== -3.626 {J/g_mole/K}; cpvapb :== 4.873e-1 {J/g_mole/K^2}; cpvapc :== -2.580e-4 {J/g_mole/K^3}; cpvapd :== 5.305e-8 {J/g_mole/K^4}; Hf :== -1.465e+5 {J/g_mole}; Gf :== -8.370e+3 {J/g_mole}; vpa :== -7.28936; vpb :== 1.53679; vpc :== -3.08367; vpd :== -1.02456; vp_correlation :== 1; Hv :== 6160 {cal/g_mole}; (*Reid, et.al 2nd ed.*) lden :== 0.626 {g/cm^3}; Tliq :== 293.0 {K}; nu['CH3'] :== 2; nu['CH2'] :== 3; (* No. 312 2-methyl butane*) CASE 'i_pentane': rpp_index :== 312; formula :== 'C2H5CH(CH3)2'; subgroups :== ['CH3', 'CH2', 'CH']; wilson_set :== []; mw :== 72.151 {g/g_mole}; Tb :== 301.0 {K}; Tc :== 460.4 {K}; Pc :== 33.9 {bar}; Vc :== 306 {cm^3/g_mole}; Zc :== 0.271; omega :== 0.227; cpvapa :== -9.525 {J/g_mole/K}; cpvapb :== 5.066e-1 {J/g_mole/K^2}; cpvapc :== -2.729e-4 {J/g_mole/K^3}; cpvapd :== 5.723e-8 {J/g_mole/K^4}; Hf :== -1.546e+5 {J/g_mole}; Gf :== -1.482e+4 {J/g_mole}; vpa :== -7.12727; vpb :== 1.38996; vpc :== -2.54302; vpd :== -2.45657; vp_correlation :== 1; Hv :== 5900 {cal/g_mole}; (*Reid, et.al 2nd ed.*) lden :== 0.620 {g/cm^3}; Tliq :== 293.0{K}; nu['CH3'] :== 3; nu['CH2'] :== 1; nu['CH'] :== 1; (* No. 343 *) CASE 'benzene': rpp_index :== 343; formula :== 'C6H6'; subgroups :== ['ACH']; wilson_set :== ['CHCl3','C6H6','(CH3)2CO']; mw :== 78.114 {g/g_mole}; Tb :== 353.2 {K}; Tc :== 562.2 {K}; Pc :== 48.9 {bar}; Vc :== 259 {cm^3/g_mole}; Zc :== 0.271; omega :== 0.212; cpvapa :== -3.392e+1 {J/g_mole/K}; cpvapb :== 4.739e-1 {J/g_mole/K^2}; cpvapc :== -3.017e-4 {J/g_mole/K^3}; cpvapd :== 7.130e-8 {J/g_mole/K^4}; Hf :== 8.298e+4 {J/g_mole}; Gf :== 1.297e+5 {J/g_mole}; vpa :== -6.98273; vpb :== 1.33213; vpc :== -2.62863; vpd :== -3.33399; vp_correlation :== 1; Hv :== 7352 {cal/g_mole}; (*Reid, et.al 2nd ed.*) lden :== 0.885 {g/cm^3}; Tliq :== 289.0{K}; nu['ACH'] :== 6; lambda['CHCl3'] :== 0.52431; lambda['(CH3)2CO'] :== 0.87629; lambda['C6H6'] :== 1.0; del_ip['CHCl3'] :== 1614.0 {J/g_mole}; del_ip['(CH3)2CO'] :== -156.458 {J/g_mole}; del_ip['C6H6'] :== 0.0 {J/g_mole}; (* No. 379 *) CASE 'n_hexane': rpp_index :== 379; formula :== 'C6H14'; subgroups :== ['CH3', 'CH2']; wilson_set :== []; mw :== 86.178 {g/g_mole}; Tb :== 341.9 {K}; Tc :== 507.5 {K}; Pc :== 30.1 {bar}; Vc :== 370 {cm^3/g_mole}; Zc :== 0.264; omega :== 0.299; cpvapa :== -4.413 {J/g_mole/K}; cpvapb :== 5.820e-1 {J/g_mole/K^2}; cpvapc :== -3.119e-4 {J/g_mole/K^3}; cpvapd :== 6.494e-8 {J/g_mole/K^4}; Hf :== -1.673e+5 {J/g_mole}; Gf :== -1.670e+2 {J/g_mole}; vpa :== -7.46765; vpb :== 1.44211; vpc :== -3.28222; vpd :== -2.50941; vp_correlation :== 1; Hv :== 6896 {cal/g_mole}; (*Reid, et.al 2nd ed.*) lden :== 0.659 {g/cm^3}; Tliq :== 293.0{K}; nu['CH3'] :== 2; nu['CH2'] :== 4; (* No. 400*) CASE 'toluene': rpp_index :== 400; formula :== 'C6H5CH3'; subgroups :== ['ACH', 'ACCH3']; wilson_set :== []; mw :== 92.141 {g/g_mole}; Tb :== 383.8 {K}; Tc :== 591.8 {K}; Pc :== 41.0 {bar}; Vc :== 316 {cm^3/g_mole}; Zc :== 0.263; omega :== 0.263; cpvapa :== -2.435e+1 {J/g_mole/K}; cpvapb :== 5.125e-1 {J/g_mole/K^2}; cpvapc :== -2.765e-4 {J/g_mole/K^3}; cpvapd :== 4.911e-8 {J/g_mole/K^4}; Hf :== 5.003e+4 {J/g_mole}; Gf :== 1.221e+5 {J/g_mole}; vpa :== -7.28607; vpb :== 1.38091; vpc :== -2.83433; vpd :== -2.79168; vp_correlation :== 1; Hv :== 7930 {cal/g_mole}; (*Reid, et.al 2nd ed.*) Tliq :== 293.0{K}; lden :== 0.867 {g/cm^3}; nu['ACH'] :== 5; nu['ACCH3'] :== 1; (* No. 429 *) CASE 'n_heptane': rpp_index :== 429; formula :== 'C7H16'; subgroups :== ['CH3', 'CH2']; wilson_set :== []; mw :== 100.205 {g/g_mole}; Tb :== 371.6 {K}; Tc :== 540.3 {K}; Pc :== 27.4 {bar}; Vc :== 432 {cm^3/g_mole}; Zc :== 0.263; omega :== 0.349; cpvapa :== -5.146 {J/g_mole/K}; cpvapb :== 6.762e-1 {J/g_mole/K^2}; cpvapc :== -3.651e-4 {J/g_mole/K^3}; cpvapd :== 7.658e-8 {J/g_mole/K^4}; Hf :== -1.879e+5 {J/g_mole}; Gf :== 8.000e+3 {J/g_mole}; vpa :== -7.67468; vpb :== 1.37068; vpc :== -3.53620; vpd :== -3.20243; vp_correlation :== 1; Hv :== 7576 {cal/g_mole}; (*Reid, et.al 2nd ed.*) lden :== 0.684 {g/cm^3}; Tliq :== 293.0{K}; nu['CH3'] :== 2; nu['CH2'] :== 5; (* No. 440 *) CASE 'styrene': rpp_index :== 440; formula :== 'C6H5C2H3'; subgroups :== ['ACH', 'AC', 'CH2=CH']; wilson_set :== []; mw :== 104.152 {g/g_mole}; Tb :== 418.3 {K}; Tc :== 647 {K}; Pc :== 39.9 {bar}; Vc :== 350.55 {cm^3/g_mole};(*Not sure about Vc Zc*) Zc :== 0.260; omega :== 0.257; cpvapa :== -2.825e+1 {J/g_mole/K}; cpvapb :== 6.159e-1 {J/g_mole/K^2}; cpvapc :== -4.023e-4 {J/g_mole/K^3}; cpvapd :== 9.935e-8 {J/g_mole/K^4}; Hf :== 1.475e+5 {J/g_mole}; Gf :== 2.139e+5 {J/g_mole}; vpa :== -7.15981; vpb :== 1.78861; vpc :== -5.10359; vpd :== 1.63749; vp_correlation :== 1; Hv :== 8800 {cal/g_mole}; (*Reid, et.al 2nd ed.*) lden :== 0.906 {g/cm^3}; Tliq :== 293.15{K}; nu['ACH'] :== 5; nu['AC'] :== 1; nu['CH2=CH'] :== 1; (* No. 447 *) CASE 'ethylbenzene': rpp_index :== 447; formula :== 'C6H5C2H5'; subgroups :== ['ACH', 'ACCH2', 'CH3']; wilson_set :== []; mw :== 106.168 {g/g_mole}; Tb :== 409.3 {K}; Tc :== 617.2 {K}; Pc :== 36.0 {bar}; Vc :== 374 {cm^3/g_mole}; Zc :== 0.262; omega :== 0.302; cpvapa :== -4.310e1 {J/g_mole/K}; cpvapb :== 7.072e-1 {J/g_mole/K^2}; cpvapc :== -4.811e-4 {J/g_mole/K^3}; cpvapd :== 1.301e-7 {J/g_mole/K^4}; Hf :== 2.981e4 {J/g_mole}; Gf :== 1.307e5 {J/g_mole}; vpa :== -7.48645; vpb :== 1.45488; vpc :== -3.37538; vpd :== -2.23048; vp_correlation :== 1; Hv :== 8500 {cal/g_mole}; (*Reid, et.al 2nd ed.*) lden :== 0.867 {g/cm^3}; Tliq :== 293{K}; nu['ACH'] :== 5; nu['ACCH2'] :== 1; nu['CH3'] :== 1; (* No. 483 *) CASE 'n_octane': rpp_index :== 483; formula :== 'C8H18'; subgroups :== ['CH3', 'CH2']; wilson_set :== []; mw :== 114.232 {g/g_mole}; Tb :== 398.8 {K}; Tc :== 568.8 {K}; Pc :== 24.9 {bar}; Vc :== 492.0 {cm^3/g_mole}; Zc :== 0.259; omega :== 0.398; cpvapa :== -6.096 {J/g_mole/K}; cpvapb :== 7.712e-1 {J/g_mole/K^2}; cpvapc :== -4.195e-4 {J/g_mole/K^3}; cpvapd :== 8.855e-8 {J/g_mole/K^4}; Hf :== -2.086e5 {J/g_mole}; Gf :== 1.640e4 {J/g_mole}; vpa :== -7.91211; vpb :== 1.38007; vpc :== -3.80435; vpd :== -4.50132; vp_correlation :== 1; Hv :== 8225 {cal/g_mole}; (*Reid, et.al 2nd ed.*) lden :== 0.703 {g/cm^3}; Tliq :== 293.0{K}; nu['CH3'] :== 2; nu['CH2'] :== 6; (* No. 552 *) CASE 'diethylbenzene': rpp_index :== 552; formula :== 'C6H4(C2H5)2'; subgroups :== ['ACH', 'ACCH2', 'CH3']; wilson_set :== []; mw :== 134.222 {g/g_mole}; Tb :== 456.9 {K}; Tc :== 657.9 {K}; Pc :== 28.0 {bar}; Vc :== 480.0 {cm^3/g_mole};(*Not sure about Vc Zc*) Zc :== 0.25; omega :== 0.404; cpvapa :== -3.742e+1 {J/g_mole/K}; cpvapb :== 8.671e-1 {J/g_mole/K^2}; cpvapc :== -5.560e-4 {J/g_mole/K^3}; cpvapd :== 1.411e-7 {J/g_mole/K^4}; Hf :== -2.227e+4 {J/g_mole}; Gf :== 1.380e+5 {J/g_mole}; vpa :== -8.11413; vpb :== 1.77697; vpc :== -4.43960; vpd :== -1.47477; vp_correlation :== 1; Hv :== 9410 {cal/g_mole}; (*Reid, et.al 2nd ed.*) lden :== 0.862 {g/cm^3}; Tliq :== 293 {K}; nu['ACH'] :== 4; nu['ACCH2'] :== 2; nu['CH3'] :== 2; (* No. 567 *) CASE 'n_decane': rpp_index :== 567; formula :== 'C10H22'; subgroups :== ['CH3', 'CH2']; wilson_set :== []; mw :== 142.286 {g/g_mole}; Tb :== 447.3 {K}; Tc :== 617.7 {K}; Pc :== 21.2 {bar}; Vc :== 603.0 {cm^3/g_mole}; Zc :== 0.249; omega :== 0.489; cpvapa :== -7.913 {J/g_mole/K}; cpvapb :== 9.609e-1 {J/g_mole/K^2}; cpvapc :== -5.288e-4 {J/g_mole/K^3}; cpvapd :== 1.131e-7 {J/g_mole/K^4}; Hf :== -2.498e5 {J/g_mole}; Gf :== 3.324e4 {J/g_mole}; vpa :== -8.56523; vpb :== 1.97756; vpc :== -5.81971; vpd :== -0.29982; vp_correlation :== 1; Hv :== 9388 {cal/g_mole}; (*Reid, et.al 2nd ed.*) lden :== 0.730 {g/cm^3}; Tliq :== 293.0 {K}; nu['CH3'] :== 2; nu['CH2'] :== 8; (* No. 579 *) CASE 'diphenyl': rpp_index :== 579; formula :== '(C6H5)2'; subgroups :== ['ACH', 'AC']; wilson_set :== []; mw :== 154.212 {g/g_mole}; Tb :== 529.3 {K}; Tc :== 789.0 {K}; Pc :== 38.5 {bar}; Vc :== 502.0 {cm^3/g_mole}; Zc :== 0.295; omega :== 0.372; cpvapa :== -9.707e+1 {J/g_mole/K}; cpvapb :== 1.106 {J/g_mole/K^2}; cpvapc :== -8.855e-4 {J/g_mole/K^3}; cpvapd :== 2.790e-7 {J/g_mole/K^4}; Hf :== 1.822e+5 {J/g_mole}; Gf :== 2.803e+5 {J/g_mole}; vpa :== -7.6740; vpb :== 1.23008; vpc :== -3.67908; vpd :== -2.29172; vp_correlation :== 1; Hv :== 10900 {cal/g_mole}; (*Reid, et.al 2nd ed.*) lden :== 0.990 {g/cm^3}; Tliq :== 347 {K}; nu['ACH'] :== 10; nu['AC'] :== 2; (* No. 314 1_pentanol*) CASE 'pentanol_1': rpp_index :== 314; formula :== 'C5H12O'; subgroups :== ['CH3', 'CH2', 'OH']; wilson_set :== []; mw :== 88.150 {g/g_mole}; Tb :== 411.1 {K}; Tc :== 588.2 {K}; Pc :== 39.1 {bar}; Vc :== 326.0 {cm^3/g_mole}; Zc :== 0.260; omega :== 0.579; cpvapa :== 3.869 {J/g_mole/K}; cpvapb :== 0.5045 {J/g_mole/K^2}; cpvapc :== -2.639e-04 {J/g_mole/K^3}; cpvapd :== 5.120e-08 {J/g_mole/K^4}; Hf :== -2.989e05 {J/g_mole}; Gf :== -1.461e05 {J/g_mole}; vpa :== -8.97725; vpb :== 2.99791; vpc :== -12.9596; vpd :== 8.84205; vp_correlation :== 1; Hv :== 10600.0 {cal/g_mole}; (*Reid, et.al 2nd ed.*) lden :== 0.815 {g/cm^3}; Tliq :== 293.0 {K}; nu['CH2'] :== 4; nu['CH3'] :== 1; nu['OH'] :== 1; (* No. 584 *) CASE 'dodecane': rpp_index :==584; formula :== 'C12H26'; subgroups :== ['CH3', 'CH2']; wilson_set :== []; mw :== 170.34 {g/g_mole}; Tb :== 489.5 {K}; Tc :== 658.2 {K}; Pc :== 18.2 {bar}; Vc :== 713.0 {cm^3/g_mole}; Zc :== 0.24; omega :== 0.575; cpvapa :== -9.328 {J/g_mole/K}; cpvapb :== 1.149 {J/g_mole/K^2}; cpvapc :== -6.347e-4 {J/g_mole/K^3}; cpvapd :== 1.359e-7 {J/g_mole/K^4}; Hf :== -2.911e5 {J/g_mole}; Gf :== 5.007e4 {J/g_mole}; vpa :== 77.628; vpb :== 10012.5 {K}; vpc :== -9.236; vpd :== 10030 {K^2/bar}; vp_correlation :== 2; Hv :== 9388 {cal/g_mole}; (*Reid, et.al 2nd ed.*)(* need to find this *) lden :== 0.748 {g/cm^3}; Tliq :== 293.0 {K}; nu['CH3'] :== 2; nu['CH2'] :== 10; (* No. 340*) CASE 'chloro_benzene': rpp_index :== 340; formula :== 'C6H5Cl'; subgroups :== ['ACH', 'AC']; wilson_set :== []; mw :== 112.559 {g/g_mole}; Tb :== 404.9 {K}; Tc :== 632.4 {K}; Pc :== 45.2 {bar}; Vc :== 308.0 {cm^3/g_mole}; Zc :== 0.265; omega :== 0.249; cpvapa :== -33.89 {J/g_mole/K}; cpvapb :== 0.5631 {J/g_mole/K^2}; cpvapc :== -4.522e-04 {J/g_mole/K^3}; cpvapd :== 1.426e-07 {J/g_mole/K^4}; Hf :== 5.187e04 {J/g_mole}; Gf :== 9.923e04 {J/g_mole}; vp_correlation :== 1; vpa :== -7.5870; vpb :== 2.26551; vpc :== -4.09418; vpd :== 0.17038; Hv :== 8735.0 {cal/g_mole}; (*Reid, et.al 2nd ed.*) lden :== 1.106 {g/cm^3}; Tliq :== 293.0 {K}; nu['ACH'] :== 5; nu['AC'] :== 1; (* added from art *) CASE 'oxygen': rpp_index :== 59; formula :== 'O2'; subgroups :== []; wilson_set :== []; mw :== 31.999 {g/g_mole}; Tb :== 90.2 {K}; Tc :== 154.6 {K}; Pc :== 50.4 {bar}; Vc :== 73.4 {cm^3/g_mole}; Zc :== 0.288; omega :== 0.025; cpvapa :== 2.811e1 {cal/g_mole/K}; cpvapb :== -3.680e-6 {cal/g_mole/K^2}; cpvapc :== 1.746e-5 {cal/g_mole/K^3}; cpvapd :== -1.065e-8 {cal/g_mole/K^4}; Hf :== 0.00 {J/g_mole}; Gf :== 0.00 {J/g_mole}; vpa :== -6.28275; vpb :== 1.73619; vpc :== -1.81349; vpd :== -2.53645e-2; vp_correlation :== 1; Hv :== 1630 {cal/g_mole}; Tliq :== 90 {K}; lden:== 1.149 {g/cm^3}; CASE 'nitrogen': rpp_index :== 56; formula :== 'N2'; subgroups :== []; wilson_set :== []; mw :== 28.013 {g/g_mole}; Tb :== 77.4 {K}; Tc :== 126.2 {K}; Pc :== 33.9 {bar}; Vc :== 89.8 {cm^3/g_mole}; Zc :== 0.290; omega :== 0.039; cpvapa :== 3.115e1 {cal/g_mole/K}; cpvapb :== -1.357e-2 {cal/g_mole/K^2}; cpvapc :== 2.680e-5 {cal/g_mole/K^3}; cpvapd :== -1.168e-8 {cal/g_mole/K^4}; Hf :== 0.00 {J/g_mole}; Gf :== 0.00 {J/g_mole}; vp_correlation :== 1; vpa :== -6.09676; vpb :== 1.13670; vpc :== -1.04072; vpd :== -1.93306; Hv :== 1333 {cal/g_mole}; Tliq :== 78 {K}; lden :== 0.804 {g/cm^3}; END SELECT; (* select component_name*) END td_component_constants; MODEL basic_components_data ( components IS_A set OF symbol_constant; reference IS_A symbol_constant; ) WHERE ( ((CARD[components] == 1) OR (reference != 'hydrogen')); (* because it is the 0, which is rotten to scale equations. *) ) REFINES compmodel; other_components "species other than the reference species" IS_A set OF symbol_constant; other_components :== [components - [reference]]; END basic_components_data; MODEL components_data( components "species in the mixture" IS_A set OF symbol_constant; reference "a species from components, usually the heaviest" IS_A symbol_constant; ) WHERE ( ((CARD[components] == 1) OR (reference != 'hydrogen')); (* because it is the 0, which is rotten to scale equations. *) (reference IN components) == TRUE; FOR i IN components CHECK (* note: keep this list consistent with td_component_constants CASES *) (i IN ['hydrogen', 'carbon_dioxide', 'water', 'chloroform', 'methane', 'methanol', 'ethylene', 'ethane', 'ethanol', 'propylene', 'acetone', 'propane', 'propadiene', 'n_propanol', 'i_propanol', 'ethylene_glycol', 'n_butane', 'i_butane','butene_1', 'n_butanol', 'i_butanol', 'n_pentane', 'i_pentane', 'benzene', 'n_hexane', 'toluene', 'n_heptane', 'styrene', 'ethylbenzene', 'n_octane', 'diethylbenzene', 'n_decane', 'diphenyl', 'pentanol_1','dodecane', 'chloro_benzene', 'oxygen', 'nitrogen' ]) == TRUE; END FOR; ) REFINES basic_components_data; FOR i IN components CREATE data[i] "data package for each component i" IS_A td_component_constants(i); END FOR; END components_data; MODEL test_components() REFINES testcmumodel(); tc "dummy MODEL built to get the 'supported_components' list" IS_A td_component_constants('hydrogen'); ds "test MODEL to compile all the defined species" IS_A components_data( tc.supported_components, CHOICE[tc.supported_components-['hydrogen']]); METHODS METHOD values; END values; END test_components;