Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add column mapping for proposed multifuel table #3988

Open
wants to merge 6 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions src/pudl/extract/eia860.py
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,7 @@ def get_dtypes(page, **partition):
"raw_eia860__generator_wind_existing",
"raw_eia860__generator_wind_retired",
"raw_eia860__multifuel_existing",
"raw_eia860__multifuel_proposed",
"raw_eia860__multifuel_retired",
"raw_eia860__ownership",
"raw_eia860__plant",
Expand Down
123 changes: 122 additions & 1 deletion src/pudl/metadata/fields.py
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,10 @@
"unit": "cfm",
"description": "Total air flow including excess air at 100 percent load, reported at standard temperature and pressure (i.e. 68 F and one atmosphere pressure).",
},
"air_permit_limits": {
"type": "boolean",
"description": "True if there are air permit limits",
},
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We've started trying to add a verb suffix to boolean columns highlight their binary nature. E.g.: is_{x} or has_{x} or served_{x}. This column would thus be has_air_permit_limits. Applicable to a few other column names you added.

(this is also a great reminder to add this to our naming conventions docs page...)

"alternative_fuel_vehicle_2_activity": {
"type": "boolean",
"description": "Whether the utility plants to operate alternative-fueled vehicles this coming year.",
Expand Down Expand Up @@ -729,9 +733,41 @@
"type": "string",
"description": "Originally reported short code.",
},
"cofire_100_oil": {
"type": "boolean",
"description": "Can the generator co-fire 100 oil?",
},
"cofire_fuels": {
"type": "boolean",
"description": "Can the generator co-fire fuels?.",
"description": "Can the generator co-fire fuels?",
},
"cofire_oil_and_gas": {
"type": "boolean",
"description": "Can the generator co-fire oil and gas?",
},
"cofire_energy_source_1": {
"type": "string",
"description": "Type of fuel.",
},
"cofire_energy_source_2": {
"type": "string",
"description": "Type of fuel.",
},
"cofire_energy_source_3": {
"type": "string",
"description": "Type of fuel.",
},
"cofire_energy_source_4": {
"type": "string",
"description": "Type of fuel.",
},
"cofire_energy_source_5": {
"type": "string",
"description": "Type of fuel.",
},
"cofire_energy_source_6": {
"type": "string",
"description": "Type of fuel.",
},
"coincident_peak_demand_mw": {
"type": "number",
Expand Down Expand Up @@ -927,6 +963,14 @@
"type": "date",
"description": "The most recently updated effective date on which the generator is scheduled to start operation",
},
"current_planned_generator_operating_month": {
"type": "integer",
"description": "The most recently updated effective month on which the generator is scheduled to start operation",
},
"current_planned_generator_operating_year": {
"type": "integer",
"description": "The most recently updated effective year on which the generator is scheduled to start operation",
},
"customer_class": {
"type": "string",
"description": f"High level categorization of customer type: {CUSTOMER_CLASSES}.",
Expand Down Expand Up @@ -1482,6 +1526,10 @@
"unit": "MWh",
},
"expense_type": {"type": "string", "description": "The type of expense."},
"factors_that_limit_switching": {
"type": "boolean",
"description": "True if there are factors that limit switching.",
},
"ferc1_generator_agg_id": {
"type": "integer",
"description": "ID dynamically assigned by PUDL to EIA records with multiple matches to a single FERC ID in the FERC-EIA manual matching process.",
Expand Down Expand Up @@ -1859,6 +1907,34 @@
"type": "number",
"description": "Quanity of fuel received in tons, barrel, or Mcf.",
},
"fuel_switch": {
"type": "boolean",
"description": "TK",
},
"fuel_switch_energy_source_1": {
"type": "string",
"description": "TK",
},
"fuel_switch_energy_source_2": {
"type": "string",
"description": "TK",
},
"fuel_switch_energy_source_3": {
"type": "string",
"description": "TK",
},
"fuel_switch_energy_source_4": {
"type": "string",
"description": "TK",
},
"fuel_switch_energy_source_5": {
"type": "string",
"description": "TK",
},
"fuel_switch_energy_source_6": {
"type": "string",
"description": "TK",
},
"fuel_type": {
"type": "string",
"description": "Type of fuel.",
Expand Down Expand Up @@ -2491,6 +2567,14 @@
"description": "Maximum heat content per physical unit of fuel in MMBtu.",
"unit": "MMBtu",
},
"max_oil_heat_input": {
"type": "number",
"description": "TK",
},
"max_oil_output_mw": {
"type": "number",
"description": "MW",
},
"max_steam_flow_1000_lbs_per_hour": {
"type": "number",
"unit": "1000_lbs_per_hour",
Expand Down Expand Up @@ -2816,6 +2900,26 @@
),
"unit": "MWh",
},
"net_summer_capacity_with_natural_gas_mw": {
"type": "number",
"description": "Summer capacity with natural gas.",
"unit": "MWh",
},
"net_summer_capacity_with_oil_mw": {
"type": "number",
"description": "Summer capacity with oil.",
"unit": "MWh",
},
"net_winter_capacity_with_natural_gas_mw": {
"type": "number",
"description": "Winter capacity with natural gas.",
"unit": "MWh",
},
"net_winter_capacity_with_oil_mw": {
"type": "number",
"description": "Winter capacity with oil",
"unit": "MWh",
},
"net_wheeled_power_mwh": {
"type": "number",
"description": (
Expand Down Expand Up @@ -3226,6 +3330,10 @@
),
"unit": "USD",
},
"other_limits": {
"type": "boolean",
"description": "True if there are other limits on the generator.",
},
"other_modifications_date": {
"type": "date",
"description": "Planned effective date that the generator is scheduled to enter commercial operation after any other planned modification is complete.",
Expand Down Expand Up @@ -3684,6 +3792,7 @@
"type": "string",
"description": "Human-readable name of a US Census region.",
},
"regulatory_limits": {"type": "string", "description": "TK"},
"regulation_mercury": {
"type": "string",
"description": "Most stringent type of statute or regulation code under which the boiler is operating for mercury control standards.",
Expand Down Expand Up @@ -4274,6 +4383,10 @@
"type": "string",
"description": "A code representing the enclosure type that best describes where the generator is located.",
},
"storage_limits": {
"type": "boolean",
"description": "True if there are storage limits",
},
"storage_technology_code_1": {
"type": "string",
"description": "The electro-chemical storage technology used for this battery applications.",
Expand Down Expand Up @@ -4402,6 +4515,10 @@
"type": "boolean",
"description": "Indicates whether the generator switch between oil and natural gas.",
},
"switch_when_operating": {
"type": "boolean",
"description": "Indicates whether the generator switches fuel while operating.",
},
"syncronized_transmission_grid": {
"type": "boolean",
"description": "Indicates whether standby generators (SB status) can be synchronized to the grid.",
Expand Down Expand Up @@ -4478,6 +4595,10 @@
"rate programs."
),
},
"time_to_switch": {
"type": "string",
"description": "Time needed to switch between fuel sources",
},
"timezone": {
"type": "string",
"description": "IANA timezone name",
Expand Down
67 changes: 67 additions & 0 deletions src/pudl/metadata/resources/eia860.py
Original file line number Diff line number Diff line change
Expand Up @@ -906,6 +906,73 @@
"sources": ["eia860"],
"etl_group": "eia860",
},
"core_eia860__scd_generators_multifuel": {
"description": (
"Annually reported information about energy storage from EIA-860 Schedule 3. "
"Contains data on fuel-switching and the use of multiple fuels by surveyed generators."
),
"schema": {
"fields": [
"utility_id_eia",
"utility_name_eia",
"plant_id_eia",
"plant_name_eia",
"state",
"county",
"generator_id",
"operational_status_code",
"technology_description",
"prime_mover_code",
"sector_name_eia",
"sector_id_eia",
"capacity_mw",
"summer_capacity_mw",
"winter_capacity_mw",
"current_planned_generator_operating_month",
"current_planned_generator_operating_year",
"energy_source_code_1",
"energy_source_code_2",
"multiple_fuels",
"cofire_fuels",
"cofire_energy_source_1",
"cofire_energy_source_2",
"cofire_energy_source_3",
"cofire_energy_source_4",
"cofire_energy_source_5",
"cofire_energy_source_6",
"switch_oil_gas",
"switch_when_operating",
"net_summer_capacity_with_natural_gas_mw",
"net_summer_capacity_with_oil_mw",
"net_winter_capacity_with_natural_gas_mw",
"net_winter_capacity_with_oil_mw",
"factors_that_limit_switching",
"storage_limits",
"air_permit_limits",
"other_limits",
"cofire_oil_and_gas",
"cofire_100_oil",
"max_oil_heat_input",
"max_oil_output_mw",
"fuel_switch",
"time_to_switch",
"regulatory_limits",
"fuel_switch_energy_source_1",
"fuel_switch_energy_source_2",
"fuel_switch_energy_source_3",
"fuel_switch_energy_source_4",
"fuel_switch_energy_source_5",
"fuel_switch_energy_source_6",
],
"primary_key": [
"utility_id_eia",
"generator_id",
jmelot marked this conversation as resolved.
Show resolved Hide resolved
],
},
"field_namespace": "eia",
"sources": ["eia860"],
"etl_group": "eia860",
},
}
"""EIA-860 resource attributes organized by PUDL identifier (``resource.name``).

Expand Down
Loading