Demo of attainable DV for a given payload mass
Plot curves approaching the theoretical maximum delta-V.
See also: DVConstantThrust
%-------------------------------------------------------------------------- % Copyright (c) 2005 Princeton Satellite Systems, Inc. All rights reserved. %-------------------------------------------------------------------------- % Constants year = 365.25*86400; % s % Power limit: 0.5 to 1000 MW Pmin = 0.5e6; Pmax = 100e6; powers = linspace(Pmin,Pmax,30); % Mission parameters payload = 1000; % kg % Main engine parameters uExhaust = 100; % km/s sigma = 25; % W/kg eta = 0.4; % fusion power to thrust % Fuel structural ratio sR = 0.05; nYears = [1 2 5 10 20 50 100]; DV = []; massFrac = []; for j = 1:length(nYears) duration = nYears(j)*year; for k = 1:length(powers) thrust = 2*powers(k)*eta/(uExhaust*1e3); mFuel = thrust/(uExhaust*1e3)*duration; mEngine = powers(k)/sigma; DV(j,k) = DVConstantThrust( thrust, payload+mEngine+sR*mFuel, mFuel, uExhaust, duration ); end end [hs,ls] = Plot2D(powers/1e6,DV/1e3,'Power (MW)','DV (km/s)','Attainable DV') yy = axis; yX = mean(yy(1:2)); yY = mean(yy(3:4)); text(yX,yY,{sprintf('sigma: %d',sigma),... sprintf('payload: %d',payload),... sprintf('eta: %.2f',eta),... sprintf('uE: %.2f',uExhaust)}) % compare to higher payload payload = 10000; % kg DV = []; massFrac = []; for j = 1:length(nYears) duration = nYears(j)*year; for k = 1:length(powers) thrust = 2*powers(k)*eta/(uExhaust*1e3); mFuel = thrust/(uExhaust*1e3)*duration; mEngine = powers(k)/sigma; DV(j,k) = DVConstantThrust( thrust, payload+mEngine+sR*mFuel, mFuel, uExhaust, duration ); end end hold on plot(powers/1e6,DV/1e3) % compare to higher payload payload = 50000; % kg DV = []; massFrac = []; for j = 1:length(nYears) duration = nYears(j)*year; for k = 1:length(powers) thrust = 2*powers(k)*eta/(uExhaust*1e3); mFuel = thrust/(uExhaust*1e3)*duration; mEngine = powers(k)/sigma; DV(j,k) = DVConstantThrust( thrust, payload+mEngine+sR*mFuel, mFuel, uExhaust, duration ); end end hold on plot(powers/1e6,DV/1e3) % theoretical limit DVmax = uExhaust*log((1+sR)/sR); yy = axis; plot(yy(1:2),DVmax*[1 1],'k--') ll = legend(ls.h,num2str(nYears'),'Location','southeast'); ll.Title.String = 'Years'; %-------------------------------------- % $Date$ % $Id: 153411224462346cd3ac105b05fd3726d6842e28 $
hs = Figure (Plot2D) with properties: Number: 1 Name: 'Attainable DV' Color: [0.94 0.94 0.94] Position: [468 345 560 420] Units: 'pixels' Use GET to show all properties ls = struct with fields: h: [7×1 Line]
