Numerical integration over (0, x1)

조회 수: 7 (최근 30일)
Raj Patel
Raj Patel 2020년 9월 21일
댓글: Raj Patel 2020년 9월 21일
I am trying to numerical integrate the function. I am not able to solve it. Can anyone help me?
Note: t is a constant over here and limits are from 0 to x1.
Thanks in advance.
Raj Patel.
  댓글 수: 6
Raj Patel
Raj Patel 2020년 9월 21일
I tried using int(function) to solve, but I am still not getting an answer.
Raj Patel
Raj Patel 2020년 9월 21일
I tried using int(function) to solve, but I am still not getting an answer.

댓글을 달려면 로그인하십시오.

채택된 답변

John D'Errico
John D'Errico 2020년 9월 21일
If t is unknown, then you need to use symbolic tools to do the integration.
syms x t
K = 1/((exp(0.014342/(x * t)) - 1)) * (1/(x^4));
int(K,x,[0,1])
ans =
int(1/(x^4*(exp(2066900027383925/(144115188075855872*t*x)) - 1)), x, 0, 1)
MATLAB just returns the integral in the form it was given. I tried Wolfram Alpha, which also agrees it cannot find a solution. There is no assurance that anything you write down has a nice closed form solution.
You have some options. If you had some value for t, then we could write it as:
Kxt = @(x,t) 1./((exp(0.014342./(x * t)) - 1)) .* (1./(x.^4));
foft = @(t) integral(@(x) Kxt(x,t),0,1);
foft(3)
ans =
22003287.386445
foft(1.2)
ans =
1408175.40694754
So while no analytical form is available, we can find a numerical solution. I could have used vpaintegral too.
Finally, you could probably write the problem as a series expansion, but then you would need to consider the domain of convergence, etc.
  댓글 수: 1
Raj Patel
Raj Patel 2020년 9월 21일
Thank you John. I appreciate your effort and time.

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Alan Stevens
Alan Stevens 2020년 9월 21일
Need to write fun as
fun = @(x) (1./(exp(0.014342./(x*t))-1).*1./x.^4);

카테고리

Help CenterFile Exchange에서 Calculus에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by