Hello everyone. I have recieved a code in which an expression is called as [t, x]=ode45(@(t,x) example(t,x),tspan,x0); inside of it I have three vectors called u1d, u2d and u3d. I also have
u(1)=interp1(time,u1d,t,'linear');
u(2)=interp1(time,u2d,t,'linear');
u(3)=interp1(time,u3d,t,'linear');
I want to compare u(1) with u1d, u(2) with u2d and u(2) with u3d to see how good the interpolation is. The problem is that if I write
figure
plot(u1d)
inside of example, infinite figures appear.
Can someone please explain to me if it is possible to plot the points of u1d and compare them with the interpolated ones at u(1)?
I have tried to construct
u(1)=interp1(time,u1d,t,'linear');
u(2)=interp1(time,u2d,t,'linear');
u(3)=interp1(time,u3d,t,'linear');
outside of the ode45 function but error messages appear.
Thanks for reading.
Jaime.

5 件のコメント

the cyclist
the cyclist 2019 年 11 月 12 日
Can you upload the data in a *.mat file, so we can run and test it ourselves?
Jaime De La Mota Sanchis
Jaime De La Mota Sanchis 2019 年 11 月 12 日
編集済み: Jaime De La Mota Sanchis 2019 年 11 月 12 日
When you say data, do you mean u1d, u2d and u3d?
Edit: I will attach one example model and the example function
Daniel M
Daniel M 2019 年 11 月 12 日
You have the vectors time, and u1d (etc) outside of the ode45 call. And you also have the output t from the ode45 call. So, why can't you run an interpolation and compare the two?
Jaime De La Mota Sanchis
Jaime De La Mota Sanchis 2019 年 11 月 12 日
I have tried it your way and it works. Thanks.
Daniel M
Daniel M 2019 年 11 月 12 日
I will move it to an Answer then.

サインインしてコメントする。

 採用された回答

Daniel M
Daniel M 2019 年 11 月 12 日

2 投票

You have the vectors time, and u1d (etc) outside of the ode45 call. And you also have the output t from the ode45 call. So,you can run an interpolation after calling ode45 (not inside).

その他の回答 (0 件)

カテゴリ

製品

Community Treasure Hunt

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

Start Hunting!

Translated by