Esempio n. 1
0
def geometry(RHT, one, two, thr, mdot, R, gamma, cp):

    # def f_geometry(geometry, one, two, thr, mdot, R, gamma, cp):

    # blade geometry at 2
    blade_geometry(mdot, two.rho, two.vel.Vx, RHT, two)
    two.geo.c = two.geo.h / two.geo.hc
    two.geo.bx, two.geo.phi = axial_chord(two.geo.c, one.alpha, two.alpha)

    # rotational velocity
    two.vel.Omega = two.vel.U / two.geo.Rm
    two.vel.RPM = RPM(two.vel.Omega)

    # massflow and characteristics at inlet
    one.rho0 = static_density(one.P0, one.T0, R)  # = one.P0/one.T0/R
    one.rho, one.vel.V, one.geo.A = solve_rhox(
        0.9999 * one.rho0, one.rho0, one.T0, mdot, two.geo.A, gamma,
        cp)  # iteraciones hasta converger
    one.vel.Vx = one.vel.V
    one.T = one.T0 - one.vel.V**2 / 2 / cp
    one.P = T2P(
        one.P0, one.T, one.T0,
        gamma)  # = one.P0*(one.T/one.T0)**(gamma/(gamma-1)) # isentropic
    one.vel.a, one.vel.M = sonic(gamma, R, one.T, one.vel.V)

    # blade geometry at 1
    blade_geometry(mdot, one.rho, one.vel.V, RHT, one)

    # blade geometry at 3
    # what
    thr.geo.A = mdot / thr.vel.Vx / thr.rho
    thr.geo.h = thr.geo.A / np.pi / 2 / two.geo.Rm
    thr.geo.Rt = two.geo.Rm + thr.geo.h / 2
    thr.geo.Dm = thr.geo.Rt * 2 - thr.geo.h
    thr.geo.Rm = thr.geo.Dm / 2
    thr.geo.c = thr.geo.h / thr.geo.hc
    thr.geo.bx, thr.geo.phi = axial_chord(thr.geo.c, thr.alpha, thr.alpha)
    thr.geo.Rh = thr.geo.Rt - thr.geo.h

    thr.vel.Omega = thr.vel.U / thr.geo.Rm
    thr.vel.RPM = RPM(thr.vel.Omega)

    # compute pitch with soderberg/zweiffel
    two.geo.s = pitch(0.6, one.alpha, two.alpha, one.vel.Vx, two.vel.Vx,
                      one.P0, two.P0, one.geo.h, two.geo.h, two.geo.c)
    thr.geo.s = pitch(0.8, two.beta, thr.beta, two.vel.Wx, thr.vel.Wx, two.P0r,
                      thr.P0r, two.geo.h, thr.geo.h, thr.geo.c)
Esempio n. 2
0
File: main.py Progetto: alosola/tfg





# blade geometry at 2
two.geo.Rt, two.geo.Rh, two.geo.h, two.geo.Rm, two.geo.Dm, A2 = f.blade_geometry(mdot, two.rho, two.vel.Vx, RHT)

# rotational velocity
two.vel.Omega = two.vel.U/two.geo.Rm
two.vel.RPM = f.RPM(two.vel.Omega)

# massflow and characteristics at inlet
one.rho0 = f.static_density(one.P0, one.T0, R)                                  # = one.P0/one.T0/R
one.rho = solve_rhox(0.9999*one.rho0, one.rho0, one.T0, mdot, A2, gamma, cp)  # iteraciones hasta converger
one.vel.V = np.sqrt(2*cp*one.T0*(1-(one.rho/one.rho0)**(gamma-1)))
one.T = one.T0 - one.vel.V**2/2/cp
one.P = f.T2P(one.P0, one.T, one.T0, gamma)                     # = one.P0*(one.T/one.T0)**(gamma/(gamma-1)) # isentropic
one.vel.a, one.vel.M = f.sonic(gamma, R, one.T, one.vel.V)
one.geo.A = mdot/one.rho/one.vel.V

# blade geometry at 1
one.geo.Rt, one.geo.Rh, one.geo.h, one.geo.Rm, one.geo.Dm, one.geo.A = f.blade_geometry(mdot, one.rho, one.vel.V, RHT)

# blade geometry at 3
########## NO ENTIENDO NADAAAAA
thr.geo.A = mdot/thr.vel.Vx/thr.rho
thr.geo.h = thr.geo.A/np.pi/2/two.geo.Rm
thr.geo.Rt = two.geo.Rm+thr.geo.h/2
thr.geo.Dm = thr.geo.Rt*2 - thr.geo.h