Commit ee270c58 authored by Frederik Zahle's avatar Frederik Zahle
Browse files

Merge branch 'develop' into 'master'

updating to output torque and rated speed for nacelle

See merge request !4
parents 8fd3d670 897e7af6
*.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.
......@@ -183,6 +193,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():
......
Markdown is supported
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