function xdot = xdot_TC04b_hfb_lon(ts, x, u, param) % Function to compute the state derivatives (i.e., RHS of system state equations) % test_case = 4 -- Longitudinal motion: HFB-320 Aircraft % Nonlinear model in terms of non-dimensional derivatives as function of % variables in the stability axes (V, alfa) % states - V, alpha, theta, q % outputs - V, alpha, theta, q, qdot, ax, az % inputs - de, thrust % State equations (5.86), (5.87) % Constants d2r = pi/180; r2d = 180/pi; % Geometry data G0 = 9.80665D+0; global stables; U0 = stables(1); % トリム状態における対気速度[m/s] W0 = stables(2); % トリム状態における下方向速度[m/s] THETA0 = stables(3); % トリム状態におけるピッチ角(安定軸) % State variables U = x(1); Alpha = x(2); Theta = x(3); Q = x(4); % Input variables de = u(1); dt = zeros(size(u(1))); % Parameters Xu = param( 1); Xa = param( 2); Xdt = 0; Zu = param( 3); Za = param( 4); Zq = param( 5); Zde = param( 6); Zdt = 0; Mu = param( 7); Ma = param( 8); Mq = param( 9); Mde = param(10); Mdt = 0; % Right sides of state equations (5.86) Udot = Xu * U + Xa * Alpha - W0 * Q - G0 * cos(THETA0) * Theta + Xdt * dt; Aldot = (Zu * U + Za * Alpha + (U0 + Zq) * Q - G0 * sin(THETA0) * Theta ... + Zde * de + Zdt * dt) / U0; Qdot = Mu * U + Ma * Alpha + Mq * Q + Mde * de + Mdt * dt; % State derivatives xdot(1) = Udot; xdot(2) = Aldot; xdot(3) = Q; xdot(4) = Qdot; % xdot must be a column vector xdot = xdot'; return % end of function