Está en la página 1de 18

e contorno.

Figura 1.2.8

Otros comandos útiles: contour (W, val) siendo val un vector de valores para
las isolíneas a dibujar.

contour (u,v,W,20) se utilizan u y v para dar valores a los ejes de coordenadas.

contour (W,20, 'r--') se puede especificar el tipo de línea como en la función plot.

contourf (W, val) analoga a contour(). Pero rellenando el espacio entre líneas.

1.2.7 Color en gráficos en 3D: Función colormap

Un mapa de colores (colormap) se define como una matriz de tres columnas, cada
una de las cuales contiene un valor entre 0 y 1, que representa la intensidad de
uno de los colores fundamentales: R (red o rojo), G (greeno verde) y B (blue o
azul).

En esta tabla se puede visualizar los colores en Matlab con su símbolo y su


representación en modo binario.

negro k [0 0 1] Azul B [0 0 1]

blanco w [1 1 1] Amarillo Y [1 1 0]

rojo r [1 0 0] Magenta M [1 0 1]

verde g [0 1 0]

Además se pueden crear mapas de color a nuestra conveniencia. Por ejemplo:

M = [0 0 0; 1 0 0; 0 1 0; 0 0 1; 1 1 0]

donde M es un mapa de color que tiene negro, rojo, verde, azul y amarillo.

De este modo:

colormap(M) instala la matriz M como el mapa de color a a utilizar en la figura


atual. Si no hay ninguna figura activa, sustituye al mapa de color anterior para las
siguientes figuras que se vayan a dibujar.

Para más comodidad, Matlab dispone de una serie de mapas de colores


predefinidos, que se pueden imponer mediante:

colormap(mapa)

Donde 'mapa' puede tomar uno de los valores siguientes:

hsv La escala por defecto (hue- saturation-


value)
cool Gama de colores entre cyan y magneta
hot Gama de colores entre rojo oscuro y
amarillo
gray Gama de colores grises
copper Gama de colores cobrizos
pink Gama de colores rosados
autumn Colores entre el rojo y el amarillo
spring Colores entre el magneta y el amarillo
winter Colores entre el azul y verde
summer Colores ente el verde y amarillo

Figura 1.2.9
figura1.2.10

1.2.8 Ejes y puntos de vista en 3D: Funciones axis y view


El comando que especifica el punto de vista mediante la definición del acimut y
elevación con respecto al origen de coordenadas es view.

Acimut es un Angulo polar en el plano


xy con valores positivos indicando el giro
antihorario desde el punto de vista del
observador (viewpoint).

La elevacion es el Angulo por encima


(Angulo positivo) o por debajo (Angulo
negativo) al plano xy.

La funciones surf y mesh dibuja en


perspectiva, la localización del punto de
vista u observador se puede realizar
mediante el comando:

view(AZ, EL)

Donde AZ es el azimut o rotación horizontal y EL es la elevación vertical, ambos


argumentos dados en grados sexagesimales.

Figura 1.1

ANEXOS

Figura 1.1close;
x = 0 : pi/25: 6*pi;

y= sin(x);

z= cos(x);

plot(x,y,x,z);

Figura 1.2

x = 0 : pi/100: 2*pi;

y= sin(x);

plot (x,y);

title('Gráfica de la función seno');

Figura 1.3

x = 0 : pi/100: 2*pi;

y= sin(x);

plot (x,y);

title('Gráfica de la función seno');

xlabel('x');

ylabel('sin(x)');

Figura 1.4

x = 0 : pi/100: 2*pi;

y= sin(x);

plot (x,y);
title('Gráfica de la función seno');

xlabel('x');

ylabel('sin(x)');

grid;

Figura 1.5

x = 0 : pi/100: 2*pi;

y= sin(x);

plot (x,y);

title('Gráfica de la función seno');

xlabel('x');

ylabel('sin(x)');

grid;

legend 'sin(x)';

Figura 1.2.1

clear, clf;

x= [-2 :0.2: 2];

y= [-2 :0.2: 2];

[X,Y] = meshgrid(x,y);

