integral method gives an answer of zero

1 visualizzazione (ultimi 30 giorni)
Hello,
I have been trying compute
where β is a fixed constant. My code consists of the following:
k = 1.380649*10^(-23);
t = 5800;
beta = (k*t)^(-1);
fun = @(x) x.^3 ./ (exp(beta .* x) - 1);
q = integral(fun,0,Inf)
This results in the integral being evaluate as 0. However, I know that this integral is infact not zero over the domain
Am I making somekind of mistake?

Risposta accettata

Walter Roberson
Walter Roberson il 2 Apr 2023
The values are so small relative to your constants that they might as well be zero.
With your beta being 1/(k*t) you are ending up with some large exponents in the exp() -- large enough that you are going to overflow numerically.
syms x
Q = @(v) sym(v);
k = Q(1380649)*Q(10)^(-29);
t = Q(5800);
beta = (k*t)^(-1);
fun = x.^3 ./ (exp(beta .* x) - 1)
fun = 
int(fun, 0, Inf)
ans = 
vpa(ans)
ans = 
2.6702586874891152137386272298896e-76

Più risposte (0)

Categorie

Scopri di più su Particle & Nuclear Physics in Help Center e File Exchange

Tag

Prodotti


Release

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by