Why is the output of my function infinity?
4 views (last 30 days)
Show older comments
I'm doing code for the trapezoidal rule. I checked my code with simple functions at first to make sure it was outputting correctly. However when I am attempting what I need to do, my output says it's infinity, when it should not be. The solution I got from Wolfram Alpha and my TI89 was 0.00958. Could it be the "1/n" in the x definition? I needed 10 steps for the trapezoids I'm setting up.
The function being applied is: cos^2((pi*cos(x))/2)*csc(x).
n = 10;
x = 0:1/n:1/2;
y=cos((pi*cos(x))/2).^2.*csc(x);
z=trapz(x,y)
0 Comments
Answers (2)
Star Strider
on 7 Apr 2019
The cosecant is , so at integral multiples of π (such as 0, π, ...) the cosecant will approach ∞.
4 Comments
Torsten
on 8 Apr 2019
Since your function tends to 0 as x -> 0 by L'Hospital, you can integrate
y = cos((pi*cos(x))/2).^2.*csc(x).*(x > 0);
0 Comments
See Also
Categories
Find more on Numerical Integration and Differential Equations 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!