Círculos Con Matlab
-
Upload
cristianjpc -
Category
Documents
-
view
213 -
download
0
description
Transcript of Círculos Con Matlab
Círculos con Matlab
La primera vez que tuve que hacerlo (hace 2 años con Matlab 5.3), intuitivamente me imaginé que podía hacerlo mediante una función llamada "circle" o algo así, pero para mi sorpresa, dicha función no existe.
Por qué? Sencillo, el círculo no es una función.
El siguiente paso fue partir la ecuación (x^2 + y^2 = r^2) en "y = sqrt(r^2 - x^2)" y "y = -sqrt(r^2 - x^2)" y graficarlas ambas, el problema fue que matlab cambió el color de la segunda gráfica; fácil, pensé, pues cambio el color de la segunda y listo, pero además, en el punto en que ambas funciones se unen en el eje "y", la gráfica no se ve suave (Es lógico, son dos funciones distintas).
Así que resolví crear mi propia función "circle(h,k,r)".
Cómo se convierte una relación en una función? Con ecuaciones paramétricas (Cambio de coordenadas o como le quieran decir).
cos(o)^2 + sin(o)^2 = 1, multiplicando por "r^2"(r^2)*cos(o)^2 + (r^2)*sin(o)^2 = r^2, igualando a x^2 + y^2 = r^2, tenemos que
x = r*sin(o)y = r*cos(o)
Les recuerdan las coordenadas polares? :)
La función quedó así: (Archivo circle.m)----------------------------------------------------function [x,y]=circle(h,k,r)%Give the values for x and y for plot a CIRCLE.% [X,Y] = CIRCLE(H,K,R)% This Example plot a CIRCLE:% h=input('Type h: ');% k=input('Type k: ');% r=input('Type r: ');% [x,y]=circle(h,k,r);% plot(x,y),grid,axis equal,hold on%%@autor Jairo Corredor%@Date 10/05/02
o=-pi:0.001:pi;x=r*cos(o)+h;y=r*sin(o)+k;