ComboCurve: Type Curve Methodology Documentation

ComboCurve: Type Curve Methodology Documentation

TC Settings

 


Associated Forecast
  1. TC needs an associated forecast to generate automatic type curve fits and automatic normalization fits
  2. All the wells in the TC must be in the associated forecast as well, TC wells is a subset of forecast wells
  3. TC can be independent from any forecast, but this means this means the TC will not have any wells in it.  It is useful in the following scenario
    1. Have a TC that is not generated in ComboCurve and would like to import and use them directly in ComboCurve.
    2. Have a TC fits generated in one project, then import this TC to another project without bringing the associated forecast
 
Additional Settings



Note: After making any changes, don't forget to click on "SAVE SETTINGS"

Series
 
  1. In TC, we need only one fit curve from phase of a well, while probabilistic forecast will provide 4 options, so we need to choose one, default to ‘Best’
  2. When associated forecast is deterministic forecast, this will be grayed out
  3. When the associated forecast is probabilistic forecast, this will have 4 options: P10/P50/P90/Best corresponding to the 4 fits we provide in probabilistic forecast

Data Used to Generate Type Curve


  1. This setting will decide to use either daily production data or monthly production in all the numerical calculation of this TC including:
    1. EUR
    2. Production we use to generate the background wells in fit page
  2. It has 5 options and is default to “Whichever Used to Generate The Forecast”
    1. ‘Whichever Used to Generate The Forecast’: To generate a forecast, we also have to choose either to use daily data or monthly data there, which is the same decision we need to make here. So, we want to keep the choice user made there when creating the forecast. Note: the choice in forecast is default to use monthly, even when sometimes the monthly data does not exist for that well
    2. ‘Daily Preference’: Check the data base to see if this well has daily data, if it has then use it, if no, use monthly data. And same for ‘Monthly Preference’
    3. ‘Daily Data: Only look at daily data. And same for ‘Monthly Data’
  3. Decision we make here is important in deciding the validity of a well.
    1. From the choice we made above, we will finally end up with either daily or monthly data to use for that well. Then we check if that phase in daily or monthly data is valid to decide if that phase has a valid production data.
    2. Note: the validity of a phase depends on 2 aspects: validity of phase data & validity of phase forecast. Here we cover only the validity of phase data.
 
Type, Base Phase and Oil/Gas/Water
 
Type



  1. Decide if this TC will include any phase as ratio phase
  2. Will hide ‘Base Phase’ and ‘Oil/Gas/Water’ when Type is set to ‘Rate’
 
Base Phase and Oil/Gas/Water



  1. Only one base phase is allowed in TC. Once a phase is set to as ‘Base Phase’. This phase must be ‘Rate’, while the other phases can be set to either ‘Ratio’ or ‘Rate’.
 
TC Rep Wells

Rep Wells



  1. What is rep wells
    1. The wells that will be included in calculating normalization effect and automatic fits
    2. Rep wells is per phase, which means one well can be rep well in oil phase but might not be rep well in gas phase
  2. How to get rep wells
    1. Starting from all the wells
    2. Exclude the wells that is not valid for this phase
    3. Exclude some wells manually from the phase
    4. Note: all the details can be checked on the table in rep page
  3. Definition for valid wells (for that phase)
    1. Must have valid production data & valid forecast
    2. Valid production data
      1. Use ‘Data Used to Generate Type Curve’ to decide either to use daily data for this well or monthly data
      2. When the phase type is ratio, we check if there is at least one ratio data that is finite and positive.
      3. When the phase type is rate, we check if there is at least one rate data that is finite and positive.
  4. Valid Forecast
    1. When the TC phase type is rate.
      1. Underlying phase forecast must be rate
      2. Subtype of the phase forecast cannot be an applied type curve. (When we have a TC, we can apply this TC to some wells in forecast, those well will be marked as applied “type curve”)
    2. When the TC phase type is ratio, for example, G/O
      1. Gas (ratio phase) forecast, and oil (rate phase) forecast of this well will be involved
      2. For ratio phase: forecast can be either rate or ratio
      3. For rate phase: forecast can only be rate
      4. For both forecasts, they can not be applied type curve as subtype

TC Normalization



Normalization Difference in Applying and Generating Type Curves
  1. Normalization will be used in 2 different places
    1. TC Normalization/Fit page: make sure all the wells in TC share same property
    2. Forecast applying TC: after generating a TC normalization and fits, we want to apply to specific well.
  2. Example we use here is equivalent to the following settings:
    1. Normalization Type: 1-to-1 Fit
    2. Base: EUR vs PLL
    3. Target PLL: 6000
  3. In TC Normalization/Fit page:
    1. Suppose we have a well with PLL (perf lateral length) being 5000, then we say we want the all the wells in this TC to be normalized 6000, which is the target PLL to be 6000. And we also assume, the proportion change in PLL will reflect in the same proportion change in the EUR of the well.
    2. Then it’s easy to see that this well’s EUR will be 120% of it’s original EUR
    3. We achieve the EUR adjustment by providing a scaler=120% to the well, this scaler will shift all the production data and the forecast up by a multiplier of 1.2
    4. All the wells in TC will have a multiplier in the end, which will change the overall shape of the TC fit.
  4. In the Forecast Applying TC:
    1. With the assumption above
    2. A problem we will face there is going to be different. Now we have a TC profile, then we want to use it on a well. Say this well’s PLL is 4000.
    3. We know our TC target PLL is 6000. Then the EUR of this well is going to be 4000/6000 of the EUR of the TC, so we will get a multiplier of 2/3. That will be used to adjust the TC profile.
 
Normalization per phase



  1. Normalization is per phase, currently we do not support 1 normalization for the whole well
  2. The Gas phase in this example is ratio, and is disabled in the normalization page
  3. Assumption for this is, ratio is always tied to the rate phase, as long as rate phase gets a normalization, the effect will apply to ratio phase automatically
 
Normalization Type


Philosophy:
    1. Try to generate a curve that cross each data points
    2. Then read the y value from the curve at x=target
    3. Note: y value here might not be the “EUR”, we will cover this in the following section “Base” choice
    4. Note: No normalization: default, multipliers of all the wells will be 1
  1. 1-to-1 Fit:
    1. Assumption: proportion change in the x-axis will result in the same proportion change in y-axis, see the chart above, we could assume a line connects origin and each point.
    2. Curve: y = (x/xi)*yi
    3. Normalized y: (target/xi) * yi
                         
  1. Linear Fit

  1. We get a linear regression on the data points as above: y = ax + b
  2. Assumption: every unit change in x will lead to a*x change in y
  3. Then for each well, we draw a line that passes the point(xi,yi), and has a slope=a.
  4. Curve: y = a*(x-xi) + yi
  5. Normalized y: a * (target - xi) + yi

  1. Power Law Fit

  1. We get a power law regression on the data points as the above chart: y = a * x^b
  2. Assumption: Value of y is a power relationship to x
  3. For each well, we draw a curve that passes the point (xi, yi) by adding intercept term to the curve above.
  4. Curve: y = a * x^b + (yi - a*xi^b)
  5. Normalized y: a*target^b + yi – a*xi^b

  1. 2 Factor Normalization
  1. Used to normalize peak rate and EUR independently 
  2. Detailed explanation can be found in the "2 Factor Normalization" document in the Knowledge Base


Base Choice



Philosophy
    1. Calculate the EUR after normalization, then calculate the ratio factor between normalized EUR and original EUR as the multiplier of this well
  1. EUR vs PLL
    1. This is the same as ‘EUR vs Numerical Header’, we list it separately because this is the most used base
    2. X = PLL, Y = EUR
    3. Ratio in the Y is just ratio in EUR
  2. EUR/PLL vs Prop/PLL
    1. This applies to all the other 1 division bases
    2. X = Prop/PLL, Y = EUR/PLL


  1. We need to provide the 2 information above
  2. Using Target Prop/PLL will give us a target which is normalized EUR/(target PLL), note here is (target PLL) not (original PLL), since we are assuming everything has been normalized to the target
  3. The target PLL is also provided which is 6000, and we can calculate target EUR = target * target PLL
  4. Then calculate multiplier using target EUR/ original EUR

  1. EUR/PLL/HZ Spacing vs Prop/PLL/HZ Spacing
    1. Same idea as above 1 division
    2. Target Y = target EUR / targetPLL / target HZ Spacing
    3. Thus, target EUR can be calculated from input and the normalization curve

   
  1. EUR vs Numerical Header
    1. You can use any numerical well header (including custom number headers) to normalize
    2. You can select the header in the "Numerical Header" box

 
Read Final Multipliers from Table


  1. This table contains all the information need to calculate the normalization multipliers
  2. The Multiplier column is the final multiplier applied to the rep wells
  3. The peak rate multiplier will only be populated if using 2 factor normalization
 

TC Fit
 
 
Type Curve Fit Chart



  1. The above chart represents the production profile of the analog wells (grey) and wells fits (orange). Once you ran a fit, the chart will display the actual Type Curve Fits (green)
    1. Grey lines --> production profile of each rep (analog) well
    2. Orange lines --> aggregate production profile from the rep wells data
      1. Wells average: average rate of rep wells at each point in time
      2. Wells P50: median rate of rep wells at each point in time
      3. Wells P10: 90th percentile rate of rep wells at each point in time
      4. Wells P90: 10th percentile rate of rep wells at each point in time
    3. Purple lines --> same logic of orange lines but without forecast volumes applied
  2. Although different wells start at different date in real life, here we assume all of them to start at the same time 0

Controls that will affect the original data


      'Align Peaks’, ‘Normalize’ and  'Resolution’ will affect the background data, which will be discussed here. ‘Match Analog Well Set EUR’ is going to affect the final fits we generate from the curve, and we will cover it       in next section

