フィルターのクリア

double integration of parametric function

3 ビュー (過去 30 日間)
Danny Van Elsen
Danny Van Elsen 2020 年 4 月 10 日
コメント済み: David Goodmanson 2020 年 4 月 17 日
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.

採用された回答

David Goodmanson
David Goodmanson 2020 年 4 月 15 日
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 件のコメント
Danny Van Elsen
Danny Van Elsen 2020 年 4 月 16 日
編集済み: Danny Van Elsen 2020 年 4 月 16 日
hi David, thanks for your answer!
Indeed, I have the same solution as
(manual)
r = cos(v)i + u*sin(v)j + vk
dr/du = cos(v)i + sin(v)j
dr/dv = u*sin(v)i + u*cos(v)j + k
||dr/du X dr/dv|| = sqrt(sin(v)^2 + cos(v)^2 + u^2)
which then leads to the double integral
(matlab)
fun = @(u,v) sqrt(1 + u.^2)
q = integral2(fun, 0, 5, 0, 4*pi)
q = 174.7199
I can recognize the same elements in your answer.
But somehow, and probably naively, I was expecting there to be a function taking the r-vector and the limits as input, and then "just" calculate the area. In one line as it were. So this is probably not the case?
David Goodmanson
David Goodmanson 2020 年 4 月 17 日
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.

サインインしてコメントする。

その他の回答 (1 件)

Rajat Tewari
Rajat Tewari 2020 年 4 月 13 日
You can refer to integral2 function of MATLAB to calculate the double integraltion and area.

カテゴリ

Help Center および File ExchangeCalculus についてさらに検索

製品


リリース

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by