SlideShare a Scribd company logo
1 of 59
Download to read offline
The Pennsylvania State University
College of Earth and Mineral Sciences
Department of Energy and Mineral Engineering
Petroleum and Natural Gas Engineering Program
PNG 480-Production Process Engineering
Final Term Project: Design of a Surface Production Facility
Instructor: Dr. Luis F. Ayala H.
Teaching Assistants: Thomas Stumpf and Lina Da
Group 6
Michael Silver
Chad DiStanislao
Christopher Efstathion
David Hughes
2
TABLE OF CONTENTS
Section 1 Project Introduction ....................................................................................4
Section 2 Description of Process Model.....................................................................6
Section 3 Reservoir Characterization and Feed Rate Calculation ..............................9
Section 4 Determination of Separator Operating Pressures........................................12
Section 5 Sizing of Separator Vessels ........................................................................15
Section 6 Sizing of Dehydrator System......................................................................30
Appendix A MATLAB Code......................................................................................41
Appendix C Module Results.......................................................................................54
Appendix C Viscosity Calculation..............................................................................58
4
Section 1
Project Introduction
The goal of this project is to provide the basic design for a surface production facility that
will process the hydrocarbon stream produced from a single-phase natural gas reservoir. The
project design basis includes a 3-stage condensate stabilization train, a glycol dehydration unit,
and a hydrate prevention system. The reservoir of interest is being drained by 18 wells that will
feed the designed facility through a production manifold. A previous reservoir simulation has
provided a hydrocarbon production capacity of 11,750 RCF/D per well. The following natural
gas reservoir composition has been provided in order to develop a process model. The model will
be presented in detail in the following chapters.
Table 1. Natural Gas Reservoir Composition.
Component Molar Fraction
P1 0.662200
P2 0.119400
P3 0.100452
P4 0.045966
P5 0.050000
P6 0.011041
P7 0.010941
The goal of the model is to perform detailed and accurate calculation of properties like
compositional Z-factors, volatility ratios, split factors, fluid densities, and molecular weights.
These properties are essential for the design of the surface production facility. Based on these
5
data, the model can be used to optimize the design of the separation train. The scope of this
design project includes selecting the appropriate operating pressure, size, and orientation of the
separator vessels in the stabilization train. The goal of the stabilization train is to meet
condensate vapor pressure specifications while maximizing liquids recovery at a minimum cost.
Next, a preliminary sizing of the glycol dehydration system has been completed based on the
composition and properties of the gas streams from the stabilization train. The purpose of this
system is to meet the water content specification of the gas stream, which is based on contract
agreements for the sale of the gas as well as process safety requirements to minimize the risk of
free water or hydrate formation in the gas pipeline. If the dehydration system goes offline, a
hydrate inhibition program using methanol (MeOH) or monoethylene glycol (MEG) can be used
based on the specifications in this report.
6
Section 2
Description of Process Model
To calculate how the components in the wellstream react to changes in pressure and
temperature, we built a process model in MATLAB based on the Soave-Redlich-Kwong (SRK)
equation of state. The purpose of this model is to calculate molar split factors and compositions
of liquid and vapor streams for separators under various operating conditions.
The first step of the model was to write a MATLAB code that could output the Z factor
of a mixture based on pressure, temperature, composition, and thermodynamic parameters. For
the initial test in Module A, these inputs were hard-coded in the MATLAB file, but this code was
quickly revamped into a MATLAB function file (“ZFactor_Final.m”) which would output
minimum and maximum Z factor values if given inputs of composition, pressure, temperature as
well as component critical temperatures & pressures, acentric factors, omega factors, and
interaction parameters. The Z factor function used the following equations to solve the SRK
cubic equation.
Cubic equation to solve: 𝑍3
− 𝑍2
+ (𝐴 − 𝐵 − 𝐵2)𝑍 − 𝐴𝐵 = 0
[𝑎𝛼]𝑖 = Ω 𝑎𝑖
𝑅2 𝑇𝑐𝑖
2
𝑃 𝑐𝑖
[1 + 𝑓(𝜔𝑖)(1 − 𝑇𝑟𝑖
0.5
)]2
for i=1…nc
𝑏𝑖 = Ω 𝑏𝑖
𝑅𝑇 𝑐𝑖
𝑃 𝑐𝑖
for i=1…nc
Pitzer function: 𝑓(𝜔𝑖) = 0.48 + 1.574𝜔𝑖 − 0.176𝜔𝑖
2
[𝑎𝛼] 𝑚 = ∑ ∑ 𝑐𝑖
𝑛 𝑐
𝑗
𝑛 𝑐
𝑖
𝑐𝑗√(𝑎𝛼)𝑖(𝑎𝛼) 𝑗(1 − 𝛿𝑖𝑗)
7
𝑏 𝑚 = ∑ 𝑐𝑖 𝑏𝑖
𝑛 𝑐
𝑖
Attraction parameter: 𝐴 =
(𝑎𝛼) 𝑚 𝑃
𝑅2 𝑇2
; Co-volume parameter: 𝐵 =
𝑏 𝑚 𝑃
𝑅𝑇
Next, we wrote a code file (“splitFunction_Final.m”) that is able to calculate the
volatility ratios of each component and molar split factor of a separator with a given pressure,
temperature, and feed composition. This code was based on the principle that at equilibrium, the
fugacities of each component in both the liquid and vapor phases must be equal. The function
worked by using Wilson’s correlation as an initial guess for the volatility ratios and then
iteratively updating the volatility ratios until the fugacities of all components in all phases
converged. Wilson’s correlation for estimating the volatility ratios is given by:
𝐾𝑖 =
𝑃𝑐𝑖
𝑃
𝐸𝑋𝑃[5.37(1 + 𝜔𝑖) (1 −
𝑇𝑐𝑖
𝑇
)]
The SRK equation was used to calculate the fugacity coefficients. The fugacity coefficients, φi,
and fugacity, fi, are defined by the following two relationships.
ln(Φ 𝑖) = (𝐵𝐵)𝑖(𝑍 − 1) − ln(Z − B) −
𝐴
𝐵
[(𝐴𝐴)𝑖 − (𝐵𝐵)𝑖]ln[
𝑍 + 𝐵
𝑍
]
where: (𝐵𝐵)𝑖 =
𝑏 𝑖
𝑏 𝑚
and (𝐴𝐴)𝑖 =
2
(𝑎𝛼) 𝑚
[(𝑎𝛼)𝑖
0.5
∑ 𝑐𝑗(𝑎𝛼) 𝑗
0.5
(1 − 𝛿𝑖𝑗)]
𝑛 𝑐
𝑗
𝑓𝑖 = 𝑐𝑖Φ 𝑖 𝑝
Initially, we used a two-component mixture such that the Rachford-Rice equation could
be simplified to the Warren-Adewumi equation and the split factor αg could be found explicitly.
The Rachford-Rice equation and Warren-Adewumi equation are as follows:
Rachford-Rice equation: 𝑔(𝛼 𝑔) = ∑
𝑐 𝑖(𝐾 𝑖−1)
1+𝛼 𝑔(𝐾 𝑖−1)
𝑛 𝑐
𝑖=1
8
Warren-Adewumi: 𝛼 𝑔 = −[
𝑐1
𝐾2−1
+
𝑐2
𝐾1−1
]; 𝛼 𝐿 = 1 − 𝛼 𝑔
Finally, to calculate the volatility ratios and molar split factor of a separator with a stream
containing more than two components, we replaced the Warren-Adewumi equation in the
previous function with a function that calculates the molar split factor using the Newton-
Raphson method to solve the Rachford-Rice equation implicitly for the split factor if given the
composition and component volatility ratios (“alphaFunction_Final.m”). The Newton-Raphson
method for calculating the molar split factor utilizes an iterating process that updates αg until the
the specified convergence is achieved.
Using these three functions, we were able to calculate all of the operational and
thermodynamic parameters that are required for the design of the surface production facility.
9
Input Given Data and Input Mixfile
Data
 Check reservoir fluid phase to see if it is
single or two phase
 Calculate split factor
 Plug in values of α=0 and α=1 and if g(αg)
returns two positives it is single phase gas,
two negatives is single phase liquid and a
positive and negative indicates 2-phase
reservoir
 Z-Factor Calculation of Reservoir Fluids
 Calculate Molar Flow Rate to Separation
Train
 Calculate Split Factor for First Separation
Train using the split factor function and z
factor function
 Calculate Split Factor for Stock Tank using the
split factor function and z factor function
 Calculate End Train Parameters
 liquid MW, liquid density, liquid SG, API gravity,
