Beispiel #1
0
def configure_blade():

    top = Assembly()

    configure_bladesurface(top, planform_nC=6)

    # load the planform file
    top.pf_splines.pfIn = read_blade_planform(
        os.path.join(PATH, 'data/DTU_10MW_RWT_blade_axis_prebend.dat'))
    top.blade_length = 86.366
    top.span_ni = 5

    b = top.blade_surface

    # distribute 200 points evenly along the airfoil sections
    b.chord_ni = 40

    # load the airfoil shapes defining the blade
    for f in [
            os.path.join(PATH, 'data/ffaw3241.dat'),
            os.path.join(PATH, 'data/ffaw3301.dat'),
            os.path.join(PATH, 'data/ffaw3360.dat'),
            os.path.join(PATH, 'data/ffaw3480.dat'),
            os.path.join(PATH, 'data/cylinder.dat')
    ]:

        b.base_airfoils.append(np.loadtxt(f))

    b.blend_var = np.array([0.241, 0.301, 0.36, 0.48, 1.])

    return top
def configure_blade():

    top = Assembly()

    configure_bladesurface(top, os.path.join(PATH, 'data/DTU_10MW_RWT_blade_axis_prebend.dat'), planform_nC=6)

    # load the planform file
    top.blade_length = 86.366
    top.span_ni = 5

    b = top.blade_surface

    # distribute 200 points evenly along the airfoil sections
    b.chord_ni = 40

    # load the airfoil shapes defining the blade
    for f in [os.path.join(PATH, 'data/ffaw3241.dat'),
              os.path.join(PATH, 'data/ffaw3301.dat'),
              os.path.join(PATH, 'data/ffaw3360.dat'),
              os.path.join(PATH, 'data/ffaw3480.dat') ,
              os.path.join(PATH, 'data/cylinder.dat')]:

        b.base_airfoils.append(np.loadtxt(f))

    b.blend_var = np.array([0.241, 0.301, 0.36, 0.48, 1.])

    return top
Beispiel #3
0
def lofted_blade_shape_example():

    top = Assembly()

    configure_bladesurface(top, planform_nC=6)

    # load the planform file
    top.pf_splines.pfIn = read_blade_planform('data/DTU_10MW_RWT_blade_axis_prebend.dat')
    top.blade_length = 86.366
    top.span_ni = 50

    print 'planform variables: ', top.pf_splines.pfOut.list_vars()

    b = top.blade_surface

    # distribute 200 points evenly along the airfoil sections
    b.chord_ni = 200

    # load the airfoil shapes defining the blade
    for f in ['data/ffaw3241.dat',
              'data/ffaw3301.dat',
              'data/ffaw3360.dat',
              'data/ffaw3480.dat' ,
              'data/tc72.dat' ,
              'data/cylinder.dat']:

        b.base_airfoils.append(np.loadtxt(f))

    b.blend_var = np.array([0.241, 0.301, 0.36, 0.48, 0.72, 1.])

    top.run()

    pf = top.pf_splines.pfOut

    plt.figure()
    plt.title('chord')
    plt.plot(pf.s, pf.chord)
    plt.savefig('chord.eps')
    plt.figure()
    plt.title('twist')
    plt.plot(pf.s, pf.rot_z)
    plt.savefig('twist.eps')
    plt.figure()
    plt.title('relative thickness')
    plt.plot(pf.s, pf.rthick)
    plt.savefig('rthick.eps')
    plt.figure()
    plt.title('pitch axis aft leading edge')
    plt.plot(pf.s, pf.p_le)
    plt.savefig('p_le.eps')

    plt.figure()
    plt.axis('equal')
    for i in range(b.span_ni):
        plt.plot(b.surfout.surface[:, i, 0], b.surfout.surface[:, i, 1])
    plt.savefig('lofted_blade.eps')

    return top
