Beispiel #1
0
# Gyro moment due to pitch rate
# Pitch rate
pitch_rate = Q_("60 deg/s")  # From Midas' calculation for 10G pull up
# Call to Gyro file
m_y_gyro = Gyro_effects.input_acceleration(0, 0, 0, -pitch_rate)[0]

# Moments
# Component moments about axis parallel to Z-axis in firewall
m_z_eng = f_y_eng * (Engine.xcg - Firewall.xcg)
m_z_prop = f_y_prop * (Geometry.CG.CG_prop - Firewall.xcg)
m_z_mount = f_y_mount * (xcg - Firewall.xcg)


# Reaction forces and moments for Boris
f_x = -Propdata.data_reader(Performance.V_a_clean, "Total thrust")
f_y = r_y_total
f_z = Q_('0 N')

m_x = Propdata.data_reader(Performance.V_a_clean, "Torque")
m_y = m_y_gyro
m_z = m_z_eng + m_z_mount + m_z_prop


print('f_x', f_x)
print('f_y', f_y)
print('f_z', f_z)
print('m_x', m_x)
print('m_y', m_y)
print('m_z', m_z)
Beispiel #2
0
# make empty lists
V_list = []
y_max_list = []

# The process will be run for all speeds between Vstall and Va
for V in np.arange(V_stall.magnitude, V_a.magnitude, V_step):
    V *= Q_("m/s")

    # At a new V these lists have to be made empty
    T_D_list = []
    T_list = []
    D_list = []
    y_list = []
    T_req = Q_("0 N")
    Tmax = Propdata.data_reader(V, "Total thrust")
    y = 0

    # For every climb angle the thrust and AoA required are calculated as well as the corresponding drag.
    # If the thrust or AoA is higher than possible, the thrust is set to zero.
    # (The thrust is only important to determine the largest difference between thrust and drag,
    # if the required thrust is higher than the available thrust, the climb cannot be sustained)
    while T_req <= Tmax:
        flight_path_angle = y
        flight_path_angle *= Q_("deg")
        L_req = W * np.cos(flight_path_angle)
        alpha_req = L_req / (0.5 * rho * V**2 * S *
                             C_L_alpha) - C_L_0 / C_L_alpha
        C_D = C_d_0 + (C_L_alpha * alpha_req + C_L_0)**2 / (m.pi * A * e)
        D = C_D * 0.5 * rho * V**2 * S
        T_req = D + W * np.sin(flight_path_angle)
Beispiel #3
0
r = Q_("0. 1/s")  # initial yaw rate   [rad/s]
Phi = Q_("0. rad")  # Initial euler angle around x-axis
Psi = Q_("0. rad")  # Initial euler angle around z-axis
Theta = Q_("0. rad")  # Initial euler angle around y-axis
lin_ran_alpha = 4  # Linear range of angle of attack and elevator defl.
w = Q_("0. m/s")
u = V_inf
v = Q_("0. m/s")
gamma = Q_("0. rad")
Xi = Q_("0 rad")
mtow = Geometry.Masses.W_MTOW
g0 = Performance.g0.magnitude * Q_("m/s**2")

from Propulsion_and_systems import Propdata

T_max = Propdata.data_reader(V_inf, "Total thrust")
# print (T_max)

# Import Aircraft Geometry
I_yy = Inertia.I_yy
I_xx = Inertia.I_xx
I_zz = Inertia.I_zz
I_xz = Inertia.I_xz
I_star = I_xx * I_zz - I_xz**2

b_w = Geometry.Wing.b
S_w = Geometry.Wing.S
c_r_w = Geometry.Wing.c_r
c_t_w = Geometry.Wing.c_t
AR_w = Geometry.Wing.A
e_w = Awing.Oswald_e