plot integral equation coming from ode solver

1 次查看(过去 30 天)
I have an equation that comes from ode solver :
[t1 V1] = ode15s(dV1dt, t1, y1); plot(t1, V1 ,'-b','lineWidth',2)
then I do some basic addition or subtraction on it for eg :
Aout1=(V1-1); plot(t1,Aout1,'-b','lineWidth',2);
Now I wish to integrate the output : So I tried with
final = integral (Aout1, 0, 4.2)
But I get error :
Error using integral (line 82) First input argument must be a function handle.
I tried other things as well; but I don't achieve what I wish. Although 'cumsum' works well on it just like that.

采纳的回答

Star Strider
Star Strider 2019-2-15
Use the trapz (link) function:
idx = find(t1 <= 0.42);
final = trapz(t1(idx), Aout1(idx))
Since you menitoned cumsum, also see the documentation for cumtrapz (link).
  8 个评论
Amirah Algethami
Amirah Algethami 2023-8-20
thanks @Torsten this extract with defining dV2/dt = V1-1 , I thought ode15 will be integrated it without using integral function? please clarify it for me.
Thanks
Torsten
Torsten 2023-8-20
编辑:Torsten 2023-8-20
If you call ode15s with the additional ODE dV2/dt = V1(t)-1, V2(tspan(1)) = 0, ode15s will return
V2(i) = integral_{t=tspan(1)}^{t=tspan(i)} (V1(t)-1) dt (1 <= i <= end)
in the solution column for V2 in Y. The call somehow looks like
[T,Y] = ode15s(dVdt,tspan,[V1,0])
If you have further questions, please include executable code and mark the line where you have difficulties.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Numerical Integration and Differentiation 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by