Z = X.*exp(-X.^2 - Y.^2);

subplot(1,2,1);

mesh(X,Y,Z), title('Gráfica mesh');

xlabel('eje x'), ylabel('eje y'), zlabel ('eje z');

subplot(1,2,2);
surf(X,Y,Z), title('Gráfica de superficie');

xlabel('eje x'), ylabel('eje y'), zlabel ('eje z');

Figura 1.2.2

clear, clf;

alpha=0:pi/80:10*pi;

z=alpha/10;

x=z/(10*pi)+z.*cos(alpha);

y=z/(10*pi)+z.*sin(alpha);

plot3(x,y,z);

Figura 1.2.3

x = linspace(0,10*pi);

plot3(x,sin(x),cos(x),'x-');

title('Helice');

xlabel('x'), ylabel('sen(x)');

zlabel('cos(x)');

Figura 1.2.4

clear, clf;

x= [-2 :0.2: 2];

y= [-2 :0.2: 2];

[X,Y] = meshgrid(x,y);

Z = X.*exp(-X.^2 - Y.^2);

subplot(1,2,1);
mesh(X,Y,Z), title('Gráfica mesh');

xlabel('eje x'), ylabel('eje y'), zlabel ('eje z');

subplot(1,2,2);

surf(X,Y,Z), title('Gráfica de superficie');

xlabel('eje x'), ylabel('eje y'), zlabel ('eje z');

Figura 1.2.5

x = -10:0.5:10;

y = x;

[X,Y] = meshgrid(x,y);

Z = sin(sqrt(X.^2 + Y.^2)) ./ sqrt(X.^2 + Y.^2 + 0.1);

contour(X,Y,Z);

colorbar;

Figura 1.2.6

x = -10:0.5:10;

y = x;

[X,Y] = meshgrid(x,y);

Z = sin(sqrt(X.^2 + Y.^2)) ./ sqrt(X.^2 + Y.^2 + 0.1);

contour(X,Y,Z);

colorbar;

contour3(X,Y,Z);

colorbar;

Figura 1.2.7
ax1 = subplot(2,1,1);

surf(peaks(15))

colormap(ax1, autumn)

ax2 = subplot(2,1,2);

surf(peaks(15))

colormap(ax2, winter)

Figura 2

A= randi(100,1,16)

u= randi(15,1,16)

g= randi(15,1,16)

Ep = 8.8500e-12

k= randi(50,1,16)

sumador=0

%u=((v*sqrt(A*Ep*(27*A*Ep*V^2+8*g^3*k)))/(43^(2/3)*k) -
(4*g^3*k+27*A*Ep*v^2)/(108*k))^(1/3) + (g^2)/(9*
((v*sqrt(A*Ep*v^2+8*g^3*k))/(43^(3/2)*k) - (4*g^3*k+27*A*Ep*v^2)/(108*k))^(1/3)) +
(2/3)*g %

for i = 0:1:16

v= linspace (0, 16, 1200)

sumador=sumador +
((v*sqrt(A[i]*Ep*(27*A*Ep*v^2+8*(g[i])^3*k[i])))/(43^(2/3)*k[i]) - (4*(g[i])^3*k[i]
+27*A[i]*Ep*(v)^2)/(108*k[i]))^(1/3) + ((g[i])^2)/(9*
((v*sqrt(A[i]*Ep*(v)^2+8*(g[i])^3*k[i]))/(43^(3/2)*k[i]) - (4*(g[i])^3*k[i]
+27*A[i]*Ep*(v)^2)/(108*k[i]))^(1/3)) + (2/3)*g[i]

if (u = (2/3)*g[i] )
break

plot (v, u))

grid on

end

Problema #1

x_inicial=1;
y_inicial=1;

matriz_x=0:0.01:x_inicial; %arreglo con numeros entre 0 y 1 por la grafica


matriz_y=0:0.01:y_inicial;

pot_x_inicial=1;
pot_y_inicial=-1;

[x,y]=meshgrid(matriz_x,matriz_y); %matriz de numeros por cada posicion dada

