def test_ForceDensity2(self): """ Calculates ForceDensity from AreaDensity and Thickness """ Mat = ACMaterial() Mat.AreaDensity = LBM/IN**2 Mat.Thickness = IN ForceDensity = (LBM*g/IN**3).asNumber(LBF/IN**3) self.assertAlmostEqual(Mat.ForceDensity.asNumber(LBF/IN**3), ForceDensity, 5, "Filed to calculate ForceDensity from AreaDensity and Thickness")
def test_ForceDensity1(self): """ Calculates ForceDensity from Density """ Mat = ACMaterial() # # Simply convert density into force density # Mat.Density = LBM/IN**3 ForceDensity = (LBM*g/IN**3).asNumber(LBF/IN**3) self.assertAlmostEqual(Mat.ForceDensity.asNumber(LBF/IN**3), ForceDensity, 5, "Filed to calculate ForceDensity from Density")
Fibre2Resin = 3 / 2 EpoxDens = 0.017316 * LBF / IN**3 XylonDens = 0.056 * LBF / IN**3 CompDens = 0.0404 * LBF / IN**3 ZylonCompFD = CompDens PlyThickness = 1 / 100 * IN / g ZylonCompAD = CompDens * PlyThickness ############################################################################### # Fuselage Materials ############################################################################### # Bulkhead Truss # 1/8 inch thick with 75% material cut out cutout = 0.9 ACTrussBH = ACMaterial() ACTrussBH.Thickness = 0.25 * IN ACTrussBH.ForceDensity = Balsa.ForceDensity * (1 - cutout) # Composite Plate (Composite Plate + monokote) # 1/4 inch thick Divinicel Foam with 2 ply of Composite ACNoseComp = ACMaterial() ACNoseComp.AreaDensity = DivinicelFD * 0.25 * IN / g + 2 * ZylonCompAD # Section Truss (truss structure + monokote) # 1/8 inch thick with 80% material cut out cutout = 0.8 ACTrussSkin = ACMaterial() ACTrussSkin.AreaDensity = Balsa.ForceDensity * ( 1 - cutout) * 0.25 * IN / g + Monokote.AreaDensity
Fibre2Resin = 3 / 2 EpoxDens = 0.017316 * LBF / IN**3 XylonDens = 0.056 * LBF / IN**3 CompDens = 0.0404 * LBF / IN**3 ZylonCompFD = CompDens PlyThickness = 1 / 100 * IN / g ZylonCompAD = CompDens * PlyThickness ############################################################################### # Fuselage Materials ############################################################################### # Bulkhead Truss # 1/4 inch thick with 75% material cut out cutout = 0.9 ACTrussBH = ACMaterial() ACTrussBH.Thickness = 0.25 * IN ACTrussBH.ForceDensity = Balsa.ForceDensity * (1 - cutout) # Composite Plate (Composite Plate + monokote) # 1/4 inch thick Divinicel Foam with 2 ply of Composite ACNoseComp = ACMaterial() ACNoseComp.AreaDensity = DivinicelFD * 0.25 * IN / g + 2 * ZylonCompAD # Section Truss (truss structure + monokote) # 1/4 inch thick with 80% material cut out cutout = 0.8 ACTrussSkin = ACMaterial() ACTrussSkin.AreaDensity = Balsa.ForceDensity * ( 1 - cutout) * 0.25 * IN / g + Monokote.AreaDensity
from Aerothon.ACMaterial import ACMaterial from Aerothon.ACFuselage import ACFuselage from Aerothon.DefaultMaterialsLibrary import Steel, AircraftPly, Basswood, Monokote # # Materials Set-up # Steel = Steel.copy() ACPly = AircraftPly.copy() Basswood = Basswood.copy() Monokote = Monokote.copy() # Bulkhead plywood # 1/8 inch thick with 75% material cut out cutout = 0.75 ACPlyBH = ACMaterial() ACPlyBH.Thickness = 0.125 * IN ACPlyBH.ForceDensity = ACPly.ForceDensity * (1 - cutout) # Section plywood (truss structure + monokote) # 1/8 inch thick with 80% material cut out cutout = 0.8 ACPlySkin = ACMaterial() ACPlySkin.AreaDensity = ACPly.ForceDensity * ( 1 - cutout) * 0.125 * IN / g + Monokote.AreaDensity # Stringer material from basswood (w=0.25 in , t=0.25 in) w = 0.25 * IN t = 0.25 * IN BassStringer = ACMaterial() BassStringer.LinearForceDensity = Basswood.ForceDensity * w * t