how to find the numerical integration in matlab

Input: syms a b phi h=int((sin(phi)/(sqrt(a+(b*sin(phi))))),phi) h1=vpa(h)
Ans: Warning: Explicit integral could not be found.
h =
int(sin(phi)/(a + b*sin(phi))^(1/2), phi)
h1 =
numeric::int(sin(phi)/(a + b*sin(phi))^(1/2), phi)
Help me to find out the mistake and tel me how to find out the numerical integration.

2 Comments

Your integral can be expressed in terms of a combination of elliptic integrals of the first and second kinds. Perhaps it would help in obtaining a symbolic expression to this effect if you declared symbols for its upper and lower limits of integration.
As Wayne has pointed out, with or without such a symbolic expression, to obtain a numerical value for the integral you will need to give specific numerical values to both these limits and to the coefficients a and b.
I have the answer for the above integral in a journal,it contains a series of elliptic integrals.But i cant figure out how to get these elliptic integrals?

Sign in to comment.

Answers (2)

What version of MATLAB are you using? There is an integral() function for numerical integration.
Of course, you'll need values for a and b and limits of integration
a = 1;
b = 2;
f = @(x) sin(x)./sqrt(a+b*sin(x));
integral(f,0,2);
a = 1;
b = 2;
f = @(x) sin(x)./sqrt(a+b*sin(x));
quad(f,0,2);

3 Comments

given that you are using R2010a
can we specify the various intervals between 0-2 to get different values for different values of x?in the above quad func?
yes, if you are changing the limits of integration, you get a different value for the definite integral.

Sign in to comment.

Commented:

on 4 Feb 2014

Community Treasure Hunt

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

Start Hunting!