def lofted_blade_shape_example():

    top = Assembly()

    configure_bladesurface(top, 'data/DTU_10MW_RWT_blade_axis_prebend.dat', planform_nC=6)

    # load the planform file
    top.blade_length = 86.366
    top.span_ni = 50

    print 'planform variables: ', top.pf_splines.pfOut.list_vars()

    b = top.blade_surface

    # distribute 200 points evenly along the airfoil sections
    b.chord_ni = 200

    # load the airfoil shapes defining the blade
    for f in ['data/ffaw3241.dat',
              'data/ffaw3301.dat',
              'data/ffaw3360.dat',
              'data/ffaw3480.dat' ,
              'data/tc72.dat' ,
              'data/cylinder.dat']:

        b.base_airfoils.append(np.loadtxt(f))

    b.blend_var = np.array([0.241, 0.301, 0.36, 0.48, 0.72, 1.])

    top.run()

    pf = top.pf_splines.pfOut

    plt.figure()
    plt.title('chord')
    plt.plot(pf.s, pf.chord)
    plt.savefig('chord.eps')
    plt.figure()
    plt.title('twist')
    plt.plot(pf.s, pf.rot_z)
    plt.savefig('twist.eps')
    plt.figure()
    plt.title('relative thickness')
    plt.plot(pf.s, pf.rthick)
    plt.savefig('rthick.eps')
    plt.figure()
    plt.title('pitch axis aft leading edge')
    plt.plot(pf.s, pf.p_le)
    plt.savefig('p_le.eps')

    plt.figure()
    plt.axis('equal')
    for i in range(b.span_ni):
        plt.plot(b.surfout.surface[:, i, 0], b.surfout.surface[:, i, 1])
    plt.savefig('lofted_blade.eps')
    plt.savefig('lofted_blade.png')

    return top
import numpy as np

from openmdao.lib.datatypes.api import VarTree
from openmdao.main.api import Assembly, Component

from fusedwind.interface import implement_base
from fusedwind.turbine.geometry import read_blade_planform, redistribute_blade_planform
from fusedwind.turbine.configurations import configure_bladestructure, configure_bladesurface
from fusedwind.turbine.blade_structure import SplinedBladeStructure
from fusedwind.turbine.structure_vt import BladeStructureVT3D

top = Assembly()

configure_bladesurface(top,
                       'data/DTU_10MW_RWT_blade_axis_prebend.dat',
                       planform_nC=6)
configure_bladestructure(top, 'data/DTU10MW', structure_nC=5)

top.st_writer.filebase = 'st_test'

top.blade_length = 86.366
top.span_ni = 30
top.blade_surface.chord_ni = 300

for f in [
        'data/ffaw3241.dat', 'data/ffaw3301.dat', 'data/ffaw3360.dat',
        'data/ffaw3480.dat', 'data/tc72.dat', 'data/cylinder.dat'
]:

    top.blade_surface.base_airfoils.append(np.loadtxt(f))
# --- 1 -----

import numpy as np

from openmdao.lib.datatypes.api import VarTree
from openmdao.main.api import Assembly, Component

from fusedwind.interface import implement_base
from fusedwind.turbine.geometry import read_blade_planform, redistribute_blade_planform
from fusedwind.turbine.configurations import configure_bladestructure, configure_bladesurface
from fusedwind.turbine.blade_structure import SplinedBladeStructure
from fusedwind.turbine.structure_vt import BladeStructureVT3D

top = Assembly()

configure_bladesurface(top, 'data/DTU_10MW_RWT_blade_axis_prebend.dat', planform_nC=6)
configure_bladestructure(top, 'data/DTU10MW', structure_nC=5)

top.st_writer.filebase = 'st_test'

top.blade_length = 86.366
top.span_ni = 30
top.blade_surface.chord_ni = 300

for f in ['data/ffaw3241.dat',
          'data/ffaw3301.dat',
          'data/ffaw3360.dat',
          'data/ffaw3480.dat',
          'data/tc72.dat',
          'data/cylinder.dat']: