Differentials Overview
This documentation extends the Base Econ Model Documentation.
Properties
differentials (required)
An object containing the following properties:
firstDifferential (required)
An object with fluid type properties, each of which must follow the FluidsGroup schema.
secondDifferential (required)
An object with fluid type properties, each of which must follow the FluidsGroup schema.
thirdDifferential (required)
An object with fluid type properties, each of which must follow the FluidsGroup schema.
FluidsGroup
This schema defines the properties for each fluid type, including oil, gas, NGL, and drip condensate.
oil
- The
oilproperty is an object containing the following properties:escalationModelrows- Each object in the
rowsarray requires exactly one of the following properties:dollarPerBblpctOfBasePrice
- Each object in the
rowsarray also requires exactly one of the following properties:entireWellLifeoffsetToAsOfdates
- Each object in the
gas
- The
gasproperty is an object containing the following properties:escalationModelrows- Each object in the
rowsarray requires exactly one of the following properties:dollarPerMmbtudollarPerMcfpctOfBasePrice
- Each object in the
rowsarray also requires exactly one of the following properties:entireWellLifeoffsetToAsOfdates
- Each object in the
ngl
- The
nglproperty is an object containing the following properties:escalationModelrows- Each object in the
rowsarray requires exactly one of the following properties:dollarPerBbldollarPerGalpctOfBasePrice
- Each object in the
rowsarray also requires exactly one of the following properties::entireWellLifeoffsetToAsOfdates
- Each object in the
dripCondensate
- The
dripCondensateproperty is an object containing the following properties:escalationModelrows- Each object in the
rowsarray requires exactly one of the following properties:dollarPerBblpctOfBasePrice
- Each object in the
rowsarray also requires exactly one of the following properties:entireWellLifeoffsetToAsOfdates
- Each object in the
escalationModel
A string that can either be "none" or an Escalation Model ID that follows the pattern /^[a-f\d]{24}$/i.
rows
An array of row objects with the following properties:
dollarPerBbl, dollarPerMmbtu, dollarPerMcf, dollarPerGal
A number between -200 and 200, with a minimum decimal precision of 0.000001.
pctOfBasePrice
A number between 0 and 999999999999999900000, with a minimum decimal precision of 0.000001.
entireWellLife
A string that is an enum with a value of "Flat".
offsetToAsOf
- Data Type: number
- value must be between 1 and 1200.
dates
- Data Type: string
- Validation Rules:
- The value must be a date between January 1, 1900 and April 1, 2262 in the format YYYY-MM-DD.
- each dates property must have a "01" for the days. Ex: "2020-05-01"
- The value for each
datesproperty in therowsarray must be at minimum one month later than the previousdatesproperty. For Example:
"rows": [
{
"dates": "2020-01-01",
"pctOfBasePrice": 1000000
},
{
"dates": "2020-02-01",
"pctOfBasePrice": 0.123456
},
{
"dates": "2021-02-01",
"pctOfBasePrice": 0
}
]
Validation Rules
For each row object in the rows array, exactly one of the following properties is required:
dollarPerBbl,dollarPerMmbtu,dollarPerMcf,pctOfBasePriceordollarPerGal(depending on fluid type)
Also, for each row object, exactly one of the following properties is required:
- entireWellLife
- offsetToAsOf
- dates
Example
"differentials": {
"firstDifferential": {
"oil": {
"escalationModel": "6418ab17b301cfee750745eb",
"rows": [
{
"entireWellLife": "Flat",
"pctOfBasePrice": 0.0000001
}
]
},
"gas": {
"escalationModel": "64120643b301cfee75cc1a21",
"rows": [
{
"dollarPerMcf": 0,
"entireWellLife": "Flat"
}
]
},
"ngl": {
"escalationModel": "63fe159a6efdea186c676a98",
"rows": [
{
"dollarPerGal": 0,
"entireWellLife": "Flat"
}
]
},
"dripCondensate": {
"escalationModel": "6418ab17b301cfee750745eb",
"rows": [
{
"offsetToAsOf": 6,
"pctOfBasePrice": 100
},
{
"offsetToAsOf": 3,
"pctOfBasePrice": 50
},
{
"offsetToAsOf": 12,
"pctOfBasePrice": 0.000001
}
]
}
},
"secondDifferential": {
"oil": {
"escalationModel": "none",
"rows": [
{
"dollarPerBbl": 200,
"entireWellLife": "Flat"
}
]
},
"gas": {
"escalationModel": "none",
"rows": [
{
"offsetToAsOf": 1,
"pctOfBasePrice": 100
},
{
"offsetToAsOf": 1200,
"pctOfBasePrice": 100
},
{
"offsetToAsOf": 15,
"pctOfBasePrice": 100
}
]
},
"ngl": {
"escalationModel": "none",
"rows": [
{
"dollarPerBbl": 0,
"offsetToAsOf": 8
},
{
"dollarPerBbl": 0,
"offsetToAsOf": 6
},
{
"dollarPerBbl": 0,
"offsetToAsOf": 4
}
]
},
"dripCondensate": {
"escalationModel": "6418ab17b301cfee750745eb",
"rows": [
{
"dates": "2020-02-01",
"pctOfBasePrice": 100000
},
{
"dates": "2020-03-01",
"pctOfBasePrice": 0.123456
}
]
}
},
"thirdDifferential": {
"oil": {
"escalationModel": "none",
"rows": [
{
"dollarPerBbl": 200,
"entireWellLife": "Flat"
}
]
},
"gas": {
"escalationModel": "none",
"rows": [
{
"offsetToAsOf": 6,
"pctOfBasePrice": 100
},
{
"offsetToAsOf": 1,
"pctOfBasePrice": 100
},
{
"offsetToAsOf": 20,
"pctOfBasePrice": 100
}
]
},
"ngl": {
"escalationModel": "none",
"rows": [
{
"dollarPerBbl": 0,
"offsetToAsOf": 5,
{
"dollarPerBbl": 0,
"offsetToAsOf": 4
},
{
"dollarPerBbl": 0,
"offsetToAsOf": 3
}
]
},
"dripCondensate": {
"escalationModel": "6418ab17b301cfee750745eb",
"rows": [
{
"dates": "2020-01-01",
"pctOfBasePrice": 1000000
},
{
"dates": "2020-02-01",
"pctOfBasePrice": 0.123456
},
{
"dates": "2020-03-01",
"pctOfBasePrice": 0
}
]
}
}
}