Align Peaks



  1. Align peaks shifts time 0 to peak rate time independently for each rep well. 
    1. Monthly resolution: the month at which peak rate occurs 
    2. Daily resolution: the month of peak cumulative volumes from daily rate

Normalize
  1. This applies the multiplier we get from the Normalization module multipliers table to each well
  2. The well aggregates (orange lines) will reflect the normalized data
  3. Note: if you initially run a fit and then create a new normalization model, you'll need to re-run the fit to see the changes in your actual type curve

Daily Resolution
           
  1. When we use monthly data, we assume the production of each day within the month is the same. This will give us a short flat curve for each well ("stair stepping"). As we could see in the chart there are a lot of flat 30-days periods in the chart. They are using monthly data determined by ‘Data Used to Generate Type Curve’ choice we defined in settings page
  2. When we use daily data, we will directly show daily productions
  3. Note: we can currently display up to 2000 days of daily data in the chart

Generating Fits



  1. The fits generated are probabilistic, each fit (green line) is generated by regressing on the corresponding rep well aggregate (orange line). For example, Best fit is generated on wells average, P50 fit is generated on wells P50 etc
  2. The resulting EUR values from the fit regression are displayed at the top of the chart

EUR Distribution 
  1. The green dots represent the rep wells EUR value ( this value will change according to the normalization applied)
  2. The brown dotted lines represent the probabilistic EUR values coming from your rep wells
  3. The green lines represent the EUR values resulting from the fit (these will match the numbers at the top of the "Type Curve Fit" chart. 
  4. Note: It is important to understand that the green and orange lines are calculated differently, example:
    1. Wells Average EUR = Average (EUR from rep wells forecast * Normalization Multiplier)
    2.  Best Fit EUR = EUR derived from the regression on rep wells average rates for each time slice
    3. As a result, it is not guaranteed that the Wells Average EUR (brown line) will match the Best Fit EUR (green line)
  5. According to SPEE guidelines, the Best Fit EUR should match the Wells Average EUR. Same logic applies to P50, P10, and P90 fits. 
  6. In the example below, we can see that the Best Fit EUR and Wells Average EUR are off by ~ 10 MBBL

  1. If this happens, you can still adjust the Fit EUR to the rep wells EUR by toggling on "Match Analog Wells Set EUR". For example, the setting will adjust the qi of the best type curve fit to achieve the same EUR of your wells average as shown below

  1.      Note: If you don't want to change the qi of  your original type curve fit, the other option would be to manually tweak the other parameters (such as b, Di eff) to match the rep wells EUR. 

Best Fit Options
  1. We provide 3 different options to generate the type curve fits

  1. "Best Fit Options"
    1. Average: we fit average column-wise average
      1. We can have match EUR version of this, which matches to the analog well set average EUR                                      

Analog Well Set Production Roll-Up


  1. Here we have a chart ‘Analog Well Set Production Roll-Up’, and the Best fit try to generate a fit that can match this roll-up chart
  2. How to generate wells production roll-up:
    1. We calculate the production summation at each month from the first month of the set of wells to the last month of the wells.
    2. At each time stamp, the value is summation of all wells that has production or forecast at that month
  3. How to generate fit production roll-up
    1. Replace the wells’ production + forecast profile with the fit
    2. Then at each time stamp, we do summation over all wells
  4. Then try to fit a curve such that the fit roll-up matches the production roll-up
  5. Note: this best fit methodology does not have ‘Match EUR’ option

Analog Wells Set Cum Production Roll-up



  1. The idea is the like the above one
  2. Difference is timestamp summation production will then be converted to a cumulative version
  3. Calculation of fit curve will change accordingly
  4. Note: this one also does not have ‘Match EUR’ option
 






    • Related Articles

    • ComboCurve: Type Curve Generation Video Series

      In this three-part video series, we look at the process of creating and generating a Type Curve in ComboCurve. TC Generation: Part 1 The first part of our TC video series covers creating a type curve, selecting representative wells, and general ...
    • ComboCurve: Rep Data Requirements

      Rep Well Data Requirements When creating a type curve, ComboCurve provides validations to exclude rep wells (analog wells) that are not of interests. Rep data requirements can either be found at the bottom of the Settings page under "Well Validation ...
    • ComboCurve: Type Curve Charts and Forms Saved Configurations

      Type Curve Configurations In the Type Curve module users can save their current chart views by clicking the chart configuration button in the top right corner of the page just under the question mark. Users can also save their form configurations by ...
    • ComboCurve: Applying and Reapplying Type Curves

      Applying a Type Curve In this article we will look at the process of Applying and Reapplying Type Curves. ComboCurve allows users to apply their created type curves on given wells. If the user is wanting to create wells for this application of their ...
    • ComboCurve: Type Curve Lookup Tables

      Summary Type Curve Lookup Tables (TC LTs) allow you to apply multiple type curves to a set of wells depending on each well's specific headers. Similar to Scenario Lookup Tables, TC LTs apply a specific type curve depending on the headers criteria ...