A compartment in a tight gas reservoir is a section of the reservoir that is separated from other sections by natural or artificial barriers, such as faults or hydraulic fractures. The communication factor is a measure of how much gas can flow between two compartments. It depends on the pressure difference, the transmissibility (or permeability) of the barrier, and the area of contact between the compartments.
The communication factor can be used to estimate the original gas in place (OGIP) and the production performance of a multi-compartmentalized gas reservoir. It can also help identify poorly drained compartments that may need additional stimulation or intervention.
Basic Theory:
The communication factor is a measure of how easily fluids can flow between different compartments in a reservoir. In tight gas reservoirs, where permeability is low, understanding communication is vital for effective reservoir management. The formula to calculate the communication factor (C) is given by:
Where:
- and are the pressures in two connected compartments,
- is the rate of fluid flow between compartments,
- is the rate of change of volume.
Procedures:
- Measure the pressures and in the connected compartments.
- Determine the rate of fluid flow () between compartments.
- Measure the rate of change of volume ().
- Use the formula to calculate the communication factor ().
Scenario and Example:
Consider a tight gas reservoir with two compartments. The pressure in compartment 1 () is 3000 psi, in compartment 2 () is 2500 psi, fluid flow rate () is 1000 STB/D, and the rate of volume change () is 50 STB/D.
Excel Calculation:
Open Microsoft Excel and create a table with the following columns: , , , , and .
Enter the values for , , , and in the respective cells.
Use the formula to calculate in the next column.
Here’s how the Excel table might look:
Result:
The calculated communication factor () for the given scenario is approximately 10.
MATLAB Comparison:
To solve the same problem in MATLAB, you can use the following script:
P1 = 3000;
P2 = 2500;
Q = 1000;
dVdt = 50;
C = (P1 - P2) / (Q * dVdt);
disp(['Communication Factor (C) calculated in MATLAB: ', num2str(C)]);