I am trying to do the following:
t = [1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20]; %time = 1x20
heatflux = [2 3 5 7 9 11 12 13 14 19 24 14 12 13 20 21 11 23 18 19]; %heatflux = 1x20
fun = @(t) (heatflux).*t;
energy = integral (fun,0,20);
And I get this error:
Matrix dimensions must agree.
Error in HeatFlux>@(t)(heatflux).*t
Error in integralCalc/iterateScalarValued (line 314)
fx = FUN(t);
Error in integralCalc/vadapt (line 132)
[q,errbnd] = iterateScalarValued(u,tinterval,pathlen);
Error in integralCalc (line 75)
[q,errbnd] = vadapt(@AtoBInvTransform,interval);
Error in integral (line 88)
Q = integralCalc(fun,a,b,opstruct);
Error in HeatFlux (line 22)
energy = integral (fun,0,20)
Can someone point what I am doing wrong? Both t and heatflux have the same matrix dimension 1x20!

1 件のコメント

Daniel Goosen
Daniel Goosen 2018 年 9 月 23 日
multiply by the transpose?

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

 採用された回答

Andrei Bobrov
Andrei Bobrov 2017 年 6 月 1 日
編集済み: Andrei Bobrov 2017 年 6 月 1 日

3 投票

>> t = [1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20]; %time = 1x20
heatflux = [2 3 5 7 9 11 12 13 14 19 24 14 12 13 20 21 11 23 18 19]; %heatflux = 1x20
energy = trapz(t,heatflux)
energy =
259.5000
>>

3 件のコメント

Torsten
Torsten 2017 年 6 月 1 日
energy = trapz(t,heatflux);
Best wishes
Torsten.
Fotis_oe
Fotis_oe 2017 年 6 月 1 日
Perfect! Thanks!
Andrei Bobrov
Andrei Bobrov 2017 年 6 月 1 日
Thank you Torsten!
This my typo. I'm corrected.

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

その他の回答 (1 件)

Torsten
Torsten 2017 年 6 月 1 日

1 投票

Use "trapz".
Best wishes
Torsten.

カテゴリ

Community Treasure Hunt

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

Start Hunting!

Translated by