Fuselage.XcgSection = Fuselage.PayBay Fuselage.XcgSecFrac = 0.694 # Define the payload shape ##Fuselage.Payload.Face = 'Top' Fuselage.Payload.Axis = ( 1, 0, 0 ) # dechellis: Axis that payload is added along to hit weight based on density and dimensions Fuselage.Payload.Width = 7.25 * IN #changed ACFuselage pretty significantly Fuselage.Payload.Length = 1.625 * IN #changed ACFuselage pretty significantly Fuselage.Payload.Material = Steel.copy() Fuselage.Payload.Weight = 0.0 * LBF Fuselage.Payload.Position = (0.12, 0.5, 0.55 ) # changed ACFuselage (ACPayload class) # Determine which bulkhead should be set by the horizontal tail Fuselage.TailBulk = Fuselage.Tail.BackBulk Fuselage.TailBulk.WeightGroup = 'Fuselage' #==============================================================================# # VISUALIZATION & RESULTS #==============================================================================# if __name__ == '__main__': import pylab as pyl noseCompWeight = 0.0 * OZF # initialize the weight for the components noseCompCG = 0.0 * OZF * Fuselage.Nose.CG().copy() for component in Fuselage.Nose.param.Components: # loop through nose comps noseCompWeight += component.Weight noseCompCG += component.Weight * component.CG() actualNoseWeight = Fuselage.Nose.FrontBulk.Weight + \ Fuselage.Nose.BackBulk.Weight + \ noseCompWeight
Fuselage.Nose.AddComponent("NoseWheelServo", 0.04 * LBF, (.5 * IN, 1 * IN, 1 * IN), "Bottom", (0.6, 0.2, 0.0)) Fuselage.Nose.AddComponent("Receiver", 0.02 * LBF, (.5 * IN, 1 * IN, 1 * IN), "Left", (0.6, 0.2, 0.5)) # # Define which section contains the CG of the aircraft # Fuselage.XcgSection = Fuselage.PyldBay Fuselage.XcgSecFrac = 0.5 # # Determine which bulkhead should be set by the horizontal tail # Fuselage.TailBulk = Fuselage.TailTaper.BackBulk if __name__ == '__main__': import pylab as pyl print 'Nose Weight :', Fuselage.Nose.Weight print 'PyldBay Weight :', Fuselage.PyldBay.Weight print 'TailTaper Weight :', Fuselage.TailTaper.Weight 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()