1
0
mirror of https://gitlab.com/lander-team/lander-sim.git synced 2025-08-02 19:31:28 +00:00

Replace burnStartTimeCalc.m

This commit is contained in:
Brendan McGeeney
2021-09-16 23:35:43 +00:00
parent 4b450c6083
commit 62cd6c3204

View File

@@ -1,27 +1,25 @@
function [h0, vb, burnStartTime] = burnStartTimeCalc(Tcurve, tb, M0, mdot, Mb) function [h0, vb, burnStartTime] = burnStartTimeCalc(Tcurve, tb, M0, mdot, Mb, v0)
Mavg = (M0 + Mb)/2;
g = -9.81; g = -9.81;
v_prev = v0;
h_prev = 0;
A_tot = 0; for i = 1:length(Tcurve)
if i < length(Tcurve)
% Riemann Sum dt = Tcurve(i + 1, 1) - Tcurve(i, 1);
for i = 2:length(Tcurve) a = (Tcurve(i, 2) / (M0 - mdot * Tcurve(i + 1, 1))) + g;
if i > 1
A = (Tcurve(i, 1) - Tcurve(i - 1, 1)) * Tcurve(i, 2);
else else
A = Tcurve(i, 1) * Tcurve(i, 2); dt = 0;
a = (Tcurve(i, 2) / Mb) + g;
end end
A_tot = A_tot + A;
v = a * dt + v_prev;
v_prev = v;
h = v*dt + h_prev;
h_prev = h;
end end
Tavg = A_tot / tb; hb = h;
ueq = Tavg / mdot; hf = v^2 / (2*-g);
delta_ub = ueq * log(M0/Mb) + g*tb; h0 = hb + hf;
a_avg = (Tavg/Mavg) + g; vb = v;
hf = ((delta_ub^2) / (2*-g));
hb = ((delta_ub^2) / (2*a_avg))
h0 = hf + hb + 1;
vb = delta_ub;
burnStartTime = vb / -g; burnStartTime = vb / -g;