martes, 8 de julio de 2014

Graficando un "toro" en MATLAB


Un toro es una superficie o sólido de revolución generado por la rotación de una circunferencia alrededor de un eje determinado.

Para nuestro caso utilizaremos la circunferencia de radio 1 y coordenadas de centro (1,2), cuya ecuación en coordenadas cartesianas sería:

$$(x-1)^2+(y-2)^2=1$$

La ecuación anterior está dada de forma implícita, pero para nuestros fines necesitamos la función de la circunferencia de forma explícita, lo cual nos conduce a despejar la variable dependiente "y" y expresar la circunferencia mediante las dos funciones que se muestran enseguida:

$$ \left\{ \begin{array}{cc} y_1=\sqrt{1-(x-1)^2}+2 \\ y_2=-\sqrt{1-(x-1)^2}+2 \end{array} \right. $$

Una vez comprendido lo anterior, podemos centrarnos en la función cylinder nativa de MATLAB que nos permite generar un sólido de revolución mediante la sintaxis:

>> cylinder(fun);

Donde "fun" es una función $f(x)$ y que sirve para establecer el perfil del sólido de revolución. Regresando a nuestro objetivo principal, enseguida se muestra el código necesario para generar la gráfica de un toro, utilizando las dos funciones mencionadas con anterioridad:

x=0:0.1:2;
f1=sqrt(1-(x-1).^2)+2;
f2=-sqrt(1-(x-1).^2)+2;
hold on
cylinder(f1);
cylinder(f2);
daspect([1 1 1]);
view(3);




No hay comentarios.:

Publicar un comentario