How do I get the plot for this code?

12 visualizzazioni (ultimi 30 giorni)
Rava Sash
Rava Sash il 15 Mag 2018
Risposto: Walter Roberson il 16 Mag 2018
I have used the trapetzoid rule. How do I get the plot for this code?
function T = time_to_destination(x,route, n)
load(route);
if x<0||x>distance_km(end)
error("Too big/small")
end
h=x/n;
j=1./(velocity(linspace(0,x,n+1), route));
T=0.5*h*(2*sum(j)-j(1)-j(end))
end
.
function v = velocity(x, route)
load speed_anna.mat;
d = distance_km;
y = speed_kmph;
dd=0:distance_km(end);
pp=spline(d,y);
v = ppval(pp, x);
plot(d,y,'ro');
hold on
h=fplot(@(x)ppval(pp,x),[d(1),d(end)], '- b')
hold off
if (x<0 | x>d(end))
error ('Fel')
end
end

Risposte (2)

Rava Sash
Rava Sash il 16 Mag 2018
I meant trapezoidal rule* Can't anyone help me? Do I need to convert the vectors to a matrix? If so, how do I do that?
  2 Commenti
Walter Roberson
Walter Roberson il 16 Mag 2018
Your code is pretty odd but it appears to already be plotting, so I do not understand the question.
Sample input would help.
Rava Sash
Rava Sash il 16 Mag 2018
I don't know why I put both the codes in, but I only want to plot the first function. Sorry for the confusion.

Accedi per commentare.


Walter Roberson
Walter Roberson il 16 Mag 2018
It is difficult to guess what you want. Perhaps
function T = time_to_destination(x,route, n)
load(route);
if x<0||x>distance_km(end)
error("Too big/small")
end
h=x/n;
X = linspace(0,x,n+1);
j=1./(velocity(X, route));
T=0.5*h*(2*sum(j)-j(1)-j(end));
plot(X, j)

Categorie

Scopri di più su 2-D and 3-D Plots in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by