Getting the area of a surface integral from Matlab
19 次查看(过去 30 天)
显示 更早的评论
I'd like to approve my solution of
where
is the unit sphere
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/607900/image.png)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/607905/image.png)
Therefore I want to calculate
where
is the parametrization of the unit sphere: ![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/607920/image.png)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/607910/image.png)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/607915/image.png)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/607920/image.png)
syms phi the
x = cos(phi).*sin(the);
y = sin(phi).*sin(the);
z = cos(the);
density = x.^2;
para = [x;y;z];
dphi = diff(para,phi);
dthe = diff(para,the);
c = cross(dphi,dthe);
int(int(density*norm(c),phi,0,2*pi),the,0,pi)
Like in my previous quesion I get a cryptic answere, not really any helpfull probably because norm(c) is overcomplicated
Also is there another way to approve the solution. e.g. with trapz?
0 个评论
采纳的回答
Star Strider
2021-5-5
See if simplifying it does what you want —
syms phi the
x = cos(phi).*sin(the);
y = sin(phi).*sin(the);
z = cos(the);
density = x.^2;
para = [x;y;z];
dphi = diff(para,phi);
dthe = diff(para,the);
c = cross(dphi,dthe);
Int2 = int(int(density*norm(c),phi,0,2*pi),the,0,pi)
Int2 = simplify(Int2, 500)
.
2 个评论
Star Strider
2021-5-5
No worries!
The full documentation would likely suggest —
Int2 = simplify(Int2, 'Steps',500)
Leaving out the 'Steps' name in the name-value pair is a shortened way of specifying it. Other name-value pairs require the name to be specified as well, also if more than one are specified.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Calculus 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!