funct_Potencial= pot_x_inicial*x+pot_y_inicial*y; %superposicion para el voltaje

%contour(x,y,V); %Dibujo el contorno de voltaje

C=0.05; %valor que permite cambiar la escala del grafico

for i=2:4:101
for j=2:4:101
quiver(matriz_x(i),matriz_y(j),C*(-pot_x_inicial)/sqrt((pot_x_inicial^2)+
(pot_y_inicial^2)),(-pot_y_inicial)*C/sqrt((pot_x_inicial^2)+(pot_y_inicial^2)),'b')

%vectores unitarios en el campo electrico en el espacio pedido


hold on
end
end
grid on % cuadriculas
axis ([0 x_inicial 0 y_inicial]) %se ubican los ejes

Problema #2
clc;
%%%%%%%%%%%%%%%%%%%%%%%
posicion1_x=0:0.001:0.04; %Genero un arreglo con numeros entre 0 y 1
posicion1_y=0:0.001:0.02;

[x,y]=meshgrid(posicion1_x,posicion1_y); %matriz de numeros por cada posicion

pot1=1250*y; %potencial de la primera carga

hold on

%contour(x,y,pot1);%Dibujo el contorno de voltaje

posicion1_x=0:0.001:0.02; %Genero un arreglo con numeros entre 0 y 1 por la


grafica
posicion1_y=0.02:0.001:0.04;

[x,y]=meshgrid(posicion1_x,posicion1_y); %matriz de numeros por cada posicion

pot2=1250*y+5000*x; %potencial de la segunda carga

%contour(x,y,pot2);%Dibujo el contorno de voltaje

posicion1_x=0.02:0.001:0.04;
posicion1_y=0.02:0.001:0.04;

[x,y]=meshgrid(posicion1_x,posicion1_y);

pot3=1250*y-5000*x+200; %potencial de la tercera carga

%contour(x,y,pot3); %Dibujo el contorno de voltaje

hold off

grid on

posicion1_x=0:0.0005:0.04; %Genero un arreglo con numeros entre 0 y 1 por la


grafica
posicion1_y=0:0.0005:0.04;

C=0.002; %Constante de comprension para mejorar la grafica


for i=1:4:81
for j=1:4:81

if (posicion1_x(i)<=0.04 & posicion1_x(i)>=0 & posicion1_y(j)>=0 &


posicion1_y(j)<0.02)
quiver(posicion1_x(i),posicion1_y(j),0,-1*C,'b')%dibujamos los vectores
unitarios del campo electrico en el espacio dado
end

if (posicion1_x(i)<=0.02 & posicion1_x(i)>=0 & posicion1_y(j)>=0.02 &


posicion1_y(j)<=0.04)
quiver(posicion1_x(i),posicion1_y(j),-4*C/sqrt(17),-1*C/sqrt(17),'b')
%dibujamos los vectores unitarios del campo electrico en el espacio pedido
end

if (posicion1_x(i)<=0.04 & posicion1_x(i)>=0.02 & posicion1_y(j)>=0.02 &


posicion1_y(j)<=0.04)
quiver(posicion1_x(i),posicion1_y(j),4*C/sqrt(17),-1*C/sqrt(17),'b')
%dibujamos los vectores unitarios del campo electrico en el espacio pedido
end

hold on %Mantenemos la misma ventana de grafico


end
end

grid on

axis ([0 0.04 0 0.04]) %ubicamos los ejes que pide el problema

Problema #3

yo=1;
zo=10;
corriente=2;
r=yo;
f=@(z) (corriente *yo/(4*pi))./((z).^2+(r).^2).^(3/2);
H=quad(f,0,zo) %resuelve la integral desde 0 hasta z0
x1=-5:0.1:5; %Genero un arreglo con numeros entre 0 y 1 por la grafica
y1=-5:0.1:5;
C=1e6;
B=(4e-7*pi)*H
for corriente=1:4:101
for j=1:4:101
r=sqrt((x1(i))^2+(y1(j))^2);
f=@(z) (corriente*yo/(4*pi))./((z).^2+(r).^2).^(3/2);
B=(4e-7*pi)*quad(f,0,zo);
Bx=-B*(y1(j)/r);
By=B*(x1(i)/r);
quiver(x1(i),y1(j),Bx*C,By*C,'b')%dibujamos los vectores unitarios del campo
electrico en el espacio pedido
hold on %Mantenemos la misma ventana de grafico
end
end
grid on
axis ([-5 5 -5 5]) %ponemos la solucion al problema

