Error in quad function-maximum function count exceeded. "Singularity likely" warning when I use the QUADL function in MATLAB
Show older comments
Hi all, I need help using the quadl function.
clear all close all clc format long gamma=1.4; r=10; n=1000; h =(r)/n; %h=0.01 M0=0.6; Pr=2/3; k1=1; k2=1.10; b1=0.375; b2=0.6; lambda=111.1532157006257798;
Integral_22= integral (@(x)((((1+(b1*(x.^2))).^((-k1)./(2*b1))).*((1+(b2*(x.^2))).^(k2./(2*b2)))).^lambda).*x,0,1);
for i=1:(n+1) x(i) = (i-0.5)*h ; end
for o=1:n
F1= @(x) ((((1+(b1*(x.^2))).^((-k1)./(2*b1))).*((1+(b2*(x.^2))).^(k2./(2*b2)))).^lambda).*x; Upper_Integral(o)= quadl(F1,0,x(o)); V(o)= Upper_Integral(o)./(x(o).*Integral_22); F2= @(x) ((-lambda).*(((k1*x)./(1+(b1*(x.^2))))-((k2*x)./(1+(b2*(x.^2)))))); U(o)=F2(x(o)); F3= @(x)((((1+(b1*(x.^2))).^((-k1)./(2*b1))).*((1+(b2*(x.^2))).^(k2./(2*b2)))).^lambda); F4= @(x) ((((1+(b1*(x.^2))).^((-k1)./(2*b1))).*((1+(b2*(x.^2))).^(k2./(2*b2)))).^lambda).*x; Upper_Integral2(o)= quadl(F4,0,x(o)); F5(o)= -((2./(x(o)).^2).*Upper_Integral2(o)); F6(o)=F3(x(o)); f(o)=((1./Integral_22).*(F5(o)+F6(o))).^2; w=@(x)(((((1+(b1*(x.^2))).^(((Pr)*k1)./(2*b1)))./((1+(b2*(x.^2))).^(((Pr)*k2)./(2*b2)))).^lambda).*((U(o).*(V(o).^2))+(x.*f(o)))); Integral(o)=quad(w,0,x(o)); d_Theta=@(x) (-(((((1+(b2*(x.^2))).^(((Pr)*k2)./(2*b2)))./((((1+(b1*(x.^2))).^(((Pr)*k1)./(2*b1)))))).^lambda).*(1/x).*Integral(o).*((M0.^2).*(Pr).*(gamma-1)))); F9(o)=d_Theta(x(o));
end
- Warning: Maximum function count exceeded; singularity likely. > In quad at 99 *
I think that the problem is at the line Integral(o)=quad(w,0,x(o));
Anyone can help please?
Answers (1)
Mike Hosea
on 30 Sep 2014
2 votes
Is there some important reason why you are using INTEGRAL, QUAD, and QUADL, all three? QUAD and QUADL are deprecated. Use INTEGRAL for every case. Literally just substitute "integral" for "quad" and "quadl". INTEGRAL can even handle mild endpoint singularities, which QUAD and QUADL cannot. I tried it on your problem and there were no problems.
Categories
Find more on Numerical Integration and Differentiation in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!