MATLAB Answers

definite integral not giving exact answer

5 views (last 30 days)
AgentWindu
AgentWindu on 15 Jan 2020
Commented: AgentWindu on 16 Jan 2020
Hi,
I have a triple integral with the following code:
inner_int=int(r*sin(phi),phi,[acos(4/5) pi-acos(4/5)])
middle_int=int(inner_int,r,3,5)
Mass_S=int(middle_int,theta,0,2*pi)
The answer I get from the first line is
-r*(cos(175787564848171/70368744177664) - cos(181129459610871/281474976710656))
When it should be 8/5*r
I have tried adding 'IgnoreAnalyticConstraints',true to the end of int but it didn't work. Is there anything I can do to get MATLAB to compute this as an exact solution. For reference the shape to be integrated is a sphere with a cylindircal hole drilled in it and spherical coordinates are required. Thanks

  0 Comments

Sign in to comment.

Accepted Answer

Steven Lord
Steven Lord on 15 Jan 2020
Compute your limits of integration symbolically to avoid roundoff error.
f = sym(4)/5;
a = acos(f);
inner_int = int(r*sin(phi), phi, [a, pi-a])

  1 Comment

AgentWindu
AgentWindu on 16 Jan 2020
Great
Thanks for your help, this worked

Sign in to comment.

More Answers (1)

Cameron B
Cameron B on 15 Jan 2020
Edited: Cameron B on 15 Jan 2020
I don't know what the issue is. I did this and got 8*r/5. The answer seems to be correct.
syms r
sym(-r*(cos(175787564848171/70368744177664) - cos(181129459610871/281474976710656)))

  0 Comments

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!