from Structures import MaterialLib from AircraftParts import Wing import matplotlib.pyplot as pl # Define the width of the cross-section x1 = -0.8990566037735849 x2 = 0.8990566037735849 c = 1. ctip = c croot = c L = 20. Y_rib = np.linspace(0.,L,2) b_s = np.linalg.norm((Y_rib[0],Y_rib[-1])) # Initialize material Info matLib = MaterialLib() matLib.addMat(1,'AL','iso',[71.7e9,.33,2810],.005) n_ply = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1] m_i = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1] noe_dens = [.1,.2,.4,.6,.8,1.,1.2,1.4,1.6,2.,3.,4.,5.] wings = [] sbeams = [] displArr = [] # Apply the case load def f(x): vx = 1e3 vy = 1e3 pz = -1e3
# ============================================================================= # HEPHAESTUS VALIDATION 7 - LINEAR ALGEBRA SOLUTION DIFFERENCES # ============================================================================= # IMPORTS: from Structures import MaterialLib, Laminate, XSect from AircraftParts import Airfoil import numpy as np # HODGES XSECTION VALIDATION # Add the material property matLib = MaterialLib() matLib.addMat(1, 'AS43501-6', 'trans_iso', [20.6e6, 1.42e6, .34, .34, .87e6, 0.], 0.004826) matLib.addMat(2, 'AS43501-6*', 'trans_iso', [20.6e6, 1.42e6, .34, .42, .87e6, 0.], .005) # Box Configuration 2 c2 = 0.53 xdim2 = [-0.8990566037735849, 0.8990566037735849] af2 = Airfoil(c2, name='box') # B1 Box beam (0.5 x 0.923 in^2 box with laminate schedule [15]_6) n_i_B1 = [6] m_i_B1 = [2] th_B1 = [-15] lam1_B1 = Laminate(n_i_B1, m_i_B1, matLib, th=th_B1) lam2_B1 = Laminate(n_i_B1, m_i_B1, matLib, th=th_B1) lam3_B1 = Laminate(n_i_B1, m_i_B1, matLib, th=th_B1) lam4_B1 = Laminate(n_i_B1, m_i_B1, matLib, th=th_B1)
from Structures import MaterialLib from AircraftParts import Wing from FEM import Model # Define the width of the cross-section x1 = -0.8990566037735849 x2 = 0.8990566037735849 c = 1. ctip = c croot = c p1 = np.array([0., 0., 0.]) p2 = np.array([0., 0., 20.]) Y_rib = np.linspace(0., 1., 2) b_s = np.linalg.norm((Y_rib[0], Y_rib[-1])) matLib = MaterialLib() matLib.addMat(1, 'AL', 'iso', [71.7e9, .33, 2810], .005) matLib.addMat(2, 'Weak_mat', 'iso', [100, .33, 10], .005) matLib.addMat(3, 'AS43501-6*', 'trans_iso', [142e9, 9.8e9, .34, .42, 6e9, 2000], 0.005) n_ply = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] m_ply = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] # For tension bending coupling #m_ply = [3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3] #th_ply = [0,0,0,0,-30,-30,-30,-30,0,0,0,0,30,30,30,30] noe_dens = 4 chordVec = np.array([1., 0., 0.]) wing1 = Wing(1,p1,p2,croot,ctip,x1,x2,Y_rib,n_ply,m_ply,matLib,name='box',\
# IMPORTS: import numpy as np from Structures import MaterialLib from AircraftParts import Wing # Define the width of the cross-section x1 = -0.8990566037735849 x2 = 0.8990566037735849 c = 1. ctip = c croot = c Y_rib = np.linspace(0., 20., 2) b_s = np.linalg.norm((Y_rib[0], Y_rib[-1])) matLib = MaterialLib() matLib.addMat(1, 'AL', 'iso', [71.7e9, .33, 2810], .005) matLib.addMat(2, 'Weak_mat', 'iso', [100, .33, 10], .005) n_ply = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] m_i = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] wing1 = Wing(b_s, croot, ctip, x1, x2, Y_rib, n_ply, m_i, matLib,
from Structures import MaterialLib from AircraftParts import Wing import matplotlib.pyplot as pl # Define the width of the cross-section x1 = -0.8990566037735849 x2 = 0.8990566037735849 c = 1. ctip = c croot = c L = 20. Y_rib = np.linspace(0., L, 2) b_s = np.linalg.norm((Y_rib[0], Y_rib[-1])) # Initialize material Info matLib = MaterialLib() matLib.addMat(1, 'AL', 'iso', [71.7e9, .33, 2810], .005) n_ply = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] m_i = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] noe_dens = [.1, .2, .4, .6, .8, 1., 1.2, 1.4, 1.6, 2., 3., 4., 5.] wings = [] sbeams = [] displArr = [] # Apply the case load def f(x): vx = 1e3 vy = 1e3
# IMPORTS: import numpy as np from Structures import MaterialLib from AircraftParts import Wing # Define the width of the cross-section x1 = -0.8990566037735849 x2 = 0.8990566037735849 c = 1. ctip = c croot = c Y_rib = np.linspace(0.,20.,2) b_s = np.linalg.norm((Y_rib[0],Y_rib[-1])) matLib = MaterialLib() matLib.addMat(1,'AL','iso',[71.7e9,.33,2810],.005) matLib.addMat(2,'Weak_mat','iso',[100,.33,10],.005) n_ply = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1] m_i = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1] wing1 = Wing(b_s,croot,ctip,x1,x2,Y_rib,n_ply,m_i,matLib,name='box',noe_per_unit_length=5) sbeam1 = wing1.wingSects[0].SuperBeams[0] #wing1.plotRigidWing() # Apply the constraint for the model wing1.addConstraint(0,'fix') # CASE 4:
# ============================================================================= # HEPHAESTUS VALIDATION 5 - TAPERED BEAM STIFFNESS SENSITIVITY # ============================================================================= # IMPORTS: from Structures import MaterialLib, Laminate, XSect from AircraftParts import Airfoil import numpy as np import pylab as pl # HODGES XSECTION VALIDATION # Add the material property matLib = MaterialLib() matLib.addMat(1,'AS43501-6','trans_iso',[20.6e6,1.42e6,.34,.34,.87e6,0.],0.004826) matLib.addMat(2,'AS43501-6*','trans_iso',[20.6e6,1.42e6,.34,.42,.87e6,0.],.005) # Box Configuration 2 c = 1.5 xdim = [-0.8990566037735849,0.8990566037735849] strn = np.array([0.,0.,0.,0.,0.,1.0]) num_data_points = 50 cs = np.linspace(0.1,1,num_data_points) # Layup 2 Box beam (0.5 x 0.923 in^2 box with laminate schedule [30,0]_3) n_i_1 = [1,1,1,1,1,1] m_i_1 = [1,1,1,1,1,1] th_1 = [-15,-15,-15,-15,-15,-15] lam1 = Laminate(n_i_1, m_i_1, matLib, th=th_1) n_i_2 = [1,1,1,1,1,1]
from Structures import MaterialLib from AircraftParts import Wing from FEM import Model # Define the width of the cross-section x1 = -0.8990566037735849 x2 = 0.8990566037735849 c = 1. ctip = c croot = c p1 = np.array([0.,0.,0.]) p2 = np.array([0.,0.,20.]) Y_rib = np.linspace(0.,1.,2) b_s = np.linalg.norm((Y_rib[0],Y_rib[-1])) matLib = MaterialLib() matLib.addMat(1,'AL','iso',[71.7e9,.33,2810],.005) matLib.addMat(2,'Weak_mat','iso',[100,.33,10],.005) matLib.addMat(3,'AS43501-6*','trans_iso',[142e9,9.8e9,.34,.42,6e9,2000],0.005) n_ply = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1] m_ply = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1] # For tension bending coupling #m_ply = [3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3] #th_ply = [0,0,0,0,-30,-30,-30,-30,0,0,0,0,30,30,30,30] noe_dens = 4 chordVec=np.array([1.,0.,0.]) wing1 = Wing(1,p1,p2,croot,ctip,x1,x2,Y_rib,n_ply,m_ply,matLib,name='box',\ noe=noe_dens,chordVec=chordVec,ref_ax='origin')#,th_ply=th_ply)