Fuelcell¶
Wrapper for SAM Simulation Core model: cmod_fuelcell.cpp
Creating an Instance¶
There are three methods to create a new instance of a PySAM module. Using default
populates the newclass’ attributes with default values specific to a config
. Each technology-financialconfiguration corresponds to a SAM GUI configuration. Using new
creates an instance with empty attributes. The wrap
function allows compatibility with PySSC, for details, refer to PySSC.
Fuelcell model description
Fuel cell model
-
PySAM.Fuelcell.
default
(config) → Fuelcell¶ Use financial model-specific default attributes config options:
- “FuelCellCommercial”
- “FuelCellSingleOwner”
-
PySAM.Fuelcell.
new
() → Fuelcell¶
-
PySAM.Fuelcell.
wrap
(ssc_data_t) → Fuelcell¶ Use existing PySSC data
Warning
Do not call PySSC.data_free on the ssc_data_t provided to
wrap
Functions¶
-
class
PySAM.Fuelcell.
Fuelcell
¶ This class contains all the variable information for running a simulation. Variables are grouped together in the subclasses as properties. If property assignments are the wrong type, an error is thrown.
-
assign
(dict) → None¶ Assign attributes from nested dictionary, except for Outputs
nested_dict = { 'Common': { var: val, ...}, ...}
-
execute
(int verbosity) → None¶ Execute simulation with verbosity level 0 (default) or 1
-
export
() → dict¶ Export attributes into nested dictionary
-
Common Group¶
-
class
PySAM.Fuelcell.Fuelcell.
Common
¶ -
assign
() → None¶ Assign attributes from dictionary
Common_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary
-
annual_energy
¶ float: Annual Energy [kWh]
Required: set to 0 if not provided.
-
capacity_factor
¶ float: Capacity factor [%]
Required: set to 0 if not provided.
-
gen
¶ sequence: System power generated [kW]
Info: Lifetime system generation
-
percent_complete
¶ float: Estimated simulation status [%]
-
Lifetime Group¶
-
class
PySAM.Fuelcell.Fuelcell.
Lifetime
¶ -
assign
() → None¶ Assign attributes from dictionary
Lifetime_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary
-
analysis_period
¶ float: Lifetime analysis period [years]
Info: The number of years in the simulation
Required: set to 1 if not provided.
-
system_use_lifetime_output
¶ float: Lifetime simulation [0/1]
Options: 0=SingleYearRepeated,1=RunEveryYear
Constraints: BOOLEAN
Required: set to 0 if not provided.
-
Load Group¶
FuelCell Group¶
-
class
PySAM.Fuelcell.Fuelcell.
FuelCell
¶ -
assign
() → None¶ Assign attributes from dictionary
FuelCell_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary
-
dispatch_manual_fuelcellcharge
¶ sequence: Periods 1-6 charging allowed?
-
dispatch_manual_fuelcelldischarge
¶ sequence: Periods 1-6 discharging allowed?
-
dispatch_manual_percent_fc_discharge
¶ sequence: Periods 1-6 percent of max fuelcell output
-
dispatch_manual_sched
¶ sequence[sequence]: Dispatch schedule for weekday
-
dispatch_manual_sched_weekend
¶ sequence[sequence]: Dispatch schedule for weekend
-
dispatch_manual_units_fc_discharge
¶ sequence: Periods 1-6 number of fuel cell units?
-
fuelcell_availability_schedule
¶ sequence[sequence]: Fuel cell availability schedule [Column 1: Hour of year start shutdown/Column 2: Hours duration of shutdown ]
-
fuelcell_degradation
¶ float: Fuel cell degradation per hour [kW/h]
-
fuelcell_degradation_restart
¶ float: Fuel cell degradation at restart [kW]
-
fuelcell_degradation_restart_schedule
¶ float: Fuel cell enable scheduled restarts [0/1]
-
fuelcell_degradation_restarts_per_year
¶ float: Fuel cell scheduled restarts per year
-
fuelcell_dispatch
¶ sequence: Fuel cell dispatch input per unit [kW]
-
fuelcell_dispatch_choice
¶ float: Fuel cell dispatch choice [0/1/2]
-
fuelcell_dynamic_response_down
¶ float: Fuel cell ramp rate limit down [kW/h]
-
fuelcell_dynamic_response_up
¶ float: Fuel cell ramp rate limit up [kW/h]
-
fuelcell_efficiency
¶ sequence[sequence]: Fuel cell efficiency table
-
fuelcell_efficiency_choice
¶ float: Fuel cell efficiency definition choice [0/1]
Options: 0=OriginalNameplate,1=DegradedNameplate
-
fuelcell_fixed_pct
¶ float: Fuel cell fixed operation percent [%]
-
fuelcell_fuel_available
¶ float: Fuel cell available fuel quantity [MCf]
-
fuelcell_fuel_price
¶ float: Fuel cell price [$/MCf]
-
fuelcell_fuel_type
¶ float: Fuel cell type [0/1]
-
fuelcell_lhv
¶ float: Fuel cell lower heating value [Btu/ft3]
-
fuelcell_number_of_units
¶ float: Fuel cell number of units
-
fuelcell_operation_options
¶ float: Fuel cell turn off options [0/1]
-
fuelcell_replacement_option
¶ float: Fuel cell replacement option [0/1/2]
-
fuelcell_replacement_percent
¶ float: Fuel cell replace at percentage
-
fuelcell_replacement_schedule
¶ sequence: Fuel cell replace on schedule
-
fuelcell_shutdown_time
¶ float: Fuel cell shutdown hours [hours]
-
fuelcell_startup_time
¶ float: Fuel cell startup hours [hours]
-
fuelcell_type
¶ float: Fuel cell type [0/1/2]
-
fuelcell_unit_max_power
¶ float: Fuel cell max power per unit [kW]
-
fuelcell_unit_min_power
¶ float: Fuel cell min power per unit [kW]
-
Outputs Group¶
-
class
PySAM.Fuelcell.Fuelcell.
Outputs
¶ -
assign
() → None¶ Assign attributes from dictionary
Outputs_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary
-
annual_fuel_usage
¶ float: Annual Fuel Usage [kWht]
-
fuelcell_electrical_efficiency
¶ sequence: Fuel cell electrical efficiency [%]
-
fuelcell_fuel_consumption_mcf
¶ sequence: Fuel consumption of fuel cell [MCf]
-
fuelcell_percent_load
¶ sequence: Fuel cell percent load [%]
-
fuelcell_power
¶ sequence: Electricity from fuel cell [kW]
-
fuelcell_power_max_percent
¶ sequence: Fuel cell max power percent available [%]
-
fuelcell_power_thermal
¶ sequence: Heat from fuel cell [kWt]
-
fuelcell_replacement
¶ sequence: Fuel cell replacements per year [number/year]
-
fuelcell_to_grid
¶ sequence: Electricity to grid from fuel cell [kW]
-
fuelcell_to_load
¶ sequence: Electricity to load from fuel cell [kW]
-
gen
¶ sequence: System power generated [kW]
-
system_heat_rate
¶ float: Heat rate conversion factor (MMBTUs/MWhe) [MMBTUs/MWhe]
-