Authors: Ranjit Deshmukh, Paige Weber, Olivier Deschenes, Danae Hernandez-Cortes, Tia Kordell, Ruiwen Lee, Christopher Malloy, Tracey Mangin, Measrainsey Meng, Sandy Sum, Vincent Thivierge, Anagha Uppal, David W. Lea, and Kyle Meng
Corresponding authors: Ranjit Deshmukh ([email protected]); Paige Weber, ([email protected]); Kyle Meng ([email protected])
GitHub repository manager: Tracey Mangin ([email protected]) Zenodo repository manager: Tracey Mangin ([email protected])
The purpose of this file is to document the data and scripts used in the study “Equitable low-carbon transition pathways for California’s oil extraction.” The first section includes information about data inputs. The second section includes descriptions of the scripts developed to conduct the study (all code related to this study is available in the GitHub repository ca-transport-supply-decarb). The third section includes information about the files included in the study’s Zenodo repository.
Due to data confidentiality, the user can only run a subset of the scripts. Thus, we provide all of the intermediate outputs needed to run the following scripts:
ca-transport-supply-decarb/energy/extraction-segment/model/full-run-revised/00_extraction_steps.R
- this script runs the energy model that results in oil extraction outputs. To successfully run the energy model, the user should make the following changes in the script:- Set
zenodo_repo <- TRUE
- Define
zenodo_user_path
, which should be the user-specific path that leads up to theca-transport-supply-decarb-files
folder downloaded from Zenodo - Define a
save_path
, which represent the path to where the user would like the outputs to be saved - Define a
run_name
, which is used with the current to generate a folder to save outputs (this folder will be created in thesave_path
location).
- Set
ca-transport-supply-decarb/energy/extraction-segment/figs-and-results/fig_outputs.R
- this script takes the energy, health, and labor outputs and computes values for the manuscript (i.e., outputs needed to make figures and results presented in the paper). To successfully run the code, the user should make the following changes to the script:- Set
zenodo_repo <- TRUE
- Define
zenodo_user_path
, which should be the user-specific path that leads up to theca-transport-supply-decarb-files
folder downloaded from Zenodo - Define
save_info_path
, which is a path specifying where the user wants the outputs to be saved - Zenodo users do not need to specify
energy_result_date
orcomp_result_date
.
- Set
- The scripts contained in the main
ca-transport-supply-decarb/energy/extraction-segment/figs-and-results/
(these scripts create figures and values presented in the manuscript. The filesfigure2.R
,figure3.R
, andfigure6.R
are set up so that the user can setzenodo_repo <- TRUE
and specify azenodo_user_path and zenodo_save_path
. For all other scripts in this folder, the user will need to update file paths.
The following section documents all inputs needed to conduct the study. The “Required” column indicates if the file is needed to conduct the analysis, and the “Zenodo” column indicates if the input is included in the Zenodo repository. Note that a asterisk* indicates files that are not publicly available.
File | Description | Source | Required | Zenodo |
---|---|---|---|---|
All_wells_20200417.xlsx | Geographical and other information for California wells | California Department of Conservation (DOC) | Yes | Yes |
AllWells_20210427.csv | Geographical and other information for California wells | DOC | Yes | Yes |
CaliforniaOilAndGasWellMonthlyProduction.csv | Well-level oil and gas monthly production data for 1977-2017 (file names are the same, folders indicate the years included in the data file) | DOC | Yes | Yes |
CaliforniaOilAndGasWellMonthlyInjection.csv | Well-level oil and gas monthly injection data for 1977-2017 (file names are the same, folders indicate the years included in the data file) | DOC | Yes | Yes |
CaliforniaOilAndGasWells.csv | Well information (12 files, same name, separate folders) | California Department of Conservation | Yes | Yes |
county_codes.csv | County names and codes | Created using DOC online resources | Yes | Yes |
CA_Counties_TIGER2016_noislands.shp | Spatial file: CA counties, no islands | https://data.ca.gov/dataset/ca-geographic-boundaries | Yes | Yes |
DOGGR_Admin_Boundaries_Master.shp | Spatial file: field boundaries | DOC | Yes | Yes |
oil_price_projections_revised.xlsx | Oil price projections | Energy Information Administration (EIA), International Energy Agency (IEA) | Yes | Yes |
well_type_df.csv | Well types and abbreviations | Created using DOC online resources | Yes | Yes |
Asset_opex_capex_govtt.csv* | Annual CapEx, OpEx, and government take (historic and future) | Rystad | Yes | No |
resources_prod_myprod.csv* | Resource, production, and production under maximum allowed oil price ($120/bbl) by asset by year | Rystad | Yes | No |
capex_per_recoverable_bbl.csv* | Annual CapEx value per recoverable barrel by asset | Rystad | Yes | No |
asset-wells.csv* | Well (API) production by asset | Rystad | Yes | No |
capex_per_bbl_nom.csv* | Annual CapEx per barrel (nominal) by asset | Rystad | Yes | No |
opex_per_bbl_nom.csv* | Annual OpEx per barrel (nominal) by asset | Rystad | Yes | No |
well_cost_per_eur.csv* | Cost of building each well | Rystad | Yes | No |
ca_production.csv* | Annual California oil and gas production by asset, data type, and data source | Rystad | Yes | No |
asset_latlon.csv* | Asset latitude and longitude | Rystad | Yes | No |
wti_brent.csv* | Annual WTI and Brent price per barrel | Rystad | Yes | No |
rystad_asset_rename.csv* | Rystad asset names and adjusted names to remove periods | Created using Rystad data | Yes | No |
CA_Counties_TIGER2016.shp | California counties (shape file) | https://data.ca.gov/dataset/ca-geographic-boundaries | Yes | Yes |
2000_2019_ghg_inventory_trends_figures.xlsx | GHG emissions by sector | California Air Resources Board (CARB) | Yes | Yes |
asset_econ_categories.csv* | Annual CapEx, OpEx, government take, exploration CapEx, and free cash flow by asset | Rystad | No | No |
field_to_asset.csv* | Field and asset production days | Rystad | No | No |
N9010CA2a.xls | California Natural Gas Gross Withdrawals | EIA | No | No |
File | Description | Source | Required | Zenodo |
---|---|---|---|---|
ces3results.xlsx | CalEnviroScreen 3.0 results | Office of Environmental Health Hazard Assessment (OEHHA) | Yes | Yes |
nhgis0001_ts_geog2010_tract.csv | 2010 census tract population by age-group | National Historical Geographic Information System (NHGIS) | Yes | Yes |
CDOF_p2_Age_1yr_Nosup.csv | County-level population projections by age-group | California Department of Finance (CDOF) | Yes | Yes |
County_def.shp | County shape file | Downloaded from BenMAP-CE | Yes | Yes |
age_group_desc.csv | Age groups for 2010 Census | Created from Codebook from NHGIS data file 'nhgis0001_ts_geog2010_tract' | Yes | Yes |
Mortality Incidence (2015).csv | County by age-group mortality rates | Downloaded from BenMAP-CE | Yes | Yes |
growth_rates.csv | Real GDP growth rates | Created from https://www.cbo.gov/publication/56442 | Yes | Yes |
ces3_data.csv | Select CalEnviroScreen 3.0 results | Created from “ces3results.xlsx” | Yes | Yes |
tl_2019_06_tract.shp | Spatial file: census tracts | Census | Yes | Yes |
n/a (InMap data can be obtained from InMap open source repository) | InMap data and open source model | https://github.com/spatialmodel/inmap | Yes | No |
n/a (BenMAP data can be obtained by downloading the software from the US EPA) | BenMAP Community Edition (BenMAP-CE) underlying data | https://www.epa.gov/benmap | Yes | No |
File | Description | Source | Required | Zenodo |
---|---|---|---|---|
n/a (proprietary data can be obtained through a license with IMPLAN)* | County-specific employment and compensation multipliers for the oil extraction and refining industries | IMPLAN, 2018 edition (app.implan.com) | Yes | No |
n/a (proprietary data can be obtained through a license with IMPLAN)* | County and industry-specific Multi-Region Input/Output analysis results. Includes direct, indirect, and induced impacts. | IMPLAN, 2018 edition (app.implan.com) | Yes | No |
fte-convert.xlsx | Industry-specific ratios of the number of job-years per FTE worker | IMPLAN (https://implanhelp.zendesk.com/hc/en-us/articles/115002782053-IMPLAN-to-FTE-Conversions) | Yes | Yes |
File | Description and source | Zenodo |
---|---|---|
innovation_scenarios.csv | Innovation scenario inputs developed for study | Yes |
carbon_prices_revised.csv | Carbon price scenario inputs developed for study using California Air Resources Board: 2020 Annual Auction Reserve Price Notice (2019), United States Government Interagency Working Group on Social Cost of Greenhouse Gases: Technical Update of the Social Cost of Carbon for Regulatory Impact Analysis Under Executive Order 12866. Technical report (August 2016), and California Air Resources Board: Final Regulation Order: California Cap on Greenhouse Gas Emissions and Market-based Compliance Mechanisms (2018). See Supplementary Information for more details. | Yes |
ccs_extraction_scenarios.csv | CCS scenario inputs developed for study based on Stanford 2020 and Jing et al. 2020. Only scenarios without CCS (‘no CCS’) were included in our study. | Yes |
CCS_LCFS_45Q.xlsx | CCS scenario inputs developed for study (https://sgp.fas.org/crs/misc/IF11455.pdf) | Yes |
prod_quota_scenarios.csv | Production quota scenarios developed for this study. Our study ultimately did not review scenarios with a production quota.) | Yes |
*
Indicates data files that are not public.
This section describes the code scripts developed to conduct this study. All code related to this study is available in the GitHub repository ca-transport-supply-decarb
. The headings below represent folder names and paths.
scripts/health_data.R
Calculate population increases to 2045.
- Inputs:
- nhgis0001_ts_geog2010_tract.csv
- age_group_desc.csv
- CDOF_p2_Age_1yr_Nosup.csv
- County_def.shp
- Mortality Incidence (2015).csv
- Outputs:
- ct_incidence_ca.csv
- ct_inc_45.csv
- ct_pop_45.csv
scripts/source_receptor_matrix.R
This script creates the Total PM2.5 (weighted and unweighted).
- Inputs:
- tl_2019_06_tract.shp
- CA_Counties_TIGER2016_noislands.shp (from External data)
- Outputs:
- data/health/source_receptor_matrix/inmap_processed_srm/srm_XX_fieldYY.csv (where XX denotes the different pollutants –NH3, PM2.5, SOx, NOx, VOC–) and YY is the different clusters –1-26–).
scripts/obtain_field_cluster_xwalk.do
Uses raw data from GIS to obtain the crosswalk between fields and clusters.
- Inputs:
- extraction_fields_clusters_10km.csv (dataset obtained from creating 10 km buffers surrounding fields from ArcGIS)
- extraction_fields_xwalk_id.csv (dataset obtained from crosswalks between the 10km buffers and corresponding fields ids from ArcGIS)
- Outputs:
- extraction_fields_xwalk
- extraction_field_clusters_xwalk
scripts/srm_extraction_population.R
Creates inputs for figures.
- Inputs:
- ces3results_part.csv (dataset obtained by modifying names of the ces3results.xlsx dataset to be read in Rstudio)
- srm_XX_fieldYY.csv, (where XX represents nox, pm25, sox, voc; and YY represents numbers 1-26. The numbers represent the 26 oil extraction field clusters) (from InMap, External data)
- extraction_fields_clusters_10km.csv (created in ArcGIS)
- Outputs:
- extraction_cluster_affectedpop.csv
- extraction_xwalk.csv
ica_multiplier_process.R
This file creates ICA multipliers for the labor analysis for both the extraction and refining segments.
- Inputs (all inputs from External data. Files not listed must be obtained from IMPLAN):
- fte-convert.xlsx
- ica-emp-ext-kern.csv
- ica-va-ext-kern.csv
- ica-emp-drill-kern.csv
- ica-va-drill-kern.csv
- ica-emp-ref-kern.csv
- ica-va-ref-kern.csv
- ica-emp-ext-la.csv
- ica-va-ext-la.csv
- ica-emp-drill-la.csv
- ica-va-drill-la.csv
- ica-emp-ref-la.csv
- ica-va-ref-la.csv
- ica-emp-ext-sb.csv
- ica-va-ext-sb.csv
- ica-emp-drill-sb.csv
- ica-va-drill-sb.csv
- ica-emp-ref-sb.csv
- ica-va-ref-sb.csv
- ica-emp-ext-monterey.csv
- ica-va-ext-monterey.csv
- ica-emp-drill-monterey.csv
- ica-va-drill-monterey.csv
- ica-emp-ext-ventura.csv
- ica-va-ext-ventura.csv
- ica-emp-drill-ventura.csv
- ica-va-drill-ventura.csv
- ica-emp-ext-orange.csv
- ica-emp-ext-orange.csv
- ica-emp-ext-orange.csv
- ica-va-ext-orange.csv
- ica-emp-drill-orange.csv
- ica-va-drill-orange.csv
- ica-emp-ext-fresno.csv
- ica-va-ext-fresno.csv
- ica-emp-drill-fresno.csv
- ica-va-drill-fresno.csv
- ica-emp-ext-cc.csv
- ica-va-ext-cc.csv
- ica-emp-ref-cc.csv
- ica-va-ref-cc.csv
- ica-emp-ref-solano.csv
- ica-va-ref-solano.csv
- ica-emp-ext-slo.csv
- ica-va-ext-slo.csv
- ica-emp-ref-slo.csv
- ica-va-ref-slo.csv
- ica-emp-ext-sanbenito.csv
- ica-va-ext-sanbenito.csv
- ica-emp-ext-sanbernardino.csv
- ica-va-ext-sanbernardino.csv
- ica-emp-ext-tulare.csv
- ica-va-ext-tulare.csv
- ica-emp-ext-sanmateo.csv
- ica-va-ext-sanmateo.csv
- ica-emp-ext-kings.csv
- ica-va-ext-kings.csv
- ica-emp-ext-alameda.csv
- ica-va-ext-alameda.csv
- ica-emp-ext-riverside.csv
- ica-va-ext-riverside.csv
- ica-emp-ext-santaclara.csv
- ica-va-ext-santaclara.csv
- ica-emp-ext-statewide.csv
- ica-va-ext-statewide.csv
- ica-emp-drill-statewide.csv
- ica-va-drill-statewide.csv
- ica-emp-ref-statewide.csv
- ica-va-ref-statewide.csv
- Outputs:
- ica_multipliers_v2.xlsx
- ica_multipliers_by_industry_long.csv
stocks_flows.R
This script re-organizes and cleans data relevant to the energy portion of our study.
- Inputs:
- Imports_of_Heavy_Sour_to_Los_Angeles_CA.csv (from External data)
- PET_PRI_SPT_S1_M.xls (from External data)
- PET_PRI_DFP2_K_M.xls (from External data)
- MCRFPCA1m.xls (from External data)
- EmissionsByFacility.csv (from External data)
- oilgascounty.xls (from External data)
- MCRFPCA1a.xls (from External data)
- ghg_inventory_scopingplan_sum_2000-17.pdf (from External data)
- Ca_oil_refinery_loc_cap.xlsx (from External data)
- WeeklyFuelsWatch_Summary_2014-2020_North_South.xlsx (from External data)
- WeeklyFuelsWatch_Summary_2014-2020_North_South.xlsx (from External data)
- oil_supply_sources_a.csv (from External data)
- PET_PRI_GND_DCUS_SCA_W.xls (from External data)
- PET_PRI_GND_DCUS_NUS_W.xls (from External data)
- ghg_sector_data_og.csv (from External data)
- ghg_sector_data_refining2.csv (from External data)
- county_codes.csv (from External data)
- 2018CaliforniaOilAndGasWellMonthlyProduction.csv (from External data)
- 2019CaliforniaOilAndGasWellMonthlyProduction.csv (from External data)
- 2018CaliforniaOilAndGasWellMonthlyInjection.csv (from External data)
- 2019CaliforniaOilAndGasWellMonthlyInjection.csv (from External data)
- 2008-ghg-emissions-facility-2012-03-12.xlsx (from External data)
- 2009-ghg-emissions-facility-2012-03-12.xlsx (from External data)
- 2010-ghg-emissions-2015-06-15.xlsx (from External data)
- 2011-ghg-emissions-2018-11-05.xlsx (from External data)
- 2012-ghg-emissions-2019-11-04.xlsx (from External data)
- 2013-ghg-emissions-2019-11-04.xlsx (from External data)
- 2014-ghg-emissions-2019-11-04.xlsx (from External data)
- 2015-ghg-emissions-2019-11-04.xlsx (from External data)
- 2016-ghg-emissions-2019-11-04.xlsx (from External data)
- 2017-ghg-emissions-2019-11-04.xlsx (from External data)
- 2018-ghg-emissions-2019-11-04.xlsx (from External data)
- ghg_sector_data_refining2.csv (from External data)
- epa_emissions.csv (from External data)
- Historic Permit CalWIMS.xlsx (from External data)
- Crude Oil Receipts 1981-2020.xlsx (from External data)
- PET_CRD_CRPDN_ADC_MBBL_A.xls (from External data)
- Imports_of_Light_Sweet_to_California.csv (from External data)
- California Transportion Fuel Consumption - Summary 2020-06-01 GDS.xlsx (from EExternal data)
- 050515staffreport_opgee.pdf (from External data)
- ci_2012.csv (from External data)
- ci_2013.csv (from External data)
- ci_2014.csv (from External data)
- ci_2015.csv (from External data)
- ci_2016.csv (from External data)
- ci_2017.csv (from External data)
- ci_2018.csv (from External data)
- wells_19.csv (from
clean_doc_prod.R
) - Total_Energy_Nominal_Prices_Brent.csv (from External data)
- 2000_2019_ghg_inventory_trends_figures.xlsx
- Outputs:
- refinery_capacity.csv (refining segment output)
- fuel_watch_data.csv (refining segment output)
- refining_emissions.csv (refining segment output)
- ghg_mrr_2011-2018.csv (refining segment output)
- ghg_mrr_2009-2010.csv (refining segment output)
- ghg_mrr_2008.csv (refining segment output)
- ghg_inventory_tool.csv (refining segment output)
- reg_refin_crude_receipts.csv (refining segment output)
- imports_to_refineries.csv (refining segment output)
- ca_fuel_consumption_cec.csv (refining segment output)
- crude_imports_port.csv (not required for analysis)
- spot_price_wti_m.csv (not required for analysis)
- domestic_crude_first_p_price_streams.csv (not required for analysis)
- ca_crude_prod_m.csv (not required for analysis)
- emissions_by_facility.csv (not required for analysis)
- oil_gas_county.csv (not required for analysis)
- ca_crude_prod_a.csv (not required for analysis)
- summary_emissions.csv (not required for analysis)
- domestic_import_crude.csv (not required for analysis)
- ca_gas_d_prices.csv (not required for analysis)
- usa_retail_p2.csv (not required for analysis)
- oil_gas_emissions.csv (not required for analysis)
- all_prod_test.csv (not required for analysis)
- all_inject_test.csv (not required for analysis)
- ghg_emissions_epa.csv (not required for analysis)
- historic_permit_calwims.csv (not required for analysis)
- eia_ca_crude_prod.csv (not required for analysis)
- usa_crude_prod.csv (not required for analysis)
- ci_streams_all_yrs.csv (not required for analysis)
- brent_oil_price_projections.csv (not required for analysis)
- field_codes.csv (not required for analysis)
- indust_emissions_2000-2019.csv (extraction segment output)
create_ccs_scenarios.R
This script creates CCS scenarios for extraction and refining segments.
- Inputs:
- ccs_extraction_scenarios.csv (from External data)
- ccs_refining_scenarios.csv (from External data)
- Outputs:
- ccs_extraction_scenarios_revised.csv
- ccs_refining_scenarios_revised.csv
social_cost_carbon.R
This script creates a file with social cost of carbon information obtained from Technical Support Document: Social Cost of Carbon and Nitrous Oxide Interim Estimates under Executive Order 13990.
- Outputs:
- social_cost_carbon.csv
extraction/clean_doc_prod.R
This script re-organizes WellSTAR well information, production, and injection data.
- Inputs:
- All_wells_20200417.xlsx (from External data)
- CSV_1977_1985/CaliforniaOilAndGasWellMonthlyProduction.csv (from External data)
- CSV_1977_1985/CaliforniaOilAndGasWellMonthlyInjection.csv (from External data)
- CSV_1977_1985/CaliforniaOilAndGasWells.csv (from External data)
- CSV_1986_1989/CaliforniaOilAndGasWellMonthlyProduction.csv (from External data)
- CSV_1986_1989/CaliforniaOilAndGasWellMonthlyInjection.csv (from External data)
- CSV_1986_1989/CaliforniaOilAndGasWells.csv (from External data)
- CSV_1990_1994/CaliforniaOilAndGasWellMonthlyProduction.csv (from External data)
- CSV_1990_1994/CaliforniaOilAndGasWellMonthlyInjection.csv (from External data)
- CSV_1990_1994/CaliforniaOilAndGasWells.csv (from External data)
- CSV_1995_1999/CaliforniaOilAndGasWellMonthlyProduction.csv (from External data)
- CSV_1995_1999/CaliforniaOilAndGasWellMonthlyInjection.csv (from External data)
- CSV_1995_1999/CaliforniaOilAndGasWells.csv (from External data)
- CSV_2000_2004/CaliforniaOilAndGasWellMonthlyProduction.csv (from External data)
- CSV_2000_2004/CaliforniaOilAndGasWellMonthlyInjection.csv (from External data)
- CSV_2000_2004/CaliforniaOilAndGasWells.csv (from External data)
- CSV_2005_2009/CaliforniaOilAndGasWellMonthlyProduction.csv (from External data)
- CSV_2005_2009/CaliforniaOilAndGasWellMonthlyInjection.csv (from External data)
- CSV_2005_2009/CaliforniaOilAndGasWells.csv (from External data)
- CSV_2010_2014/CaliforniaOilAndGasWellMonthlyProduction.csv (from External data)
- CSV_2010_2014/CaliforniaOilAndGasWellMonthlyInjection.csv (from External data)
- CSV_2010_2014/CaliforniaOilAndGasWells.csv (from External data)
- CSV_2015/CaliforniaOilAndGasWellMonthlyProduction.csv (from External data)
- CSV_2015/CaliforniaOilAndGasWellMonthlyInjection.csv (from External data)
- CSV_2015/CaliforniaOilAndGasWells.csv (from External data)
- CSV_2016/CaliforniaOilAndGasWellMonthlyProduction.csv (from External data)
- CSV_2016/CaliforniaOilAndGasWellMonthlyInjection.csv (from External data)
- CSV_2016/CaliforniaOilAndGasWells.csv (from External data)
- CSV_2017/CaliforniaOilAndGasWellMonthlyProduction.csv (from External data)
- CSV_2017/CaliforniaOilAndGasWellMonthlyInjection.csv (from External data)
- CSV_2017/CaliforniaOilAndGasWells.csv (from EExternal data)
- CSV_2018/CaliforniaOilAndGasWellMonthlyProduction.csv (from External data)
- CSV_2018/CaliforniaOilAndGasWells.csv (from External data)
- CSV_2018/CaliforniaOilAndGasWellMonthlyInjection.csv (from External data)
- CSV_2019/CaliforniaOilAndGasWellMonthlyProduction.csv (from External data)
- CSV_2019/CaliforniaOilAndGasWellMonthlyInjection.csv (from External data)
- CSV_2019/CaliforniaOilAndGasWells.csv (from External data)
- county_codes.csv (from External data)
- Outputs:
- well_prod_m.rds
- well_inject_m.rds
- wells_19.csv
extraction/process-monthly-prod.R
This script processes the monthly prod file to filter out gas fields, add needed columns, and rename columns.
- Inputs:
- well_prod_m.rds (from
clean_doc_prod.R
) - wells_19.csv (from
clean_doc_prod.R
)
- well_prod_m.rds (from
- Outputs:
- data/stocks-flows/processed/well_prod_m_processed.csv
- data/stocks-flows/processed/field_info.csv
extraction/process-monthly-inj.R
This script processes the monthly injection file to filter out gas fields, add needed columns, and rename columns.
- Inputs:
- well_inject_m.rds (from
clean_doc_prod.R
) - wells_19.csv (from
clean_doc_prod.R
)
- well_inject_m.rds (from
- Outputs:
- data/stocks-flows/processed/well_inj_m_processed.csv
extraction/opgee-carb-results.R
This script takes raw outputs from the OPGEE model and organizes them into a long format.
- Inputs:
- OPGEE_v2.0_with-CARB-inputs.xlsm (from External data)
- opgee_field_names.csv (created externally)
- Outputs:
- field-level-emissions-results_processed_revised.csv
extraction/rystad_processing.R
This script cleans data from Rystad.
- Inputs:
- Asset_opex_capex_govtt.csv (from External data)
- ca_production.csv (from External data)
- asset_econ_categories.csv (from External data)
- resources_prod_myprod.csv (from External data)
- capex_per_recoverable_bbl.csv (from External data)
- asset-wells.csv (from External data)
- capex_per_bbl_nom.csv (from External data)
- opex_per_bbl_nom.csv (from External data)
- rystad_asset_rename.csv (from External data)
- well_cost_per_eur.csv (from External data)
- field_to_asset.csv (from External data)
- well_prod_m_processed.csv (from
process-monthly-prod.R
)
- Outputs:
- oil_asset_opex_capex_govtt_clean.csv
- ca_oil_production.csv
- economically_recoverable_resources_scenarios.csv
- economically_recoverable_resources_scenarios_wide.csv
- capex_bbl_reserves.csv
- rystad_asset_apis.csv
- field_rystad_match_apis_revised.csv
- rystad_capex_bbl_nom_clean.csv
- rystad_opex_bbl_nom_clean.csv
- well_cost_per_eur_clean.csv (not required for analysis)
- rystad_field_asset.csv (not required for analysis)
- asset_economics_cats.csv (not required for analysis)
- ca_asset_opex_capex_govtt_clean.csv (not required for analysis)
extraction/zero_prod.R
This script creates a file used in the well exit analysis.
- Inputs:
- well_prod_m_processed.csv (from
clean_doc_prod.R
) - AllWells_20210427.csv (from External data)
- well_prod_m_processed.csv (from
- Outputs:
- no_prod_wells_out.csv
extraction/income_data.R
This script collects Census data on household income for California using the censusapi R package.
- Outputs:
- ca-median-house-income.csv
- ca-median-house-income-county.csv
- scenario-prep
ccs_parameterization.R
This script contains the functions that calculate the cost of CCS for each field or refinery, depending on the amount of GHG emitted by the respective field or refinery.
- Inputs:
- crude_prod_x_field_revised.csv (from
crude_prod_x_field.R
) - ghg_emissions_x_field_2018-2045.csv (from
forecast_ghg_emission_factors.R
) - refinery_ghg_emissions.csv (from
ghg_emissions.R
)
- crude_prod_x_field_revised.csv (from
- Outputs: None
well_setback_sp_prep.R
This file reads in FrackTracker’s sensitive receptor data and creates shapefiles representing the three different buffer areas.
- Inputs:
- FracTrackerSetbackdata.gdb (layers SetbackOutlines_SR_Dwellings_082220, PlaygroundsinCities, DayCareCenters, reselderlyCare, CHHS_adultdayhealthcare_csv_Events, CHHS_altbirthing_csv_Events, CHHS_Dialysis_csv_Events, CHHS_healthcare_facility_locations_csv_Events, CHHS_intermedcarefac_csv_Events, CHHS_PrimaryCareClinic_csv_Events, CHHS_psychclinics_csv_Events, CHHS_rehabclinic_csv_Events, CHHS_skillednursingfacs_csv_Events, CHHS_surgicalclinic_csv_Events, CHHS_acutecarehospital_csv_Events_1, CAAcuteCAreHostpitalslatlon_1, PrivSchoolsCA_1, SchoolPropCA_1, SchoolsCA_Sabins_1, from External data)
- Outputs:
- buffer_1000ft.shp
- buffer_2500ft.shp
- buffer_5280.shp
gen_well_setback_status.R
This file creates the information needed for setback analysis (i.e., whether or not each well falls within buffer and the percentage of the field that gets covered by a buffer)
- Inputs:
- buffer_1000ft.shp (from
well_setback_sp_prep.R
) - buffer_2500ft.shp (from
well_setback_sp_prep.R
) - buffer_5280.shp (from
well_setback_sp_prep.R
) - allwells_gis/Wells_All.shp (from External data)
- DOGGR_Admin_Boundaries_Master.shp (from External data)
- well_prod_m_processed.csv (from
process-monthly-prod.R
)
- buffer_1000ft.shp (from
- Outputs:
- wells_in_setbacks_revised.csv
- setback_coverage_R.csv
- coverage_map.html
economically_recoverable_resources.R
This script analyzes production and economically recoverable resources at the asset level.
- Inputs:
- economically_recoverable_resources_scenarios_wide.csv (from
rystad_processing.R
)
- economically_recoverable_resources_scenarios_wide.csv (from
- Outputs:
- asset_sum_my-production.csv
- asset_max_resources.csv
- asset-year_cumulative_sum_production.csv
- asset-year_production_my-production_resources.csv
create_entry_econ_variables.R
This script creates economic variables.
- Inputs:
- oil_asset_opex_capex_govtt_clean.csv (from
rystad_processing.R
) - ca_oil_production.csv (from
rystad_processing.R
) - capex_bbl_reserves.csv (from
rystad_processing.R
) - rystad_opex_bbl_nom_clean.csv (from
rystad_processing.R
) - rystad_capex_bbl_nom_clean.csv (from
rystad_processing.R
) - asset_sum_my-production.csv (from
economically_recoverable_resources.R
) - asset_max_resources.csv (from
economically_recoverable_resources.R
) - asset-year_cumulative_sum_production.csv (from
economically_recoverable_resources.R
) - asset-year_production_my-production_resources.csv (from
economically_recoverable_resources.R
)
- oil_asset_opex_capex_govtt_clean.csv (from
- Outputs:
- rystad_entry_variables.csv
impute_costs.do
This script (a) imputes the asset-level costs (capex and opex) for years in the historic period when the cost data is missing, and (b) extrapolates the asset-level costs into the future period.
- Inputs:
- rystad_entry_variables.csv (from
create_entry_econ_variables.R
)
- rystad_entry_variables.csv (from
- Outputs:
- Rystad_cost_imputed_all_assets.csv
init_yr_prod.R
This script summarizes production by well and initial production year.
- Inputs:
- well_prod_m_processed.csv (from
clean_doc_prod.R
)
- well_prod_m_processed.csv (from
- Outputs:
- well_start_prod_api10_revised.csv
match_fields_assets.R
This script creates an output used in another script to make well entry inputs. This script matches fields to Rystad assets. This is the final version, which matches 1) first on well-level APIs, 2) the closest either a) field with economic data or b) asset.
- Inputs:
- field_rystad_match_apis_revised.csv (from
rystad_processing.R
) - well_prod_m_processed.csv (from
process-monthly-prod.R
) - DOGGR_Admin_Boundaries_Master.shp (from External data)
- asset_latlon.csv (from External data)
- ca_oil_production.csv (from
rystad_processing.R
) - Rystad_cost_imputed_all_assets.csv (from
impute_costs.do
)
- field_rystad_match_apis_revised.csv (from
- Outputs:
- outputs/stocks-flows/entry-model-input/well_doc_asset_match_revised.csv
- data/Rystad/data/processed/asset_latlon_adj.csv
- data/Rystad/data/processed/fieldsAssets_adj_revised.csv
- outputs/stocks-flows/entry-model-input/field_x_field_match_revised.csv
- outputs/stocks-flows/entry-model-input/final/field_asset_matches_revised.csv
create_entry_input.R
This script creates an output used in another script to make well entry inputs. This script matches fields to Rystad assets. This is the final version, which matches 1) first on well-level APIs, 2) the closest either a) field with economic data or b) asset.
- Inputs:
- field_asset_matches_revised.csv (from
match_fields_assets.R
) - oil_asset_opex_capex_govtt_clean.csv (from
rystad_processing.R
) - rystad_entry_variables.csv (from
create_entry_econ_variables.R
) - Rystad_cost_imputed_all_assets.csv (from
impute_costs.do
) - well_prod_m_processed.csv (from
process-monthly-prod.R
) - well_start_prod_api10_revised.csv (from
init_yr_prod.R
) - wti_brent.csv (from External data)
- field_asset_matches_revised.csv (from
- Outputs:
- outputs/stocks-flows/entry-input-df/final/field_capex_opex_forecast_revised.csv
- outputs/stocks-flows/entry-input-df/final/docfield_asset_crosswalk_entrydf_revised.csv
- outputs/stocks-flows/entry-input-df/final/entry_df_final_revised.csv
entry.do
This script prepares the data for the entry model (which predicts the number of new wells in each field in each year in the future period in predict.do
).
- Inputs:
- entry_df_final_revised.csv (from
create_entry_input.R
)
- entry_df_final_revised.csv (from
- Outputs:
- entry_revised.dta
- entry_revised_real.dta
depl.do
This script estimates the total oil resource of each field.
- Inputs:
- entry_revised.dta (from
entry.do
)
- entry_revised.dta (from
- Outputs:
- field_resource_revised.csv
predict.do
This script predicts the number of new wells in each field in each year in the future period.
- Inputs:
- entry_revised.dta (from
entry.do
)
- entry_revised.dta (from
- Outputs:
- new_wells_pred_revised.csv
- poisson_regression_coefficients_revised.csv
tab_entryexit.do
This script produces the regression outputs for Supplementary Table 1.
- Inputs:
- entry_revised_real.dta (from
entry.do
) - exit_fields.dta (from
exit.do
)
- entry_revised_real.dta (from
- Outputs: None
crude_prod_x_field.R
This script summarizes annual production by field.
- Inputs:
- well_prod_m_processed.csv (from
clean_doc_prod.R
)
- well_prod_m_processed.csv (from
- Outputs:
- crude_prod_x_field_revised.csv
field_county_production.R
This script summarizes production by year, county, and field. Production by field can be attributed to multiple counties.
- Inputs:
- well_prod_m_processed.csv (from
clean_doc_prod.R
)
- well_prod_m_processed.csv (from
- Outputs:
- annual_field_county_production_proportion_revised.csv
- annual_final_year_field_county_production_proportion_revised.csv
field_emission_factors_2015.R
This script creates field-level GHG emission factors for oil extraction. GHG factors are based on CARB’s LCFS OPGEE emission factors.
- Inputs:
- injection-by-well-type-per-field-per-year_1977-2018_revised.csv (from
injection-type-by-field.R
) - field-level-emissions-results_processed_revised.csv (from
opgee-carb-results.R
) - entry_df_final_revised.csv (from
create_entry_input.R
) - crude_prod_x_field_revised.csv (from
crude_prod_x_field.R
)
- injection-by-well-type-per-field-per-year_1977-2018_revised.csv (from
- Outputs:
- opgee_emission_factors_x_field_2015_revised.csv
- ghg_emissions_x_field_2015_revised.csv
county-setback.R
This script creates a file used to make county-level figures.
- Inputs:
- CA_Counties_TIGER2016.shp (from External data)
- DOGGR_Admin_Boundaries_Master.shp (from External data)
- buffer_1000ft.shp (from
well_setback_sp_prep.R
) - buffer_2500ft.shp (from
well_setback_sp_prep.R
) - buffer_5280.shp (from
well_setback_sp_prep.R
) - well_prod_m_processed.csv (from
process-monthly-prod.R
) - crude_prod_x_field_revised.csv (from
crude_prod_x_field.R
)
- Outputs:
- county_level_setback_coverage.csv
well_exits.R
This script summarizes the production by plugged wells in the year leading up to their exit by field. The outputs of this script are not needed for the analysis, but are used for comparison in another script.
- Inputs:
- well_prod_m_processed.csv (from
clean_doc_prod.R
) - AllWells_20210427.csv (from External data)
- well_prod_m_processed.csv (from
- Outputs:
- well_exit_volume_x_field_v1_revised.csv
prep_data_field_year.R
This script preps the production data to be at the field-start year level.
- Inputs:
- well_prod_m_processed.csv (from
process-monthly-prod.R
) - well_start_prod_api10_revised.csv (from
init_yr_prod.R
) - entry_df_final_revised.csv (from
create_entry_input.R
)
- well_prod_m_processed.csv (from
- Outputs:
- field-year_peak-production_yearly.csv
- production_field-year_yearly_entry.csv
- production_api10_yearly_start_year.csv
- adj_val_field-year_pred_prod.csv
field-vintage-exit-rule.R
This script creates an output based on an alternative exit rule (based on a production threshold). This rule is not ultimately used in the analysis.
- Inputs:
- production_field-year_yearly_entry.csv (from
prep_data_field_year
) - well_exit_volume_x_field_v1_revised.csv (from
well_exits.R
)
- production_field-year_yearly_entry.csv (from
- Outputs:
- well_exits_under_rule.csv
field-vintage-exit.R
This script creates an output used in the well exit analysis.
- Inputs:
- well_prod_m_processed.csv (from
clean_doc_prod.R
) - AllWells_20210427.csv (from External data)
- no_prod_wells_out.csv (from
zero_prod.R
)
- well_prod_m_processed.csv (from
- Outputs:
- well_exits.csv
exit.do
This script has the exit model. The outputs are used in the final extraction model.
- Inputs:
- well_exits_under_rule.csv (from
field-vintage-exit-rule.R
) - well_exits.csv (from
field-vintage-exit.R
)
- well_exits_under_rule.csv (from
- Outputs:
- well_exits_pred.csv
- exit_regression_coefficients.csv
historic-extraction-emissions.R
This script compiles historic oil and gas greenhouse gas emissions.
- Inputs:
- well_prod_m.rds (from
clean_doc_prod.R
) - wells_19.csv (from
clean_doc_prod.R
) - N9010CA2a.xls (from External data)
- well_prod_m.rds (from
- Outputs:
- ghg_sector_data_og_updated.csv
- historic_ghg_emissions_og.csv
- historic_ghg_emissions_og_ng_adjusted.csv
prep_data_field_vintage.R
This script organizes oil production data to the field-vintage level.
- Inputs:
- well_prod_m_processed.csv (from
clean_doc_prod.R
) well_start_prod_api10_revised.csv (frominit_yr_prod.R
) entry_df_final_revised.csv (fromcreate_entry_input.R
)
- well_prod_m_processed.csv (from
- Outputs:
- field-vintage_peak-production_yearly_revised.csv
- production_field-vintange_yearly_entry_revised.csv
- production_api10_monthly_revised.csv
decline_parameters_field_start_year.R
This script parameterizes decline at field-start year level.
- Inputs:
- production_field-year_yearly_entry.csv (from
prep_data_field_year.R
) - field-year_peak-production_yearly.csv (from
prep_data_field_year.R
) - entry_df_final_revised.csv (from
create_entry_input.R
)
- production_field-year_yearly_entry.csv (from
- Outputs:
- fitted-parameters_field-start-year_yearly_entry.csv
predict_existing_production.R
This script predicts production from existing wells and saves the outputs to be used in the extraction module.
- Inputs:
- production_api10_yearly_start_year.csv (from
prep_data_field_year.R
) - fitted-parameters_field-start-year_yearly_entry.csv (from
decline_parameters_field_start_year.R
) - field-year_peak-production_yearly.csv (from
prep_data_field_year.R
) - adj_val_field-year_pred_prod.csv (from
prep_data_field_year.R
) - wells_in_setbacks_revised.csv (from
gen_well_setback_status.R
)
- production_api10_yearly_start_year.csv (from
- Outputs:
- pred_prod_no_exit_2020-2045_field_start_year_revised.csv
analyze-parameters.R
This script conducts analysis and creates plots related to decline curve parameters. The output is used in v1 of the model, but not the final model.
- Inputs:
- crude_prod_x_field_revised.csv (from
crude_prod_x_field.R
) - fitted-parameters_field-start-year_yearly_entry.csv (from
decline_parameters_field_start_year.R
) - entry_df_final_revised.csv (from
create_entry_input.R
)
- crude_prod_x_field_revised.csv (from
- Outputs:
- forecasted_decline_parameters_2020_2045.csv
extraction_fields.R
This script creates a list of fields included in the projection analysis.
- Inputs:
- entry_df_final_revised.csv (from
create_entry_input.R
) - pred_prod_no_exit_2020-2045_field_start_year_revised.csv (from
predict_existing_production.R
) - DOGGR_Admin_Boundaries_Master.shp (from External data)
- entry_df_final_revised.csv (from
- Outputs:
- extraction_fields.shp
extra/injection-type-by-field.R
This script summarizes the types of injection by each field and by each field-year.
- Inputs:
- well_inj_m_processed.csv (from
clean_doc_prod.R
) - well_type_df.csv (from External data) Outputs:
- injection-by-well-type-per-field_1977-2018_revised.csv
- injection-by-well-type-per-field-per-year_1977-2018_revised.csv
- well_inj_m_processed.csv (from
forecast_ghg_emission_factors.R
This script takes the updated OPGEE emission factors (modeled at various historical years), linearly regresses the emission factors, and projects emission factors for all fields until 2045.
- Inputs:
- Various saved OPGEE results files (copy and pasted from the OPGEE spreadsheet)
- crude_prod_x_field_revised.csv (from
crude_prod_x_field.R
) - entry_df_final_revised.csv (from
create_entry_input.R
) - injection-by-well-type-per-field-per-year_1977-2018_revised.csv (from
injection-type-by-field.R
)
- Outputs:
- ghg_emissions_x_field_2018-2045.csv
- ghg_emissions_x_field_historic.csv
input_prep/emissions-target-90.R
This script calculates a 90% reduction in GHG emissions for scenario development.
- Inputs:
- indust_emissions_2000-2019.csv (from
stocks_flows.R
)
- indust_emissions_2000-2019.csv (from
- Outputs:
- emission_reduction_90.csv
input_prep/prep-excise-non-target.R
This script creates scenario input information for excise tax scenarios.
- Inputs: None
- Outputs:
- excise_tax_non_target_scens.csv
target-functions/func_calc_2045_ghg.R
This script contains a function used in the final model to determine a 2045 GHG emissions target.
target-functions/func_calc_carbonpx.R
This script contains a function that calculates a stream of carbon prices given a start value.
target-functions/func_calc_inputs_and_ghg.R
This script contains a function that prepares input values for the final model.
target-functions/optim_functions.R
This script contains functions that find the excise/carbon tax values that result in a target 2045 GHG emission value.
load_input_info.R
This script loads input info for the final model. The user will need to update the file paths This script is sourced in 00_extraction_steps.R
.
- Inputs:
- entry_df_final_revised.csv (from
create_entry_input.R
) - poisson_regression_coefficients_revised.csv (from
predict.do
) - forecasted_decline_parameters_2020_2045.csv (from
analyze-parameters.R
) - field-year_peak-production_yearly.csv (from
prep_data_field_year.R
) - pred_prod_no_exit_2020-2045_field_start_year_revised.csv (from
predict_existing_production.R
) - crude_prod_x_field_revised.csv (from
crude_prod_x_field.R
) - exit_regression_coefficients.csv (from
exit.do
) - field_capex_opex_forecast_revised.csv (from
create_entry_input.R
) - field_resource_revised.csv (from
depl.do
) - oil_price_projections_revised.xlsx (from External data)
- innovation_scenarios.csv (from Scenario inputs)
- carbon_prices_revised.csv (from Scenario inputs)
- ccs_extraction_scenarios_revised.csv (from Scenario inputs)
- ghg_emissions_x_field_2018-2045.csv (from
forecast_ghg_emission_factors.R
) - setback_coverage_R.csv (from
gen_well_setback_status.R
) - prod_quota_scenarios.csv (from Scenario inputs)
- excise_tax_non_target_scens.csv (from
prep-excise-non-target.R
) - CCS_LCFS_45Q.xlsx (from Scenario inputs)
- n_wells_area.csv (from
predict_existing_production.R
) - emission_reduction_90.csv (from
emissions-target-90.R
)
- entry_df_final_revised.csv (from
scenario-list-targets.R
This script creates a list of scenarios that is used in 00_extraction_steps.R
.
- Inputs:
- oil_price_projections_revised.xlsx (from External data)
- innovation_scenarios.csv (from Scenario inputs)
- carbon_prices_revised.csv (from Scenario inputs)
- ccs_extraction_scenarios_revised.csv (from Scenario inputs)
- setback_coverage_R.csv (from
gen_well_setback_status.R
) - prod_quota_scenarios_with_sb.csv (from
setback_quota_scenarios.R
) - prod_quota_scenarios.csv (from Scenario inputs)
- excise_tax_non_target_scens.csv (from
prep-excise-non-target.R
) - CCS_LCFS_45Q.xlsx (from Scenario inputs)
- Output:
- scenario_id_list_targets.csv
00_extraction_steps.R
This script runs the final extraction model.
- Inputs:
- scenario_id_list_targets.csv (from
scenario-list-targets.R
)
- scenario_id_list_targets.csv (from
- Outputs:
- None
fun_extraction_model_targets.R
This script runs the final model. This script is sourced in 00_extraction_steps.R
.
- Outputs:
- run_info.csv
- XX_vintage.csv (where XX represents a scenario id)
- XX_field.rds
- XX_state.rds
- XX_density.csv
- XX_exit.csv
- XX_depletion.csv
review_target_out.R
This script reviews the outputs of each scenario (particularly 2045 GHG emissions values compared to target values).
- Inputs:
- All state-level outputs from
fun_extraction_model_targets.R
- All state-level outputs from
- Outputs: None
- compile-outputs
compile_extraction_outputs_full.R
This file compiles the energy, labor, and health outputs for the scenarios.
- Input files:
- well_prod_m_processed.csv (from
process-monthly-prod.R
) - oil_price_projections_revised.xlsx (from External data)
- ghg_emissions_x_field_2018-2045.csv (from
forecast_ghg_emission_factors.R
) - indust_emissions_2000-2019.csv (from
stocks_flows.R
) - ces3results.xlsx (from External data)
- ca-median-house-income.csv (from
income_data.R
) - ca-median-house-income-county.csv (from
income_data.R
) - ica_multipliers_v2.xlsx (from
ica_multiplier_process.R
) - XX/srm_nh3_fieldYY.csv (where XX represents folders nox, pm25, sox, voc; and YY represents numbers 1-26. The numbers represent the 26 oil extraction field clusters) (from InMap, External data)
- extraction_fields_clusters_10km.csv (created in ArcGIS)
- extraction_fields_xwalk_id.dbf (created in ArcGIS)
- ces3_data.csv (from External data)
- ct_inc_45.csv (from
health_data.R
) - growth_rates.csv (from External data)
- well_prod_m_processed.csv (from
- Output files:
- XX_state_results.rds (where XX represents a scenario id)
- XX_ct_results.rds (where XX represents a scenario id)
- XX_county_results.rds (where XX represents a scenario id)
compile_subset_csvs.R
This file creates summary csvs of the extraction segment outputs.
- Inputs:
- scenario_id_list_targets.csv
- XX_ct_results.rds (where XX represents a scenario id)
- XX_county_results.rds (where XX represents a scenario id)
- XX_state_results.rds (where XX represents a scenario id)
- Outputs:
- subset_census_tract_results.csv
- subset_county_results.csv
- subset_state_results.csv
fig_outputs.R
This script creates outputs needed to make the figures for the manuscript.
- Inputs:
- indust_emissions_2000-2019.csv (from
stocks_flows.R
) - social_cost_carbon.csv (from
social_cost_carbon.R
) - carbon_price_scenarios_revised.xlsx (from Scenario inputs)
- growth_rates.csv (from External data)
- ct_inc_45.csv (from
health_data.R
) - subset_state_results.csv (from
compile_subset_csvs.R
) - subset_census_tract_results.csv (from
compile_subset_csvs.R
) - extraction_field_cluster_xwalk.csv (from
source_receptor_matrix.do
)
- indust_emissions_2000-2019.csv (from
- Outputs:
- subset_state_results.csv
- state_levels_all_oil.csv
- npv_x_metric_all_oil.csv
- dac_health_labor_all_oil.csv
- dac_bau_health_labor_all_oil
- state_dac_ratios.csv
field_characteristics.R
This script creates an output used in figures.
- Inputs:
- reference case_no_setback_no quota_price floor_no ccs_low innovation_no tax_field_results.rds (from
compile_extraction_outputs_full.R
) - reference case_no_setback_no quota_price floor_no ccs_low innovation_no tax_county_results.rds (from
compile_extraction_outputs_full.R
) - field_capex_opex_forecast_revised.csv (from
create_entry_input.R
) - ghg_emissions_x_field_2018-2045.csv (from
forecast_ghg_emission_factors.R
) - setback_coverage_R.csv (from
gen_well_setback_status.R
) - well_prod_m_processed.csv (from
process-monthly-prod.R
) - ces3results.xlsx (from External data)
- ct_inc_45.csv (from
health_data.R
)
- reference case_no_setback_no quota_price floor_no ccs_low innovation_no tax_field_results.rds (from
- Outputs:
- field_characteristics.csv
- county_characteristics.csv
figure_themes.R
This file has figures themes and is sourced in the scripts that create figures for the manuscript.
- Inputs: None
- Outputs: None
figure1.R
This script creates the components of figure 1.
- Inputs:
- well_prod_m_processed.csv (from
process-monthly-prod.R
) - reference case_no_setback_no quota_price floor_no ccs_low innovation_no tax_ct_results.rds (from
compile_extraction_outputs_full.R
) - reference case_no_setback_no quota_price floor_no ccs_low innovation_no tax_county_results.rds (from
compile_extraction_outputs_full.R
) - extraction_fields.shp (from
extraction_fields.R
) - DOGGR_Admin_Boundaries_Master.shp (from External data)
- CA_Counties_TIGER2016.shp (from External data)
- CA_Counties_TIGER2016_noislands.shp (from External data)
- tl_2019_06_tract.shp (from External data)
- ces3results.xlsx (from External data)
- new_wells_pred_revised.csv (from
predict.do
) - extraction_fields_clusters_10km.csv (created in ArcGIS)
- extraction_fields_xwalk_id.dbf (created in ArcGIS)
- well_prod_m_processed.csv (from
- Outputs:
- Components of figure 1 (arranged together in Adobe Illustrator)
figure2.R
This script creates figure 2 in the main text and figures in the Supplementary Information.
- Inputs:
- state_levels_all_oil.csv (from
fig_outputs.R
)
- state_levels_all_oil.csv (from
- Outputs:
- figure2-ref-case.pdf/csv
- figure2-low.pdf/csv
- figure2-high.pdf/csv
figure3.R
This script creates figures 2 and 3 in the main text and additional figures in the Supplementary Information.
- Inputs:
- npv_x_metric_all_oil.csv (from
fig_outputs.R
) - dac_bau_health_labor_all_oil.csv (from
fig_outputs.R
)
- npv_x_metric_all_oil.csv (from
- Outputs:
- figure3-ref-case.pdf/png
- figure3-low.pdf/png
- figure3-high.pdf/png
- figure5-refcase-relBAU.pdf/png
figure6.R
This script creates figure 6 in the main text and additional figures in the Supplementary Information.
- Inputs:
- state_levels_all_oil.csv (from
fig_outputs.R
) - npv_x_metric_all_oil.csv.csv (from
fig_outputs.R
) - dac_bau_health_labor_all_oil.csv (from
fig_outputs.R
)
- state_levels_all_oil.csv (from
- Outputs:
- figure6-ref-case.pdf
- figure6-ref-case.png
calc_values.R
This script calculates values used in the main text and Supplementary Information
- Inputs:
- state_levels_all_oil.csv (from
fig_outputs.R
)
- state_levels_all_oil.csv (from
- Outputs:
- none
prep_files_for_figs.R
This script preps oil price data for figures
- Inputs:
- oil_price_projections_revised.xlsx.csv (from External data)
- wti_brent.csv (from External data)
Outputs:
- historial_brent.csv
si/capex-opex-figs.R
This file makes figures of opex and capex (historic and future projections).
- Inputs:
- field_capex_opex_forecast_revised.csv (from
create_entry_input.R
) - entry_df_final_revised.csv (from
create_entry_input.R
) - well_prod_m_processed.csv (from
process-monthly-prod.R
)
- field_capex_opex_forecast_revised.csv (from
- Outputs:
- projected-capex-opex-si-fig.png
- historical-capex-opex-si-fig.png
si/county-level-figs.R
This script makes county-level figures.
- Inputs:
- ghg_emissions_x_field_2018-2045.csv (from
forecast_ghg_emission_factors.R
) - well_prod_m_processed.csv (from
process-monthly-prod.R
) - field_capex_opex_forecast_revised.csv (from
create_entry_input.R
) - setback_coverage_R.csv (from
gen_well_setback_status.R
) - subset_census_tract_results.csv (from
compile_subset_csvs.R
) - county_level_setback_coverage.csv (from
county-setback.R
) - extraction_field_cluster_xwalk.csv (from
source_receptor_matrix.do
) - oil_price_projections_revised.xlsx (from External data)
- well_inj_m_processed.csv (from
clean_doc_prod.R
) - ces3results.xlsx (from External data)
- ica_multipliers_v2.xlsx (from
ica_multiplier_process.R
) - CA_Counties_TIGER2016.shp (from External data)
- ghg_emissions_x_field_2018-2045.csv (from
- Outputs:
si/entry-exit-figs.R
This script makes well entry and exit figures.
- Inputs:
- well_prod_m_processed.csv (from
process-monthly-prod.R
) - new_wells_pred_revised.csv (from
predict.do
) - well_exits_pred.csv (from
exit.do
)
- well_prod_m_processed.csv (from
- Outputs:
- pred_fullsample_topfield.png
- pred_fullsample_state.png
- pred_exit_topfield.png
- pred_exit_state.png
si/si-results.R
This script makes figures for the supplementary document.
- Inputs:
- state_levels_all_oil.csv (from
fig_outputs.R
) - oil_price_projections_revised.xlsx (from External data)
- carbon_prices_revised.csv (from External data)
- well_prod_m_processed.csv (from
process-monthly-prod.R
)
- state_levels_all_oil.csv (from
- Outputs:
- si-oil-prod-oilpx.png
- si-ghg-oilpx.png
- si-prod-setback.png
- si-ghg-setback.png
- si-excise-tax-fig.png
- si-carbon-tax-fig.png
- hist-future-prod.png
si/si-macro-econ-figs.R
This script makes figures for the supplementary document.
- Inputs:
- oil_price_projections_revised.xlsx (from External data)
- carbon_prices_revised.csv (from External data)
- Outputs:
- Figures
si/ghg_x_cost.R
This script makes figures showing GHG intensity by cost of production.
- Inputs:
- ghg_emissions_x_field_2018-2045.csv (from
forecast_ghg_emission_factors.R
) - well_prod_m_processed.csv (from
process-monthly-prod.R
) - field_capex_opex_forecast_revised.csv (from
create_entry_input.R
)
- ghg_emissions_x_field_2018-2045.csv (from
- Outputs:
- ghg_x_capex_plus_opex.pdf
- ghg_x_production_cost.pdf
si/clusters.R
This script makes figures showing GHG intensity by cost of production.
- Inputs:
- CA_Counties_TIGER2016.shp (from External data)
- CA_Counties_TIGER2016_noislands.shp (from External data)
- extraction_fields_clusters_10km.shp (dataset obtained from creating 10 km buffers surrounding fields from ArcGIS)
- Outputs:
- cluster_si_fig.png
- cluster_si_fig.pdf
scripts/mechanisms.do
This STATA script generates the cross-sectional panels in Fig. 4 of the main text and Fig. S33 in the SI. It requires changing the local file path at the top of the script.
- Inputs:
- county_characteristics.csv (from
field_characteristics.R
) - extraction_cluster_affectedpop.csv (from
scripts/srm_extraction_population.R
) - extraction_field_cluster_xwalk.csv (from
scripts/obtain_field_cluster_xwalk.do
) - field_characteristics.csv (from
field_characteristics.R
)
- county_characteristics.csv (from
- Outputs:
- Health_emp_mechanism_setback_2500.jpg (Fig. 4 in main text)
- cluster_ghg_intensity_cost.jpg (Fig. S33 in SI)
This section lists the files that are included in the Zenodo repository. It includes all publically available input files, intermediate files needed to run the extraction model, model outputs (including extraction, health, and labor outputs), and files needed to create figures and results in the manuscript. Please note that the user will need to change the file paths and change how some objects are defined before running the codes. A full description of the scripts can be found in the readme for the manuscript’s GitHub repository ca-transport-supply-decarb. Due to data confidentiality, the user can only run a subset of the scripts. Thus, we provide all of the intermediate outputs needed to run the following scripts:
ca-transport-supply-decarb/energy/extraction-segment/model/full-run-revised/00_extraction_steps.R
- this script runs the energy model that results in oil extraction outputs. To successfully run the energy model, the user should make the following changes in the script:Set zenodo_repo <- TRUE
- Define
zenodo_user_path
, which should be the user-specific path that leads up to theca-transport-supply-decarb-files
folder downloaded from Zenodo - Define a
save_path
, which represent the path to where the user would like the outputs to be saved - Define a
run_name
, which is used with the current to generate a folder to save outputs (this folder will be created in the save_path location)
ca-transport-supply-decarb/energy/extraction-segment/figs-and-results/fig_outputs.R
- this script takes the energy, health, and labor outputs and computes values for the manuscript (i.e., outputs needed to make figures and results presented in the paper). To successfully run the code, the user should make the following changes to the script:Set zenodo_repo <- TRUE
- Define
zenodo_user_path
, which should be the user-specific path that leads up to theca-transport-supply-decarb-files
folder downloaded from Zenodo - Define
save_info_path
, which is a path specifying where the user wants the outputs to be saved - Zenodo users do not need to specify
energy_result_date
orcomp_result_date
.
- The scripts contained in the
ca-transport-supply-decarb/energy/extraction-segment/figs-and-results/
folder (these scripts create figures and values presented in the manuscript). The filesfigure2.R
,figure3.R
, andfigure6.R
are set up so that the user can setzenodo_repo <- TRUE
and specify azenodo_user_path
andzenodo_save_path
. For all other scripts in this folder, the user will need to update file paths.
List of files contained in Zenodo repository
ca-transport-supply-decarb-files/
- inputs/
- gis/
- CA_counties_noislands/
- CA_Counties_TIGER2016_noislands.shp (from External data)
- field-boundaries/
- DOGGR_Admin_Boundaries_Master.shp (from External data)
- CA_Counties/
- CA_Counties_TIGER2016.shp (from External data)
- census-tract/
- tl_2019_06_tract.shp (from External data)
- CA_counties_noislands/
- extraction/
- monthly-prod-inj-wells/ (from External data)
- CSV_1977_1985/
- CaliforniaOilAndGasWellMonthlyProduction.csv
- CaliforniaOilAndGasWellMonthlyInjection.csv
- CaliforniaOilAndGasWells.csv
- CSV_1986_1989/
- CaliforniaOilAndGasWellMonthlyProduction.csv
- CaliforniaOilAndGasWellMonthlyInjection.csv
- CaliforniaOilAndGasWells.csv
- CSV_1990_1994/
- CaliforniaOilAndGasWellMonthlyProduction.csv
- CaliforniaOilAndGasWellMonthlyInjection.csv
- CaliforniaOilAndGasWells.csv
- CSV_1995_1999/
- CaliforniaOilAndGasWellMonthlyProduction.csv
- CaliforniaOilAndGasWellMonthlyInjection.csv
- CaliforniaOilAndGasWells.csv
- CSV_2000_2004/
- CaliforniaOilAndGasWellMonthlyProduction.csv
- CaliforniaOilAndGasWellMonthlyInjection.csv
- CaliforniaOilAndGasWells.csv
- CSV_2005_2009/
- CaliforniaOilAndGasWellMonthlyProduction.csv
- CaliforniaOilAndGasWellMonthlyInjection.csv
- CaliforniaOilAndGasWells.csv
- CSV_2010_2014/
- CaliforniaOilAndGasWellMonthlyProduction.csv
- CaliforniaOilAndGasWellMonthlyInjection.csv
- CaliforniaOilAndGasWells.csv
- CSV_2015/
- CaliforniaOilAndGasWellMonthlyProduction.csv
- CaliforniaOilAndGasWellMonthlyInjection.csv
- CaliforniaOilAndGasWells.csv
- CSV_2016/
- CaliforniaOilAndGasWellMonthlyProduction.csv
- CaliforniaOilAndGasWellMonthlyInjection.csv
- CaliforniaOilAndGasWells.csv
- CSV_2017/
- CaliforniaOilAndGasWellMonthlyProduction.csv
- CaliforniaOilAndGasWellMonthlyInjection.csv
- CaliforniaOilAndGasWells.csv
- CSV_2018/
- CaliforniaOilAndGasWellMonthlyProduction.csv
- CaliforniaOilAndGasWellMonthlyInjection.csv
- CaliforniaOilAndGasWells.csv
- CSV_2019/
- CaliforniaOilAndGasWellMonthlyProduction.csv
- CaliforniaOilAndGasWellMonthlyInjection.csv
- CaliforniaOilAndGasWells.csv
- CSV_1977_1985/
- All_wells_20200417.xlsx (from External data)
- AllWells_20210427.csv (from External data)
- county_codes.csv (from External data)
- oil_price_projections_revised.xlsx (from External data)
- well_type_df.csv (from External data)
- 2000_2019_ghg_inventory_trends_figures.xlsx (from External data)
- monthly-prod-inj-wells/ (from External data)
- health/
- ces3results.xlsx (from External data)
- nhgis0001_ts_geog2010_tract.csv (from EExternal data)
- CDOF_p2_Age_1yr_Nosup.csv (from External data)
- County_def.shp (from External data)
- age_group_desc.csv (from External data)
- Mortality Incidence (2015).csv (from External data)
- growth_rates.csv (from External data)
- ces3_data.csv (from External data)
- labor/
- fte-convert.xlsx (from External data)
- scenarios/
- innovation_scenarios.csv (from External dataa)
- carbon_prices_revised.csv (from External data)
- ccs_extraction_scenarios.csv (from External data)
- ccs_extraction_scenarios_revised.csv (from Scenario inputs)
- CCS_LCFS_45Q.xlsx (from External data)
- prod_quota_scenarios.csv (from External data)
- gis/
- intermediate/
- extraction-model/
- refinery_ghg_emissions.csv
- entry_df_final_revised.csv (from
create_entry_input.R
) - poisson_regression_coefficients_revised.csv (from
predict.do
) - forecasted_decline_parameters_2020_2045.csv (from
analyze-parameters.R
) - field-year_peak-production_yearly.csv (from
prep_data_field_year.R
) - pred_prod_no_exit_2020-2045_field_start_year_revised.csv (from
predict_existing_production.R
) - crude_prod_x_field_revised.csv (from
crude_prod_x_field.R
) - exit_regression_coefficients.csv (from
exit.do
) - field_capex_opex_forecast_revised.csv (from
create_entry_input.R
) - field_resource_revised.csv (from
depl.do
) - ghg_emissions_x_field_2018-2045.csv (from
forecast_ghg_emission_factors.R
) - setback_coverage_R.csv (from
gen_well_setback_status.R
) - excise_tax_non_target_scens.csv (from
prep-excise-non-target.R
) - n_wells_area.csv (from
predict_existing_production.R
) - emission_reduction_90.csv (from
emissions-target-90.R
) - prod_quota_scenarios_with_sb.csv (from
setback_quota_scenarios.R
) - scenario_id_list_targets.csv (from
scenario-list-targets.R
)
- inmap-processed-srm-extraction/
- nh3/srm_nh3_field1.csv (26 files, 1-26) (from InMap, External data)
- nox/srm_nox_field1.csv (26 files, 1-26) (from InMap, External data)
- pm25/srm_pm25_field1.csv (26 files, 1-26) (from InMap, External data)
- sox/srm_sox_field1.csv (26 files, 1-26) (from InMap, External data)
- voc/srm_voc_field1.csv (26 files, 1-26) (from InMap, External data)
- extraction-model/
- outputs/
- model-out/
- subset_census_tract_results.csv (from
compile_subset_csvs.R
) - subset_county_results_adj.csv (from
compile_subset_csvs.R
) - subset_state_results.csv (from
compile_subset_csvs.R
)
- subset_census_tract_results.csv (from
- fig-and-results-out/
- state_levels_all_oil.csv (from
fig_outputs.R
) - npv_x_metric_all_oil.csv (from
fig_outputs.R
) - dac_bau_health_labor_all_oil.csv (from
fig_outputs.R
) - field_characteristics.csv (from
field_characteristics.R
) - county_characteristics.csv (from
field_characteristics.R
) - extraction_cluster_affectedpop.csv (from
field_characteristics.R
) - extraction_field_cluster_xwalk.csv (from
field_characteristics.R
) - well_prod_m_processed.csv (from
process-monthly-prod.R
) - extraction_fields.shp (from
extraction_fields.R
) - new_wells_pred_revised.csv (from
predict.do
) - reference case-no_setback-no quota-price floor-no ccs-low innovation-no tax-0_ct_results.rds (from
fun_extraction_model_targets.R
) - county_level_out_adjusted.csv (use instead of reference case-no_setback-no quota-price floor-no ccs-low innovation-no tax-0_county_results.rds) (from
fun_extraction_model_targets.R
) - extraction_fields_clusters_10km.csv (dataset obtained from creating 10 km buffers surrounding fields from ArcGIS)
- extraction_fields_xwalk_id.dbf (created in ArcGIS)
- social_cost_carbon.csv (from
social_cost_carbon.R
) - ct_inc_45.csv (from
health_data.R
) - growth_rates.csv (from External data)
- indust_emissions_2000-2019.csv (from
stocks_flows.R
)
- state_levels_all_oil.csv (from
- model-out/