Effacer les filtres
Effacer les filtres

*Problem Find area surface *

4 vues (au cours des 30 derniers jours)
justin  Taylor
justin Taylor le 18 Déc 2011
x = ( 1-u )(3+cos v)cos(2pi*u)
y = ( 1-u )(3+cos v)sin(2pi*u)
z = 4u + ( 1-u )sinv.
D={(u,v)|0<=u<=1,0<=v<=2pi}
mycode
{ syms u v;
x = (1-u).*(3+cos(v)).*cos(pi*u);
y = (1-u).*(3+cos(v)).*sin(pi*u);
z = 8*u+( 1-u ).*sin(v);
F=[x,y,z];
ru=diff(F,[u]);
rv=diff(F,[v]);
ruv=ru.*rv;
druv=sqrt(ruv(1).^2+ruv(2).^2+ruv(3).^2);
S=int(int(druv,u,0,1),v,0,2*pi)
}

Réponse acceptée

bym
bym le 18 Déc 2011
you are going to need:
a =feval(symengine,'linalg::crossProduct',ru,rv)% .* is not cross product!
b =feval(symengine,'norm',a,2)
once you get the integrand (b) then I would suggest you evaluate it numerically rather than symbolically. You can use
MatlabFunction()
to turn it into a function to pass to
dblquad
  7 commentaires
bym
bym le 19 Déc 2011
the expression is for the _cross_ product not _dot_ product.
Walter Roberson
Walter Roberson le 20 Déc 2011
Some day I will learn, "Never feed them after Midnight". ;-)

Connectez-vous pour commenter.

Plus de réponses (0)

Tags

Aucun tag saisi pour le moment.

Community Treasure Hunt

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

Start Hunting!

Translated by