Hydropower Component

class aaem.components.hydro.component.Hydropower(community_data, forecast, diag=None, prerequisites={})[source]

Bases: aaem.components.annual_savings.annual_savings.AnnualSavings

Hydropower component component of the Alaska Affordable Energy Model: This module estimates the potential reduction in diesel fuel use from installation of hydropower projects. Proposed hydro generation is from proposed projects around the state. Financial savings result from decrease in diesel used in generation due to hydropower projects. Cost estimates for building hydropower infrastructure are also calculated.

Note

Component requires an existing project for a community to be run to completion.

Parameters:

community_data : CommunityData

CommunityData Object for a community

forecast : Forecast

forecast for a community

diagnostics : diagnostics, optional

diagnostics for tracking error/warning messages

prerequisites : dictionary of components, optional

prerequisite component data this component has no prerequisites leave empty

See also

aaem.community_data
community data module, see information on CommunityData Object
aaem.forecast
forecast module, see information on Forecast Object
aaem.diagnostics
diagnostics module, see information on diagnostics Object

Attributes

diagnostics (diagnostics) for tracking error/warning messages initial value: diag or new diagnostics object
forecast (forecast) community forecast for estimating future values initial value: forecast
cd (dictionary) general data for a community. Initial value: ‘community’ section of community_data
comp_specs (dictionary) component specific data for a community. Initial value: ‘Hydropower’ section of community_data

Methods

calc_annual_electric_savings()[source]

Calculate annual electric savings created by the project.

Attributes

annual_electric_savings (np.array) electric savings ($/year) are the difference in the base
and proposed fuel costs  
calc_annual_heating_savings()[source]

Calculate annual heating savings created by the project.

Attributes

annual_heating_savings (np.array) heating savings ($/year)
calc_average_load()[source]

Calculate the average load of the system.

Attributes

generation: float generation values in first year of project (kWh)
average_load: float average diesel generation load in first year of project (kW)
calc_capital_costs()[source]

Calculate the capital costs.

Attributes

capital_costs (float) total cost of improvements ($), calculated from transmission and generation costs
calc_generation_proposed()[source]

Calculate the proposed generation for Hydropower.

Attributes

load_offset_proposed (float) hydropower load offset (kW)
gross_generation_proposed (float) hydropower generation proposed (kWh/yr)
net_generation_proposed (float) net hydropower generation(kWh/yr)
calc_heat_recovery()[source]

Calculate heat recovery values used by component.

Attributes

generation_diesel_reduction (float) (gal)
lost_heat_recovery (float) (gal)
generation_diesel_reduction (float) (gal)
get_fuel_total_saved()[source]

Get total fuel saved.

Returns:

float

the total fuel saved in gallons

get_total_energy_produced()[source]

Get total energy produced.

Returns:

float

the total energy produced

load_prerequisite_variables(comps)[source]

Loads Non-residential buildings values

Parameters:

comps: Dictionary of components

Dictionary of components, needs ‘Non-residential Energy Efficiency’ key

Attributes

non_res_heating_consumption_proposed (float) the Non-residential Heating oil equiv. Consumed(gal)
run(scalers={'capital costs': 1.0})[source]

Runs the component. The Annual Total Savings,Annual Costs, Annual Net Benefit, NPV Benefits, NPV Costs, NPV Net Benefits, Benefit Cost Ratio, Levelized Cost of Energy, and Internal Rate of Return will all be calculated. There must be a known Heat Recovery project for this component to run.

Parameters:

scalers: dictionary of valid scalers, optional

Scalers to adjust normal run variables. See note on accepted scalers

Notes

Accepted scalers: capital costs.

Attributes

run (bool) True in the component runs to completion, False otherwise
reason (string) lists reason for failure if run == False
save_component_csv(directory)[source]

Save the component output csv in directory.

Parameters:

directory : path

output directory

Hydropower configuration

Contains configuration info for community data yaml file, and
other set-up requirements

Hydropower inputs

input functions for Hydropower component

aaem.components.hydro.inputs.load_project_details(data_dir)

load details related to exitign projects

Parameters:

data_dir : path

is a directory with ‘project_development_timeframes.csv’, and “project_name_projects.yaml” in it

Returns:

dict

has the keys ‘phase’(str), ‘proposed capacity’(float), ‘proposed generation’(float),’distance to resource’(float), ‘generation capital cost’(float), ‘transmission capital cost’(float), ‘operational costs’(float), ‘expected years to operation’(int),

aaem.components.hydro.inputs.process_data_import(data_dir)

does nothing

Parameters:

data_dir: path

path to data directory for community

Hydropower outputs

output functions for Hydropower component

aaem.components.hydro.outputs.communities_summary(coms, res_dir)[source]

Saves the summary by: community hydropower_summary.csv

Parameters:

coms : dictionary

results from the model, dictionary with each community or project as key

res_dir : path

location to save file

aaem.components.hydro.outputs.component_summary(results, res_dir)[source]

Creates the regional and communities summary for the component in provided directory

Parameters:

results : dictionary

results from the model, dictionary with each community or project as key

res_dir : path

location to save file

aaem.components.hydro.outputs.create_regional_summary(results)[source]

Creates the regional summary

Parameters:

results : dictionary

results from the model, dictionary with each community or project as key

Returns:

DataFrame

containing regional results

aaem.components.hydro.outputs.save_regional_summary(summary, res_dir)[source]

Saves the summary by region: __regional_hydropower_summary.csv

Parameters:

summary : DataFrame

compiled regional results

res_dir : path

location to save file

Hydropower preprocessing

preprocessing functions for Diesel Efficiency component

aaem.components.hydro.preprocessing.preprocess(preprocessor, **kwargs)[source]

preprocess data related to existing projects

Parameters:

preprocessor: preprocessor.Preprocessor

a preprocessor object

Returns:

list

project names