can someone help with this error please

3 views (last 30 days)
E.Wolf
E.Wolf on 30 Apr 2023
Edited: Torsten on 30 Apr 2023
% Define the differential equation
f = @(t,x) x.^2 - t;
% Define the time interval and initial conditions
tspan = [0,2];
a1 = 0;
a2 = 0.75;
% Solve the differential equation using ode45
[t1,x1] = ode45(f,tspan,a1);
[t2,x2] = ode45(f,tspan,a2);
% Plot the solutions
hold on
plot(t1,x1,'b','LineWidth',2)
plot(t2,x2,'r--','LineWidth',2)
xlabel('t')
ylabel('x')
legend('a=0','a=0.75')
% Plot the distance between the trajectories
figure
plot(t1,abs(x1-x2),'k','LineWidth',2)
Arrays have incompatible sizes for this operation.
xlabel('t')
ylabel('|x1(t) - x2(t)|')

Answers (2)

Torsten
Torsten on 30 Apr 2023
Edited: Torsten on 30 Apr 2023
Instead of
tspan = [0,2]
use
tspan = linspace(0,2,100)
This fixes the number of output times to 100 for both calls to ode45.

Image Analyst
Image Analyst on 30 Apr 2023
x1 has 41 elements while x2 has 45 elements, so how can you subtract them?

Community Treasure Hunt

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

Start Hunting!