Problema #5

corriente=5;
R_in=0.015; %radio interno
R_out=0.025; %radio externo

vueltas=200;

permeabilidad=4e-7*pi;

x1=-0.04:0.001:0.04; %Genero un arreglo con numeros entre 0 y 1 por la grafica


y1=-0.04:0.001:0.04;

C=1;

for i=1:4:81
for j=1:4:81
distancia=sqrt((x1(i))^2+(y1(j))^2);
B=permeabilidad*vueltas*corriente/(2*pi*distancia);
Bx=-B*(y1(j)/distancia);
By=B*(x1(i)/distancia);
if (distancia>=R_in & distancia<=R_out)
quiver(x1(i),y1(j),Bx*C,By*C,'b')%dibujamos los vectores unitarios del
campo electrico en el espacio pedido
end
hold on %Mantenemos la misma ventana de grafico
end
end
Problema #6

clc;
syms I phi z

vueltas=100;

permeabilidad=4e-7*pi;

r_sol=0.05;

z1=-0.25;

z2=0.25;

L=z2-z1;

Area=pi*(r_sol^2)

dl=r_sol*[-sin(phi) cos(phi) 0]

Ur=[-cos(phi) -sin(phi) z/sqrt((z^2)+(r_sol^2))]

hipotenusa=sqrt((z^2)+(r_sol^2))

B=(permeabilidad*I/(4*pi))*int(cross(dl,Ur)/(hipotenusa^2),phi,0,2*pi)

Bt=int(B*N/L,z,z1,z2)

inductancia=vpa(Bt(3)*Area*vueltas/I,10)
Discusión

¿Pregunta de discusión?

¿Hubo limitaciones de estudio para poder programar y resolver los ejercicios?

¿Usaría un programa más fácil para poder resolver los temas propuestos?

¿Las librerías a usar para resolver los temas propuestos fueron las correctas?

Según nuestro datos examinaremos e interpretaremos los resultados obtenidos,


dadas las variables que hemos puesto en nuestro programa de Matlab nos
podemos dar cuenta el grado de dificultad que presenta programar, podríamos
calificar los resultados como una programa exacto que si se logra programar de
la manera correcta el programa se ejecutará correctamente y dará resultados
exactos, me gustaría sugerir otros programas como scilab para poder realizar
otros cálculos con el fin de comparar los resultados obtenidos.

CONCLUSIONES

Gracias al estudio básico de cómo crear graficas en 2D y 3D podemos concluir


que el trabajo dio el resultado que esperábamos ya que con los ejemplos fáciles
de que logramos conseguir se podrá dar cuenta que tiene un grado de dificultad
medio también logramos descubrir que la función plot es muy importante ya que
esa función prácticamente es la que realiza el grafico en el software.
Recomendaciones

Primero que nada analizar el problema es lo primero que se debe de hacer para
de esa manera no tener problemas al escribir las líneas de códigos y al correr el
programa no se interrumpa por un error de sintaxis
Segundo lo que se logró explicar en este reporte fue prácticamente algo superficial
de cómo se deben realizar las gráficas en 3Dy 2D pero para mayor énfasis a lo
que respectan las gráficas se recomienda leer el libro en donde te explique con
más detalles lo que es en sí Matlab y su capacidad de realizar gráficas.
BIBLIOGRAFÍA

Essential-MATLAB-for-Engineers-and-Scientists-Brian-D.-Hahn-Daniel-T.-Valentine

http://www.mathworks.com/academia/?s_tid=gn_acad

http://www.formacionprofesional.info/descarga-manuales-y-tutoriales-de-matlab/

También podría gustarte