MATLAB Answers

Problem Calculating Nonlinear Indefinite Integral

4 views (last 30 days)
Hello,
I am trying to calculate a nonlinear integral t^5.2 *exp((-x^6.2-x*(0.2*4.5^6.2))/4.5^6.2) in order to solve an equation, where the unknown is the lower limit of integrations.Although i use "int" in order to calculate the integral, Matlab returns the equation.Is my equation too complicated or there is another way to get a solution ?I am quite new in Matlab, so any help would be appreciated.
I would like to thank you in advance for the time dealing with my query.
  3 Comments

Sign in to comment.

Accepted Answer

David Wilson
David Wilson on 2 Dec 2019
Since you neglected to tell us values for a and b, I'll just set them to a=2 and b=1. You have also two definitions for g(x), so I've used the one in your code. Like the previous poster suggested, I'll embed integral inside fsolve:
g = @(x) x.^5.*exp((-x.^5-x*(4^6))/4^6) ;
Q = @(k) integral(g,k,k+2);
a = 2; b = 1; % Set these to whatever
k0 = 1; % Need a start guess here.
k = fsolve(@(k) Q(k) - a/b, k0)
  1 Comment
Dimitrios Kampitsis
Dimitrios Kampitsis on 4 Dec 2019
Thank you for your help, it works and i get a solution. I have tried it also with a more complex equation and it works fine. I really appreciate your help.
However for a specific value of my constants fsolve returns a value (Equation solved) that it is not a root of my equation. I confirmed that using another software "Mathcad".
Could this be a problem of function tolerance ?

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!