Windcsm

Wrapper for SAM Simulation Core model: cmod_windcsm.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.

Windcsm model description

Windcsm

PySAM.Windcsm.default(config) → Windcsm

Use financial config-specific default attributes

PySAM.Windcsm.from_existing(data, optional config) → Windcsm

Share underlying data with an existing PySAM class. If config provided, default attributes are loaded otherwise.

PySAM.Windcsm.new() → Windcsm
PySAM.Windcsm.wrap(ssc_data_t) → Windcsm

Use existing PySSC data

Warning

Do not call PySSC.data_free on the ssc_data_t provided to wrap

Functions

class PySAM.Windcsm.Windcsm

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 = { 'wind_csm': { var: val, ...}, ...}

execute(int verbosity) → None

Execute simulation with verbosity level 0 (default) or 1

export() → dict

Export attributes into nested dictionary

value(name, optional value) → Union[None, float, dict, sequence, str]

Get or set by name a value in any of the variable groups.

WindCsm Group

class PySAM.Windcsm.Windcsm.WindCsm
assign() → None

Assign attributes from dictionary

WindCsm_vals = { var: val, ...}

export() → dict

Export attributes into dictionary

hub_height

Hub height [m]

Required: True

Type:float
machine_rating

Machine rating [kW]

Required: True

Type:float
num_bearings

Number of main bearings

Constraints: INTEGER,MIN=1

Required: If not provided, assumed to be 2

Type:float
num_blades

Number of blades

Constraints: INTEGER,MIN=1

Required: If not provided, assumed to be 3

Type:float
onboard_crane

Onboard crane [0/1]

Constraints: INTEGER,MIN=0,MAX=1

Required: If not provided, assumed to be 0

Type:float
rotor_torque

Rotor torque [Nm]

Required: True

Type:float
turbine_carbon_blades

Turbine carbon blades [0/1]

Constraints: INTEGER,MIN=0,MAX=1

Required: If not provided, assumed to be 0

Type:float
turbine_class

Turbine class

Constraints: INTEGER,MIN=0,MAX=3

Required: If not provided, assumed to be 0

Type:float
turbine_rotor_diameter

Turbine rotor diameter [m]

Required: True

Type:float
turbine_user_exponent

Turbine user exponent

Required: If not provided, assumed to be 2.5

Type:float

Outputs Group

class PySAM.Windcsm.Windcsm.Outputs
assign() → None

Assign attributes from dictionary

Outputs_vals = { var: val, ...}

export() → dict

Export attributes into dictionary

bedplate_cost

Bedplate cost [$]

Type:float
blade_cost

Rotor cost [$]

Type:float
controls_cost

Controls cost [$]

Type:float
drivetrain_cost

Drivetrain cost [$]

Type:float
drivetrain_mass

Drivetrain mass [kg]

Type:float
electrical_connections_cost

Electrical connections cost [$]

Type:float
gearbox_cost

Gearbox cost [$]

Type:float
generator_cost

Generator cost [$]

Type:float
high_speed_side_cost

High speed side cost [$]

Type:float
hub_cost

Hub cost [$]

Type:float
hvac_cost

HVAC cost [$]

Type:float
low_speed_side_cost

Low speed side cost [$]

Type:float
main_bearings_cost

Main bearings cost [$]

Type:float
mainframe_cost

Mainframe cost [$]

Type:float
pitch_cost

Pitch cost [$]

Type:float
rotor_cost

Rotor cost [$]

Type:float
rotor_mass

Rotor mass [kg]

Type:float
spinner_cost

Spinner cost [$]

Type:float
tower_cost

Tower cost [$]

Type:float
tower_mass

Tower mass [kg]

Type:float
transformer_cost

Transformer cost [$]

Type:float
turbine_cost

Turbine cost [$]

Type:float
variable_speed_electronics_cost

Variable speed electronics cost [$]

Type:float
yaw_system_cost

Yaw system cost [$]

Type:float