示例#1
0
##    print 'Pay2Tail Wgt  w/bulk:', AsUnit(Fuselage.Pay2Tail.Weight,'ozf')
##    print 'Pay2Tail CG   w/bulk:', AsUnit(Fuselage.Pay2Tail.CG(),'in')
##    print 'shiggins weight @', AsUnit(actualTranWeight,'ozf'), ' CG @ ', AsUnit(tranCG,'in')
##    print

    tailCompWeight = 0.0*OZF # initialize the weight for the components
    tailCompCG = 0.0*OZF*Fuselage.Tail.CG().copy()
    for component in Fuselage.Tail.param.Components: # loop through nose comps
        tailCompWeight += component.Weight
        tailCompCG += component.Weight*component.CG()
    actualTailWeight = Fuselage.Tail.FrontBulk.Weight +  \
                       Fuselage.Tail.BackBulk.Weight + \
                       tailCompWeight
    tailCG = (1/actualTailWeight)*\
              (tailCompCG + \
              (Fuselage.Tail.FrontBulk.Weight*Fuselage.Tail.FrontBulk.CG())+\
              (Fuselage.Tail.BackBulk.Weight*Fuselage.Tail.BackBulk.CG()))
    
##    print 'Tail Weight   w/bulk:', AsUnit(Fuselage.Tail.Weight,'ozf')
##    print 'Tail CG       w/bulk:', AsUnit(Fuselage.Tail.CG(),'in')
##    print 'shiggins weight @', AsUnit(actualTailWeight,'ozf'), ' CG @ ', AsUnit(tailCG,'in')
##    print
    print 'Fuselage Wgt  w/bulk:', AsUnit(Fuselage.Weight,'lbf')
    print 'Fuselage CG   w/bulk:', AsUnit(Fuselage.CG(),'in')
    print
    print 'Fuselage MOI        :', AsUnit(Fuselage.MOI(),'slug*ft**2')
    print 'Fuselage Desired CG :', AsUnit(Fuselage.AircraftCG(),'in')
    print
    Fuselage.Draw()
    pyl.show()
示例#2
0
#
# Define the payload shape
#
Fuselage.Payload.Width  = 4*IN
Fuselage.Payload.Length = 10*IN
Fuselage.Payload.Face = 'Bottom'
Fuselage.Payload.Material = Steel.copy()
Fuselage.Payload.Weight = 1*LBF

#
# Determine which bulkhead should be set by the horizontal tail
#
Fuselage.TailBulk = Fuselage.Tail.BackBulk
Fuselage.TailBulk.WeightGroup = 'Fuselage'

if __name__ == '__main__':
    import pylab as pyl
    
    print 'Nose      Weight :', AsUnit( Fuselage.Nose.Weight, 'lbf' )
    print 'PyldBay   Weight :', AsUnit( Fuselage.PyldBay.Weight, 'ozf' )
    print 'TailTaper Weight :', AsUnit( Fuselage.Tail.Weight, 'lbf' )
    
    print 'Fuselage Weight    :', AsUnit( Fuselage.Weight, 'lbf' )
    print 'Fuselage MOI       :', AsUnit( Fuselage.MOI(), 'slug*ft**2' )
    print 'Fuselage CG        :', AsUnit( Fuselage.CG(), 'in' )
    print 'Fuselage Desired CG:', AsUnit( Fuselage.AircraftCG(), 'in' )
    
    
    Fuselage.Draw()
    pyl.show()
示例#3
0
#
# Define which section contains the CG of the aircraft
#
Fuselage.XcgSection = Fuselage.PyldBay
Fuselage.XcgSecFrac = 0.3

#
# Determine which bulkhead should be set by the horizontal tail
#
Fuselage.TailBulk = Fuselage.TailTaper.BackBulk

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

    Fuselage.Nose.Weight + Fuselage.Nose.FrontBulk.Weight + Fuselage.Nose.BackBulk.Weight

    print 'Composite Section:', Fuselage.Nose.Weight + Fuselage.Nose.FrontBulk.Weight + Fuselage.Nose.BackBulk.Weight
    print 'Nose      Length :', Fuselage.Nose.Length
    print 'PyldBay   Weight :', Fuselage.PyldBay.Weight
    print 'PyldBay   Length :', Fuselage.PyldBay.Length
    print 'TailTaper Weight :', Fuselage.TailTaper.Weight
    print 'TailTaper Length :', Fuselage.TailTaper.Length

    print 'Fuselage Weight    :', Fuselage.Weight
    print 'Fuselage MOI       :', AsUnit(Fuselage.MOI(), "slug*ft**2")
    print 'Fuselage CG        :', AsUnit(Fuselage.CG(), "in")
    print 'Fuselage Desired CG:', AsUnit(Fuselage.AircraftCG(), "in")

    Fuselage.Draw()
    pyl.show()