コード例 #1
0
# Visualization & Results
#==============================================================================#
if __name__ == '__main__':
    import pylab as pyl

    print "V lift off   : ", AsUnit(Wing.GetV_LO(), 'ft/s')
    print "V stall      : ", AsUnit(Wing.V_Stall, 'ft/s')
    print "Wing Area    : ", AsUnit(Wing.S, 'in**2')
    print "Wing Span    : ", AsUnit(Wing.b, 'in')
    print "Wing AR      : ", Wing.AR
    print "Wing MAC     : ", AsUnit(Wing.MAC(), 'in')
    print "Wing Xac     : ", AsUnit(Wing.Xac(), 'in')
    print "Wing dCM_da  : ", Wing.dCM_da()
    print "Wing dCL_da  : ", Wing.dCL_da()
    print "Lift off Load: ", AsUnit(Wing.Lift_LO, 'lbf')
    print "Wing Thk     : ", AsUnit(Wing.Thickness(0 * FT), 'in')
    print "Wing Chord   : ", AsUnit(Wing.Chord(0 * FT), 'in')
    print "Wing Lift    : ", AsUnit(Wing.Lift_LO, 'lbf')
    print "Wing MOI     : ", AsUnit(Wing.MOI(), 'slug*ft**2')
    print
    print "WEIGHT CALCULATIONS"
    print "Main Spar Wt : ", AsUnit(Wing.WingWeight.MainSpar.Weight, 'ozf')
    print "2nd  Spar Wt : ", AsUnit(Wing.WingWeight.SecondSpar.Weight, 'ozf')
    print "L.E. Weight  : ", AsUnit(Wing.WingWeight.LeadingEdge.Weight+\
                                    Wing.WingWeight.LeadingEdgeBent1.Weight+\
                                    Wing.WingWeight.LeadingEdgeBent2.Weight,'ozf')
    print "T.E. Weight  : ", AsUnit(Wing.WingWeight.TrailingEdge1.Weight+\
                                    Wing.WingWeight.TrailingEdge2.Weight,'ozf')
    print "Rib Weight   : ", AsUnit(Wing.WingWeight.RibWeight(), 'ozf')
    print "Skin Weight  : ", AsUnit(Wing.WingWeight.SkinWeight(), 'ozf')
    print "Servos Weight: ", AsUnit(2 * Wing.Aileron.Servo.Weight, 'ozf')
コード例 #2
0
Wing.Aileron.Servo.Fc = 0.3
Wing.Aileron.Servo.Weight = 0.01 * LBF

###############################################################################
#
# Structural properties
#
###############################################################################
#
# Spar material (basswood, 1/4in width at max airfoil thickness + d-spar skin, balsa 1/16in)
#
sparw = 0.25 * IN
Basswood = Basswood.copy()
Balsa = Balsa.copy()
Wing.Refresh()  # refresh so the thicknesses can be calculated
Wthick = Wing.Thickness(0 * FT)
sparFD = Basswood.ForceDensity * sparw * Wthick

# Dspar density as balsa at 1/16in thick and the distance around the front of the airfoil
#  approximated as 2 times the airfoil thickness at the root
DsparFD = Balsa.ForceDensity * 0.0625 * IN * 2.0 * Wthick

#
# Rib material (1/8in balsa)
#
BWRibMat = Balsa.copy()
BWRibMat.Thickness = 0.125 * IN

Wing.SetWeightCalc(ACRibWing)
Wing.WingWeight.SkinMat = Monokote.copy()
Wing.WingWeight.RibMat = BWRibMat