Solar Power Component

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

Bases: aaem.components.annual_savings.annual_savings.AnnualSavings

Solar power component of the Alaska Affordable Energy Model: This module estimates the potential reduction in diesel fuel use from installation or improvement of photovoltaic (PV) solar generation systems. Proposed solar generation is based on an estimated capacity per community. Costs associated with the installation of panels and necessary power-house improvements are also estimated.

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: ‘Solar Power’ 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 Diesel load of the current system

Attributes

average_load (float) average diesel load of current system
calc_capital_costs()[source]

Calculate the capital costs.

Attributes

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

Calculate fuel displaced by solar power.

Attributes

fuel_displaced (float) fuel displaced by solar power (gal)
calc_generation_fuel_used()[source]
calc_maintenance_cost()[source]

Calculate Maintenance costs.

Attributes

maintenance_cost (float) maintenance cost as a percentage of the capital costs
calc_proposed_generation()[source]

Calculate the proposed generation for Solar Power.

Attributes

Proposed Load: float Proposed solar power load (kW)
generation_proposed (float) Proposed solar power generation (kWh/yr)
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

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

Solar Power Configuration

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

Solar Power inputs

input functions for Solar Power component

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

Load data from solar_power_data.csv

Parameters:

data_dir: path

path to data directory for community

Returns:

dict

solar data

Solar Power Outputs

output functions for Solar Power component

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

Saves the summary by: community Solar_power_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.solar_power.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.solar_power.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.solar_power.outputs.save_regional_summary(summary, res_dir)[source]

Saves the summary by region

Parameters:

summary : DataFrame

compiled regional results

res_dir : path

location to save file

Solar Power Preprocessing

preprocessing functions for Solar Power component

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

preprocess data solar power data in solar_resource_data.csv

Parameters:

preprocessor: preprocessor.Preprocessor

a preprocessor object

Returns:

dict

preprocessed data