MATLAB Answers

how to write symoblic intergal equation with mutiple unknowns and solve it symbolically

조회 수: 1(최근 30일)
Zhenwei Sun
Zhenwei Sun 2020년 11월 26일
답변: Karan Nandankar 2020년 12월 29일
I am trying to solve this integral. My first step was to try and see what the integral looks like after integration using symbolic integration. but i cant seem to get it correctly.
here is my code:
syms eps betta delta
f(eps,betta,delta) = (tanh(0.5*betta*sqrt(eps^2 + delta^2)))/sqrt(eps^2 + delta^2);
F = int(f,eps);
The output is just :
F(eps, betta, delta) =
int(tanh((betta*(delta^2 + eps^2)^(1/2))/2)/(delta^2 + eps^2)^(1/2), eps)
The output seems to be the same as my input. I was wondering if it is becasue this equation needs to be solve numerically. Greatly appreciated if anyone can help. Thank you very much.


Karan Nandankar
Karan Nandankar 2020년 12월 29일
The integrand is bit complex for the int() to compute closed form of an integral, which is the reason that it returns an unresolved integral.
However, you can laverage use of numerical integration for this function, but you'll be computing definite integration with lower and upper limit for the curve.
For the scenarios when int() is unable to compute closed form of an indefinite integral, you can approximate the integrand function around some point using taylor expansion, and then compute the integral.
Say, for example, expand the integrand function around α = 0, and then use int() to compute the indefinite integral.
fTaylor = taylor(f, eps, 'ExpansionPoint', 0, 'Order', 5);
F = int(fTaylor,eps)
Refer to this document on Symbolic Integration for more information.


Community Treasure Hunt

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

Start Hunting!

Translated by