Numerical Integration in Matlab

I wanted to solve a numerical integral of the following equation:
fun = ((x.^4 .* exp(x))) ./ ((exp(x) - 1) .* (exp(x) - 1) );
The limits are from: 0 to Inf
Can anyone ehelp me here?
Thanks in advance.

 Risposta accettata

If you have symbolic toolbox
syms x
y = ((x.^4 .* exp(x))) ./ ((exp(x) - 1) .* (exp(x) - 1) );
I = int(y, x, 0, inf)
Result
>> I
I =
(4*pi^4)/15
>> double(I)
ans =
25.9758

4 Commenti

Thanks Ameer. I had one more question.
I could not write the whole problem in Matlab so I have attached a jpg file for you so that you can understand the question.
Also, note that T = logspace(0, 5), and there is a prefactor of T^3 before the integral as well.
I want some help plotting a loglog plot of (T, Cv). Could you please help me?
Thank you.
Raj Patel.
Check this code
fun = @(x) (x.^4) ./ (exp(x).*(1 - 1./exp(x)).^2 );
C = @(T) integral(fun, 0, 500/T);
Tv = linspace(0, 1000);
Cv = arrayfun(C, Tv);
loglog(Tv, Cv)
Thanks Ameer. It helped me. Appreciate your efforts.
I am glad to be of help!

Accedi per commentare.

Più risposte (1)

integral(fun,0,683)

1 Commento

An alternative by rearranging the terms
fun = @(x) (x.^4) ./ (exp(x).*(1 - 1./exp(x)).^2 );
integral(fun, 0, inf)

Accedi per commentare.

Categorie

Scopri di più su Programming in Centro assistenza e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by