liquid flow rate, gas flow rate, total split factor,
GOR, glycol tower gas composition, MW and z-
factor
Pressure loop which inputs pressures
ranging from 14.7:10:834.7 to find
optimum operating pressure
Lowest GOR and
Highest API?
Yes No
Done Iterations
10
Section 3
Reservoir Characterization and Feed Rate Calculation
The reservoir has been described as a single phase natural gas reservoir at conditions of
7500 psia and 375°F. We began by performing Rachford-Rice calculations to prove that the
reservoir is a single phase gas reservoir. The Rachford-Rice equation is given by:
[1]
Under equilibrium conditions, g(αg) = 0 due to conservation of mass. To determine the phase of
the reservoir, the Rachford Rice equation was solved under two cases: g(αg=0) and g(αg=1) using
the reservoir composition and volatility ratios given by fugacity calculations with the SRK
equation of state (See code in the Appendix). In case 1, g(αg=0) = 0.01384 and in case 2,
g(αg=1) = 0.00051. Since both of these values are positive and the Rachford-Rice function is
monotonically decreasing over this range, it indicates that the true value of αg is greater than one.
This means that the reservoir is in fact a single phase gas reservoir at the given temperature,
pressure, and composition.
To calculate the molar feed rate entering the surface production facility from the
production manifold, the reservoir flow rate was converted to a molar flow rate using the
following equations:
𝑞𝑡𝑜𝑡𝑎𝑙 = 𝑞 𝑤𝑒𝑙𝑙 ∗ 18 [2]
𝑛𝑓𝑒𝑒𝑑 =
𝑞 𝑡𝑜𝑡𝑎𝑙 ∗ 𝑃 𝑟𝑒𝑠𝑒𝑟𝑣𝑜𝑖𝑟
𝑍 𝑟𝑒𝑠𝑒𝑟𝑣𝑜𝑖𝑟 ∗ 𝑅∗ 𝑇 𝑟𝑒𝑠𝑒𝑟𝑣𝑜𝑖𝑟
[3]
The reservoir Z factor (Zreservoir = 1.2444) was calculated using the SRK equation of state for the
reservoir composition at the given reservoir conditions (See code in Appendix). Based on this
11
calculation, the molar feed rate of hydrocarbons to the surface production facility is
approximately 14,200 lb-mol/d.
12
Section 4
Determination of Separator Operating Pressures
As stated before, the goal of the stabilization train is to meet condensate vapor pressure
specifications while maximizing liquids recovery at a minimum cost. The stabilization train in
this case consists of a high pressure separator, a low pressure separator, and a stock tank. All
equipment is assumed to operate at 60°F. The high pressure separator is a three phase separator
(free water knockout) that removes all incoming liquid water. This separator must operate
between 820 and 1350 psig due to constraints from the production manifold and the need to
minimize recompression costs. The second separator operates at a pressure between the high
pressure separator and atmospheric, and the stock tank operates at atmospheric pressure (14.7
psia). To determine the optimum operating pressures for the two separators, the separation train
code was used with a double loop which tested pressures between 835-1365 psia for the first
separator and 20-830 psia for the second separator at 10 psi increments. 10 psi was chosen as an
increment because it was assumed that the pressure of a separator can be reasonably controlled to
within +/- 5 psi. For each pressure, the facility GOR and API gravity of the stock tank oil was
entered in the resulting 54x81 matrix. All of the pairs of operating conditions were analyzed to
determine which pair gave the lowest GOR and highest API gravity. These results can be seen in
the figures below.
13
Figure 1: Determination of Separator Pressures by Minimizing GOR
Based on Figure 1, the minimum GOR of 4373 SCF/bbl occurs at a HP separator pressure
of 835 psia and a LP separator pressure of 60 psia.
4300
4400
4500
4600
4700
4800
0 50 100 150 200 250 300 350 400 450 500
GOR(SCF/bbl)
LP Separator Operating Pressure, psia
GOR vs. LP Separator Operating Pressure
for Various HP Separator Operating Pressures
835 psia
935 psia
1035 psia
1135 psia
1235 psia
1335 psia
14
Figure 2: Determination of Separator Pressures by Maximizing API Gravity
Based on Figure 2, a maximum API gravity of the stock tank oil also occurs at a HP
separator pressure of 835 psia and a LP separator pressure of 60 psia. This makes sense because
in minimizing the GOR more of the light hydrocarbon compounds remain in the liquid phase,
thereby reducing the specific gravity of the stock tank oil.
63
63.5
64
64.5
65
65.5
66
0 50 100 150 200 250 300 350 400 450 500
APIGravity
LP Separator Operating Pressure, psia
API Gravity vs. LP Separator Operating Pressure
for Various HP Separator Operating Pressures
835 psia
935 psia
1035 psia
1135 psia
1235 psia
1335 psia
15
Section 5
Sizing of Separator Vessels
Once the operating pressure of each separator was determined, the dimensions and
orientation of each separator could be determined based on the data generated from the code. For
each separator, both a vertical and horizontal separator were sized so that a comparison could be
made and the most economical vessel orientation could be chosen. Generally, the design which
utilized less material (i.e. smaller vessel volume) was the design chosen for our facility. This
section first outlines the process of sizing the 3-phase vertical separator, followed by the process
for sizing the 3-phase horizontal separator. Once this is done, the two separators are compared
and the one with the smallest volume is chosen for our facility.
16
STAGE 1- HIGH PRESSURE SEPARATOR
3-Phase Vertical Separator:
The following table outlines the results of the 3-phase vertical separator sizing.
Table 2. Stage 1 3-Phase vertical separator sizing
Below is a table of the outputs generated from our code which were necessary inputs in
the calculation of the vertical separator. All of these variables were generated at each stage in the
separation train which allowed sizing at the various stages.
cd 1.2832
Vtog 0.35396 ft/s
Vtwo 0.4732 ft/s
Dv,g 4.81112 ft
Dv,g 5 ft 10.5
Dv,o 1.55135 ft
Dv,o 2 ft
tro=trw 300 sec
Hlc 16.9243 ft
Hil 2.5 ft
Hvd 5 ft
Hme 1.5 ft
Ht 25.9243 ft
Ht 30 ft 30
(L/D) 6 1.5<(L/D)<3 2.857143
Volume 589.049 ft
3
2597.704
3-Phase Vertical Separator
17
Table 3. Fluid and thermodynamic properties for each stage of separation train
The first step necessary for sizing the three phase vertical separator is to determine the
terminal velocity of water through oil and oil through gas (vtwo & vtog). This calculation was done
using the terminal velocity equation derived from force balance, rather than using the Souder’s &
Brown Equation because it is more accurate. The Souder’s & Brown equation uses an empirical
separation coefficient (KSB) which is an approximate range depending on the type of separator.
In order to calculate the terminal velocity, it was necessary to carry out multiple iterations to
derive the drag coefficient (CD). Also a particle droplet size of 100 microns was used for the
calculation of vtog while 500 microns was used for vtwo due to industry standards. These standards
are set so that the mist extractor can operate properly and not become flooded. The table below
outlines the iterative procedure recommended by Arnold & Steward, which calculates the drag
coefficient.
Stage 1 Stage 2 Stage 3
Pressure psia 834.7 60 14.7
alphaG 0.69100874 0.362679 0.1401499
alphaL 0.30899126 0.637321 0.8598501
qg lbmol/d 98312.9001 15943.93 3926.6706
qo lbmol/d 43961.5678 28017.64 24090.969
qg ft
3
/s 6.43480853 16.70387 16.965827
qo ft
3
/s 0.8944496 0.720038 0.6663914
Gas Z Factor ft
3
/s 0.84599191 0.973383 0.9835095
Liquid Z Factor 0.26298065 0.023877 0.0062966
MWg lb/lbmol 18.7936044 27.56189 42.7193
Mwo lb/lbmol 72.5379499 98.13236 107.16433
ρg lb/ft
3
3.32331277 0.30449 0.1144352
ρo lb/ft
3
41.2637631 44.19518 44.839564
Information Needed for Design
18
Table 4. Stage 1 terminal velocity and drag coefficient determination
With these variables established, the two terminal velocities were able to be calculated.
The next step was to determine the vessel internal diameter. The gas and water constraints were
both used to calculate two diameters. Since the diameter was largest for the gas constraint, this
diameter was rounded up to the nearest 0.5 ft. and used for the vessel internal diameter. Liquid
retention times for water and oil were determined based off of the calculated API of the fluid.
The API of the fluid was 65.415, which according to API Specifications meant that an oil and
water retention time (tro & trw) of three to five minutes would be sufficient for separation. We
chose to use the maximum, five minutes, as our retention time to add an additional safety factor
to encounter for surges, foaming or other variables that could impede separation. There are two
procedures that can be carried out to determine the height of the separator, one simplified version
and one more detailed. The detailed approach was chosen to ensure the most accurate
measurements were obtained. The length between the liquid level and inlet nozzle, the length of
the vapor disengagement section, the length required to accommodate a mist eliminator and the
height of liquid collection section were all summed to give a total height of 30 ft. The volume
Cd Vtog Re
0.34 0.68763884 91.94006648
0.913913168 0.41941831 56.07790808
1.168589312 0.37091031 49.59219341
1.249952038 0.35863542 47.95099213
1.273744944 0.35527007 47.50103093
1.280533218 0.35432715 47.37495903
1.28245656 0.35406135 47.33942083
1.283000439 0.3539863 47.32938589
1.283154151 0.3539651 47.32655096
1.283197587 0.35395911 47.32574996
Iteration Table - HP
19
was then determined to be 589.049 ft3
. It is recommended that the design of a vertical separator
should have a slenderness ratio between 1.5 and 3. Using the selected dimensions from this
design produces a slenderness ratio of 6 which is not within this range. Because the slenderness
ratio was not within range, the diameter was increased by increments of 0.5 ft. until this ratio was
achieved. After this manipulation it was determined that the diameter would be 10.5 ft. which
produced a slenderness ratio of 2.86 and a volume of 2,597.704 ft3
. The diameter was able to be
increased from 5 ft. to 10.5 ft. because the calculated diameter of 5 ft. was the minimum required
diameter.
20
Figure 3. Flow chart for designing stage 1 3-phase vertical separator
CD
•Intial guess of CD=0.34 and calculate vt: 𝑣𝑡(
𝑓𝑡
𝑠
) =
4
3
𝑔(
𝑓𝑡
𝑠2)𝑑 𝑝(𝑓𝑡)
𝐶 𝐷
𝜌 𝑜(
𝑙𝑏
𝑓𝑡3)−𝜌 𝑔(
𝑙𝑏
𝑓𝑡3)
𝜌 𝑔(
𝑙𝑏
𝑓𝑡3)
•Calculate Reynolds number using the current value of vt: 𝑅 𝑒 =
𝜌 𝑜
𝑙𝑏
𝑓𝑡3
×𝑑𝑝 (𝑓𝑡)×𝑣𝑡
𝑓𝑡
𝑠
𝜇𝑜
𝑙𝑏
𝑓𝑡−𝑠
•Recalculate CD: 𝐶 𝐷 =
24
𝑅 𝑒
+
3
𝑅 𝑒
+ 0.34
•Recalculate vt
•Iterations are stopped once values of vt converge and CD is obtained
vtog
vtwo
•The terminal velocity of water in oil and oil in gas were calculated using the folowing
equations
•𝑣𝑡𝑜𝑔(
𝑓𝑡
𝑠
) =
4
3
𝑔(
𝑓𝑡
𝑠2)𝑑 𝑝(𝑓𝑡)
𝐶 𝐷
𝜌 𝑜(
𝑙𝑏
𝑓𝑡3)−𝜌 𝑔(
𝑙𝑏
𝑓𝑡3)
𝜌 𝑔(
𝑙𝑏
𝑓𝑡3)
•𝑣𝑡𝑤𝑜(
𝑓𝑡
𝑠
) =
1
18
×
𝑔
𝑓𝑡
𝑠2 𝑑 𝑝𝑤𝑜
2 𝑓𝑡2
𝜇 𝑜
𝑙𝑏
𝑓𝑡−𝑠
× 𝜌 𝑜(
𝑙𝑏
𝑓𝑡3) − 𝜌 𝑔(
𝑙𝑏
𝑓𝑡3
⬚
Dv,g
Dv,o
•The diamater of the vessel was calculated for the gas constraint and water constraint. The
larger diamter was chosen and rounded to 0.5 ft.
•𝐷𝑣𝑔 ≥
4
𝜋
𝑞 𝑔
𝑓𝑡3
𝑠
𝑣 𝑡𝑜𝑔
𝑓𝑡
𝑠
•𝐷𝑣𝑜 ≥
4
𝜋
𝑞 𝑜
𝑓𝑡3
𝑠
𝑣 𝑡𝑤𝑜
𝑓𝑡
𝑠
Hlc
•Liquid Capactity Constraint: Height of the liquid collection section is determined from liquid
retention time, diamater and oil and water flow rates
•𝐻𝑙𝑐 =
4
𝜋
𝑞 𝑜 𝑡 𝑟𝑜 𝑓𝑡3 +𝑞 𝑤 𝑡 𝑟𝑤 𝑓𝑡3
𝐷 𝑣
2 𝑓𝑡2
Ht
•Using the detailed procedure the heights from the various components were added and then
rounded to 0.25 ft. to get the total height
•Ht = Hlc + Hil + Hvd +Hme
21
3-Phase Horizontal Separator:
Table 5. Stage 1 3-phase horizontal separator screening table
The same outputs, generated by the code, which were used in the previous section, were
instrumental in the design of the 3-phase horizontal separator. New inputs that were not
necessary for the vertical design were the fraction of height and fraction of the vessels cross
sectional area occupied by each of the three phases (oil, water, gas). We chose to operate the
vessel at 50% full, due to industry standards and added safety factors to account for surges. It
was also given that the fractional amount of produced water at the surface was a volumetric
ration of 0.32 with respect to the amount of condensate produced at stock tank conditions. This
knowledge, in addition to the oil flow rate at stock tank conditions allowed us to calculate the
flow rate of water. The same equations that were used for terminal velocity in the vertical
separator were also used, including the same droplet diameter target. However, new equations
were required to calculate the diameter which satisfied the liquid and gas capacity constraints.
These diameters were calculated using a range of (L/D)eff values from 1.5 to 5.5 based on
industry practice. The liquid retention times from the previous section were used as they satisfied
22
the conditions outline by the API guide. Once the diameters for the liquid and gas constraints
were calculated, the larger diameter for each (L/D)eff value was chosen and rounded to the
nearest 0.5 ft. The rest of the steps were carried out using the horizontal separator design
screening table which outlines the process to determine the diameter and height of the vessel.
Once the screening table was filled out, values of (Lt/Dmax)actual were chosen that were greater
than 3 but less than 5. We had three values that fell within this requirement. In order to choose
the best of the three options, the volumes of all three were compared and the design was chosen
which had the smallest volume. The smallest volume most often corresponds to the cheapest
cost. The design chosen had a diameter of 7 feet, length of 23.5 feet, and a volume of 904.386
ft3
.
23
Figure 4. Flow chart for sizing stage 1 3-phase horizontal separator
vtog
vtow
•The same terminal velocities which were calculated in the previous section were used
in the following calculations
Dh,g
Dh,liq
•The minimum diamater that satisfies the gas capacity and liquid capacity considerations were
calculated
•𝐷ℎ𝑔 ≥
4
𝜋
𝑓 𝐻𝑔
𝑓 𝐴𝑔
𝑞 𝑔
𝑓𝑡3
𝑠
𝑣 𝑡𝑜𝑔
𝑓𝑡
𝑠
×
𝐿
𝐷 𝑒𝑓𝑓
•𝐷ℎ𝑙𝑖𝑞 ≥
4
𝜋
×
𝑞 𝑜 𝑡 𝑟𝑜 𝑓𝑡3 +𝑞 𝑤 𝑡 𝑟𝑤 𝑓𝑡3
𝑓 𝐴𝑙×
𝐿
𝐷 𝑒𝑓𝑓
1
3
Dh,max
•The largest diameter between the two constraints was chosen and rounded to 0.5 ft.
Leff
•𝐿𝑒𝑓𝑓 = 𝐷ℎ,𝑚𝑎𝑥 ×
𝐿
𝐷 𝑒𝑓𝑓
Lt
•Since the liquid hold up controlled the design for each instance of (L/D)eff the following was
used to calculate Lt
•𝐿 𝑡 =
4
3
× 𝐿 𝑒𝑓𝑓
•This Lt value is then rounded to the nearest 0.25 ft increment
Final Step
•The volume and (L/D)actual are then calculated and the design that falls in the slenderness ratio
of 3<(L/D)<5 and has the smalles volume is chosen
24
Conclusion:
The 3-phase separator design our group chose to implement for the first separation stage
was the horizontal separator. Comparing the two separators, the horizontal separator had a
volume that was 1,693.32 ft3
less than the vertical design. The horizontal separator will be the
best option as it satisfies all of the field requirements and will be cheaper because there is less
material needed for vessel construction. Horizontal separators can handle much higher GOR
well-streams because their design allows for higher gas velocities, this is another reason why
horizontal is more advantageous than vertical for our application. Horizontal separators are also
generally cheaper to produce than vertical separators and cheaper to ship and assemble. It is for
these various reasons that our group decided to go with the horizontal separator design.
25
STAGE 2- LOW PRESSURE SEPARATOR
Vertical
In order to size a vertical 2-phase separator, the terminal velocity for an oil droplet
through the gas must be determined. Because the drag coefficient, CD, is a function of terminal
velocity, Vt, the calculations must be iterated until the values converge. The following flow chart
outlines the process for designing a 2-phase vertical separator.
Figure 5. Flow chart for 2-phase vertical separator design
Vt
•Calculate terminal velocity and drag coefficient by iterating the following three equations
• 𝑣𝑡(
𝑓𝑡
𝑠
) =
4
3
𝑔(
𝑓𝑡
𝑠2)𝑑 𝑝(𝑓𝑡)
𝐶 𝐷
𝜌 𝑜(
𝑙𝑏
𝑓𝑡3)−𝜌 𝑔(
𝑙𝑏
𝑓𝑡3)
𝜌 𝑔(
𝑙𝑏
𝑓𝑡3)
, 𝑅𝑒 =
𝜌 𝑔(
𝑙𝑏
𝑓𝑡3)𝑑 𝑝(𝑓𝑡)𝑣 𝑡(
𝑓𝑡
𝑠
)
𝜇 𝑔(
𝑙𝑏
𝑓𝑡−𝑠
)
, 𝐶 𝐷 =
24
𝑅𝑒
+
3
𝑅𝑒
+ 0.34
•Similar to the 3-phase iteration process for Vt, CD, and Re
DV
•Calculate the vessel internal diameter based on the gas capacity
• 𝐷 𝑉 𝑓𝑡 =
4
𝜋
𝑞 𝑔(
𝑓𝑡3
𝑠
)
𝑣 𝑔(
𝑓𝑡
𝑠
)
•Vessel diameter is rounded to next 6 inch increment
Hlc
•The length of the liquid collection section is given by the following equation:
• 𝐻𝑙𝑐 =
4
𝜋
𝑞 𝑜(
𝑓𝑡3
𝑚𝑖𝑛
)𝑡 𝑅(min)
𝐷 𝑉
2
Ht
•The total length of the vertical separator is found by summing four composite heights
•Total length: 𝐻𝑡 = 𝐻𝑙𝑐 + 𝐻𝑖𝑙 + 𝐻 𝑣𝑑 + 𝐻 𝑚𝑒
•Length between liquid level and inlet nozzle: 𝐻𝑖𝑙 = max{
1
2
𝐷 𝑉(𝑓𝑡), 2𝑓𝑡}
•Length of vapor disengagement section (gravity settling): 𝐻 𝑣𝑑 = max{𝐷 𝑉(𝑓𝑡), 3𝑓𝑡}
•Length required to accommodate a mist extractor 𝐻 𝑚𝑒 = 0 no mist extractor 𝑜𝑟 𝐻 𝑚𝑒 = 1.5 𝑓𝑡 (𝑤𝑖𝑡ℎ 𝑚𝑖𝑠𝑡 𝑒𝑥𝑡𝑟𝑎𝑐𝑡𝑜𝑟)
26
The following table shows the iteration process results, where the value of CD is updated
in each row before recalculating Vt and Re.
Table 6. Stage 2 terminal velocity and drag coefficient determination
According to the final row of the iteration table, the drag coefficient will be taken as CD =
3.058886739 and the terminal velocity will be taken as Vt = 0.81461405 ft/s. These values are
used to continue with the sizing of the separator. The vessel internal diameter and vessel length
can now be calculated. Our stage 2 separator will include a mist extractor. The following table
summarizes the results of the 2-phase vertical separator sizing process.
Cd Vt Re
0.34 2.44339757 38.3034932
1.451307121 1.18264373 18.5395069
2.331275095 0.93311858 14.6278696
2.765091311 0.85679882 13.4314563
2.945427488 0.83015546 13.0137864
3.015807545 0.82041159 12.8610382
3.042634598 0.81678677 12.8042145
3.052770321 0.81542971 12.7829407
3.056587074 0.81492044 12.7749572
3.058022534 0.81472915 12.7719586
3.05856215 0.81465728 12.7708318
3.058764966 0.81463027 12.7704084
3.05884119 0.81462012 12.7702493
3.058869836 0.8146163 12.7701895
3.058880601 0.81461487 12.7701671
3.058884647 0.81461433 12.7701586
3.058886168 0.81461413 12.7701554
3.058886739 0.81461405 12.7701542
Iteration Table - LP
27
Table 7. Stage 2 2-phase vertical separator sizing
The final dimensions for a 2-phase vertical separator are as follows: DV = 5.5 ft, Ht =
11.75 ft, and Volume = 279.16 ft3
.
Horizontal
For a 2-phase horizontal separator, the terminal velocity for an oil droplet moving
through the separator is assumed to be the same as that moving through a vertical separator.
Therefore, the Vt of 0.81461405 ft/s that was found above will apply to this design as well. For
the case of designing a horizontal vessel, both the gas capacity constraint and liquid capacity
constraint must be satisfied. Therefore, the vessel diameter is calculated using both capacities
and the largest is selected. The dimensions will be calculated for a range of (L/D)eff between 1.5
Cd 3.05888674
Vtog (ft/s) 0.81461405
Re 12.7701542
qg (ft
3
/s) 16.7038651
Dv (ft) 5.10960816
Dv, actual (ft) 5.5
qo (ft
3
/min) 43.2022566
tR (min) 1
Hlc(ft) 1.81840732
Hil (ft) 2.75
Hvd (ft) 5.5
Hme (ft) 1.5
Ht (ft) 11.5684073
Ht, actual (ft) 11.75
L/D 2.13636364
Volume (ft3
) 279.15996
2-Phase Vertical Separator
28
and 5.5. The following flow chart outlines the process for designing a 2-phase horizontal
separator.
Figure 6. Flow chart for designing stage 2 2-phase horizontal separator
The following screening table outlines the process of optimizing the size of the horizontal
2-phase separator. (L/D)eff was set over a range between 1.5 and 5.5. Dhg and Dhl were calculated
for each value of (L/D)eff to find which fluid constrains the design. The design was narrowed
down to the separator dimensions with an actual L/D between 3 and 4. From these two sets of
dimensions, the separator with the smallest volume was selected as the optimal horizontal
Dh,g
•Dh,g is the vessel diameter based on the gas capacity constraint
• 𝐷ℎ,𝑔 =
4
𝜋
𝑓 𝐻𝑔
𝑓 𝐴𝑔
𝑞 𝑔
𝑣 𝑡
𝐿
𝐷 𝑒𝑓𝑓
•Vt is the same value used in vertical separator design
Dh,l
•Dh,l is the vessel diameter based on the liquid capacity constraint
• 𝐷ℎ,𝑙 =
4
𝜋
𝑡 𝑅𝑙 𝑞𝑙
𝑓 𝐴𝑙
𝐿
𝐷 𝑒𝑓𝑓
3
•tRl for our design is 1 minute because the API is larger than 35°
Dh,max
•The maximum of Dh,g and Dh,l is selected to determine if the vessel is gas constrained or liquid constrained
•Dh,max is rounded to the next 6 inch increment to comply with manufacturing specifications
Lt
•First, the effective vessel length is calculated by: Leff = Dh,max x (L/D)eff
•Since all of the cases are liquid controlled, actual vessel length is calculated by: Lt = (4/3) x Leff
•Lt is rounded to nearest 3 inch (0.25 ft) increment to comply with manufacturing specifications
Vol.
•The dimensions are narrowed down to those with 3 < (L/D)actual < 4
•Separator volume is calculated by the following equation: 𝑉𝑜𝑙𝑢𝑚𝑒 𝑓𝑡3
=
𝜋𝐷ℎ,𝑚𝑎𝑥
2
𝐿 𝑡
4
•The separator with the smallest volume and 3 < (L/D)actual < 4 is selected
29
separator design. The final horizontal separator is highlighted and has dimensions of Dh = 3.5 ft
and Lt = 14 ft.
Table 8. Stage 2 2-phase horizontal separator screening table
Conclusion
Now that the sizing process has been completed for both a vertical and horizontal design,
the final separator design should be selected based on economics. In order to minimize the cost
of implementing the 2-phase separator in the surface production facility, the separator with the
smallest volume will be selected. The vertical separator has a volume of 279.16 ft3
and the
horizontal separator has a volume of 134.70 ft3
. Therefore, the selected design for the second
stage of the separation train will be a 2-phase horizontal separator with a diameter of 3.5 ft and
length of 14 ft.
(L/D)eff Dhg (ft) Dhl (ft)
Dh
max (ft)
Leff (ft) Lt (ft)
Lt
Actual (ft)
Volume
(ft
3
)
L/D
Actual
1.5 4.172 4.186 4.5 6.75 9.000 9 143.139 2
2 3.613 3.803 4 8 10.667 10.75 135.088 2.6875
2.5 3.232 3.530 4 10 13.333 13.5 169.646 3.375
3 2.950 3.322 3.5 10.5 14.000 14 134.696 4
3.5 2.731 3.156 3.5 12.25 16.333 16.5 158.749 4.714286
4 2.555 3.019 3.5 14 18.667 18.75 180.396 5.357143
4.5 2.409 2.902 3 13.5 18.000 18 127.235 6
5 2.285 2.802 3 15 20.000 20 141.372 6.666667
5.5 2.179 2.715 3 16.5 22.000 22 155.509 7.333333
30
Section 6
Sizing of Dehydrator System
Glycol Tower Design
Given Information:
P=834.7 psi qgsc= 44.834 MMSCFD Rc=3 galTEG/lbH2O
Wout=4.0 lbH2O/MMSCF T=600
F
Step 1: Calculate Water Removal Target and Required Glycol Rate
From Fig 20-4:
Win=21 lbH2O/MMSCF Dew Point = 600
F
Wout=4.0 lbH2O/MMSCF Dew Point = 150
F
𝑊𝑎𝑡𝑒𝑟 𝑇𝑎𝑟𝑔𝑒𝑡 = (W𝑖𝑛 − W𝑜𝑢𝑡) ∗ 𝑞 𝑔
𝑊𝑎𝑡𝑒𝑟 𝑇𝑎𝑟𝑔𝑒𝑡 = (21 𝑙𝑏 𝐻2 𝑂/ 𝑀𝑀𝑆𝐶𝐹 − 4.0 𝑙𝑏 𝐻2 𝑂/ 𝑀𝑀𝑆𝐶𝐹) ∗ 44.834 𝑀𝑀𝑆𝐶𝐹𝐷
𝑊𝑎𝑡𝑒𝑟 𝑇𝑎𝑟𝑔𝑒𝑡 = 762.178 𝑙𝑏 𝐻2 𝑂/𝐷𝑎𝑦
𝑞 𝑇𝐸𝐺 = 𝑊𝑎𝑡𝑒𝑟 𝑇𝑎𝑟𝑔𝑒𝑡 ∗ R 𝑐 = 762.178
𝑙𝑏𝐻2 𝑂
𝐷𝑎𝑦
∗ 3.0
𝑔𝑎𝑙𝑇𝐸𝐺
𝑙𝑏𝐻2 𝑂
= 2286.53
𝑔𝑎𝑙𝑇𝐸𝐺
𝐷𝑎𝑦
Step 2: Calculate all Concentrations Entering and Leaving Contactor
From Fig 20-59
𝑋𝑖𝑛 = 97.5 𝑤𝑡% (Including 150
F safety factor)
From Fig 20-4:
Win=21 lbH2O/MMSCF Dew Point = 600
F
31
Wout=4.0 lbH2O/MMSCF Dew Point = 150
F
From Fig 20-34
ρ 𝑇𝐸𝐺 = 9.39
𝑙𝑏𝑇𝐸𝐺
𝑔𝑎𝑙
𝑚 𝑇𝐸𝐺 = 𝑞 𝑇𝐸𝐺 ∗ ρ 𝑇𝐸𝐺 = 2286.53
𝑔𝑎𝑙𝑇𝐸𝐺
𝐷𝑎𝑦
∗ 9.39
𝑙𝑏𝑇𝐸𝐺
𝑔𝑎𝑙
= 21470.5167
𝑙𝑏𝑇𝐸𝐺
𝐷𝑎𝑦
X 𝑜𝑢𝑡 = X 𝑖𝑛 −
𝑊𝑎𝑡𝑒𝑟 𝑇𝑎𝑟𝑔𝑒𝑡
𝑚 𝑇𝐸𝐺
= 0.975 ∗
2286.53
𝑔𝑎𝑙𝑇𝐸𝐺
𝐷𝑎𝑦
21470.5167
𝑙𝑏𝑇𝐸𝐺
𝐷𝑎𝑦
= 93.95 𝑤𝑡%
Step 3: Estimate Number of Stages
From McCabe Thiele plot: Since the operational line crosses the equilibrium line, we can
never reach the required water content leaving the contactor; therefore, N=infinity, and we must
reevaluate our parameters.
32
Figure 7. McCable-Thiele plot for glycol dehydration stage determination: first attempt
Second Attempt
We can increase the wt% lean glycol to improve our results
Given Information:
P=834.7 psi qgsc= 44.834 MMSCFD Rc=3 galTEG/lbH2O
Wout=4.0 lbH2O/MMSCF T=600
F
𝑋𝑖𝑛 = 99.0 𝑤𝑡%
Step 1: Calculate Water Removal Target and Required Glycol Rate
𝑊𝑎𝑡𝑒𝑟 𝑇𝑎𝑟𝑔𝑒𝑡 = (W𝑖𝑛 − W𝑜𝑢𝑡) ∗ 𝑞 𝑔
𝑊𝑎𝑡𝑒𝑟 𝑇𝑎𝑟𝑔𝑒𝑡 = (21 𝑙𝑏 𝐻2 𝑂/ 𝑀𝑀𝑆𝐶𝐹 − 4.0 𝑙𝑏 𝐻2 𝑂/ 𝑀𝑀𝑆𝐶𝐹) ∗ 44.834 𝑀𝑀𝑆𝐶𝐹𝐷
33
𝑊𝑎𝑡𝑒𝑟 𝑇𝑎𝑟𝑔𝑒𝑡 = 762.178 𝑙𝑏 𝐻2 𝑂/𝐷𝑎𝑦
𝑞 𝑇𝐸𝐺 = 𝑊𝑎𝑡𝑒𝑟 𝑇𝑎𝑟𝑔𝑒𝑡 ∗ R 𝑐 = 762.178
𝑙𝑏𝐻2 𝑂
𝐷𝑎𝑦
∗ 3.0
𝑔𝑎𝑙𝑇𝐸𝐺
𝑙𝑏𝐻2 𝑂
= 2286.53
𝑔𝑎𝑙𝑇𝐸𝐺
𝐷𝑎𝑦
Step 2: Calculate all Concentrations Entering and Leaving Contactor
From Fig 20-4:
Win=21 lbH2O/MMSCF Dew Point = 600
F
Wout=4.0 lbH2O/MMSCF Dew Point = 150
F
From Fig 20-34
ρ 𝑇𝐸𝐺 = 9.39
𝑙𝑏𝑇𝐸𝐺
𝑔𝑎𝑙
𝑚 𝑇𝐸𝐺 = 𝑞 𝑇𝐸𝐺 ∗ ρ 𝑇𝐸𝐺 = 2286.53
𝑔𝑎𝑙𝑇𝐸𝐺
𝐷𝑎𝑦
∗ 9.39
𝑙𝑏𝑇𝐸𝐺
𝑔𝑎𝑙
= 21470.5167
𝑙𝑏𝑇𝐸𝐺
𝐷𝑎𝑦
X 𝑜𝑢𝑡 = X 𝑖𝑛 −
𝑊𝑎𝑡𝑒𝑟 𝑇𝑎𝑟𝑔𝑒𝑡
𝑚 𝑇𝐸𝐺
= 0.990 ∗
2286.53
𝑔𝑎𝑙𝑇𝐸𝐺
𝐷𝑎𝑦
21470.5167
𝑙𝑏𝑇𝐸𝐺
𝐷𝑎𝑦
= 95.45 𝑤𝑡%
From McCabe Thiele Plot: N=3
We can now see a more appropriate depiction of the operational line. Using a higher wt% of lean
glycol has improved our results by decreasing the number of required stages, and thereby
decreasing the necessary height
34
Figure 8. McCabe-Thiele plot for glycol dehydration stage determination: second attempt
Third Attempt
We can also improve results by operating the contactor tower at a higher temperature of
1000
F
Given Information:
P=834.7 psi qgsc= 44.834 MMSCFD Rc=3 galTEG/lbH2O
Wout=4.0 lbH2O/MMSCF T=1000
F
Step 1: Calculate Water Removal Target and Required Glycol Rate
35
From Fig 20-4:
Win=65 lbH2O/MMSCF Dew Point = 1000
F
Wout=4.0 lbH2O/MMSCF Dew Point = 150
F
𝑊𝑎𝑡𝑒𝑟 𝑇𝑎𝑟𝑔𝑒𝑡 = (W𝑖𝑛 − W𝑜𝑢𝑡) ∗ 𝑞 𝑔
𝑊𝑎𝑡𝑒𝑟 𝑇𝑎𝑟𝑔𝑒𝑡 = (65 𝑙𝑏 𝐻2 𝑂/ 𝑀𝑀𝑆𝐶𝐹 − 4.0 𝑙𝑏 𝐻2 𝑂/ 𝑀𝑀𝑆𝐶𝐹) ∗ 44.834 𝑀𝑀𝑆𝐶𝐹𝐷
𝑊𝑎𝑡𝑒𝑟 𝑇𝑎𝑟𝑔𝑒𝑡 = 2734.8741 𝑙𝑏 𝐻2 𝑂/𝐷𝑎𝑦
From Fig 20-59
𝑋𝑖𝑛 = 99.3 𝑤𝑡% (Including 150
F safety factor)
𝑞 𝑇𝐸𝐺 = 𝑊𝑎𝑡𝑒𝑟 𝑇𝑎𝑟𝑔𝑒𝑡 ∗ R 𝑐 = 2734.8741
𝑙𝑏𝐻2 𝑂
𝐷𝑎𝑦
∗ 3.0
𝑔𝑎𝑙𝑇𝐸𝐺
𝑙𝑏𝐻2 𝑂
= 8204.662
𝑔𝑎𝑙𝑇𝐸𝐺
𝐷𝑎𝑦
Step 2: Calculate all Concentrations Entering and Leaving Contactor
From Fig 20-4:
Win=65 lbH2O/MMSCF Dew Point = 1000
F
Wout=4.0 lbH2O/MMSCF Dew Point = 150
F
From Fig 20-59
𝑋𝑖𝑛 = 99.3 𝑤𝑡% (Including 150
F safety factor)
From Fig 20-34
ρ 𝑇𝐸𝐺 = 9.26
𝑙𝑏𝑇𝐸𝐺
𝑔𝑎𝑙
= 69.26 𝑙𝑏/𝑓𝑡3
𝑚 𝑇𝐸𝐺 = 𝑞 𝑇𝐸𝐺 ∗ ρ 𝑇𝐸𝐺 = 8204.662
𝑔𝑎𝑙𝑇𝐸𝐺
𝐷𝑎𝑦
∗ 9.26
𝑙𝑏𝑇𝐸𝐺
𝑔𝑎𝑙
= 75974.80
𝑙𝑏𝑇𝐸𝐺
𝐷𝑎𝑦
36
X 𝑜𝑢𝑡 = X 𝑖𝑛 −
𝑊𝑎𝑡𝑒𝑟 𝑇𝑎𝑟𝑔𝑒𝑡
𝑚 𝑇𝐸𝐺
= 0.993 ∗
2734.8741
𝑔𝑎𝑙𝑇𝐸𝐺
𝐷𝑎𝑦
75974.80
𝑙𝑏𝑇𝐸𝐺
𝐷𝑎𝑦
= 95.7 𝑤𝑡%
From McCabe Thiele Plot: N=2
This is our best result of the three options since it provides us with the smallest contactor
height which will save on cost.
Figure 9. McCabe-Thiele plot for glycol dehydration stage determination: third attempt
Step 4: Size the Tower
We will use structured packing since packing height it typically shorter than that of
bubble cap trays
37
Height Calculation:
𝐻𝑡 = 5
𝑓𝑡
𝑠𝑡𝑎𝑔𝑒
∗ 𝑁 + 8 𝑓𝑡 = 5
𝑓𝑡
𝑠𝑡𝑎𝑔𝑒
∗ 2 𝑠𝑡𝑎𝑔𝑒𝑠 + 8 𝑓𝑡 = 18 𝑓𝑡
Diameter Calculation:
𝑑 = √
4 ∗ 𝑞 𝑔
𝜋 ∗ 𝑣𝑔
𝑣𝑔 = 𝐾𝑠𝑏 ∗ √
𝜌𝑙 − 𝜌 𝑔
𝜌 𝑔
𝜌 𝑔 =
𝑀𝑊𝑔 ∗ 𝑃
𝑍 𝑅 𝑇
=
20.7715
𝑙𝑏𝑚
𝑙𝑏𝑚𝑜𝑙
∗ 834.7 𝑝𝑠𝑖𝑎
0.7947 ∗ 10.73
𝑝𝑠𝑖𝑎 𝑓𝑡3
𝑙𝑏𝑚𝑜𝑙 𝑅
∗ 560 𝑅
= 3.631
𝑙𝑏
𝑓𝑡3
𝑣𝑔 = 0.35
𝑓𝑡
𝑠
∗ √
69.26
𝑙𝑏
𝑓𝑡3 − 3.631
𝑙𝑏
𝑓𝑡3
3.631
𝑙𝑏
𝑓𝑡3
= 1.488
𝑓𝑡
𝑠
𝑞 𝑔 = 𝑞 𝑔𝑠𝑐 ∗
𝑍 𝑇 𝑃𝑠𝑐
𝑃 𝑇𝑠𝑐
= 44.834 𝑀𝑀𝑆𝐶𝐹𝐷 ∗
0.7947 ∗ 560 𝑅 ∗ 14.7 𝑝𝑠𝑖𝑎
834.7 𝑝𝑠𝑖𝑎 ∗ 520 𝑅
= 7.8211
𝑓𝑡
𝑠
𝑑 = √
4 ∗ 𝑞 𝑔
𝜋 ∗ 𝑣𝑔
= √
4 ∗ 7.8211
𝑓𝑡
𝑠
𝜋 ∗ 1.488
𝑓𝑡
𝑠
= 2.5869 𝑓𝑡 → 3.0 𝑓𝑡
The contactor tower will have a height of 18 ft and a diameter of 3.0 ft
38
Inhibitor Calculation
*If the glycol contactor tower should go offline, the mass flowrate of MEG and MeOH
necessary for hydrate inhibition is calculated as follows:
Given Information:
P=834.7 psia
𝑆. 𝐺. =
𝑀𝑊𝑔
𝑀𝑊𝑔
=
20.7715
𝑙𝑏𝑚
𝑙𝑏𝑚𝑜𝑙
29
𝑙𝑏𝑚
𝑙𝑏𝑚𝑜𝑙
= 0.71625
From Fig 20-4
@ 1000
F Win= 65 lbH2O/MMSCF
@ 600
F Wout= 21 lbH2O/MMSCF
Step 1: Calculate Hydrate Formation Temperature at Highest System Pressure
From Fig 20-19
Th=63.50
F
Step 2: Determine Lowest Temperature of the System
Since the entire facility is known to operate at 600
F:
Lowest T= 600
F
Step 3: Calculate Required Hydrate Temperature Depression
𝑑 = 𝑇ℎ − 𝑇 = 63.5 − 60 = 3.50
𝐹
Step 4: Calculate Total Mass of Free Water Expected Within the System
𝑚 𝑤 = 𝑞 𝑔𝑠𝑐(W𝑖𝑛 − W𝑜𝑢𝑡) = 44.834 𝑀𝑀𝑆𝐶𝐹𝐷 ∗ (65
𝑙𝑏𝐻2 𝑂
𝑀𝑀𝑆𝐶𝐹
− 21
𝑙𝑏𝐻2 𝑂
𝑀𝑀𝑆𝐶𝐹
)
39
𝑚 𝑤 = 1972.696
𝑙𝑏
𝐷𝑎𝑦
Step 5: Calculate Required Inhibitor Concentration using Hammerschmidt
Equation
Calculations for MEG:
𝑥𝑖 =
𝑑 ∗ 𝑀𝑊
𝑑 ∗ 𝑀𝑊 + 2335
=
3.50
𝐹 ∗ 64
𝑙𝑏𝑚
𝑙𝑏𝑚𝑜𝑙
3.50 𝐹 ∗ 64
𝑙𝑏𝑚
𝑙𝑏𝑚𝑜𝑙
+ 2335
= 8.5𝑤𝑡%
Step 6: Calculate Mass of Inhibitor Required Based on Available Inhibitor Solution
Assume 75 wt% MEG available
𝑚𝐼 =
𝑋 𝑅 ∗ 𝑚 𝑤
𝑋 𝐴𝑉 − 𝑋 𝑅
=
8.5𝑤𝑡% ∗ 1972.696
𝑙𝑏
𝐷𝑎𝑦
75𝑤𝑡% − 8.5𝑤𝑡%
= 272.649
𝑙𝑏
𝐷𝑎𝑦
𝑜𝑓 75% 𝑀𝐸𝐺
Calculations for MeOH:
𝑥𝑖 =
𝑑 ∗ 𝑀𝑊
𝑑 ∗ 𝑀𝑊 + 2335
=
3.50
𝐹 ∗ 32
𝑙𝑏𝑚
𝑙𝑏𝑚𝑜𝑙
3.50 𝐹 ∗ 32
𝑙𝑏𝑚
𝑙𝑏𝑚𝑜𝑙
+ 2335
= 4.58𝑤𝑡%
Step 6: Calculate Mass of Inhibitor Required Based on Available Inhibitor Solution
𝑚𝐼 =
𝑋 𝑅 ∗ 𝑚 𝑤
𝑋 𝐴𝑉 − 𝑋 𝑅
=
0.0458 ∗ 1972.696
𝑙𝑏
𝐷𝑎𝑦
1 − .0458
= 94.686
𝑙𝑏
𝐷𝑎𝑦
𝑜𝑓 𝑝𝑢𝑟𝑒 𝑀𝑒𝑂𝐻
Additional Step 7: Account for Losses
40
From Fig 20-65
@600
F & 834.7 psia 1.95 lbMeOH/wt%/MMSCF
1.95 lbMeOH/wt%/MMSCF ∗ 44.834MMSCF ∗ 4.58wt% = 400.4
lb
𝐷𝑎𝑦
Total MeOH = 400.4
lb
𝐷𝑎𝑦
+ 94.686
𝑙𝑏
𝐷𝑎𝑦
= 495.098
𝑙𝑏
𝐷𝑎𝑦
𝑀𝑒𝑂𝐻
80.87% of MeOH is lost to the gas phase
41
Appendix A
MATLAB Code
<Final_Project.m>
% PNG 480: Design of a Surface Production Facility
% Group Members:
% Chad DiStanislao
% Christopher Efstathion
% David Hughes
% Michael Silver
% Last Updated: 4/21/15
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Step 1: Input Given Data & Import Mixfile Data
format long
% Import thermodynamic data matrix
mixfile = dlmread('mixfile_final.txt');
% Import interaction parameters
Delta = dlmread('Delta1.txt');
% Temperature of reservoir (Rankine)
TRes = 375+460;
% Temperature of facility (Rankine)
TFacility = 60+460;
% Pressure of reservoir (psi)
pres = 7500;
% Pressure 1 (psi)
p1 = 820+14.7;
% Pressure 2 (psi)
p2 = 60;
% Pressure 3 (psi)
p3 = 14.7;
% Gas Constant (ft^3 psi/R lb-mol)
R = 10.73;
% Create composition vector (mol fraction)
c = mixfile(:,1);
% Create molecular weight vector (lb/lb-mol)
MW = mixfile(:,2);
% Create critical temperature vector (degrees F)
TCF = mixfile(:,3);
% Create critical pressure vector (psi)
PC = mixfile(:,4);
% Create critical Z factor vector (dimensionless)
ZC = mixfile(:,5);
% Create acentric factor vector (dimensionless)
42
Acentric = mixfile(:,6);
% Create Omega A factor vector (dimensionless)
OmegaA = mixfile(:,7);
% Create Omega B factor vector (dimensionless)
OmegaB = mixfile(:,8);
% Number of components (dimensionless)
n=length(c);
% Convert critical temperature vector to absolute (Rankine)
TC = TCF + 460;
% Reservoir Flow Rate (RCF/d/well)
qres = 11750;
% Number of Wells
nwell = 18;
% Fractional Amount of Water (qwater/qST)
fw = 0.32;
% Water Specification (lbH2O/MMSCF)
Wout = 4.0;
% Dehy Pressure (psi)
Pdehy = p1;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Step 2: Z-Factor Calculation of Reservoir Fluid
% Check reservoir fluid phase
% Get volatility ratios
splitFactor_Res = splitFunction_Final(c, pres, TRes, TC, PC, ZC, Acentric,
OmegaA, OmegaB, Delta);
K = splitFactor_Res(:,5);
% Evaluate Rachford Rice, alphaG = 0
alphaG=0;
gAlphaG = 0;
for i = (1:n)
gAlphaG = gAlphaG + (c(i)*(K(i)-1))/(1+alphaG*(K(i)-1));
end
gAlphaG_0 = gAlphaG
% Evaluate Rachford Rice, alphaG = 1
alphaG=1;
gAlphaG = 0;
for i = (1:n)
gAlphaG = gAlphaG + (c(i)*(K(i)-1))/(1+alphaG*(K(i)-1));
end
gAlphaG_1 = gAlphaG
% ZOutput = [maxZ, minZ, A, B, aam, bm];
ZOutputRes = ZFactor_Final(c, pres, TRes, Delta, TC, PC, ZC, Acentric,
OmegaA, OmegaB);
% Output gas Z factor
ZRes = ZOutputRes(1)
43
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Step 3: Calculate Molar Flow Rate to Separation Train
% Calculate Total Flow Rate at Manifold (RCF/D)
qtotal = qres * nwell;
% Calculate Molar Flow Rate at Manifold (lb-mol/d)
nfeed = (pres * qtotal) / (ZRes * R * TRes)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Step 4: Calculate Split Factor for First Separator
% splitFunction_Final(composition, pressure, temperature, TCritical,
PCritical, ZCritical, AcentricFactor, OA, OB, interaction)
% splitFactor = [alphaG, alphaL, cgas, cliq];
splitFactor_1 = splitFunction_Final(c, p1, TFacility, TC, PC, ZC, Acentric,
OmegaA, OmegaB, Delta);
% Output alphaG
alphaG_1 = splitFactor_1(1,1);
% Output alphaL
alphaL_1 = splitFactor_1(1,2);
% Output gas composition
cgas_1 = splitFactor_1(:,3);
% Output liquid composition
cliq_1 = splitFactor_1(:,4);
% Calculate gas Z factor
ZOutputGas_1 = ZFactor_Final(cgas_1, p1, TFacility, Delta, TC, PC, ZC,
Acentric, OmegaA, OmegaB);
ZGas_1 = ZOutputGas_1(1);
% Calculate liquid Z factor
ZOutputLiq_1 = ZFactor_Final(cliq_1, p1, TFacility, Delta, TC, PC, ZC,
Acentric, OmegaA, OmegaB);
ZLiq_1 = ZOutputLiq_1(2);
% Calculate gas molecular weight (lb/lb-mol)
MWGas_1 = sum(cgas_1.*MW);
% Calculate liquid molecular weight (lb/lb-mol)
MWLiq_1 = sum(cliq_1.*MW);
% Calculate gas density (lb/ft3)
rhoG_1 = p1 * MWGas_1/(ZGas_1 * R * TFacility);
% Calculate liquid density (lb/ft3)
rhoL_1 = p1 * MWLiq_1/(ZLiq_1 * R * TFacility);
% Calculate gas flowrate (lb-mol/d)
nG_1 = nfeed * alphaG_1;
% Calculate liquid flowrate (lb-mol/d)
nL_1 = nfeed * alphaL_1;
% Calculate gas flowrate (ft3/sec)
qG_1 = nG_1 * MWGas_1 / (rhoG_1 * 24 * 3600);
% Calculate liquid flowrate (ft3/sec)
qL_1 = nL_1 * MWLiq_1 / (rhoL_1 * 24 * 3600);
44
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Step 5: Calculate Split Factor for Second Separator
% splitFunction_Final(composition, pressure, temperature, TCritical,
PCritical, ZCritical, AcentricFactor, OA, OB, interaction)
% splitFactor = [alphaG, alphaL, cgas, cliq];
splitFactor_2 = splitFunction_Final(cliq_1, p2, TFacility, TC, PC, ZC,
Acentric, OmegaA, OmegaB, Delta);
% Output alphaG
alphaG_2 = splitFactor_2(1,1);
% Output alphaL
alphaL_2 = splitFactor_2(1,2);
% Output gas composition
cgas_2 = splitFactor_2(:,3);
% Output liquid composition
cliq_2 = splitFactor_2(:,4);
% Calculate gas Z factor
ZOutputGas_2 = ZFactor_Final(cgas_2, p2, TFacility, Delta, TC, PC, ZC,
Acentric, OmegaA, OmegaB);
ZGas_2 = ZOutputGas_2(1);
% Calculate liquid Z factor
ZOutputLiq_2 = ZFactor_Final(cliq_2, p2, TFacility, Delta, TC, PC, ZC,
Acentric, OmegaA, OmegaB);
ZLiq_2 = ZOutputLiq_2(2);
% Calculate gas molecular weight (lb/lb-mol)
MWGas_2 = sum(cgas_2.*MW);
% Calculate liquid molecular weight (lb/lb-mol)
MWLiq_2 = sum(cliq_2.*MW);
% Calculate gas density (lb/ft3)
rhoG_2 = p2 * MWGas_2/(ZGas_2 * R * TFacility);
% Calculate liquid density (lb/ft3)
rhoL_2 = p2 * MWLiq_2/(ZLiq_2 * R * TFacility);
% Calculate gas flowrate (lb-mol/d)
nG_2 = nL_1 * alphaG_2;
% Calculate liquid flowrate (lb-mol/d)
nL_2 = nL_1 * alphaL_2;
% Calculate gas flowrate (ft3/sec)
qG_2 = nG_2 * MWGas_2 / (rhoG_2 * 24 * 3600);
% Calculate liquid flowrate (ft3/sec)
qL_2 = nL_2 * MWLiq_2 / (rhoL_2 * 24 * 3600);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Step 6: Calculate Split Factor for Stock Tank
% splitFunction_Final(composition, pressure, temperature, TCritical,
PCritical, ZCritical, AcentricFactor, OA, OB, interaction)
% splitFactor = [alphaG, alphaL, cgas, cliq];
45
splitFactor_3 = splitFunction_Final(cliq_2, p3, TFacility, TC, PC, ZC,
Acentric, OmegaA, OmegaB, Delta);
% Output alphaG
alphaG_3 = splitFactor_3(1,1);
% Output alphaL
alphaL_3 = splitFactor_3(1,2);
% Output gas composition
cgas_3 = splitFactor_3(:,3);
% Output liquid composition
cliq_3 = splitFactor_3(:,4);
% Calculate gas Z factor
ZOutputGas_3 = ZFactor_Final(cgas_3, p3, TFacility, Delta, TC, PC, ZC,
Acentric, OmegaA, OmegaB);
ZGas_3 = ZOutputGas_3(1);
% Calculate liquid Z factor
ZOutputLiq_3 = ZFactor_Final(cliq_3, p3, TFacility, Delta, TC, PC, ZC,
Acentric, OmegaA, OmegaB);
ZLiq_3 = ZOutputLiq_3(2);
% Calculate gas molecular weight (lb/lb-mol)
MWGas_3 = sum(cgas_3.*MW);
% Calculate liquid molecular weight (lb/lb-mol)
MWLiq_3 = sum(cliq_3.*MW);
% Calculate gas density (lb/ft3)
rhoG_3 = p3 * MWGas_3/(ZGas_3 * R * TFacility);
% Calculate liquid density (lb/ft3)
rhoL_3 = p3 * MWLiq_3/(ZLiq_3 * R * TFacility);
% Calculate gas flowrate (lb-mol/d)
nG_3 = nL_2 * alphaG_3;
% Calculate liquid flowrate (lb-mol/d)
nL_3 = nL_2 * alphaL_3;
% Calculate gas flowrate (ft3/sec)
qG_3 = nG_3 * MWGas_3 / (rhoG_3 * 24 * 3600);
% Calculate liquid flowrate (ft3/sec)
qL_3 = nL_3 * MWLiq_3 / (rhoL_3 * 24 * 3600);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Step 7: Calculate End Train Parameters
% ZOutput = [maxZ, minZ, A, B, aam, bm];
ZOutputST = ZFactor_Final(cliq_3, p3, TFacility, Delta, TC, PC, ZC, Acentric,
OmegaA, OmegaB);
ZST = ZOutputST(2);
% Calculate liquid molecular weight (lb/lb-mol)
MW_ST=sum(cliq_3.*MW);
% Calculate liquid density (lb/ft3)
Liq_density = MW_ST*14.7/(ZST*R*TFacility);
% Calculate liquid specific gravity (dimensionless)
SG_liq = Liq_density/62.4
% Calculate API gravity
API = (141.5/SG_liq)-131.5
% Calculate liquid flowrate (lb-mol/d)
nlfeed = ((1-alphaG_1)*(1-alphaG_2)*(1-alphaG_3))*nfeed
46
% Calculate gas flowrate (SCF/d)
ngfeed = (nfeed-nlfeed)*379.4
% Calculate total split (dimensionless)
total_split = (nfeed-nlfeed)/nfeed
% Calculate liquid flowrate (bbl/day)
nlfeed_bbl = (nlfeed*MW_ST)/(Liq_density*5.615)
% Calculate GOR (SCF/bbl)
GOR = ngfeed/nlfeed_bbl
% Calculate glycol tower gas composition (mole fractions)
cgas_glycol = (cgas_1.*nG_1 + cgas_2.*nG_2 + cgas_3.*nG_3)/(nG_1 + nG_2 +
nG_3)
% Calculate glycol tower gas molecular weight (lb/lb-mol)
MWGas_glycol=sum(cgas_glycol.*MW)
% Calculate glycol tower gas Z factor (dimensionless)
ZOutputGas_glycol = ZFactor_Final(cgas_glycol, p1, TFacility, Delta, TC, PC,
ZC, Acentric, OmegaA, OmegaB);
ZGas_glycol = ZOutputGas_glycol(1)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Step 8: Output Answers
AnswerFile = zeros(13,3);
% Pressures (psia)
AnswerFile(1,1) = p1;
AnswerFile(1,2) = p2;
AnswerFile(1,3) = p3;
% Alpha G (dimensionless)
AnswerFile(2,1) = alphaG_1;
AnswerFile(2,2) = alphaG_2;
AnswerFile(2,3) = alphaG_3;
% Alpha L (dimensionless)
AnswerFile(3,1) = alphaL_1;
AnswerFile(3,2) = alphaL_2;
AnswerFile(3,3) = alphaL_3;
% Gas Flowrates (lb-mol/d)
AnswerFile(4,1) = nG_1;
AnswerFile(4,2) = nG_2;
AnswerFile(4,3) = nG_3;
% Liquid Flowrates (lb-mol/d)
AnswerFile(5,1) = nL_1;
AnswerFile(5,2) = nL_2;
AnswerFile(5,3) = nL_3;
% Gas Flowrates (ft3/s)
AnswerFile(6,1) = qG_1;
AnswerFile(6,2) = qG_2;
AnswerFile(6,3) = qG_3;
% Liquid Flowrates (ft3/s)
AnswerFile(7,1) = qL_1;
AnswerFile(7,2) = qL_2;
AnswerFile(7,3) = qL_3;
% Gas Z Factors (dimensionless)
AnswerFile(8,1) = ZGas_1;
47
AnswerFile(8,2) = ZGas_2;
AnswerFile(8,3) = ZGas_3;
% Liquid Z Factors (dimensionless)
AnswerFile(9,1) = ZLiq_1;
AnswerFile(9,2) = ZLiq_2;
AnswerFile(9,3) = ZLiq_3;
% Gas Molecular Weight (lb/lb-mol)
AnswerFile(10,1) = MWGas_1;
AnswerFile(10,2) = MWGas_2;
AnswerFile(10,3) = MWGas_3;
% Liquid Molecular Weight (lb/lb-mol)
AnswerFile(11,1) = MWLiq_1;
AnswerFile(11,2) = MWLiq_2;
AnswerFile(11,3) = MWLiq_3;
% Gas Density (lb/ft3)
AnswerFile(12,1) = rhoG_1;
AnswerFile(12,2) = rhoG_2;
AnswerFile(12,3) = rhoG_3;
% Liquid Density (lb/ft3)
AnswerFile(13,1) = rhoL_1;
AnswerFile(13,2) = rhoL_2;
AnswerFile(13,3) = rhoL_3;
48
<ZFactor_Final.m>
function ZOutput = ZFactor_Final(composition, pressure, temperature,
interaction, TCritical, PCritical, ZCritical, AcentricFactor, OA, OB)
% Module A: Compositional Z-Factor Calculations
%Step1
format long
% Import interaction parameters
Delta = interaction;
% Temperature of interest (degrees F)
TAbs = temperature;
% Pressures of interest (psi)
p = pressure;
% Gas Constant (ft^3 psi/R lb-mol)
R = 10.73;
% Create composition vector (mol fraction)
c = composition;
% Create critical temperature vector (degrees F)
TC = TCritical;
% Create critical pressure vector (psi)
PC = PCritical;
% Create critical Z factor vector (dimensionless)
ZC = ZCritical;
% Create acentric factor vector (dimensionless)
Acentric = AcentricFactor;
% Create Omega A factor vector (dimensionless)
OmegaA = OA;
% Create Omega B factor vector (dimensionless)
OmegaB = OB;
% Number of components (dimensionless)
n=length(c);
% Create reduced temperature vector (dimensionless)
TReduced = TAbs./TC;
% Calculate Pitzer's acentric factor (dimensionless)
PitzerFunction = 0.48+1.574*Acentric-0.176*Acentric.^2;
aAlpha = zeros(n, 1);
b = zeros(n, 1);
for i = (1:n)
% Attraction parameter for ith component (dimensionless)
aAlpha(i, 1) = (OmegaA(i)*(R^2)*(TC(i)^2)/PC(i))*(1+PitzerFunction(i)*(1-
(TReduced(i)^0.5)))^2;
% Co-volume parameter for ith component (dimensionless)
b(i, 1) = OmegaB(i)*R*TC(i)/PC(i);
end
49
%Step 2
% Calculate dimensional attraction parameter
% and co-volume parameter for the mixture
aam = 0;
bm = 0;
for i = (1:n)
bm = bm + c(i)*b(i);
for j = (1:n)
aam = aam + c(i)*c(j)*sqrt(aAlpha(i).*aAlpha(j)).*(1-Delta(i,j));
end
end
%Step 3
% Calculate dimensionless attraction parameter
% and co-volume parameter for each pressure
A = (aam*pressure)/(R^2*TAbs^2);
B = (bm*pressure)/(R*TAbs);
%Step 4
% Calculate SRK cubic coefficients
aa = 1;
a1 = -1;
b1 = A - B - B^2;
c1 = -A*B;
%Step 5
% Solve cubic SRK equation for Z
SRK=[aa a1 b1 c1];
z=roots(SRK);
z=z(imag(z)==0);
maxZ = max(z);
minZ = min(z);
ZOutput = [maxZ, minZ, A, B, aam, bm];
50
<splitFunction_Final.m>
function splitFactor = splitFunction_Final(composition, pressure,
temperature, TCritical, PCritical, ZCritical, AcentricFactor, OA, OB,
interaction)
% Input Data
format long
% Temperature of facility (Rankine)
TFacility = temperature;
% Pressure of separator (psi)
p = pressure;
% Gas Constant (ft^3 psi/R lb-mol)
R = 10.73;
% Composition of feed (mol fraction)
c = composition;
% Critical temperature vector (Rankine)
TC = TCritical;
% Critical pressure vector (psi)
PC = PCritical;
% Critical Z factor vector (dimensionless)
ZC = ZCritical;
% Acentric factor vector (dimensionless)
Acentric = AcentricFactor;
% Omega A factor vector (dimensionless)
OmegaA = OA;
% Omega B factor vector (dimensionless)
OmegaB = OB;
% Interaction parameters (dimensionless)
Delta = interaction;
% Number of components (dimensionless)
n=length(c);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Calculate Equilibrium Constants K(i) with Wilson procedure
K = zeros(n,1);
for i = (1:n)
K(i) = (PC(i)/p)*exp(5.37*(1+Acentric(i))*(1-TC(i)/TFacility));
end
% Implementation of Rachford-Rice Equation
alphaG = alphaFunction_Final(c, K, n);
% Fugacity and Mass Transfer
51
fl = zeros(1,n);
fg = ones(1,n);
convergence = 1;
while convergence > (10^-14)
convergesum = 0;
for i = (1:n)
convergesum = convergesum + ((fl(i)/fg(i))-1)^2;
end
convergence = convergesum;
% Composition of the co-existing vapor and liquid phase
% Create matrix for liquid phase fractions of C1 and C10
x = zeros(1,n);
% Create matrix for vapor phase fractions of C1 and C10
y = zeros(1,n);
for i = (1:n)
if alphaG <= 0
x(1,i) = c(i);
y(1,i) = c(i);
else if alphaG >= 1
x(1,i) = c(i);
y(1,i) = c(i);
else
x(1,i) = c(i)/(1+alphaG*(K(i)-1));
y(1,i) = K(i)*x(1,i);
end
end
end
cgas = y';
cliq = x';
% ZOutput = [maxZ, minZ, A, B, aam, bm, aAlpha, b];
ZOutputGas = ZFactor_Final(cgas, p, TFacility, Delta, TC, PC, ZC,
Acentric, OmegaA, OmegaB);
ZOutputLiq = ZFactor_Final(cliq, p, TFacility, Delta, TC, PC, ZC,
Acentric, OmegaA, OmegaB);
ZGas = ZOutputGas(1);
ZLiq = ZOutputLiq(2);
% Create reduced temperature vector (dimensionless)
TReduced = TFacility./TC;
% Calculate Pitzer's acentric factor (dimensionless)
PitzerFunction = 0.48+1.574*Acentric-0.176*Acentric.^2;
aAlpha = zeros(n, 1);
b = zeros(n, 1);
for i = (1:n)
% Attraction parameter for ith component (dimensionless)
aAlpha(i, 1) =
(OmegaA(i)*(R^2)*(TC(i)^2)/PC(i))*(1+PitzerFunction(i)*(1-
(TReduced(i)^0.5)))^2;
% Co-volume parameter for ith component (dimensionless)
b(i, 1) = OmegaB(i)*R*TC(i)/PC(i);
end
52
BBGas = zeros(1,n);
AAGas = zeros(1,n);
BBLiq = zeros(1,n);
AALiq = zeros(1,n);
summationGas = zeros(1,n);
summationLiq = zeros(1,n);
for i = (1:n)
BBGas(i) = b(i)/ZOutputGas(6);
BBLiq(i) = b(i)/ZOutputLiq(6);
for j = (1:n)
summationGas(i) = summationGas(i)+ (cgas(j)*(aAlpha(j)^0.5)*(1-
Delta(i,j)));
summationLiq(i) = summationLiq(i)+ (cliq(j)*(aAlpha(j)^0.5)*(1-
Delta(i,j)));
end
AAGas(i) = (2/ZOutputGas(5))*((aAlpha(i)^0.5)*(summationGas(i)));
AALiq(i) = (2/ZOutputLiq(5))*((aAlpha(i)^0.5)*(summationLiq(i)));
end
% Fugacity Coefficient
fugcoG = zeros(1,n);
fugcoL = zeros(1,n);
for i = (1:n)
fugcoG(i) = exp(BBGas(i)*(ZGas-1)-log(ZGas-ZOutputGas(4))-
(ZOutputGas(3)/ZOutputGas(4))*(AAGas(i)-
BBGas(i))*log((ZGas+ZOutputGas(4))/ZGas));
fugcoL(i) = exp(BBLiq(i)*(ZLiq-1)-log(ZLiq-ZOutputLiq(4))-
(ZOutputLiq(3)/ZOutputLiq(4))*(AALiq(i)-
BBLiq(i))*log((ZLiq+ZOutputLiq(4))/ZLiq));
fg(i) = fugcoG(i)*y(i)*p;
fl(i) = fugcoL(i)*x(i)*p;
end
for i = (1:n)
K(i) = K(i)*(fl(i)/fg(i));
end
alphaG = alphaFunction_Final(c, K, n);
alphaL = 1-alphaG;
end
alphaG_output = zeros(7,1);
alphaL_output = zeros(7,1);
alphaG_output(1) = alphaG;
alphaL_output(1) = alphaL;
splitFactor = [alphaG_output, alphaL_output, cgas, cliq, K];
53
<alphaFunction_Final.m>
function alphaOutput = alphaFunction_Final(composition, KFactor, ncomp)
format long
n = ncomp;
c = composition;
K = KFactor;
alphaG_new = .5;
alphaG_old = .1;
convergence = 1;
while convergence > (10^-10)
convergence = abs(alphaG_new - alphaG_old);
alphaG_old = alphaG_new;
gAlphaG = 0;
gprime = 0;
for i = (1:n)
gAlphaG = gAlphaG + (c(i)*(K(i)-1))/(1+alphaG_old*(K(i)-1));
gprime = gprime - (c(i)*(K(i)-1)^2)/(alphaG_old*(K(i)-1)+1)^2;
end
alphaG_new = alphaG_old - (gAlphaG/gprime);
if alphaG_new > 1
alphaG_new = alphaG_old+(alphaG_new-alphaG_old)/10;
else if alphaG_new < 0
alphaG_new = alphaG_old+(alphaG_new-alphaG_old)/10;
end
end
alphaOutput = alphaG_new;
end
54
Appendix C
Module Results
Module A:
Table A1: SRK EOS Z-Factor Calculations-
Module "A" Progress Report
P(psia) T(F)
480Mix1.txt 480Mix2.txt 480Mix3.txt
Zmin Zmax Zmin Zmax Zmin Zmax
220 500 0.9889 0.9980 0.8615
270 500 0.9865 0.9976 0.8262
320 500 0.9842 0.9972 0.7889
370 500 0.9820 0.9969 0.7492
420 500 0.9798 0.9966 0.7066
470 500 0.9777 0.9963 0.6602
520 500 0.9756 0.9961 0.6089
570 500 0.9736 0.9958 0.5519
620 500 0.9717 0.9956 0.4901
670 500 0.9698 0.9954 0.4350
720 500 0.9680 0.9953 0.4028
770 500 0.9663 0.9952 0.3898
820 500 0.9647 0.9951 0.3870
870 500 0.9631 0.9950 0.3894
920 500 0.9616 0.9950 0.3948
970 500 0.9601 0.9949 0.4020
1020 500 0.9587 0.9950 0.4104
1070 500 0.9574 0.9950 0.4196
1120 500 0.9562 0.9950 0.4293
1170 500 0.9551 0.9951 0.4394
1220 500 0.9540 0.9952 0.4498
1270 500 0.9530 0.9954 0.4605
1320 500 0.9521 0.9956 0.4713
1370 500 0.9512 0.9957 0.4822
1420 500 0.9504 0.9960 0.4932
1470 500 0.9497 0.9962 0.5043
1520 500 0.9491 0.9965 0.5154
1570 500 0.9486 0.9968 0.5266
1620 500 0.9481 0.9971 0.5378
1670 500 0.9477 0.9974 0.5490
1720 500 0.9474 0.9978 0.5602
1770 500 0.9471 0.9982 0.5714
1820 500 0.9470 0.9986 0.5826
55
Module B:
P (psia) T (F) K(C1) Wilson K(C2) Wilson alphaG Wilson alphaL Wilson K(C1) SRK K(C2) SRK alphaG SRK alphaL SRK
220 500 99.0731 0.4055 0.8359 0.1641 18.5588 0.2698 0.6563 0.3437
270 500 80.7263 0.3304 0.7404 0.2596 15.2518 0.2296 0.6139 0.3861
320 500 68.1128 0.2788 0.6858 0.3142 12.9625 0.2020 0.5847 0.4153
370 500 58.9084 0.2411 0.6502 0.3498 11.2838 0.1820 0.5626 0.4374
420 500 51.8955 0.2124 0.6250 0.3750 10.0000 0.1670 0.5447 0.4553
470 500 46.3747 0.1898 0.6061 0.3939 8.9865 0.1554 0.5294 0.4706
520 500 41.9156 0.1715 0.5913 0.4087 8.1659 0.1462 0.5158 0.4842
570 500 38.2388 0.1565 0.5793 0.4207 7.4879 0.1388 0.5035 0.4965
620 500 35.1550 0.1439 0.5694 0.4306 6.9184 0.1327 0.4921 0.5079
670 500 32.5315 0.1331 0.5609 0.4391 6.4331 0.1278 0.4812 0.5188
720 500 30.2723 0.1239 0.5536 0.4464 6.0146 0.1237 0.4709 0.5291
770 500 28.3066 0.1158 0.5472 0.4528 5.6500 0.1204 0.4609 0.5391
820 500 26.5806 0.1088 0.5415 0.4585 5.3296 0.1176 0.4511 0.5489
870 500 25.0530 0.1025 0.5363 0.4637 5.0456 0.1153 0.4415 0.5585
920 500 23.6914 0.0970 0.5316 0.4684 4.7923 0.1134 0.4321 0.5679
970 500 22.4702 0.0920 0.5273 0.4727 4.5648 0.1118 0.4227 0.5773
1020 500 21.3687 0.0875 0.5234 0.4766 4.3594 0.1106 0.4134 0.5866
1070 500 20.3702 0.0834 0.5197 0.4803 4.1731 0.1097 0.4040 0.5960
1120 500 19.4608 0.0796 0.5162 0.4838 4.0032 0.1090 0.3947 0.6053
1170 500 18.6291 0.0762 0.5129 0.4871 3.8477 0.1085 0.3853 0.6147
1220 500 17.8656 0.0731 0.5098 0.4902 3.7048 0.1083 0.3758 0.6242
1270 500 17.1623 0.0702 0.5068 0.4932 3.5730 0.1082 0.3663 0.6337
1320 500 16.5122 0.0676 0.5040 0.4960 3.4510 0.1083 0.3567 0.6433
1370 500 15.9096 0.0651 0.5013 0.4987 3.3379 0.1085 0.3470 0.6530
1420 500 15.3494 0.0628 0.4987 0.5013 3.2325 0.1089 0.3371 0.6629
1470 500 14.8273 0.0607 0.4961 0.5039 3.1343 0.1094 0.3272 0.6728
1520 500 14.3395 0.0587 0.4937 0.5063 3.0424 0.1101 0.3170 0.6830
1570 500 13.8829 0.0568 0.4913 0.5087 2.9562 0.1109 0.3068 0.6932
1620 500 13.4544 0.0551 0.4890 0.5110 2.8752 0.1118 0.2963 0.7037
1670 500 13.0516 0.0534 0.4867 0.5133 2.7990 0.1129 0.2857 0.7143
1720 500 12.6721 0.0519 0.4845 0.5155 2.7271 0.1140 0.2749 0.7251
1770 500 12.3142 0.0504 0.4823 0.5177 2.6591 0.1153 0.2638 0.7362
1820 500 11.9759 0.0490 0.4802 0.5198 2.5948 0.1167 0.2526 0.7474
56
Module C:
57
58
Appendix C
Viscosity Calculation
Oil Viscosity Computation at HP Separator (Lohrentz, Bray-Clark Correlation):
Components
xi
(Molar Fraction)
MW
(lb/lbmol)
TC
(°R)
Tr Tpc (°R) PC (psia) Pr Ppc (psia) ZC
P1 0.183342756 16.38 339.99 1.5294567 62.3347 662.81 1.259335 121.521 0.28741
P2 0.165467578 31.77 549.83 0.9457469 90.979 752.19 1.109693 124.463 0.2886
P3 0.27250071 50.64 705.87 0.7366796 192.35 581.03 1.436587 158.331 0.28126
P4 0.146003281 76.92 870.94 0.5970561 127.16 481.06 1.735127 70.2363 0.25534
P5 0.16154475 120.13 1060.51 0.4903301 171.32 385 2.168052 62.1947 0.26069
P6 0.035732157 210.87 1283.88 0.4050223 45.8758 253.07 3.298297 9.04274 0.23087
P7 0.035408768 347.56 1520.94 0.3418938 53.8546 174.67 4.778726 6.18485 0.20769
72.53795 743.874 551.974
µi* (cp)
(xi)*(µi*)*(√MWi)
(cp)(lb/lbmol)
(xi)*(√MWi)
(lb/lbmol)
vci
(ft3
/lbmol)
xivi
(ft3
/lbmol)
0.058965715 0.043754253 0.7420287 1.581898769 0.29002968
0.052554165 0.049014961 0.932656059 2.263585616 0.374550028
0.042366604 0.082155784 1.939163763 3.666349499 0.999082842
0.036486514 0.046721268 1.280507876 4.960295689 0.724219447
0.031608008 0.055964898 1.770592365 7.705097392 1.244718032
0.025623264 0.01329539 0.518879647 12.56756075 0.449066057
0.021298867 0.014059899 0.660124286 19.40479548 0.687099902
Total 0.304966453 7.843952697
µo* (cp) 0.00714716
vpc (ft3
/lbmol) 4.768765988
ρo (lb/ft3
) 41.2637631
ρr (unitless) 2.712748711
µo (cp) 0.319998434
59
Equations:
60
Gas Viscosity Computation at HP and LP Separators (Lee, Gonzalez and Eakin Method):
Equations:
MWg1 18.7936044 lb/lbmol
MWg2 27.561892 lb/lbmol
T1 520 °R
T2 520 °R
ρg1 3.32331277 lb/ft
3
ρg2 0.30449042 lb/ft3
kv1 106.733147
kv2 94.198369
xv1 5.58408989
xv2 5.67177277
yv1 1.28318202
yv2 1.26564545
µg1 0.01215047 cp
µg2 0.00948345 cp
Gas Viscosity Calculation

More Related Content

What's hot

Factors effecting vertical lift performance
Factors effecting vertical lift performanceFactors effecting vertical lift performance
Factors effecting vertical lift performanceJALEEL AHMED
 
Life Cycle of Oil & Gas Wells
Life Cycle of Oil & Gas WellsLife Cycle of Oil & Gas Wells
Life Cycle of Oil & Gas WellsMohamed Elnagar
 
Tubing Performance Relation (TPR)
Tubing Performance Relation (TPR)Tubing Performance Relation (TPR)
Tubing Performance Relation (TPR)James Craig
 
Final SLB Project
Final SLB ProjectFinal SLB Project
Final SLB ProjectEbuka David
 
Surfactant flooding reservoir simulation
Surfactant flooding reservoir simulationSurfactant flooding reservoir simulation
Surfactant flooding reservoir simulationHesham Mokhtar Ali
 
History matching with EnKF
History matching with EnKFHistory matching with EnKF
History matching with EnKFzyedb
 
Reservoir pressure measurements 1
Reservoir pressure measurements 1Reservoir pressure measurements 1
Reservoir pressure measurements 1Imtiaz Alam
 
Skin Factor and Formation Damage
Skin Factor and Formation DamageSkin Factor and Formation Damage
Skin Factor and Formation DamageNouh Almandhari
 
4 1 reservoir-drive_mechanisms
4 1 reservoir-drive_mechanisms4 1 reservoir-drive_mechanisms
4 1 reservoir-drive_mechanismsAtils
 
Petrel introduction course guide
Petrel introduction course guidePetrel introduction course guide
Petrel introduction course guideMarc Diviu Franco
 
Well Test Design
Well Test DesignWell Test Design
Well Test Designadsnah
 
Enhached oil recovery EOR
Enhached oil recovery EOREnhached oil recovery EOR
Enhached oil recovery EORHendri Anur
 
Chapter 2 basic single phase-flow equation
Chapter 2 basic single phase-flow equationChapter 2 basic single phase-flow equation
Chapter 2 basic single phase-flow equationMichaelDang47
 

What's hot (20)

Reservoir simulation study
Reservoir simulation study Reservoir simulation study
Reservoir simulation study
 
Factors effecting vertical lift performance
Factors effecting vertical lift performanceFactors effecting vertical lift performance
Factors effecting vertical lift performance
 
Life Cycle of Oil & Gas Wells
Life Cycle of Oil & Gas WellsLife Cycle of Oil & Gas Wells
Life Cycle of Oil & Gas Wells
 
Tubing Performance Relation (TPR)
Tubing Performance Relation (TPR)Tubing Performance Relation (TPR)
Tubing Performance Relation (TPR)
 
Final SLB Project
Final SLB ProjectFinal SLB Project
Final SLB Project
 
Surfactant flooding reservoir simulation
Surfactant flooding reservoir simulationSurfactant flooding reservoir simulation
Surfactant flooding reservoir simulation
 
History matching with EnKF
History matching with EnKFHistory matching with EnKF
History matching with EnKF
 
Oil and Gas Reservoir Engineering
Oil and Gas Reservoir EngineeringOil and Gas Reservoir Engineering
Oil and Gas Reservoir Engineering
 
Reservoir pressure measurements 1
Reservoir pressure measurements 1Reservoir pressure measurements 1
Reservoir pressure measurements 1
 
Skin Factor and Formation Damage
Skin Factor and Formation DamageSkin Factor and Formation Damage
Skin Factor and Formation Damage
 
4 1 reservoir-drive_mechanisms
4 1 reservoir-drive_mechanisms4 1 reservoir-drive_mechanisms
4 1 reservoir-drive_mechanisms
 
Petrel introduction course guide
Petrel introduction course guidePetrel introduction course guide
Petrel introduction course guide
 
Well Test Design
Well Test DesignWell Test Design
Well Test Design
 
Reservoir rock & fluid
Reservoir rock & fluidReservoir rock & fluid
Reservoir rock & fluid
 
Reservoir Simulation
Reservoir SimulationReservoir Simulation
Reservoir Simulation
 
Enhached oil recovery EOR
Enhached oil recovery EOREnhached oil recovery EOR
Enhached oil recovery EOR
 
Chapter 2 basic single phase-flow equation
Chapter 2 basic single phase-flow equationChapter 2 basic single phase-flow equation
Chapter 2 basic single phase-flow equation
 
Oil Properties
Oil PropertiesOil Properties
Oil Properties
 
Chemical EOR
Chemical EORChemical EOR
Chemical EOR
 
waterflooding
waterfloodingwaterflooding
waterflooding
 

Viewers also liked

Field Development Project Report - EAB_7_157
Field Development Project Report - EAB_7_157Field Development Project Report - EAB_7_157
Field Development Project Report - EAB_7_157Shaoor Kamal
 
Field Development Project : Gelama Merah
Field Development Project : Gelama MerahField Development Project : Gelama Merah
Field Development Project : Gelama MerahHami Asma'i
 
FIELD DEVELOPMENT REPORT PROJECT OF DRILLING DEPT
FIELD DEVELOPMENT REPORT PROJECT OF DRILLING DEPTFIELD DEVELOPMENT REPORT PROJECT OF DRILLING DEPT
FIELD DEVELOPMENT REPORT PROJECT OF DRILLING DEPTMUHAMMAD NOMAN KHAN
 
Bertam Field Development Project Major HUC Campaign
Bertam Field Development Project Major HUC Campaign Bertam Field Development Project Major HUC Campaign
Bertam Field Development Project Major HUC Campaign Mohd Syafiq Shawaludin
 
P3 แบบทดสอบคิดคำนวณคล่อง
P3 แบบทดสอบคิดคำนวณคล่องP3 แบบทดสอบคิดคำนวณคล่อง
P3 แบบทดสอบคิดคำนวณคล่องKhunnawang Khunnawang
 
Creating Healthy Boundaries in our Relationships Life Series part 3 of 5
Creating Healthy Boundaries in our Relationships Life Series part 3 of 5Creating Healthy Boundaries in our Relationships Life Series part 3 of 5
Creating Healthy Boundaries in our Relationships Life Series part 3 of 5Berean Guide
 

Viewers also liked (20)

Field Development Project Report - EAB_7_157
Field Development Project Report - EAB_7_157Field Development Project Report - EAB_7_157
Field Development Project Report - EAB_7_157
 
Field Development Project : Gelama Merah
Field Development Project : Gelama MerahField Development Project : Gelama Merah
Field Development Project : Gelama Merah
 
MSc group project presentation
MSc group project presentationMSc group project presentation
MSc group project presentation
 
Attachment 3
Attachment 3Attachment 3
Attachment 3
 
Attachment 5
Attachment 5Attachment 5
Attachment 5
 
Attachment 2
Attachment 2Attachment 2
Attachment 2
 
FIELD DEVELOPMENT REPORT PROJECT OF DRILLING DEPT
FIELD DEVELOPMENT REPORT PROJECT OF DRILLING DEPTFIELD DEVELOPMENT REPORT PROJECT OF DRILLING DEPT
FIELD DEVELOPMENT REPORT PROJECT OF DRILLING DEPT
 
Device X Field Report
Device X Field ReportDevice X Field Report
Device X Field Report
 
PETROLEUM ENGINEER
PETROLEUM ENGINEERPETROLEUM ENGINEER
PETROLEUM ENGINEER
 
Bertam Field Development Project Major HUC Campaign
Bertam Field Development Project Major HUC Campaign Bertam Field Development Project Major HUC Campaign
Bertam Field Development Project Major HUC Campaign
 
Paoliitha
PaoliithaPaoliitha
Paoliitha
 
Resume
ResumeResume
Resume
 
EduKids - Celebrating 20 Years of Excellence
EduKids - Celebrating 20 Years of ExcellenceEduKids - Celebrating 20 Years of Excellence
EduKids - Celebrating 20 Years of Excellence
 
Presentation_NEW.PPTX
Presentation_NEW.PPTXPresentation_NEW.PPTX
Presentation_NEW.PPTX
 
P3 แบบทดสอบคิดคำนวณคล่อง
P3 แบบทดสอบคิดคำนวณคล่องP3 แบบทดสอบคิดคำนวณคล่อง
P3 แบบทดสอบคิดคำนวณคล่อง
 
Group and Work Group Behavior
Group and Work Group BehaviorGroup and Work Group Behavior
Group and Work Group Behavior
 
Fenomeno balistico
Fenomeno balisticoFenomeno balistico
Fenomeno balistico
 
Memo writing
Memo writingMemo writing
Memo writing
 
Creating Healthy Boundaries in our Relationships Life Series part 3 of 5
Creating Healthy Boundaries in our Relationships Life Series part 3 of 5Creating Healthy Boundaries in our Relationships Life Series part 3 of 5
Creating Healthy Boundaries in our Relationships Life Series part 3 of 5
 
Well Planning
Well PlanningWell Planning
Well Planning
 

Similar to Final Report 4_22_15

Pad semesteraufgabe finalreport
Pad semesteraufgabe finalreportPad semesteraufgabe finalreport
Pad semesteraufgabe finalreportHaris Ahmed
 
Shortcut Design Method for Multistage Binary Distillation via MS-Exce
Shortcut Design Method for Multistage Binary Distillation via MS-ExceShortcut Design Method for Multistage Binary Distillation via MS-Exce
Shortcut Design Method for Multistage Binary Distillation via MS-ExceIJERA Editor
 
R&amp;ac lecture 25
R&amp;ac lecture 25R&amp;ac lecture 25
R&amp;ac lecture 25sayed fathy
 
Fatigue Analysis of Acetylene converter reactor
Fatigue Analysis of Acetylene converter reactorFatigue Analysis of Acetylene converter reactor
Fatigue Analysis of Acetylene converter reactorIJMER
 
ECONOMIC LOAD DISPATCH USING PARTICLE SWARM OPTIMIZATION
ECONOMIC LOAD DISPATCH USING PARTICLE SWARM OPTIMIZATIONECONOMIC LOAD DISPATCH USING PARTICLE SWARM OPTIMIZATION
ECONOMIC LOAD DISPATCH USING PARTICLE SWARM OPTIMIZATIONMln Phaneendra
 
Optimization of Closure Law of Guide Vanes for an Operational Hydropower Plan...
Optimization of Closure Law of Guide Vanes for an Operational Hydropower Plan...Optimization of Closure Law of Guide Vanes for an Operational Hydropower Plan...
Optimization of Closure Law of Guide Vanes for an Operational Hydropower Plan...Dr. Amarjeet Singh
 
Fatigue Analysis of Acetylene converter reactor
Fatigue Analysis of Acetylene converter reactorFatigue Analysis of Acetylene converter reactor
Fatigue Analysis of Acetylene converter reactorIJMER
 
FUZZY LOGIC Control of CONTINUOUS STIRRED TANK REACTOR
FUZZY LOGIC Control  of CONTINUOUS STIRRED TANK REACTOR FUZZY LOGIC Control  of CONTINUOUS STIRRED TANK REACTOR
FUZZY LOGIC Control of CONTINUOUS STIRRED TANK REACTOR ProfDrDuraidAhmed
 
1D Simulation of intake manifolds in single-cylinder reciprocating engine
1D Simulation of intake manifolds in single-cylinder reciprocating engine1D Simulation of intake manifolds in single-cylinder reciprocating engine
1D Simulation of intake manifolds in single-cylinder reciprocating engineJuan Manzanero Torrico
 
Intro to Fluid Mechanics Design Project
Intro to Fluid Mechanics Design ProjectIntro to Fluid Mechanics Design Project
Intro to Fluid Mechanics Design ProjectMegan Hanrahan
 
1. ContentsNatural Gas Pipeline Flow Calculations - S.I. UnitsWork
1. ContentsNatural Gas Pipeline Flow Calculations - S.I. UnitsWork1. ContentsNatural Gas Pipeline Flow Calculations - S.I. UnitsWork
1. ContentsNatural Gas Pipeline Flow Calculations - S.I. UnitsWorkTatianaMajor22
 
New calculation of thetray numbers for Debutanizer Tower in BIPC
New calculation of thetray numbers for Debutanizer Tower in BIPCNew calculation of thetray numbers for Debutanizer Tower in BIPC
New calculation of thetray numbers for Debutanizer Tower in BIPCinventionjournals
 
New calculation of thetray numbers for Debutanizer Tower in BIPC
New calculation of thetray numbers for Debutanizer Tower in BIPCNew calculation of thetray numbers for Debutanizer Tower in BIPC
New calculation of thetray numbers for Debutanizer Tower in BIPCinventionjournals
 
Chemical Process Calculations – Short Tutorial
Chemical Process Calculations – Short TutorialChemical Process Calculations – Short Tutorial
Chemical Process Calculations – Short TutorialVijay Sarathy
 
Iaetsd design and implementation of intelligent
Iaetsd design and implementation of intelligentIaetsd design and implementation of intelligent
Iaetsd design and implementation of intelligentIaetsd Iaetsd
 
Reactivity Feedback Effect on the Reactor Behaviour during SBLOCA in a 4-loop...
Reactivity Feedback Effect on the Reactor Behaviour during SBLOCA in a 4-loop...Reactivity Feedback Effect on the Reactor Behaviour during SBLOCA in a 4-loop...
Reactivity Feedback Effect on the Reactor Behaviour during SBLOCA in a 4-loop...IJMREMJournal
 
Metamodel-based Optimization of a PID Controller Parameters for a Coupled-tan...
Metamodel-based Optimization of a PID Controller Parameters for a Coupled-tan...Metamodel-based Optimization of a PID Controller Parameters for a Coupled-tan...
Metamodel-based Optimization of a PID Controller Parameters for a Coupled-tan...TELKOMNIKA JOURNAL
 
Design and Implementation of Sliding Mode Controller using Coefficient Diagra...
Design and Implementation of Sliding Mode Controller using Coefficient Diagra...Design and Implementation of Sliding Mode Controller using Coefficient Diagra...
Design and Implementation of Sliding Mode Controller using Coefficient Diagra...IOSR Journals
 

Similar to Final Report 4_22_15 (20)

Pad semesteraufgabe finalreport
Pad semesteraufgabe finalreportPad semesteraufgabe finalreport
Pad semesteraufgabe finalreport
 
Shortcut Design Method for Multistage Binary Distillation via MS-Exce
Shortcut Design Method for Multistage Binary Distillation via MS-ExceShortcut Design Method for Multistage Binary Distillation via MS-Exce
Shortcut Design Method for Multistage Binary Distillation via MS-Exce
 
R&amp;ac lecture 25
R&amp;ac lecture 25R&amp;ac lecture 25
R&amp;ac lecture 25
 
Fluids Lab
Fluids LabFluids Lab
Fluids Lab
 
Fatigue Analysis of Acetylene converter reactor
Fatigue Analysis of Acetylene converter reactorFatigue Analysis of Acetylene converter reactor
Fatigue Analysis of Acetylene converter reactor
 
ECONOMIC LOAD DISPATCH USING PARTICLE SWARM OPTIMIZATION
ECONOMIC LOAD DISPATCH USING PARTICLE SWARM OPTIMIZATIONECONOMIC LOAD DISPATCH USING PARTICLE SWARM OPTIMIZATION
ECONOMIC LOAD DISPATCH USING PARTICLE SWARM OPTIMIZATION
 
Lwrb ms
Lwrb msLwrb ms
Lwrb ms
 
Optimization of Closure Law of Guide Vanes for an Operational Hydropower Plan...
Optimization of Closure Law of Guide Vanes for an Operational Hydropower Plan...Optimization of Closure Law of Guide Vanes for an Operational Hydropower Plan...
Optimization of Closure Law of Guide Vanes for an Operational Hydropower Plan...
 
Fatigue Analysis of Acetylene converter reactor
Fatigue Analysis of Acetylene converter reactorFatigue Analysis of Acetylene converter reactor
Fatigue Analysis of Acetylene converter reactor
 
FUZZY LOGIC Control of CONTINUOUS STIRRED TANK REACTOR
FUZZY LOGIC Control  of CONTINUOUS STIRRED TANK REACTOR FUZZY LOGIC Control  of CONTINUOUS STIRRED TANK REACTOR
FUZZY LOGIC Control of CONTINUOUS STIRRED TANK REACTOR
 
1D Simulation of intake manifolds in single-cylinder reciprocating engine
1D Simulation of intake manifolds in single-cylinder reciprocating engine1D Simulation of intake manifolds in single-cylinder reciprocating engine
1D Simulation of intake manifolds in single-cylinder reciprocating engine
 
Intro to Fluid Mechanics Design Project
Intro to Fluid Mechanics Design ProjectIntro to Fluid Mechanics Design Project
Intro to Fluid Mechanics Design Project
 
1. ContentsNatural Gas Pipeline Flow Calculations - S.I. UnitsWork
1. ContentsNatural Gas Pipeline Flow Calculations - S.I. UnitsWork1. ContentsNatural Gas Pipeline Flow Calculations - S.I. UnitsWork
1. ContentsNatural Gas Pipeline Flow Calculations - S.I. UnitsWork
 
New calculation of thetray numbers for Debutanizer Tower in BIPC
New calculation of thetray numbers for Debutanizer Tower in BIPCNew calculation of thetray numbers for Debutanizer Tower in BIPC
New calculation of thetray numbers for Debutanizer Tower in BIPC
 
New calculation of thetray numbers for Debutanizer Tower in BIPC
New calculation of thetray numbers for Debutanizer Tower in BIPCNew calculation of thetray numbers for Debutanizer Tower in BIPC
New calculation of thetray numbers for Debutanizer Tower in BIPC
 
Chemical Process Calculations – Short Tutorial
Chemical Process Calculations – Short TutorialChemical Process Calculations – Short Tutorial
Chemical Process Calculations – Short Tutorial
 
Iaetsd design and implementation of intelligent
Iaetsd design and implementation of intelligentIaetsd design and implementation of intelligent
Iaetsd design and implementation of intelligent
 
Reactivity Feedback Effect on the Reactor Behaviour during SBLOCA in a 4-loop...
Reactivity Feedback Effect on the Reactor Behaviour during SBLOCA in a 4-loop...Reactivity Feedback Effect on the Reactor Behaviour during SBLOCA in a 4-loop...
Reactivity Feedback Effect on the Reactor Behaviour during SBLOCA in a 4-loop...
 
Metamodel-based Optimization of a PID Controller Parameters for a Coupled-tan...
Metamodel-based Optimization of a PID Controller Parameters for a Coupled-tan...Metamodel-based Optimization of a PID Controller Parameters for a Coupled-tan...
Metamodel-based Optimization of a PID Controller Parameters for a Coupled-tan...
 
Design and Implementation of Sliding Mode Controller using Coefficient Diagra...
Design and Implementation of Sliding Mode Controller using Coefficient Diagra...Design and Implementation of Sliding Mode Controller using Coefficient Diagra...
Design and Implementation of Sliding Mode Controller using Coefficient Diagra...
 

Final Report 4_22_15

  • 1. The Pennsylvania State University College of Earth and Mineral Sciences Department of Energy and Mineral Engineering Petroleum and Natural Gas Engineering Program PNG 480-Production Process Engineering Final Term Project: Design of a Surface Production Facility Instructor: Dr. Luis F. Ayala H. Teaching Assistants: Thomas Stumpf and Lina Da Group 6 Michael Silver Chad DiStanislao Christopher Efstathion David Hughes
  • 2. 2 TABLE OF CONTENTS Section 1 Project Introduction ....................................................................................4 Section 2 Description of Process Model.....................................................................6 Section 3 Reservoir Characterization and Feed Rate Calculation ..............................9 Section 4 Determination of Separator Operating Pressures........................................12 Section 5 Sizing of Separator Vessels ........................................................................15 Section 6 Sizing of Dehydrator System......................................................................30 Appendix A MATLAB Code......................................................................................41 Appendix C Module Results.......................................................................................54 Appendix C Viscosity Calculation..............................................................................58
  • 3. 4 Section 1 Project Introduction The goal of this project is to provide the basic design for a surface production facility that will process the hydrocarbon stream produced from a single-phase natural gas reservoir. The project design basis includes a 3-stage condensate stabilization train, a glycol dehydration unit, and a hydrate prevention system. The reservoir of interest is being drained by 18 wells that will feed the designed facility through a production manifold. A previous reservoir simulation has provided a hydrocarbon production capacity of 11,750 RCF/D per well. The following natural gas reservoir composition has been provided in order to develop a process model. The model will be presented in detail in the following chapters. Table 1. Natural Gas Reservoir Composition. Component Molar Fraction P1 0.662200 P2 0.119400 P3 0.100452 P4 0.045966 P5 0.050000 P6 0.011041 P7 0.010941 The goal of the model is to perform detailed and accurate calculation of properties like compositional Z-factors, volatility ratios, split factors, fluid densities, and molecular weights. These properties are essential for the design of the surface production facility. Based on these
  • 4. 5 data, the model can be used to optimize the design of the separation train. The scope of this design project includes selecting the appropriate operating pressure, size, and orientation of the separator vessels in the stabilization train. The goal of the stabilization train is to meet condensate vapor pressure specifications while maximizing liquids recovery at a minimum cost. Next, a preliminary sizing of the glycol dehydration system has been completed based on the composition and properties of the gas streams from the stabilization train. The purpose of this system is to meet the water content specification of the gas stream, which is based on contract agreements for the sale of the gas as well as process safety requirements to minimize the risk of free water or hydrate formation in the gas pipeline. If the dehydration system goes offline, a hydrate inhibition program using methanol (MeOH) or monoethylene glycol (MEG) can be used based on the specifications in this report.
  • 5. 6 Section 2 Description of Process Model To calculate how the components in the wellstream react to changes in pressure and temperature, we built a process model in MATLAB based on the Soave-Redlich-Kwong (SRK) equation of state. The purpose of this model is to calculate molar split factors and compositions of liquid and vapor streams for separators under various operating conditions. The first step of the model was to write a MATLAB code that could output the Z factor of a mixture based on pressure, temperature, composition, and thermodynamic parameters. For the initial test in Module A, these inputs were hard-coded in the MATLAB file, but this code was quickly revamped into a MATLAB function file (“ZFactor_Final.m”) which would output minimum and maximum Z factor values if given inputs of composition, pressure, temperature as well as component critical temperatures & pressures, acentric factors, omega factors, and interaction parameters. The Z factor function used the following equations to solve the SRK cubic equation. Cubic equation to solve: 𝑍3 − 𝑍2 + (𝐴 − 𝐵 − 𝐵2)𝑍 − 𝐴𝐵 = 0 [𝑎𝛼]𝑖 = Ω 𝑎𝑖 𝑅2 𝑇𝑐𝑖 2 𝑃 𝑐𝑖 [1 + 𝑓(𝜔𝑖)(1 − 𝑇𝑟𝑖 0.5 )]2 for i=1…nc 𝑏𝑖 = Ω 𝑏𝑖 𝑅𝑇 𝑐𝑖 𝑃 𝑐𝑖 for i=1…nc Pitzer function: 𝑓(𝜔𝑖) = 0.48 + 1.574𝜔𝑖 − 0.176𝜔𝑖 2 [𝑎𝛼] 𝑚 = ∑ ∑ 𝑐𝑖 𝑛 𝑐 𝑗 𝑛 𝑐 𝑖 𝑐𝑗√(𝑎𝛼)𝑖(𝑎𝛼) 𝑗(1 − 𝛿𝑖𝑗)
  • 6. 7 𝑏 𝑚 = ∑ 𝑐𝑖 𝑏𝑖 𝑛 𝑐 𝑖 Attraction parameter: 𝐴 = (𝑎𝛼) 𝑚 𝑃 𝑅2 𝑇2 ; Co-volume parameter: 𝐵 = 𝑏 𝑚 𝑃 𝑅𝑇 Next, we wrote a code file (“splitFunction_Final.m”) that is able to calculate the volatility ratios of each component and molar split factor of a separator with a given pressure, temperature, and feed composition. This code was based on the principle that at equilibrium, the fugacities of each component in both the liquid and vapor phases must be equal. The function worked by using Wilson’s correlation as an initial guess for the volatility ratios and then iteratively updating the volatility ratios until the fugacities of all components in all phases converged. Wilson’s correlation for estimating the volatility ratios is given by: 𝐾𝑖 = 𝑃𝑐𝑖 𝑃 𝐸𝑋𝑃[5.37(1 + 𝜔𝑖) (1 − 𝑇𝑐𝑖 𝑇 )] The SRK equation was used to calculate the fugacity coefficients. The fugacity coefficients, φi, and fugacity, fi, are defined by the following two relationships. ln(Φ 𝑖) = (𝐵𝐵)𝑖(𝑍 − 1) − ln(Z − B) − 𝐴 𝐵 [(𝐴𝐴)𝑖 − (𝐵𝐵)𝑖]ln[ 𝑍 + 𝐵 𝑍 ] where: (𝐵𝐵)𝑖 = 𝑏 𝑖 𝑏 𝑚 and (𝐴𝐴)𝑖 = 2 (𝑎𝛼) 𝑚 [(𝑎𝛼)𝑖 0.5 ∑ 𝑐𝑗(𝑎𝛼) 𝑗 0.5 (1 − 𝛿𝑖𝑗)] 𝑛 𝑐 𝑗 𝑓𝑖 = 𝑐𝑖Φ 𝑖 𝑝 Initially, we used a two-component mixture such that the Rachford-Rice equation could be simplified to the Warren-Adewumi equation and the split factor αg could be found explicitly. The Rachford-Rice equation and Warren-Adewumi equation are as follows: Rachford-Rice equation: 𝑔(𝛼 𝑔) = ∑ 𝑐 𝑖(𝐾 𝑖−1) 1+𝛼 𝑔(𝐾 𝑖−1) 𝑛 𝑐 𝑖=1
  • 7. 8 Warren-Adewumi: 𝛼 𝑔 = −[ 𝑐1 𝐾2−1 + 𝑐2 𝐾1−1 ]; 𝛼 𝐿 = 1 − 𝛼 𝑔 Finally, to calculate the volatility ratios and molar split factor of a separator with a stream containing more than two components, we replaced the Warren-Adewumi equation in the previous function with a function that calculates the molar split factor using the Newton- Raphson method to solve the Rachford-Rice equation implicitly for the split factor if given the composition and component volatility ratios (“alphaFunction_Final.m”). The Newton-Raphson method for calculating the molar split factor utilizes an iterating process that updates αg until the the specified convergence is achieved. Using these three functions, we were able to calculate all of the operational and thermodynamic parameters that are required for the design of the surface production facility.
  • 8. 9 Input Given Data and Input Mixfile Data  Check reservoir fluid phase to see if it is single or two phase  Calculate split factor  Plug in values of α=0 and α=1 and if g(αg) returns two positives it is single phase gas, two negatives is single phase liquid and a positive and negative indicates 2-phase reservoir  Z-Factor Calculation of Reservoir Fluids  Calculate Molar Flow Rate to Separation Train  Calculate Split Factor for First Separation Train using the split factor function and z factor function  Calculate Split Factor for Stock Tank using the split factor function and z factor function  Calculate End Train Parameters  liquid MW, liquid density, liquid SG, API gravity, liquid flow rate, gas flow rate, total split factor, GOR, glycol tower gas composition, MW and z- factor Pressure loop which inputs pressures ranging from 14.7:10:834.7 to find optimum operating pressure Lowest GOR and Highest API? Yes No Done Iterations
  • 9. 10 Section 3 Reservoir Characterization and Feed Rate Calculation The reservoir has been described as a single phase natural gas reservoir at conditions of 7500 psia and 375°F. We began by performing Rachford-Rice calculations to prove that the reservoir is a single phase gas reservoir. The Rachford-Rice equation is given by: [1] Under equilibrium conditions, g(αg) = 0 due to conservation of mass. To determine the phase of the reservoir, the Rachford Rice equation was solved under two cases: g(αg=0) and g(αg=1) using the reservoir composition and volatility ratios given by fugacity calculations with the SRK equation of state (See code in the Appendix). In case 1, g(αg=0) = 0.01384 and in case 2, g(αg=1) = 0.00051. Since both of these values are positive and the Rachford-Rice function is monotonically decreasing over this range, it indicates that the true value of αg is greater than one. This means that the reservoir is in fact a single phase gas reservoir at the given temperature, pressure, and composition. To calculate the molar feed rate entering the surface production facility from the production manifold, the reservoir flow rate was converted to a molar flow rate using the following equations: 𝑞𝑡𝑜𝑡𝑎𝑙 = 𝑞 𝑤𝑒𝑙𝑙 ∗ 18 [2] 𝑛𝑓𝑒𝑒𝑑 = 𝑞 𝑡𝑜𝑡𝑎𝑙 ∗ 𝑃 𝑟𝑒𝑠𝑒𝑟𝑣𝑜𝑖𝑟 𝑍 𝑟𝑒𝑠𝑒𝑟𝑣𝑜𝑖𝑟 ∗ 𝑅∗ 𝑇 𝑟𝑒𝑠𝑒𝑟𝑣𝑜𝑖𝑟 [3] The reservoir Z factor (Zreservoir = 1.2444) was calculated using the SRK equation of state for the reservoir composition at the given reservoir conditions (See code in Appendix). Based on this
  • 10. 11 calculation, the molar feed rate of hydrocarbons to the surface production facility is approximately 14,200 lb-mol/d.
  • 11. 12 Section 4 Determination of Separator Operating Pressures As stated before, the goal of the stabilization train is to meet condensate vapor pressure specifications while maximizing liquids recovery at a minimum cost. The stabilization train in this case consists of a high pressure separator, a low pressure separator, and a stock tank. All equipment is assumed to operate at 60°F. The high pressure separator is a three phase separator (free water knockout) that removes all incoming liquid water. This separator must operate between 820 and 1350 psig due to constraints from the production manifold and the need to minimize recompression costs. The second separator operates at a pressure between the high pressure separator and atmospheric, and the stock tank operates at atmospheric pressure (14.7 psia). To determine the optimum operating pressures for the two separators, the separation train code was used with a double loop which tested pressures between 835-1365 psia for the first separator and 20-830 psia for the second separator at 10 psi increments. 10 psi was chosen as an increment because it was assumed that the pressure of a separator can be reasonably controlled to within +/- 5 psi. For each pressure, the facility GOR and API gravity of the stock tank oil was entered in the resulting 54x81 matrix. All of the pairs of operating conditions were analyzed to determine which pair gave the lowest GOR and highest API gravity. These results can be seen in the figures below.
  • 12. 13 Figure 1: Determination of Separator Pressures by Minimizing GOR Based on Figure 1, the minimum GOR of 4373 SCF/bbl occurs at a HP separator pressure of 835 psia and a LP separator pressure of 60 psia. 4300 4400 4500 4600 4700 4800 0 50 100 150 200 250 300 350 400 450 500 GOR(SCF/bbl) LP Separator Operating Pressure, psia GOR vs. LP Separator Operating Pressure for Various HP Separator Operating Pressures 835 psia 935 psia 1035 psia 1135 psia 1235 psia 1335 psia
  • 13. 14 Figure 2: Determination of Separator Pressures by Maximizing API Gravity Based on Figure 2, a maximum API gravity of the stock tank oil also occurs at a HP separator pressure of 835 psia and a LP separator pressure of 60 psia. This makes sense because in minimizing the GOR more of the light hydrocarbon compounds remain in the liquid phase, thereby reducing the specific gravity of the stock tank oil. 63 63.5 64 64.5 65 65.5 66 0 50 100 150 200 250 300 350 400 450 500 APIGravity LP Separator Operating Pressure, psia API Gravity vs. LP Separator Operating Pressure for Various HP Separator Operating Pressures 835 psia 935 psia 1035 psia 1135 psia 1235 psia 1335 psia
  • 14. 15 Section 5 Sizing of Separator Vessels Once the operating pressure of each separator was determined, the dimensions and orientation of each separator could be determined based on the data generated from the code. For each separator, both a vertical and horizontal separator were sized so that a comparison could be made and the most economical vessel orientation could be chosen. Generally, the design which utilized less material (i.e. smaller vessel volume) was the design chosen for our facility. This section first outlines the process of sizing the 3-phase vertical separator, followed by the process for sizing the 3-phase horizontal separator. Once this is done, the two separators are compared and the one with the smallest volume is chosen for our facility.
  • 15. 16 STAGE 1- HIGH PRESSURE SEPARATOR 3-Phase Vertical Separator: The following table outlines the results of the 3-phase vertical separator sizing. Table 2. Stage 1 3-Phase vertical separator sizing Below is a table of the outputs generated from our code which were necessary inputs in the calculation of the vertical separator. All of these variables were generated at each stage in the separation train which allowed sizing at the various stages. cd 1.2832 Vtog 0.35396 ft/s Vtwo 0.4732 ft/s Dv,g 4.81112 ft Dv,g 5 ft 10.5 Dv,o 1.55135 ft Dv,o 2 ft tro=trw 300 sec Hlc 16.9243 ft Hil 2.5 ft Hvd 5 ft Hme 1.5 ft Ht 25.9243 ft Ht 30 ft 30 (L/D) 6 1.5<(L/D)<3 2.857143 Volume 589.049 ft 3 2597.704 3-Phase Vertical Separator
  • 16. 17 Table 3. Fluid and thermodynamic properties for each stage of separation train The first step necessary for sizing the three phase vertical separator is to determine the terminal velocity of water through oil and oil through gas (vtwo & vtog). This calculation was done using the terminal velocity equation derived from force balance, rather than using the Souder’s & Brown Equation because it is more accurate. The Souder’s & Brown equation uses an empirical separation coefficient (KSB) which is an approximate range depending on the type of separator. In order to calculate the terminal velocity, it was necessary to carry out multiple iterations to derive the drag coefficient (CD). Also a particle droplet size of 100 microns was used for the calculation of vtog while 500 microns was used for vtwo due to industry standards. These standards are set so that the mist extractor can operate properly and not become flooded. The table below outlines the iterative procedure recommended by Arnold & Steward, which calculates the drag coefficient. Stage 1 Stage 2 Stage 3 Pressure psia 834.7 60 14.7 alphaG 0.69100874 0.362679 0.1401499 alphaL 0.30899126 0.637321 0.8598501 qg lbmol/d 98312.9001 15943.93 3926.6706 qo lbmol/d 43961.5678 28017.64 24090.969 qg ft 3 /s 6.43480853 16.70387 16.965827 qo ft 3 /s 0.8944496 0.720038 0.6663914 Gas Z Factor ft 3 /s 0.84599191 0.973383 0.9835095 Liquid Z Factor 0.26298065 0.023877 0.0062966 MWg lb/lbmol 18.7936044 27.56189 42.7193 Mwo lb/lbmol 72.5379499 98.13236 107.16433 ρg lb/ft 3 3.32331277 0.30449 0.1144352 ρo lb/ft 3 41.2637631 44.19518 44.839564 Information Needed for Design
  • 17. 18 Table 4. Stage 1 terminal velocity and drag coefficient determination With these variables established, the two terminal velocities were able to be calculated. The next step was to determine the vessel internal diameter. The gas and water constraints were both used to calculate two diameters. Since the diameter was largest for the gas constraint, this diameter was rounded up to the nearest 0.5 ft. and used for the vessel internal diameter. Liquid retention times for water and oil were determined based off of the calculated API of the fluid. The API of the fluid was 65.415, which according to API Specifications meant that an oil and water retention time (tro & trw) of three to five minutes would be sufficient for separation. We chose to use the maximum, five minutes, as our retention time to add an additional safety factor to encounter for surges, foaming or other variables that could impede separation. There are two procedures that can be carried out to determine the height of the separator, one simplified version and one more detailed. The detailed approach was chosen to ensure the most accurate measurements were obtained. The length between the liquid level and inlet nozzle, the length of the vapor disengagement section, the length required to accommodate a mist eliminator and the height of liquid collection section were all summed to give a total height of 30 ft. The volume Cd Vtog Re 0.34 0.68763884 91.94006648 0.913913168 0.41941831 56.07790808 1.168589312 0.37091031 49.59219341 1.249952038 0.35863542 47.95099213 1.273744944 0.35527007 47.50103093 1.280533218 0.35432715 47.37495903 1.28245656 0.35406135 47.33942083 1.283000439 0.3539863 47.32938589 1.283154151 0.3539651 47.32655096 1.283197587 0.35395911 47.32574996 Iteration Table - HP
  • 18. 19 was then determined to be 589.049 ft3 . It is recommended that the design of a vertical separator should have a slenderness ratio between 1.5 and 3. Using the selected dimensions from this design produces a slenderness ratio of 6 which is not within this range. Because the slenderness ratio was not within range, the diameter was increased by increments of 0.5 ft. until this ratio was achieved. After this manipulation it was determined that the diameter would be 10.5 ft. which produced a slenderness ratio of 2.86 and a volume of 2,597.704 ft3 . The diameter was able to be increased from 5 ft. to 10.5 ft. because the calculated diameter of 5 ft. was the minimum required diameter.
  • 19. 20 Figure 3. Flow chart for designing stage 1 3-phase vertical separator CD •Intial guess of CD=0.34 and calculate vt: 𝑣𝑡( 𝑓𝑡 𝑠 ) = 4 3 𝑔( 𝑓𝑡 𝑠2)𝑑 𝑝(𝑓𝑡) 𝐶 𝐷 𝜌 𝑜( 𝑙𝑏 𝑓𝑡3)−𝜌 𝑔( 𝑙𝑏 𝑓𝑡3) 𝜌 𝑔( 𝑙𝑏 𝑓𝑡3) •Calculate Reynolds number using the current value of vt: 𝑅 𝑒 = 𝜌 𝑜 𝑙𝑏 𝑓𝑡3 ×𝑑𝑝 (𝑓𝑡)×𝑣𝑡 𝑓𝑡 𝑠 𝜇𝑜 𝑙𝑏 𝑓𝑡−𝑠 •Recalculate CD: 𝐶 𝐷 = 24 𝑅 𝑒 + 3 𝑅 𝑒 + 0.34 •Recalculate vt •Iterations are stopped once values of vt converge and CD is obtained vtog vtwo •The terminal velocity of water in oil and oil in gas were calculated using the folowing equations •𝑣𝑡𝑜𝑔( 𝑓𝑡 𝑠 ) = 4 3 𝑔( 𝑓𝑡 𝑠2)𝑑 𝑝(𝑓𝑡) 𝐶 𝐷 𝜌 𝑜( 𝑙𝑏 𝑓𝑡3)−𝜌 𝑔( 𝑙𝑏 𝑓𝑡3) 𝜌 𝑔( 𝑙𝑏 𝑓𝑡3) •𝑣𝑡𝑤𝑜( 𝑓𝑡 𝑠 ) = 1 18 × 𝑔 𝑓𝑡 𝑠2 𝑑 𝑝𝑤𝑜 2 𝑓𝑡2 𝜇 𝑜 𝑙𝑏 𝑓𝑡−𝑠 × 𝜌 𝑜( 𝑙𝑏 𝑓𝑡3) − 𝜌 𝑔( 𝑙𝑏 𝑓𝑡3 ⬚ Dv,g Dv,o •The diamater of the vessel was calculated for the gas constraint and water constraint. The larger diamter was chosen and rounded to 0.5 ft. •𝐷𝑣𝑔 ≥ 4 𝜋 𝑞 𝑔 𝑓𝑡3 𝑠 𝑣 𝑡𝑜𝑔 𝑓𝑡 𝑠 •𝐷𝑣𝑜 ≥ 4 𝜋 𝑞 𝑜 𝑓𝑡3 𝑠 𝑣 𝑡𝑤𝑜 𝑓𝑡 𝑠 Hlc •Liquid Capactity Constraint: Height of the liquid collection section is determined from liquid retention time, diamater and oil and water flow rates •𝐻𝑙𝑐 = 4 𝜋 𝑞 𝑜 𝑡 𝑟𝑜 𝑓𝑡3 +𝑞 𝑤 𝑡 𝑟𝑤 𝑓𝑡3 𝐷 𝑣 2 𝑓𝑡2 Ht •Using the detailed procedure the heights from the various components were added and then rounded to 0.25 ft. to get the total height •Ht = Hlc + Hil + Hvd +Hme
  • 20. 21 3-Phase Horizontal Separator: Table 5. Stage 1 3-phase horizontal separator screening table The same outputs, generated by the code, which were used in the previous section, were instrumental in the design of the 3-phase horizontal separator. New inputs that were not necessary for the vertical design were the fraction of height and fraction of the vessels cross sectional area occupied by each of the three phases (oil, water, gas). We chose to operate the vessel at 50% full, due to industry standards and added safety factors to account for surges. It was also given that the fractional amount of produced water at the surface was a volumetric ration of 0.32 with respect to the amount of condensate produced at stock tank conditions. This knowledge, in addition to the oil flow rate at stock tank conditions allowed us to calculate the flow rate of water. The same equations that were used for terminal velocity in the vertical separator were also used, including the same droplet diameter target. However, new equations were required to calculate the diameter which satisfied the liquid and gas capacity constraints. These diameters were calculated using a range of (L/D)eff values from 1.5 to 5.5 based on industry practice. The liquid retention times from the previous section were used as they satisfied
  • 21. 22 the conditions outline by the API guide. Once the diameters for the liquid and gas constraints were calculated, the larger diameter for each (L/D)eff value was chosen and rounded to the nearest 0.5 ft. The rest of the steps were carried out using the horizontal separator design screening table which outlines the process to determine the diameter and height of the vessel. Once the screening table was filled out, values of (Lt/Dmax)actual were chosen that were greater than 3 but less than 5. We had three values that fell within this requirement. In order to choose the best of the three options, the volumes of all three were compared and the design was chosen which had the smallest volume. The smallest volume most often corresponds to the cheapest cost. The design chosen had a diameter of 7 feet, length of 23.5 feet, and a volume of 904.386 ft3 .
  • 22. 23 Figure 4. Flow chart for sizing stage 1 3-phase horizontal separator vtog vtow •The same terminal velocities which were calculated in the previous section were used in the following calculations Dh,g Dh,liq •The minimum diamater that satisfies the gas capacity and liquid capacity considerations were calculated •𝐷ℎ𝑔 ≥ 4 𝜋 𝑓 𝐻𝑔 𝑓 𝐴𝑔 𝑞 𝑔 𝑓𝑡3 𝑠 𝑣 𝑡𝑜𝑔 𝑓𝑡 𝑠 × 𝐿 𝐷 𝑒𝑓𝑓 •𝐷ℎ𝑙𝑖𝑞 ≥ 4 𝜋 × 𝑞 𝑜 𝑡 𝑟𝑜 𝑓𝑡3 +𝑞 𝑤 𝑡 𝑟𝑤 𝑓𝑡3 𝑓 𝐴𝑙× 𝐿 𝐷 𝑒𝑓𝑓 1 3 Dh,max •The largest diameter between the two constraints was chosen and rounded to 0.5 ft. Leff •𝐿𝑒𝑓𝑓 = 𝐷ℎ,𝑚𝑎𝑥 × 𝐿 𝐷 𝑒𝑓𝑓 Lt •Since the liquid hold up controlled the design for each instance of (L/D)eff the following was used to calculate Lt •𝐿 𝑡 = 4 3 × 𝐿 𝑒𝑓𝑓 •This Lt value is then rounded to the nearest 0.25 ft increment Final Step •The volume and (L/D)actual are then calculated and the design that falls in the slenderness ratio of 3<(L/D)<5 and has the smalles volume is chosen
  • 23. 24 Conclusion: The 3-phase separator design our group chose to implement for the first separation stage was the horizontal separator. Comparing the two separators, the horizontal separator had a volume that was 1,693.32 ft3 less than the vertical design. The horizontal separator will be the best option as it satisfies all of the field requirements and will be cheaper because there is less material needed for vessel construction. Horizontal separators can handle much higher GOR well-streams because their design allows for higher gas velocities, this is another reason why horizontal is more advantageous than vertical for our application. Horizontal separators are also generally cheaper to produce than vertical separators and cheaper to ship and assemble. It is for these various reasons that our group decided to go with the horizontal separator design.
  • 24. 25 STAGE 2- LOW PRESSURE SEPARATOR Vertical In order to size a vertical 2-phase separator, the terminal velocity for an oil droplet through the gas must be determined. Because the drag coefficient, CD, is a function of terminal velocity, Vt, the calculations must be iterated until the values converge. The following flow chart outlines the process for designing a 2-phase vertical separator. Figure 5. Flow chart for 2-phase vertical separator design Vt •Calculate terminal velocity and drag coefficient by iterating the following three equations • 𝑣𝑡( 𝑓𝑡 𝑠 ) = 4 3 𝑔( 𝑓𝑡 𝑠2)𝑑 𝑝(𝑓𝑡) 𝐶 𝐷 𝜌 𝑜( 𝑙𝑏 𝑓𝑡3)−𝜌 𝑔( 𝑙𝑏 𝑓𝑡3) 𝜌 𝑔( 𝑙𝑏 𝑓𝑡3) , 𝑅𝑒 = 𝜌 𝑔( 𝑙𝑏 𝑓𝑡3)𝑑 𝑝(𝑓𝑡)𝑣 𝑡( 𝑓𝑡 𝑠 ) 𝜇 𝑔( 𝑙𝑏 𝑓𝑡−𝑠 ) , 𝐶 𝐷 = 24 𝑅𝑒 + 3 𝑅𝑒 + 0.34 •Similar to the 3-phase iteration process for Vt, CD, and Re DV •Calculate the vessel internal diameter based on the gas capacity • 𝐷 𝑉 𝑓𝑡 = 4 𝜋 𝑞 𝑔( 𝑓𝑡3 𝑠 ) 𝑣 𝑔( 𝑓𝑡 𝑠 ) •Vessel diameter is rounded to next 6 inch increment Hlc •The length of the liquid collection section is given by the following equation: • 𝐻𝑙𝑐 = 4 𝜋 𝑞 𝑜( 𝑓𝑡3 𝑚𝑖𝑛 )𝑡 𝑅(min) 𝐷 𝑉 2 Ht •The total length of the vertical separator is found by summing four composite heights •Total length: 𝐻𝑡 = 𝐻𝑙𝑐 + 𝐻𝑖𝑙 + 𝐻 𝑣𝑑 + 𝐻 𝑚𝑒 •Length between liquid level and inlet nozzle: 𝐻𝑖𝑙 = max{ 1 2 𝐷 𝑉(𝑓𝑡), 2𝑓𝑡} •Length of vapor disengagement section (gravity settling): 𝐻 𝑣𝑑 = max{𝐷 𝑉(𝑓𝑡), 3𝑓𝑡} •Length required to accommodate a mist extractor 𝐻 𝑚𝑒 = 0 no mist extractor 𝑜𝑟 𝐻 𝑚𝑒 = 1.5 𝑓𝑡 (𝑤𝑖𝑡ℎ 𝑚𝑖𝑠𝑡 𝑒𝑥𝑡𝑟𝑎𝑐𝑡𝑜𝑟)
  • 25. 26 The following table shows the iteration process results, where the value of CD is updated in each row before recalculating Vt and Re. Table 6. Stage 2 terminal velocity and drag coefficient determination According to the final row of the iteration table, the drag coefficient will be taken as CD = 3.058886739 and the terminal velocity will be taken as Vt = 0.81461405 ft/s. These values are used to continue with the sizing of the separator. The vessel internal diameter and vessel length can now be calculated. Our stage 2 separator will include a mist extractor. The following table summarizes the results of the 2-phase vertical separator sizing process. Cd Vt Re 0.34 2.44339757 38.3034932 1.451307121 1.18264373 18.5395069 2.331275095 0.93311858 14.6278696 2.765091311 0.85679882 13.4314563 2.945427488 0.83015546 13.0137864 3.015807545 0.82041159 12.8610382 3.042634598 0.81678677 12.8042145 3.052770321 0.81542971 12.7829407 3.056587074 0.81492044 12.7749572 3.058022534 0.81472915 12.7719586 3.05856215 0.81465728 12.7708318 3.058764966 0.81463027 12.7704084 3.05884119 0.81462012 12.7702493 3.058869836 0.8146163 12.7701895 3.058880601 0.81461487 12.7701671 3.058884647 0.81461433 12.7701586 3.058886168 0.81461413 12.7701554 3.058886739 0.81461405 12.7701542 Iteration Table - LP
  • 26. 27 Table 7. Stage 2 2-phase vertical separator sizing The final dimensions for a 2-phase vertical separator are as follows: DV = 5.5 ft, Ht = 11.75 ft, and Volume = 279.16 ft3 . Horizontal For a 2-phase horizontal separator, the terminal velocity for an oil droplet moving through the separator is assumed to be the same as that moving through a vertical separator. Therefore, the Vt of 0.81461405 ft/s that was found above will apply to this design as well. For the case of designing a horizontal vessel, both the gas capacity constraint and liquid capacity constraint must be satisfied. Therefore, the vessel diameter is calculated using both capacities and the largest is selected. The dimensions will be calculated for a range of (L/D)eff between 1.5 Cd 3.05888674 Vtog (ft/s) 0.81461405 Re 12.7701542 qg (ft 3 /s) 16.7038651 Dv (ft) 5.10960816 Dv, actual (ft) 5.5 qo (ft 3 /min) 43.2022566 tR (min) 1 Hlc(ft) 1.81840732 Hil (ft) 2.75 Hvd (ft) 5.5 Hme (ft) 1.5 Ht (ft) 11.5684073 Ht, actual (ft) 11.75 L/D 2.13636364 Volume (ft3 ) 279.15996 2-Phase Vertical Separator
  • 27. 28 and 5.5. The following flow chart outlines the process for designing a 2-phase horizontal separator. Figure 6. Flow chart for designing stage 2 2-phase horizontal separator The following screening table outlines the process of optimizing the size of the horizontal 2-phase separator. (L/D)eff was set over a range between 1.5 and 5.5. Dhg and Dhl were calculated for each value of (L/D)eff to find which fluid constrains the design. The design was narrowed down to the separator dimensions with an actual L/D between 3 and 4. From these two sets of dimensions, the separator with the smallest volume was selected as the optimal horizontal Dh,g •Dh,g is the vessel diameter based on the gas capacity constraint • 𝐷ℎ,𝑔 = 4 𝜋 𝑓 𝐻𝑔 𝑓 𝐴𝑔 𝑞 𝑔 𝑣 𝑡 𝐿 𝐷 𝑒𝑓𝑓 •Vt is the same value used in vertical separator design Dh,l •Dh,l is the vessel diameter based on the liquid capacity constraint • 𝐷ℎ,𝑙 = 4 𝜋 𝑡 𝑅𝑙 𝑞𝑙 𝑓 𝐴𝑙 𝐿 𝐷 𝑒𝑓𝑓 3 •tRl for our design is 1 minute because the API is larger than 35° Dh,max •The maximum of Dh,g and Dh,l is selected to determine if the vessel is gas constrained or liquid constrained •Dh,max is rounded to the next 6 inch increment to comply with manufacturing specifications Lt •First, the effective vessel length is calculated by: Leff = Dh,max x (L/D)eff •Since all of the cases are liquid controlled, actual vessel length is calculated by: Lt = (4/3) x Leff •Lt is rounded to nearest 3 inch (0.25 ft) increment to comply with manufacturing specifications Vol. •The dimensions are narrowed down to those with 3 < (L/D)actual < 4 •Separator volume is calculated by the following equation: 𝑉𝑜𝑙𝑢𝑚𝑒 𝑓𝑡3 = 𝜋𝐷ℎ,𝑚𝑎𝑥 2 𝐿 𝑡 4 •The separator with the smallest volume and 3 < (L/D)actual < 4 is selected
  • 28. 29 separator design. The final horizontal separator is highlighted and has dimensions of Dh = 3.5 ft and Lt = 14 ft. Table 8. Stage 2 2-phase horizontal separator screening table Conclusion Now that the sizing process has been completed for both a vertical and horizontal design, the final separator design should be selected based on economics. In order to minimize the cost of implementing the 2-phase separator in the surface production facility, the separator with the smallest volume will be selected. The vertical separator has a volume of 279.16 ft3 and the horizontal separator has a volume of 134.70 ft3 . Therefore, the selected design for the second stage of the separation train will be a 2-phase horizontal separator with a diameter of 3.5 ft and length of 14 ft. (L/D)eff Dhg (ft) Dhl (ft) Dh max (ft) Leff (ft) Lt (ft) Lt Actual (ft) Volume (ft 3 ) L/D Actual 1.5 4.172 4.186 4.5 6.75 9.000 9 143.139 2 2 3.613 3.803 4 8 10.667 10.75 135.088 2.6875 2.5 3.232 3.530 4 10 13.333 13.5 169.646 3.375 3 2.950 3.322 3.5 10.5 14.000 14 134.696 4 3.5 2.731 3.156 3.5 12.25 16.333 16.5 158.749 4.714286 4 2.555 3.019 3.5 14 18.667 18.75 180.396 5.357143 4.5 2.409 2.902 3 13.5 18.000 18 127.235 6 5 2.285 2.802 3 15 20.000 20 141.372 6.666667 5.5 2.179 2.715 3 16.5 22.000 22 155.509 7.333333
  • 29. 30 Section 6 Sizing of Dehydrator System Glycol Tower Design Given Information: P=834.7 psi qgsc= 44.834 MMSCFD Rc=3 galTEG/lbH2O Wout=4.0 lbH2O/MMSCF T=600 F Step 1: Calculate Water Removal Target and Required Glycol Rate From Fig 20-4: Win=21 lbH2O/MMSCF Dew Point = 600 F Wout=4.0 lbH2O/MMSCF Dew Point = 150 F 𝑊𝑎𝑡𝑒𝑟 𝑇𝑎𝑟𝑔𝑒𝑡 = (W𝑖𝑛 − W𝑜𝑢𝑡) ∗ 𝑞 𝑔 𝑊𝑎𝑡𝑒𝑟 𝑇𝑎𝑟𝑔𝑒𝑡 = (21 𝑙𝑏 𝐻2 𝑂/ 𝑀𝑀𝑆𝐶𝐹 − 4.0 𝑙𝑏 𝐻2 𝑂/ 𝑀𝑀𝑆𝐶𝐹) ∗ 44.834 𝑀𝑀𝑆𝐶𝐹𝐷 𝑊𝑎𝑡𝑒𝑟 𝑇𝑎𝑟𝑔𝑒𝑡 = 762.178 𝑙𝑏 𝐻2 𝑂/𝐷𝑎𝑦 𝑞 𝑇𝐸𝐺 = 𝑊𝑎𝑡𝑒𝑟 𝑇𝑎𝑟𝑔𝑒𝑡 ∗ R 𝑐 = 762.178 𝑙𝑏𝐻2 𝑂 𝐷𝑎𝑦 ∗ 3.0 𝑔𝑎𝑙𝑇𝐸𝐺 𝑙𝑏𝐻2 𝑂 = 2286.53 𝑔𝑎𝑙𝑇𝐸𝐺 𝐷𝑎𝑦 Step 2: Calculate all Concentrations Entering and Leaving Contactor From Fig 20-59 𝑋𝑖𝑛 = 97.5 𝑤𝑡% (Including 150 F safety factor) From Fig 20-4: Win=21 lbH2O/MMSCF Dew Point = 600 F
  • 30. 31 Wout=4.0 lbH2O/MMSCF Dew Point = 150 F From Fig 20-34 ρ 𝑇𝐸𝐺 = 9.39 𝑙𝑏𝑇𝐸𝐺 𝑔𝑎𝑙 𝑚 𝑇𝐸𝐺 = 𝑞 𝑇𝐸𝐺 ∗ ρ 𝑇𝐸𝐺 = 2286.53 𝑔𝑎𝑙𝑇𝐸𝐺 𝐷𝑎𝑦 ∗ 9.39 𝑙𝑏𝑇𝐸𝐺 𝑔𝑎𝑙 = 21470.5167 𝑙𝑏𝑇𝐸𝐺 𝐷𝑎𝑦 X 𝑜𝑢𝑡 = X 𝑖𝑛 − 𝑊𝑎𝑡𝑒𝑟 𝑇𝑎𝑟𝑔𝑒𝑡 𝑚 𝑇𝐸𝐺 = 0.975 ∗ 2286.53 𝑔𝑎𝑙𝑇𝐸𝐺 𝐷𝑎𝑦 21470.5167 𝑙𝑏𝑇𝐸𝐺 𝐷𝑎𝑦 = 93.95 𝑤𝑡% Step 3: Estimate Number of Stages From McCabe Thiele plot: Since the operational line crosses the equilibrium line, we can never reach the required water content leaving the contactor; therefore, N=infinity, and we must reevaluate our parameters.
  • 31. 32 Figure 7. McCable-Thiele plot for glycol dehydration stage determination: first attempt Second Attempt We can increase the wt% lean glycol to improve our results Given Information: P=834.7 psi qgsc= 44.834 MMSCFD Rc=3 galTEG/lbH2O Wout=4.0 lbH2O/MMSCF T=600 F 𝑋𝑖𝑛 = 99.0 𝑤𝑡% Step 1: Calculate Water Removal Target and Required Glycol Rate 𝑊𝑎𝑡𝑒𝑟 𝑇𝑎𝑟𝑔𝑒𝑡 = (W𝑖𝑛 − W𝑜𝑢𝑡) ∗ 𝑞 𝑔 𝑊𝑎𝑡𝑒𝑟 𝑇𝑎𝑟𝑔𝑒𝑡 = (21 𝑙𝑏 𝐻2 𝑂/ 𝑀𝑀𝑆𝐶𝐹 − 4.0 𝑙𝑏 𝐻2 𝑂/ 𝑀𝑀𝑆𝐶𝐹) ∗ 44.834 𝑀𝑀𝑆𝐶𝐹𝐷
  • 32. 33 𝑊𝑎𝑡𝑒𝑟 𝑇𝑎𝑟𝑔𝑒𝑡 = 762.178 𝑙𝑏 𝐻2 𝑂/𝐷𝑎𝑦 𝑞 𝑇𝐸𝐺 = 𝑊𝑎𝑡𝑒𝑟 𝑇𝑎𝑟𝑔𝑒𝑡 ∗ R 𝑐 = 762.178 𝑙𝑏𝐻2 𝑂 𝐷𝑎𝑦 ∗ 3.0 𝑔𝑎𝑙𝑇𝐸𝐺 𝑙𝑏𝐻2 𝑂 = 2286.53 𝑔𝑎𝑙𝑇𝐸𝐺 𝐷𝑎𝑦 Step 2: Calculate all Concentrations Entering and Leaving Contactor From Fig 20-4: Win=21 lbH2O/MMSCF Dew Point = 600 F Wout=4.0 lbH2O/MMSCF Dew Point = 150 F From Fig 20-34 ρ 𝑇𝐸𝐺 = 9.39 𝑙𝑏𝑇𝐸𝐺 𝑔𝑎𝑙 𝑚 𝑇𝐸𝐺 = 𝑞 𝑇𝐸𝐺 ∗ ρ 𝑇𝐸𝐺 = 2286.53 𝑔𝑎𝑙𝑇𝐸𝐺 𝐷𝑎𝑦 ∗ 9.39 𝑙𝑏𝑇𝐸𝐺 𝑔𝑎𝑙 = 21470.5167 𝑙𝑏𝑇𝐸𝐺 𝐷𝑎𝑦 X 𝑜𝑢𝑡 = X 𝑖𝑛 − 𝑊𝑎𝑡𝑒𝑟 𝑇𝑎𝑟𝑔𝑒𝑡 𝑚 𝑇𝐸𝐺 = 0.990 ∗ 2286.53 𝑔𝑎𝑙𝑇𝐸𝐺 𝐷𝑎𝑦 21470.5167 𝑙𝑏𝑇𝐸𝐺 𝐷𝑎𝑦 = 95.45 𝑤𝑡% From McCabe Thiele Plot: N=3 We can now see a more appropriate depiction of the operational line. Using a higher wt% of lean glycol has improved our results by decreasing the number of required stages, and thereby decreasing the necessary height
  • 33. 34 Figure 8. McCabe-Thiele plot for glycol dehydration stage determination: second attempt Third Attempt We can also improve results by operating the contactor tower at a higher temperature of 1000 F Given Information: P=834.7 psi qgsc= 44.834 MMSCFD Rc=3 galTEG/lbH2O Wout=4.0 lbH2O/MMSCF T=1000 F Step 1: Calculate Water Removal Target and Required Glycol Rate
  • 34. 35 From Fig 20-4: Win=65 lbH2O/MMSCF Dew Point = 1000 F Wout=4.0 lbH2O/MMSCF Dew Point = 150 F 𝑊𝑎𝑡𝑒𝑟 𝑇𝑎𝑟𝑔𝑒𝑡 = (W𝑖𝑛 − W𝑜𝑢𝑡) ∗ 𝑞 𝑔 𝑊𝑎𝑡𝑒𝑟 𝑇𝑎𝑟𝑔𝑒𝑡 = (65 𝑙𝑏 𝐻2 𝑂/ 𝑀𝑀𝑆𝐶𝐹 − 4.0 𝑙𝑏 𝐻2 𝑂/ 𝑀𝑀𝑆𝐶𝐹) ∗ 44.834 𝑀𝑀𝑆𝐶𝐹𝐷 𝑊𝑎𝑡𝑒𝑟 𝑇𝑎𝑟𝑔𝑒𝑡 = 2734.8741 𝑙𝑏 𝐻2 𝑂/𝐷𝑎𝑦 From Fig 20-59 𝑋𝑖𝑛 = 99.3 𝑤𝑡% (Including 150 F safety factor) 𝑞 𝑇𝐸𝐺 = 𝑊𝑎𝑡𝑒𝑟 𝑇𝑎𝑟𝑔𝑒𝑡 ∗ R 𝑐 = 2734.8741 𝑙𝑏𝐻2 𝑂 𝐷𝑎𝑦 ∗ 3.0 𝑔𝑎𝑙𝑇𝐸𝐺 𝑙𝑏𝐻2 𝑂 = 8204.662 𝑔𝑎𝑙𝑇𝐸𝐺 𝐷𝑎𝑦 Step 2: Calculate all Concentrations Entering and Leaving Contactor From Fig 20-4: Win=65 lbH2O/MMSCF Dew Point = 1000 F Wout=4.0 lbH2O/MMSCF Dew Point = 150 F From Fig 20-59 𝑋𝑖𝑛 = 99.3 𝑤𝑡% (Including 150 F safety factor) From Fig 20-34 ρ 𝑇𝐸𝐺 = 9.26 𝑙𝑏𝑇𝐸𝐺 𝑔𝑎𝑙 = 69.26 𝑙𝑏/𝑓𝑡3 𝑚 𝑇𝐸𝐺 = 𝑞 𝑇𝐸𝐺 ∗ ρ 𝑇𝐸𝐺 = 8204.662 𝑔𝑎𝑙𝑇𝐸𝐺 𝐷𝑎𝑦 ∗ 9.26 𝑙𝑏𝑇𝐸𝐺 𝑔𝑎𝑙 = 75974.80 𝑙𝑏𝑇𝐸𝐺 𝐷𝑎𝑦
  • 35. 36 X 𝑜𝑢𝑡 = X 𝑖𝑛 − 𝑊𝑎𝑡𝑒𝑟 𝑇𝑎𝑟𝑔𝑒𝑡 𝑚 𝑇𝐸𝐺 = 0.993 ∗ 2734.8741 𝑔𝑎𝑙𝑇𝐸𝐺 𝐷𝑎𝑦 75974.80 𝑙𝑏𝑇𝐸𝐺 𝐷𝑎𝑦 = 95.7 𝑤𝑡% From McCabe Thiele Plot: N=2 This is our best result of the three options since it provides us with the smallest contactor height which will save on cost. Figure 9. McCabe-Thiele plot for glycol dehydration stage determination: third attempt Step 4: Size the Tower We will use structured packing since packing height it typically shorter than that of bubble cap trays
  • 36. 37 Height Calculation: 𝐻𝑡 = 5 𝑓𝑡 𝑠𝑡𝑎𝑔𝑒 ∗ 𝑁 + 8 𝑓𝑡 = 5 𝑓𝑡 𝑠𝑡𝑎𝑔𝑒 ∗ 2 𝑠𝑡𝑎𝑔𝑒𝑠 + 8 𝑓𝑡 = 18 𝑓𝑡 Diameter Calculation: 𝑑 = √ 4 ∗ 𝑞 𝑔 𝜋 ∗ 𝑣𝑔 𝑣𝑔 = 𝐾𝑠𝑏 ∗ √ 𝜌𝑙 − 𝜌 𝑔 𝜌 𝑔 𝜌 𝑔 = 𝑀𝑊𝑔 ∗ 𝑃 𝑍 𝑅 𝑇 = 20.7715 𝑙𝑏𝑚 𝑙𝑏𝑚𝑜𝑙 ∗ 834.7 𝑝𝑠𝑖𝑎 0.7947 ∗ 10.73 𝑝𝑠𝑖𝑎 𝑓𝑡3 𝑙𝑏𝑚𝑜𝑙 𝑅 ∗ 560 𝑅 = 3.631 𝑙𝑏 𝑓𝑡3 𝑣𝑔 = 0.35 𝑓𝑡 𝑠 ∗ √ 69.26 𝑙𝑏 𝑓𝑡3 − 3.631 𝑙𝑏 𝑓𝑡3 3.631 𝑙𝑏 𝑓𝑡3 = 1.488 𝑓𝑡 𝑠 𝑞 𝑔 = 𝑞 𝑔𝑠𝑐 ∗ 𝑍 𝑇 𝑃𝑠𝑐 𝑃 𝑇𝑠𝑐 = 44.834 𝑀𝑀𝑆𝐶𝐹𝐷 ∗ 0.7947 ∗ 560 𝑅 ∗ 14.7 𝑝𝑠𝑖𝑎 834.7 𝑝𝑠𝑖𝑎 ∗ 520 𝑅 = 7.8211 𝑓𝑡 𝑠 𝑑 = √ 4 ∗ 𝑞 𝑔 𝜋 ∗ 𝑣𝑔 = √ 4 ∗ 7.8211 𝑓𝑡 𝑠 𝜋 ∗ 1.488 𝑓𝑡 𝑠 = 2.5869 𝑓𝑡 → 3.0 𝑓𝑡 The contactor tower will have a height of 18 ft and a diameter of 3.0 ft
  • 37. 38 Inhibitor Calculation *If the glycol contactor tower should go offline, the mass flowrate of MEG and MeOH necessary for hydrate inhibition is calculated as follows: Given Information: P=834.7 psia 𝑆. 𝐺. = 𝑀𝑊𝑔 𝑀𝑊𝑔 = 20.7715 𝑙𝑏𝑚 𝑙𝑏𝑚𝑜𝑙 29 𝑙𝑏𝑚 𝑙𝑏𝑚𝑜𝑙 = 0.71625 From Fig 20-4 @ 1000 F Win= 65 lbH2O/MMSCF @ 600 F Wout= 21 lbH2O/MMSCF Step 1: Calculate Hydrate Formation Temperature at Highest System Pressure From Fig 20-19 Th=63.50 F Step 2: Determine Lowest Temperature of the System Since the entire facility is known to operate at 600 F: Lowest T= 600 F Step 3: Calculate Required Hydrate Temperature Depression 𝑑 = 𝑇ℎ − 𝑇 = 63.5 − 60 = 3.50 𝐹 Step 4: Calculate Total Mass of Free Water Expected Within the System 𝑚 𝑤 = 𝑞 𝑔𝑠𝑐(W𝑖𝑛 − W𝑜𝑢𝑡) = 44.834 𝑀𝑀𝑆𝐶𝐹𝐷 ∗ (65 𝑙𝑏𝐻2 𝑂 𝑀𝑀𝑆𝐶𝐹 − 21 𝑙𝑏𝐻2 𝑂 𝑀𝑀𝑆𝐶𝐹 )
  • 38. 39 𝑚 𝑤 = 1972.696 𝑙𝑏 𝐷𝑎𝑦 Step 5: Calculate Required Inhibitor Concentration using Hammerschmidt Equation Calculations for MEG: 𝑥𝑖 = 𝑑 ∗ 𝑀𝑊 𝑑 ∗ 𝑀𝑊 + 2335 = 3.50 𝐹 ∗ 64 𝑙𝑏𝑚 𝑙𝑏𝑚𝑜𝑙 3.50 𝐹 ∗ 64 𝑙𝑏𝑚 𝑙𝑏𝑚𝑜𝑙 + 2335 = 8.5𝑤𝑡% Step 6: Calculate Mass of Inhibitor Required Based on Available Inhibitor Solution Assume 75 wt% MEG available 𝑚𝐼 = 𝑋 𝑅 ∗ 𝑚 𝑤 𝑋 𝐴𝑉 − 𝑋 𝑅 = 8.5𝑤𝑡% ∗ 1972.696 𝑙𝑏 𝐷𝑎𝑦 75𝑤𝑡% − 8.5𝑤𝑡% = 272.649 𝑙𝑏 𝐷𝑎𝑦 𝑜𝑓 75% 𝑀𝐸𝐺 Calculations for MeOH: 𝑥𝑖 = 𝑑 ∗ 𝑀𝑊 𝑑 ∗ 𝑀𝑊 + 2335 = 3.50 𝐹 ∗ 32 𝑙𝑏𝑚 𝑙𝑏𝑚𝑜𝑙 3.50 𝐹 ∗ 32 𝑙𝑏𝑚 𝑙𝑏𝑚𝑜𝑙 + 2335 = 4.58𝑤𝑡% Step 6: Calculate Mass of Inhibitor Required Based on Available Inhibitor Solution 𝑚𝐼 = 𝑋 𝑅 ∗ 𝑚 𝑤 𝑋 𝐴𝑉 − 𝑋 𝑅 = 0.0458 ∗ 1972.696 𝑙𝑏 𝐷𝑎𝑦 1 − .0458 = 94.686 𝑙𝑏 𝐷𝑎𝑦 𝑜𝑓 𝑝𝑢𝑟𝑒 𝑀𝑒𝑂𝐻 Additional Step 7: Account for Losses
  • 39. 40 From Fig 20-65 @600 F & 834.7 psia 1.95 lbMeOH/wt%/MMSCF 1.95 lbMeOH/wt%/MMSCF ∗ 44.834MMSCF ∗ 4.58wt% = 400.4 lb 𝐷𝑎𝑦 Total MeOH = 400.4 lb 𝐷𝑎𝑦 + 94.686 𝑙𝑏 𝐷𝑎𝑦 = 495.098 𝑙𝑏 𝐷𝑎𝑦 𝑀𝑒𝑂𝐻 80.87% of MeOH is lost to the gas phase
  • 40. 41 Appendix A MATLAB Code <Final_Project.m> % PNG 480: Design of a Surface Production Facility % Group Members: % Chad DiStanislao % Christopher Efstathion % David Hughes % Michael Silver % Last Updated: 4/21/15 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Step 1: Input Given Data & Import Mixfile Data format long % Import thermodynamic data matrix mixfile = dlmread('mixfile_final.txt'); % Import interaction parameters Delta = dlmread('Delta1.txt'); % Temperature of reservoir (Rankine) TRes = 375+460; % Temperature of facility (Rankine) TFacility = 60+460; % Pressure of reservoir (psi) pres = 7500; % Pressure 1 (psi) p1 = 820+14.7; % Pressure 2 (psi) p2 = 60; % Pressure 3 (psi) p3 = 14.7; % Gas Constant (ft^3 psi/R lb-mol) R = 10.73; % Create composition vector (mol fraction) c = mixfile(:,1); % Create molecular weight vector (lb/lb-mol) MW = mixfile(:,2); % Create critical temperature vector (degrees F) TCF = mixfile(:,3); % Create critical pressure vector (psi) PC = mixfile(:,4); % Create critical Z factor vector (dimensionless) ZC = mixfile(:,5); % Create acentric factor vector (dimensionless)
  • 41. 42 Acentric = mixfile(:,6); % Create Omega A factor vector (dimensionless) OmegaA = mixfile(:,7); % Create Omega B factor vector (dimensionless) OmegaB = mixfile(:,8); % Number of components (dimensionless) n=length(c); % Convert critical temperature vector to absolute (Rankine) TC = TCF + 460; % Reservoir Flow Rate (RCF/d/well) qres = 11750; % Number of Wells nwell = 18; % Fractional Amount of Water (qwater/qST) fw = 0.32; % Water Specification (lbH2O/MMSCF) Wout = 4.0; % Dehy Pressure (psi) Pdehy = p1; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Step 2: Z-Factor Calculation of Reservoir Fluid % Check reservoir fluid phase % Get volatility ratios splitFactor_Res = splitFunction_Final(c, pres, TRes, TC, PC, ZC, Acentric, OmegaA, OmegaB, Delta); K = splitFactor_Res(:,5); % Evaluate Rachford Rice, alphaG = 0 alphaG=0; gAlphaG = 0; for i = (1:n) gAlphaG = gAlphaG + (c(i)*(K(i)-1))/(1+alphaG*(K(i)-1)); end gAlphaG_0 = gAlphaG % Evaluate Rachford Rice, alphaG = 1 alphaG=1; gAlphaG = 0; for i = (1:n) gAlphaG = gAlphaG + (c(i)*(K(i)-1))/(1+alphaG*(K(i)-1)); end gAlphaG_1 = gAlphaG % ZOutput = [maxZ, minZ, A, B, aam, bm]; ZOutputRes = ZFactor_Final(c, pres, TRes, Delta, TC, PC, ZC, Acentric, OmegaA, OmegaB); % Output gas Z factor ZRes = ZOutputRes(1)
  • 42. 43 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Step 3: Calculate Molar Flow Rate to Separation Train % Calculate Total Flow Rate at Manifold (RCF/D) qtotal = qres * nwell; % Calculate Molar Flow Rate at Manifold (lb-mol/d) nfeed = (pres * qtotal) / (ZRes * R * TRes) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Step 4: Calculate Split Factor for First Separator % splitFunction_Final(composition, pressure, temperature, TCritical, PCritical, ZCritical, AcentricFactor, OA, OB, interaction) % splitFactor = [alphaG, alphaL, cgas, cliq]; splitFactor_1 = splitFunction_Final(c, p1, TFacility, TC, PC, ZC, Acentric, OmegaA, OmegaB, Delta); % Output alphaG alphaG_1 = splitFactor_1(1,1); % Output alphaL alphaL_1 = splitFactor_1(1,2); % Output gas composition cgas_1 = splitFactor_1(:,3); % Output liquid composition cliq_1 = splitFactor_1(:,4); % Calculate gas Z factor ZOutputGas_1 = ZFactor_Final(cgas_1, p1, TFacility, Delta, TC, PC, ZC, Acentric, OmegaA, OmegaB); ZGas_1 = ZOutputGas_1(1); % Calculate liquid Z factor ZOutputLiq_1 = ZFactor_Final(cliq_1, p1, TFacility, Delta, TC, PC, ZC, Acentric, OmegaA, OmegaB); ZLiq_1 = ZOutputLiq_1(2); % Calculate gas molecular weight (lb/lb-mol) MWGas_1 = sum(cgas_1.*MW); % Calculate liquid molecular weight (lb/lb-mol) MWLiq_1 = sum(cliq_1.*MW); % Calculate gas density (lb/ft3) rhoG_1 = p1 * MWGas_1/(ZGas_1 * R * TFacility); % Calculate liquid density (lb/ft3) rhoL_1 = p1 * MWLiq_1/(ZLiq_1 * R * TFacility); % Calculate gas flowrate (lb-mol/d) nG_1 = nfeed * alphaG_1; % Calculate liquid flowrate (lb-mol/d) nL_1 = nfeed * alphaL_1; % Calculate gas flowrate (ft3/sec) qG_1 = nG_1 * MWGas_1 / (rhoG_1 * 24 * 3600); % Calculate liquid flowrate (ft3/sec) qL_1 = nL_1 * MWLiq_1 / (rhoL_1 * 24 * 3600);
  • 43. 44 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Step 5: Calculate Split Factor for Second Separator % splitFunction_Final(composition, pressure, temperature, TCritical, PCritical, ZCritical, AcentricFactor, OA, OB, interaction) % splitFactor = [alphaG, alphaL, cgas, cliq]; splitFactor_2 = splitFunction_Final(cliq_1, p2, TFacility, TC, PC, ZC, Acentric, OmegaA, OmegaB, Delta); % Output alphaG alphaG_2 = splitFactor_2(1,1); % Output alphaL alphaL_2 = splitFactor_2(1,2); % Output gas composition cgas_2 = splitFactor_2(:,3); % Output liquid composition cliq_2 = splitFactor_2(:,4); % Calculate gas Z factor ZOutputGas_2 = ZFactor_Final(cgas_2, p2, TFacility, Delta, TC, PC, ZC, Acentric, OmegaA, OmegaB); ZGas_2 = ZOutputGas_2(1); % Calculate liquid Z factor ZOutputLiq_2 = ZFactor_Final(cliq_2, p2, TFacility, Delta, TC, PC, ZC, Acentric, OmegaA, OmegaB); ZLiq_2 = ZOutputLiq_2(2); % Calculate gas molecular weight (lb/lb-mol) MWGas_2 = sum(cgas_2.*MW); % Calculate liquid molecular weight (lb/lb-mol) MWLiq_2 = sum(cliq_2.*MW); % Calculate gas density (lb/ft3) rhoG_2 = p2 * MWGas_2/(ZGas_2 * R * TFacility); % Calculate liquid density (lb/ft3) rhoL_2 = p2 * MWLiq_2/(ZLiq_2 * R * TFacility); % Calculate gas flowrate (lb-mol/d) nG_2 = nL_1 * alphaG_2; % Calculate liquid flowrate (lb-mol/d) nL_2 = nL_1 * alphaL_2; % Calculate gas flowrate (ft3/sec) qG_2 = nG_2 * MWGas_2 / (rhoG_2 * 24 * 3600); % Calculate liquid flowrate (ft3/sec) qL_2 = nL_2 * MWLiq_2 / (rhoL_2 * 24 * 3600); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Step 6: Calculate Split Factor for Stock Tank % splitFunction_Final(composition, pressure, temperature, TCritical, PCritical, ZCritical, AcentricFactor, OA, OB, interaction) % splitFactor = [alphaG, alphaL, cgas, cliq];
  • 44. 45 splitFactor_3 = splitFunction_Final(cliq_2, p3, TFacility, TC, PC, ZC, Acentric, OmegaA, OmegaB, Delta); % Output alphaG alphaG_3 = splitFactor_3(1,1); % Output alphaL alphaL_3 = splitFactor_3(1,2); % Output gas composition cgas_3 = splitFactor_3(:,3); % Output liquid composition cliq_3 = splitFactor_3(:,4); % Calculate gas Z factor ZOutputGas_3 = ZFactor_Final(cgas_3, p3, TFacility, Delta, TC, PC, ZC, Acentric, OmegaA, OmegaB); ZGas_3 = ZOutputGas_3(1); % Calculate liquid Z factor ZOutputLiq_3 = ZFactor_Final(cliq_3, p3, TFacility, Delta, TC, PC, ZC, Acentric, OmegaA, OmegaB); ZLiq_3 = ZOutputLiq_3(2); % Calculate gas molecular weight (lb/lb-mol) MWGas_3 = sum(cgas_3.*MW); % Calculate liquid molecular weight (lb/lb-mol) MWLiq_3 = sum(cliq_3.*MW); % Calculate gas density (lb/ft3) rhoG_3 = p3 * MWGas_3/(ZGas_3 * R * TFacility); % Calculate liquid density (lb/ft3) rhoL_3 = p3 * MWLiq_3/(ZLiq_3 * R * TFacility); % Calculate gas flowrate (lb-mol/d) nG_3 = nL_2 * alphaG_3; % Calculate liquid flowrate (lb-mol/d) nL_3 = nL_2 * alphaL_3; % Calculate gas flowrate (ft3/sec) qG_3 = nG_3 * MWGas_3 / (rhoG_3 * 24 * 3600); % Calculate liquid flowrate (ft3/sec) qL_3 = nL_3 * MWLiq_3 / (rhoL_3 * 24 * 3600); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Step 7: Calculate End Train Parameters % ZOutput = [maxZ, minZ, A, B, aam, bm]; ZOutputST = ZFactor_Final(cliq_3, p3, TFacility, Delta, TC, PC, ZC, Acentric, OmegaA, OmegaB); ZST = ZOutputST(2); % Calculate liquid molecular weight (lb/lb-mol) MW_ST=sum(cliq_3.*MW); % Calculate liquid density (lb/ft3) Liq_density = MW_ST*14.7/(ZST*R*TFacility); % Calculate liquid specific gravity (dimensionless) SG_liq = Liq_density/62.4 % Calculate API gravity API = (141.5/SG_liq)-131.5 % Calculate liquid flowrate (lb-mol/d) nlfeed = ((1-alphaG_1)*(1-alphaG_2)*(1-alphaG_3))*nfeed
  • 45. 46 % Calculate gas flowrate (SCF/d) ngfeed = (nfeed-nlfeed)*379.4 % Calculate total split (dimensionless) total_split = (nfeed-nlfeed)/nfeed % Calculate liquid flowrate (bbl/day) nlfeed_bbl = (nlfeed*MW_ST)/(Liq_density*5.615) % Calculate GOR (SCF/bbl) GOR = ngfeed/nlfeed_bbl % Calculate glycol tower gas composition (mole fractions) cgas_glycol = (cgas_1.*nG_1 + cgas_2.*nG_2 + cgas_3.*nG_3)/(nG_1 + nG_2 + nG_3) % Calculate glycol tower gas molecular weight (lb/lb-mol) MWGas_glycol=sum(cgas_glycol.*MW) % Calculate glycol tower gas Z factor (dimensionless) ZOutputGas_glycol = ZFactor_Final(cgas_glycol, p1, TFacility, Delta, TC, PC, ZC, Acentric, OmegaA, OmegaB); ZGas_glycol = ZOutputGas_glycol(1) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Step 8: Output Answers AnswerFile = zeros(13,3); % Pressures (psia) AnswerFile(1,1) = p1; AnswerFile(1,2) = p2; AnswerFile(1,3) = p3; % Alpha G (dimensionless) AnswerFile(2,1) = alphaG_1; AnswerFile(2,2) = alphaG_2; AnswerFile(2,3) = alphaG_3; % Alpha L (dimensionless) AnswerFile(3,1) = alphaL_1; AnswerFile(3,2) = alphaL_2; AnswerFile(3,3) = alphaL_3; % Gas Flowrates (lb-mol/d) AnswerFile(4,1) = nG_1; AnswerFile(4,2) = nG_2; AnswerFile(4,3) = nG_3; % Liquid Flowrates (lb-mol/d) AnswerFile(5,1) = nL_1; AnswerFile(5,2) = nL_2; AnswerFile(5,3) = nL_3; % Gas Flowrates (ft3/s) AnswerFile(6,1) = qG_1; AnswerFile(6,2) = qG_2; AnswerFile(6,3) = qG_3; % Liquid Flowrates (ft3/s) AnswerFile(7,1) = qL_1; AnswerFile(7,2) = qL_2; AnswerFile(7,3) = qL_3; % Gas Z Factors (dimensionless) AnswerFile(8,1) = ZGas_1;
  • 46. 47 AnswerFile(8,2) = ZGas_2; AnswerFile(8,3) = ZGas_3; % Liquid Z Factors (dimensionless) AnswerFile(9,1) = ZLiq_1; AnswerFile(9,2) = ZLiq_2; AnswerFile(9,3) = ZLiq_3; % Gas Molecular Weight (lb/lb-mol) AnswerFile(10,1) = MWGas_1; AnswerFile(10,2) = MWGas_2; AnswerFile(10,3) = MWGas_3; % Liquid Molecular Weight (lb/lb-mol) AnswerFile(11,1) = MWLiq_1; AnswerFile(11,2) = MWLiq_2; AnswerFile(11,3) = MWLiq_3; % Gas Density (lb/ft3) AnswerFile(12,1) = rhoG_1; AnswerFile(12,2) = rhoG_2; AnswerFile(12,3) = rhoG_3; % Liquid Density (lb/ft3) AnswerFile(13,1) = rhoL_1; AnswerFile(13,2) = rhoL_2; AnswerFile(13,3) = rhoL_3;
  • 47. 48 <ZFactor_Final.m> function ZOutput = ZFactor_Final(composition, pressure, temperature, interaction, TCritical, PCritical, ZCritical, AcentricFactor, OA, OB) % Module A: Compositional Z-Factor Calculations %Step1 format long % Import interaction parameters Delta = interaction; % Temperature of interest (degrees F) TAbs = temperature; % Pressures of interest (psi) p = pressure; % Gas Constant (ft^3 psi/R lb-mol) R = 10.73; % Create composition vector (mol fraction) c = composition; % Create critical temperature vector (degrees F) TC = TCritical; % Create critical pressure vector (psi) PC = PCritical; % Create critical Z factor vector (dimensionless) ZC = ZCritical; % Create acentric factor vector (dimensionless) Acentric = AcentricFactor; % Create Omega A factor vector (dimensionless) OmegaA = OA; % Create Omega B factor vector (dimensionless) OmegaB = OB; % Number of components (dimensionless) n=length(c); % Create reduced temperature vector (dimensionless) TReduced = TAbs./TC; % Calculate Pitzer's acentric factor (dimensionless) PitzerFunction = 0.48+1.574*Acentric-0.176*Acentric.^2; aAlpha = zeros(n, 1); b = zeros(n, 1); for i = (1:n) % Attraction parameter for ith component (dimensionless) aAlpha(i, 1) = (OmegaA(i)*(R^2)*(TC(i)^2)/PC(i))*(1+PitzerFunction(i)*(1- (TReduced(i)^0.5)))^2; % Co-volume parameter for ith component (dimensionless) b(i, 1) = OmegaB(i)*R*TC(i)/PC(i); end
  • 48. 49 %Step 2 % Calculate dimensional attraction parameter % and co-volume parameter for the mixture aam = 0; bm = 0; for i = (1:n) bm = bm + c(i)*b(i); for j = (1:n) aam = aam + c(i)*c(j)*sqrt(aAlpha(i).*aAlpha(j)).*(1-Delta(i,j)); end end %Step 3 % Calculate dimensionless attraction parameter % and co-volume parameter for each pressure A = (aam*pressure)/(R^2*TAbs^2); B = (bm*pressure)/(R*TAbs); %Step 4 % Calculate SRK cubic coefficients aa = 1; a1 = -1; b1 = A - B - B^2; c1 = -A*B; %Step 5 % Solve cubic SRK equation for Z SRK=[aa a1 b1 c1]; z=roots(SRK); z=z(imag(z)==0); maxZ = max(z); minZ = min(z); ZOutput = [maxZ, minZ, A, B, aam, bm];
  • 49. 50 <splitFunction_Final.m> function splitFactor = splitFunction_Final(composition, pressure, temperature, TCritical, PCritical, ZCritical, AcentricFactor, OA, OB, interaction) % Input Data format long % Temperature of facility (Rankine) TFacility = temperature; % Pressure of separator (psi) p = pressure; % Gas Constant (ft^3 psi/R lb-mol) R = 10.73; % Composition of feed (mol fraction) c = composition; % Critical temperature vector (Rankine) TC = TCritical; % Critical pressure vector (psi) PC = PCritical; % Critical Z factor vector (dimensionless) ZC = ZCritical; % Acentric factor vector (dimensionless) Acentric = AcentricFactor; % Omega A factor vector (dimensionless) OmegaA = OA; % Omega B factor vector (dimensionless) OmegaB = OB; % Interaction parameters (dimensionless) Delta = interaction; % Number of components (dimensionless) n=length(c); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Calculate Equilibrium Constants K(i) with Wilson procedure K = zeros(n,1); for i = (1:n) K(i) = (PC(i)/p)*exp(5.37*(1+Acentric(i))*(1-TC(i)/TFacility)); end % Implementation of Rachford-Rice Equation alphaG = alphaFunction_Final(c, K, n); % Fugacity and Mass Transfer
  • 50. 51 fl = zeros(1,n); fg = ones(1,n); convergence = 1; while convergence > (10^-14) convergesum = 0; for i = (1:n) convergesum = convergesum + ((fl(i)/fg(i))-1)^2; end convergence = convergesum; % Composition of the co-existing vapor and liquid phase % Create matrix for liquid phase fractions of C1 and C10 x = zeros(1,n); % Create matrix for vapor phase fractions of C1 and C10 y = zeros(1,n); for i = (1:n) if alphaG <= 0 x(1,i) = c(i); y(1,i) = c(i); else if alphaG >= 1 x(1,i) = c(i); y(1,i) = c(i); else x(1,i) = c(i)/(1+alphaG*(K(i)-1)); y(1,i) = K(i)*x(1,i); end end end cgas = y'; cliq = x'; % ZOutput = [maxZ, minZ, A, B, aam, bm, aAlpha, b]; ZOutputGas = ZFactor_Final(cgas, p, TFacility, Delta, TC, PC, ZC, Acentric, OmegaA, OmegaB); ZOutputLiq = ZFactor_Final(cliq, p, TFacility, Delta, TC, PC, ZC, Acentric, OmegaA, OmegaB); ZGas = ZOutputGas(1); ZLiq = ZOutputLiq(2); % Create reduced temperature vector (dimensionless) TReduced = TFacility./TC; % Calculate Pitzer's acentric factor (dimensionless) PitzerFunction = 0.48+1.574*Acentric-0.176*Acentric.^2; aAlpha = zeros(n, 1); b = zeros(n, 1); for i = (1:n) % Attraction parameter for ith component (dimensionless) aAlpha(i, 1) = (OmegaA(i)*(R^2)*(TC(i)^2)/PC(i))*(1+PitzerFunction(i)*(1- (TReduced(i)^0.5)))^2; % Co-volume parameter for ith component (dimensionless) b(i, 1) = OmegaB(i)*R*TC(i)/PC(i); end
  • 51. 52 BBGas = zeros(1,n); AAGas = zeros(1,n); BBLiq = zeros(1,n); AALiq = zeros(1,n); summationGas = zeros(1,n); summationLiq = zeros(1,n); for i = (1:n) BBGas(i) = b(i)/ZOutputGas(6); BBLiq(i) = b(i)/ZOutputLiq(6); for j = (1:n) summationGas(i) = summationGas(i)+ (cgas(j)*(aAlpha(j)^0.5)*(1- Delta(i,j))); summationLiq(i) = summationLiq(i)+ (cliq(j)*(aAlpha(j)^0.5)*(1- Delta(i,j))); end AAGas(i) = (2/ZOutputGas(5))*((aAlpha(i)^0.5)*(summationGas(i))); AALiq(i) = (2/ZOutputLiq(5))*((aAlpha(i)^0.5)*(summationLiq(i))); end % Fugacity Coefficient fugcoG = zeros(1,n); fugcoL = zeros(1,n); for i = (1:n) fugcoG(i) = exp(BBGas(i)*(ZGas-1)-log(ZGas-ZOutputGas(4))- (ZOutputGas(3)/ZOutputGas(4))*(AAGas(i)- BBGas(i))*log((ZGas+ZOutputGas(4))/ZGas)); fugcoL(i) = exp(BBLiq(i)*(ZLiq-1)-log(ZLiq-ZOutputLiq(4))- (ZOutputLiq(3)/ZOutputLiq(4))*(AALiq(i)- BBLiq(i))*log((ZLiq+ZOutputLiq(4))/ZLiq)); fg(i) = fugcoG(i)*y(i)*p; fl(i) = fugcoL(i)*x(i)*p; end for i = (1:n) K(i) = K(i)*(fl(i)/fg(i)); end alphaG = alphaFunction_Final(c, K, n); alphaL = 1-alphaG; end alphaG_output = zeros(7,1); alphaL_output = zeros(7,1); alphaG_output(1) = alphaG; alphaL_output(1) = alphaL; splitFactor = [alphaG_output, alphaL_output, cgas, cliq, K];
  • 52. 53 <alphaFunction_Final.m> function alphaOutput = alphaFunction_Final(composition, KFactor, ncomp) format long n = ncomp; c = composition; K = KFactor; alphaG_new = .5; alphaG_old = .1; convergence = 1; while convergence > (10^-10) convergence = abs(alphaG_new - alphaG_old); alphaG_old = alphaG_new; gAlphaG = 0; gprime = 0; for i = (1:n) gAlphaG = gAlphaG + (c(i)*(K(i)-1))/(1+alphaG_old*(K(i)-1)); gprime = gprime - (c(i)*(K(i)-1)^2)/(alphaG_old*(K(i)-1)+1)^2; end alphaG_new = alphaG_old - (gAlphaG/gprime); if alphaG_new > 1 alphaG_new = alphaG_old+(alphaG_new-alphaG_old)/10; else if alphaG_new < 0 alphaG_new = alphaG_old+(alphaG_new-alphaG_old)/10; end end alphaOutput = alphaG_new; end
  • 53. 54 Appendix C Module Results Module A: Table A1: SRK EOS Z-Factor Calculations- Module "A" Progress Report P(psia) T(F) 480Mix1.txt 480Mix2.txt 480Mix3.txt Zmin Zmax Zmin Zmax Zmin Zmax 220 500 0.9889 0.9980 0.8615 270 500 0.9865 0.9976 0.8262 320 500 0.9842 0.9972 0.7889 370 500 0.9820 0.9969 0.7492 420 500 0.9798 0.9966 0.7066 470 500 0.9777 0.9963 0.6602 520 500 0.9756 0.9961 0.6089 570 500 0.9736 0.9958 0.5519 620 500 0.9717 0.9956 0.4901 670 500 0.9698 0.9954 0.4350 720 500 0.9680 0.9953 0.4028 770 500 0.9663 0.9952 0.3898 820 500 0.9647 0.9951 0.3870 870 500 0.9631 0.9950 0.3894 920 500 0.9616 0.9950 0.3948 970 500 0.9601 0.9949 0.4020 1020 500 0.9587 0.9950 0.4104 1070 500 0.9574 0.9950 0.4196 1120 500 0.9562 0.9950 0.4293 1170 500 0.9551 0.9951 0.4394 1220 500 0.9540 0.9952 0.4498 1270 500 0.9530 0.9954 0.4605 1320 500 0.9521 0.9956 0.4713 1370 500 0.9512 0.9957 0.4822 1420 500 0.9504 0.9960 0.4932 1470 500 0.9497 0.9962 0.5043 1520 500 0.9491 0.9965 0.5154 1570 500 0.9486 0.9968 0.5266 1620 500 0.9481 0.9971 0.5378 1670 500 0.9477 0.9974 0.5490 1720 500 0.9474 0.9978 0.5602 1770 500 0.9471 0.9982 0.5714 1820 500 0.9470 0.9986 0.5826
  • 54. 55 Module B: P (psia) T (F) K(C1) Wilson K(C2) Wilson alphaG Wilson alphaL Wilson K(C1) SRK K(C2) SRK alphaG SRK alphaL SRK 220 500 99.0731 0.4055 0.8359 0.1641 18.5588 0.2698 0.6563 0.3437 270 500 80.7263 0.3304 0.7404 0.2596 15.2518 0.2296 0.6139 0.3861 320 500 68.1128 0.2788 0.6858 0.3142 12.9625 0.2020 0.5847 0.4153 370 500 58.9084 0.2411 0.6502 0.3498 11.2838 0.1820 0.5626 0.4374 420 500 51.8955 0.2124 0.6250 0.3750 10.0000 0.1670 0.5447 0.4553 470 500 46.3747 0.1898 0.6061 0.3939 8.9865 0.1554 0.5294 0.4706 520 500 41.9156 0.1715 0.5913 0.4087 8.1659 0.1462 0.5158 0.4842 570 500 38.2388 0.1565 0.5793 0.4207 7.4879 0.1388 0.5035 0.4965 620 500 35.1550 0.1439 0.5694 0.4306 6.9184 0.1327 0.4921 0.5079 670 500 32.5315 0.1331 0.5609 0.4391 6.4331 0.1278 0.4812 0.5188 720 500 30.2723 0.1239 0.5536 0.4464 6.0146 0.1237 0.4709 0.5291 770 500 28.3066 0.1158 0.5472 0.4528 5.6500 0.1204 0.4609 0.5391 820 500 26.5806 0.1088 0.5415 0.4585 5.3296 0.1176 0.4511 0.5489 870 500 25.0530 0.1025 0.5363 0.4637 5.0456 0.1153 0.4415 0.5585 920 500 23.6914 0.0970 0.5316 0.4684 4.7923 0.1134 0.4321 0.5679 970 500 22.4702 0.0920 0.5273 0.4727 4.5648 0.1118 0.4227 0.5773 1020 500 21.3687 0.0875 0.5234 0.4766 4.3594 0.1106 0.4134 0.5866 1070 500 20.3702 0.0834 0.5197 0.4803 4.1731 0.1097 0.4040 0.5960 1120 500 19.4608 0.0796 0.5162 0.4838 4.0032 0.1090 0.3947 0.6053 1170 500 18.6291 0.0762 0.5129 0.4871 3.8477 0.1085 0.3853 0.6147 1220 500 17.8656 0.0731 0.5098 0.4902 3.7048 0.1083 0.3758 0.6242 1270 500 17.1623 0.0702 0.5068 0.4932 3.5730 0.1082 0.3663 0.6337 1320 500 16.5122 0.0676 0.5040 0.4960 3.4510 0.1083 0.3567 0.6433 1370 500 15.9096 0.0651 0.5013 0.4987 3.3379 0.1085 0.3470 0.6530 1420 500 15.3494 0.0628 0.4987 0.5013 3.2325 0.1089 0.3371 0.6629 1470 500 14.8273 0.0607 0.4961 0.5039 3.1343 0.1094 0.3272 0.6728 1520 500 14.3395 0.0587 0.4937 0.5063 3.0424 0.1101 0.3170 0.6830 1570 500 13.8829 0.0568 0.4913 0.5087 2.9562 0.1109 0.3068 0.6932 1620 500 13.4544 0.0551 0.4890 0.5110 2.8752 0.1118 0.2963 0.7037 1670 500 13.0516 0.0534 0.4867 0.5133 2.7990 0.1129 0.2857 0.7143 1720 500 12.6721 0.0519 0.4845 0.5155 2.7271 0.1140 0.2749 0.7251 1770 500 12.3142 0.0504 0.4823 0.5177 2.6591 0.1153 0.2638 0.7362 1820 500 11.9759 0.0490 0.4802 0.5198 2.5948 0.1167 0.2526 0.7474
  • 56. 57
  • 57. 58 Appendix C Viscosity Calculation Oil Viscosity Computation at HP Separator (Lohrentz, Bray-Clark Correlation): Components xi (Molar Fraction) MW (lb/lbmol) TC (°R) Tr Tpc (°R) PC (psia) Pr Ppc (psia) ZC P1 0.183342756 16.38 339.99 1.5294567 62.3347 662.81 1.259335 121.521 0.28741 P2 0.165467578 31.77 549.83 0.9457469 90.979 752.19 1.109693 124.463 0.2886 P3 0.27250071 50.64 705.87 0.7366796 192.35 581.03 1.436587 158.331 0.28126 P4 0.146003281 76.92 870.94 0.5970561 127.16 481.06 1.735127 70.2363 0.25534 P5 0.16154475 120.13 1060.51 0.4903301 171.32 385 2.168052 62.1947 0.26069 P6 0.035732157 210.87 1283.88 0.4050223 45.8758 253.07 3.298297 9.04274 0.23087 P7 0.035408768 347.56 1520.94 0.3418938 53.8546 174.67 4.778726 6.18485 0.20769 72.53795 743.874 551.974 µi* (cp) (xi)*(µi*)*(√MWi) (cp)(lb/lbmol) (xi)*(√MWi) (lb/lbmol) vci (ft3 /lbmol) xivi (ft3 /lbmol) 0.058965715 0.043754253 0.7420287 1.581898769 0.29002968 0.052554165 0.049014961 0.932656059 2.263585616 0.374550028 0.042366604 0.082155784 1.939163763 3.666349499 0.999082842 0.036486514 0.046721268 1.280507876 4.960295689 0.724219447 0.031608008 0.055964898 1.770592365 7.705097392 1.244718032 0.025623264 0.01329539 0.518879647 12.56756075 0.449066057 0.021298867 0.014059899 0.660124286 19.40479548 0.687099902 Total 0.304966453 7.843952697 µo* (cp) 0.00714716 vpc (ft3 /lbmol) 4.768765988 ρo (lb/ft3 ) 41.2637631 ρr (unitless) 2.712748711 µo (cp) 0.319998434
  • 59. 60 Gas Viscosity Computation at HP and LP Separators (Lee, Gonzalez and Eakin Method): Equations: MWg1 18.7936044 lb/lbmol MWg2 27.561892 lb/lbmol T1 520 °R T2 520 °R ρg1 3.32331277 lb/ft 3 ρg2 0.30449042 lb/ft3 kv1 106.733147 kv2 94.198369 xv1 5.58408989 xv2 5.67177277 yv1 1.28318202 yv2 1.26564545 µg1 0.01215047 cp µg2 0.00948345 cp Gas Viscosity Calculation