double integration of parametric function
16 views (last 30 days)
Show older comments
Danny Van Elsen
on 10 Apr 2020
Commented: David Goodmanson
on 17 Apr 2020
hello all,
I know how to plot a parametric surface, for example as in
syms u v
x = u * cos(v);
y = u * sin(v);
z = v;
fsurf(x, y, z, [0 5 0 4*pi])
but can someone point me to the appropriate function for the double integration that calculates the surface area, for example over the interval
0 <= u <= 5
0 <= v <= 4*pi
of the example above?
regards, Danny.
0 Comments
Accepted Answer
David Goodmanson
on 15 Apr 2020
Hi Danny,
You can find the surface area by finding the vectors Du and Dv that are parallel to the surface when you vary u and v respectively. Taking their cross product gives the the normal unit vector n, times the area element dS of a parallelogram whose area is proportional to dudv. Integrating the area elements give the total area. Since the area element does not depend on v, you can multiply by 4*pi and just do the u integral.
This procedure is analogous to finding the Jacobian. It's almost easier to do this by hand than to use syms, but
syms u v a real
x = u * cos(v);
y = u * sin(v);
z = a*v; % in case you want to vary the pitch
zplot = v;
fsurf(x, y, zplot, [0 5 0 4*pi])
Du = diff([x,y,z],u) % Du is diff() times du
Dv = diff([x,y,z],v) % Dv is diff() times dv
dS = simplify(norm(cross(Du,Dv)))
Area = 4*pi*int(dS,0,5)
double(subs(Area,a,1))
% results
Du = [ cos(v), sin(v), 0]
Dv = [ -u*sin(v), u*cos(v), a]
dS = (a^2 + u^2)^(1/2)
Area = 4*pi*((a^2*log((a^2 + 25)^(1/2) + 5))/2 - (a^2*log(a^2))/4 + (5*(a^2 + 25)^(1/2))/2)
ans = 174.7199
2 Comments
David Goodmanson
on 17 Apr 2020
Hi Danny, I don't think so, although I would be happy to be proved wrong. For a volume integral you can at least get the Jacobian basically in one line with symbolic variables.
More Answers (1)
See Also
Categories
Find more on Surface and Mesh Plots 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!