Commit 897e7af6 authored by Katherine Dykes's avatar Katherine Dykes
Browse files

updating to output torque and rated speed for nacelle

parent 8fd3d670
*.py[cod]
# OpenMDAO
openmdao_log.txt
# Sphinx
_build
generated
# XCode
*.xcodeproj
# C extensions
*.so
# Packages
*.egg
*.egg-info
dist
build
eggs
parts
bin
var
sdist
develop-eggs
.installed.cfg
# lib
lib64
__pycache__
# Installer logs
pip-log.txt
# Unit test / coverage reports
.coverage
.tox
nosetests.xml
# Translations
*.mo
# Mr Developer
.mr.developer.cfg
.project
.pydevproject
# Compiled source #
###################
*.com
*.class
*.dll
*.exe
*.o
*.so
# Packages #
############
# it's better to unpack these files and commit the raw source
# git has its own built in compression methods
*.7z
*.dmg
*.gz
*.iso
*.jar
*.rar
*.tar
*.zip
# Logs and databases #
######################
*.log
*.sql
*.sqlite
# OS generated files #
######################
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
Icon?
ehthumbs.db
Thumbs.db
......@@ -24,12 +24,16 @@ class SEAM_PowerCurve(Component):
gearloss_var = Float(iotype = 'in', desc = 'Gear loss variable')
genloss = Float(iotype = 'in', desc = 'Generator loss')
convloss = Float(iotype = 'in', desc = 'Converter loss')
max_tipspeed = Float(iotype='in', desc='Maximum tip speed')
# Outputs
rated_wind_speed = Float(units = 'm / s', iotype='out', desc='wind speed for rated power')
ideal_power_curve = Array(iotype='out', units='kW', desc='total power before losses and turbulence')
power_curve = Array(iotype='out', units='kW', desc='total power including losses and turbulence')
wind_curve = Array(iotype='out', units='m/s', desc='wind curve associated with power curve')
#07/09/2015 addition for DriveSE
rated_torque = Float(units='N*m',iotype='out', desc='torque at rated power')
rated_speed = Float(iotype='out', units='rpm', desc='rated rotor speed')
def execute(self):
......@@ -65,6 +69,12 @@ class SEAM_PowerCurve(Component):
self.power_curve = P_turb * 1.e-3
self.wind_curve = wsp
# estimate rated torque 07/09/2015
wsp_index = list(P_raw).index(rated_power)
self.rated_wind_speed = self.wind_curve[wsp_index]
self.rated_speed = (self.max_tipspeed/(0.5*self.rotor_diameter)) * (60.0 / (2*np.pi))
self.rated_torque = rated_power/(((1-self.genloss)*(1-self.convloss)*(1-self.gearloss_const-self.gearloss_var)) *(self.rated_speed*(np.pi/30.)))
def plot(self, fig):
"""
function to generate Bokeh plot for web GUI.
......@@ -184,6 +194,9 @@ class SEAMAEP(Assembly):
self.connect('rotor_aero.wind_curve', 'aep_calc.wind_curve')
self.connect('rotor_aero.power_curve', 'aep_calc.power_curve')
self.create_passthrough('rotor_aero.rated_torque')
self.create_passthrough('rotor_aero.rated_speed')
for name in self.rotor_aero.list_vars():
try:
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment