An implementation of a three-dimensional model for an air-breathing hypersonic vehicle using algorithmic differentiation is presented. Motivation for this work is given in terms of difficulties encountered while calculating the linearized flight dynamics of another hypersonic vehicle model. The new model automatically calculates derivatives with respect to flight condition variables, control variables, model parameters, and design variables. The differentiation approach used here is unique in that it calculates both left-and right-hand derivatives at first-order discontinuities. Other approaches including complex step and finite difference are compared with the present implementation. Difficulties encountered in the derivation include handling of if statements, iterative solution of systems, and sorting. Hypersonic flight for a simple climbing and accelerating trajectory is considered to demonstrate the use of the model, and the effect of ballast mass on the short-period and Dutch-roll modes is also shown. Nomenclature a = local speed of sound C = transformation matrix e = eccentricity F, F = force or specific force f = mass capture fraction f = vector equations of motion function g = gravity vector H = height h = altitude I = inertia tensor J = Jacobian L = length or geodetic latitude M = Mach number M = moment (torque) or specific moment m = number of external inlet shockṡ m = mass flow rate n = number of internal inlet shocks n = normal vector n = unit normal vector P = roll rate p = pressure Q = pitch rate q = dynamic pressure R = yaw rate r = position vector T = temperature u = vector of control variables V, v, v = velocity w = dimensionless width x, y, z = physical coordinates x = vector of state variables α = angle of attack β = sideslip angle γ = ratio of specific heats or flight path angle δ = deflection angle or control input ε = pressure ratio ζ, η, ξ = placeholder variables θ = pitch angle or angle of flow λ = length fraction ρ = density σ = velocity heading angle φ = roll angle ψ = yaw angle ω, ω = angular velocity Subscripts/superscripts + = right-hand derivative − = left-hand derivative * = reference value 0 = stagnation value 1, 2, . . . = station number b= body frame CE = collective (average) elevon value CR = collective (average) rudder value DE = differential (left minus right) elevon value e = Earth-centered, Earth-fixed frame ER = equivalence ratio i = station index or intertial frame N, E, D = north, east, down components n = navigation frame