I am trying to integrate this function using the code -
----------------
syms x
xd = 700/319
fun = ((x^4)* exp(x))/((exp(x) -1)^2);
cv = int(fun,0,xd)
--------------
But, I am getting same form of the function like that -
>> Cv_calculatior
cv =
int((x^4*exp(x))/(exp(x) - 1)^2, x, 0, 700/319)
What's wrong here??

 采纳的回答

Torsten
Torsten 2022-5-27
编辑:Torsten 2022-5-27
Using "int", MATLAB tries to find an analytical antiderivative for your function, but cannot find one.
Use numerical integraion using "integral" instead. Don't start at 0 since your function has a division by zero at this location.
fun = @(x) x.^4.*exp(x)./(exp(x) -1).^2;
xd = 700/319;
result = integral(fun,1e-16,xd)

2 个评论

Thanks. Would you like to help me to write the whole code. Here is my problem -
Varying temparature from 0 degree to 800 degree with 2 degree interval ( T = 0:2:800)
integrating this function, y = ((x.^4).* exp(x))./((exp(x) -1).^2) for 0 to T, where T has a range of data
Expecting result: a list of data, T vs y
fun = @(x) x.^4.*exp(x)./(exp(x) -1).^2;
T = [1e-16,2:2:800];
y(1) = 0;
for i = 2:numel(T)
y(i) = y(i-1) + integral(fun,T(i-1),T(i));
end
plot(T,y)

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 App Building 的更多信息

产品

版本

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by