Club 100 library - 415/939-1246 BBS
937-5039 NEWSLETTER, 932-8856 VOICE
DOCUMENTATION FOR BVWPLT.BA, PKTPLT.BA, PRDPLT.BA
These programs create charts on an external Hewlett-Packard pen plotter. They should drive the HP models: 7475; 7550; 7440 (with graphics enhancement cartridge), and may support other brands which use the internal HP-GL graphics language. See the comment lines at the start of each program for proper interfacing techniques.
>---BVWPLT.BA---< This program creates a hyperbolic plot of porosity versus water saturation. Bulk volume water is calculated by: BVW=porosity*Sw; where Sw=water saturation and BVW=volume fraction of water contained in a given rock formation's pore space. If %BVW is higher than the amount which the rock can hold by sheer capillary pressure, then water should flow with production. Typical cutoffs for water-free production are: 7% or less for sandstones; 4.5% or less for limestones. [Note that these cutoffs should be calibrated to a specific formation by constructing a series of BVW plots on key wells].
BVW is principally a function of grain size, with tolerable values ranging from 2% in a very coarse sand to 7% or higher in a very fine-grained sand. Carbonates, depending on the type of porosity, can range from .5% (vugular porosity) to 5% (chalky).
If all the porosity/Sw pairs are plotted for a rock formation, the closer the data points adhere to the trend of the curving hyperbolic chart lines, the lower the produced amount of water will be. The higher the point scatter perpendicular to the lines, the greater the water-cut. Example: if a pay sand's data points all track the 4% BVW line closely the sand will probably produce water-free. If the points instead scatter widely or fall at very high BVW values (8% or higher), the formation could be entirely wet. Again, you should look at actual field data to establish "wet" cutoffs, instead of relying on generic values.
When you run the BVWPLT program, prompts ask for petinent data about the well, pay zone, etc. What you enter is not crucial, since these are simply plot labels. Then the program asks for the top and base of the zone in +feet (or meters), and the calculation increment. You are prompted for the number of porosity/Sw pairs that this increment will give, then plotting commences.
After the graph is drawn you are asked whether a cutoff BVW should be drawn with a dashed line. Answer "Y" and give a cutoff value to add it to the plot. Finally a "Comments?" prompt lets you add up to five, 22-character lines of comments to the graph. The program terminates either upon receiving the fifth input line or upon a line with just a carriage return.
>---PKTPLT.BA---< This program creates a log/log plot of porosity versus resistivity, or "Pickett"-type plot. The basis for the plot is the following set of equations: Sw=I^(-1/n); I=Rt/F*Rw; F=a/Porosity^m; Rt=F*Rw*I; Rt=(a/Porosity^m)*Rw*I; LGT(Rt)=-m*LGT(Porosity)+LGT(a)+LGT(Rw)+LGT(I). Sw=water saturation; n=saturation exponent; I=saturation index; Rw=formation water resistivity; Rt=formation true resistivity; F=formation factor; a=correlation coefficient; Porosity=formation void space; m=cementation factor; LGT=logarithm to the base 10.
The purpose behind taking a logarithm of both sides of the equation is to "linearize" it. This puts it into the form of a standard equation for a straight line, or Y=MX+B; where m=slope of the line and B=the Y-intercept. The logarithm expression therefore means that a log/log plot of porosity versus resistivity with with constant a, Rw, and I should give a line with slope=-m. If this line represents 100% Sw (i.e.-the Ro line), then where it crosses the Porosity=100% line (the y-axis), the intercept value=Rw.
The program assumes "a"=1, and "n"=2. If you plot random porosity/Rt points across a normal Pickett plot, those along the southern side of the data set are assumed to define the Ro, or 100% Sw, line. Since they have the highest porosities coupled with the lowest resistivities, this is a reasonable assumption. Once the initial Ro line is fit to the data, you can derive Rw and the cementation factor "m" from it. These permit scaling the space above the Ro line with additional lines representing lower Sw's (70%, 50%, etc.).
This program adds a new wrinkle to the familiar Pickett plot by giving you the option of adding bulk volume water lines. Overlain BVW lines are a powerful diagnostic tool, especially when used in conjuction with traditional hyperbolic BVW charts that the first program creates.
When you run PKTPLT the program first asks for a title, then starts repetively prompting for porosity/Rt pairs. To start plotting, you enter 0,0 for the last data pair. The log/log grid is drawn and labelled, then you are asked whether points are to be shown as numbered circles or colored triangles (numbers corresponding to the entry order). Note that you will need the "EW" and "WG" HP-GL commands in your plotter's internal set if you want triangles plotted.
After all the data are plotted, you fit the initial Ro line by specifying either two data points or two porosity/resitivity pairs. The resulting Rw and "m" values for the chosen line are displayed, with an option to either continue the plot or define a different Ro line. This lets you optimize the fitted line, and see the calculated values before adding it to the plot. When you decide Rw and "m" are acceptible, all the Sw lines are drawn. You then choose to add or leave off overlain BVW lines, and the plot finishes.
It goes without saying that you must have good data. Fitting the initial Ro line is crucial, so you must have included enough truly "wet" points to define it. Additional constraints to fitting the Ro line might be restricting acceptible Rw's and m's to certain ranges, and even BVW values. This last approach is one advantage to adding BVW lines--if a data point from a known wet sandstone plots with BVW=3%, you might need to shift the initial Ro line to kick %BVW up to a more reasonable value (like >7%). This kind of "fine-tuning" is extremely tedious to perform by hand, but a snap to do by computer.
In really difficult cases, where the Pickett plot just doesn't seem to derive a relationship useful in predicting production, I suggest you try entering data ranked in terms of some third parameter. You could enter porosity/resistivity pairs ordered by increasing volume of shale, for example. (Choose the plot option which uses numbered circles, so you can tell which point belongs to which entry pair.) The resulting Pickett plot might show high Vshale points plotting as high %BVW points...an indication your shale-correction model is not doing its job very well. Or you might see low-numbered points overlapping with high-numbered points...indicating that Vshale has little to do with porosity and Sw and that your analysis technique has successfully corrected for shale.
No matter how you fit the Ro line and what numbers you derive, the advantage to Pickett-type analysis of a formation is the perspective it brings to the evaluation problem. Productive well data will plot in a region of low %BVW north of the Ro line, no matter how idiotic the placement of the Ro line. If you consistently use derived values, the plot is a true "oil-finder".
>---PRDPLT.BA---< This program makes quick line plots of production data, based on the quarterly cumulative figures put out by companies like Dwight's and P.I.
When you run PRDPLT it asks for repetitive entries of [cumulative production,month,year] for each point. Years can be two digits, if that is acceptible on the finished plot. Input all points in chronological order from oldest to newest, giving [0,0,0] for the last (to start the plot).
You now choose which kind of plot to make: "CT" for cumulative production versus time; "RT" for production rate versus time; "RC" for production rate versus cums. If you choose the "CT" plot, the program will ask for an X-axis label (i.e.-"Years"), and a Y-axis label (i.e.- "Bbls or Mcf"). Be sure the Y-axis label matches the units in which the data where entered.
If you choose a rate plot, the program will ask you to specify the rate basis: "per Day,Month,Year?" If you type "D" to choose a per-day rate, you are then prompted for an initial rate (in bbls/day, for example). If you choose a rate versus cum plot, "RC", you will also be asked for the number of X-axis units (#bbls, etc.) for the upper axis limit, and the numer of x-axis units to use in spacing-out tick marks (i.e.-one every 5000 bbls).
The final prompt before plotting is "Connect points?". Answer "Y" to plot discrete points, "N" to plot a continous line. The semi-log grid will be drawn, axes labelled, then the prompt "Select pen and ENTER" will appear. This lets you select a different pen color (using plotter controls) for the production curve, if you wish. Press ENTER to finishe the plot.
Notice that the program calculates average flow rates by dividing cumulative figures by the time between reports, and that it requires and initial flow rate (IP), usually taken from a well's scout ticket or completion report, to start the rate curve. This approach was taken because the daily rates some information vendors publish are frankly unreliable.
The plotting routines are generic enough that one can plot oil, gas and water data simply by changing axis labels to match. If you do have reliable rates, you can trick the program into plotting them directly by selecting the "CT" plot option and labelling the Y-axis as "bbls/d", etc. The program can't plot such quantities as pressure versus cumulative production, since it always scales the y-axis logarithmically.
If you make any sort of producion plots on a regualr basis, I think you will find the program a real time-and-eye-saver.