コード例 #1
0
                           Vprop,
                           fig=2,
                           ylimits=[None, None, None, None])
    #Propulsion.PlotTPvsN(N, Vprop, fig=3)

    Propulsion.PlotTestData(fig=3)

    #Propulsion.Draw(fig=4)

    Nm = Propulsion.RPMMatch(V)
    Ib = Motor.Ib(Nm) / A
    #rho = KG/M**3
    #print AsUnit( 0.11 * rho * (6723*RPM/(2*math.pi))**3 * (9*IN)**4*(6*IN), 'W' )
    #print AsUnit( Prop.P(N=Nm[0], V=0*FT/SEC, h=0*FT), 'W' )

    print "Static Thrust          : ", AsUnit(Propulsion.T(0 * FT / SEC),
                                              "ozf")
    print "Max efficiency current : ", AsUnit(Motor.I_Effmax(), 'A')
    print "Max efficiency RPM     : ", AsUnit(Motor.N_Effmax(), 'rpm')
    print "Weight                 : ", AsUnit(Propulsion.Weight, 'lbf')

    pyl.figure(1)
    pyl.subplot(221)
    pyl.title(Propulsion.Engine.name + ', ' + Propulsion.Prop.name)
    pyl.plot(V / (FT / SEC), Ib)
    pyl.grid()
    pyl.xlabel('Aircraft Velocity (ft/s)')
    pyl.ylabel('Current (A)')
    pyl.subplot(222)
    pyl.plot(V / (FT / SEC), Motor.Duration(N=Nm) / MIN)
    pyl.grid()
コード例 #2
0
# Set Propulsion properties
PropulsionOS = ACPropulsion(Prop, OS)
PropulsionOS.Alt = 0 * FT
PropulsionOS.Vmax = 100 * FT / SEC
PropulsionOS.nV = 20

PropulsionMAG = ACPropulsion(Prop, Magnum)
PropulsionMAG.Alt = 0 * FT
PropulsionMAG.Vmax = 100 * FT / SEC
PropulsionMAG.nV = 20

if __name__ == '__main__':
    import pylab as pyl

    print "Static Thrust :", AsUnit(PropulsionOS.T(0 * FT / SEC), "lbf")
    print "Static Thrust :", AsUnit(PropulsionMAG.T(0 * FT / SEC), "lbf")

    Vmax = 100
    V = npy.linspace(0, Vmax, 30) * FT / SEC
    Vprop = npy.linspace(0, Vmax, 5) * FT / SEC
    N = npy.linspace(1000, 20000, 30) * RPM
    PropulsionOS.PlotMatched(V, N, Vprop, fig=2)
    PropulsionMAG.PlotMatched(V, N, Vprop, fig=2)
    #Propulsion.PlotTPvsN(N, Vprop, fig=3)
    PropulsionMAG.PlotTestData(fig=3)
    PropulsionOS.PlotTestData(fig=4)

    #Propulsion.Draw(fig=4)

    pyl.show()