integral calculation size problem

3 ビュー (過去 30 日間)
Xuejian Niu
Xuejian Niu 2022 年 2 月 4 日
回答済み: Steven Lord 2022 年 2 月 4 日
a = 0.6;
% Define pu and pL
PU = 130000*exp(-x./(10*a));
PL = 150000*exp(-x./(10*a));
% integral cal
fun1 = @(x) (PL - PU);
N1 = integral(fun1,0,3*a);
% the matlab shows me a error here (output of function must be same size as input)
% Actually, I am not show where the error is, could you help me to fix it?

回答 (2 件)

Arif Hoq
Arif Hoq 2022 年 2 月 4 日
編集済み: Arif Hoq 2022 年 2 月 4 日
i took the value of x=10, because you did not mention that. you need to mention ArrayValue as true, cause you are using the function as array/vector value
a = 0.6;
x=10;
% Define pu and pL
PU = 130000*exp(-x./(10*a));
PL = 150000*exp(-x./(10*a));
% integral cal
fun1 = @(x) (PL - PU);
N1 = integral(fun1,0,3*a,'ArrayValued', true)
N1 = 6.7995e+03

Steven Lord
Steven Lord 2022 年 2 月 4 日
a = 0.6;
% Define pu and pL
Make PU and PL functions of x.
PU = @(x) 130000*exp(-x./(10*a));
PL = @(x) 150000*exp(-x./(10*a));
% integral cal
Call those functions in your integrand.
fun1 = @(x) (PL(x) - PU(x));
N1 = integral(fun1,0,3*a)
N1 = 3.1102e+04

カテゴリ

Help Center および File ExchangeNumerical Integration and Differentiation についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by