Utilizamos cookies propias y de terceros para mejorar la experiencia de navegación, y ofrecer contenidos y publicidad de interés.
Al continuar con la navegación entendemos que se acepta nuestra política de cookies.
Iniciar sesión Cerrar
Correo:
Contraseña:
Entrar
Recordar sesión en este navegador
Iniciar sesiónIniciar sesiónCrear cuentaCrear cuenta

Matlab - Grafica en 3D

  Imprimir  
Vista:
Me gusta: Está pregunta es útil y esta clara
0
No me gusta: Está pregunta no esta clara o no es útil
 
Asunto:

Grafica en 3D

Autor:Jose (3 intervenciones)
Fecha:23/02/2012 08:59:55
Hola a todos, quiero realizar un grafico en 3D sobre el dominio de la superficie [ -2, 2]x[-2,2], les dejo lo realizado:

function grafico
x=-2:0.5:2;
y=-2:0.5:2;
[X,Y]=meshgrid(x,y);
Z= log(1-(X.^2)/4-(Y.^2)/4)/(X.*Y)
surf(X,Y,Z)
end


Por indicarme donde esta mi error, gracias por su ayuda.
Responder
información
Otras secciones de LWP con contenido similar...
Imágen de perfil de Dave
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:

Grafica en 3D

Autor:Dave correa.dave30@gmail.com (819 intervenciones)
Fecha:23/02/2012 16:05:03
Hola José;

El mensaje de error hace referencia de que la matriz Z, tiene elementos complejos y nulos, lo cual hace imposible que se puedan graficar.

x=-2:0.5:2; y=-2:0.5:2; [X,Y]=meshgrid(x,y); Z= log(1-(X.^2)/4-(Y.^2)/4)/(X.*Y) surf(X,Y,Z) Warning: Matrix is singular to working precision. Z = NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi NaN + NaNi ??? Error using ==> surf at 78 X, Y, Z, and C cannot be complex.

Espero que sea de alguna ayuda.

Saludos
Dave Correa
correa.dave30@gmail.com
Servicios de Programación Matlab
http://fismatlab.blogspot.com/
Comentar
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:

Grafica en 3D

Autor:Jose (3 intervenciones)
Fecha:23/02/2012 20:20:57
Hola Dave, gracias por el comentario, no habrá una manera que no realice la división en los puntos que están sobre el eje X e Y, y sobre los puntos que forman la circunferencia de radio 2.
Con algún condicional tal vez, como cuando se gráfica con una variable en los puntos de discontinuidad. Y vuelvo a repetir gracias por tus comentarios.
Comentar
Imágen de perfil de Dave
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:

Grafica en 3D

Autor:Dave correa.dave30@gmail.com (819 intervenciones)
Fecha:23/02/2012 20:58:20
Hola José;

He notado dos cosa en tu programa;

1) Es necesario que coloques un punto en el termino la ultima división.

2) El rango contiene valores negativos, por lo tanto es de esperar que el log de esos valores sean complejos, quizas una opción es que evalues trabajar con otra función.

clc x = -2:0.5:2; y = -2:0.5:2; [X,Y] = meshgrid(x,y); A = (X.^2)/4; B = (Y.^2)/4; C = X.*Y; Z = ( 1 - A - B )./C surf(X,Y,Z) Z = -0.2500 -0.1875 -0.1250 -0.0625 NaN 0.0625 0.1250 0.1875 0.2500 -0.1875 -0.0556 0.1250 0.5000 -Inf -0.5000 -0.1250 0.0556 0.1875 -0.1250 0.1250 0.5000 1.3750 -Inf -1.3750 -0.5000 -0.1250 0.1250 -0.0625 0.5000 1.3750 3.5000 -Inf -3.5000 -1.3750 -0.5000 0.0625 NaN -Inf -Inf -Inf Inf Inf Inf Inf NaN 0.0625 -0.5000 -1.3750 -3.5000 Inf 3.5000 1.3750 0.5000 -0.0625 0.1250 -0.1250 -0.5000 -1.3750 Inf 1.3750 0.5000 0.1250 -0.1250 0.1875 0.0556 -0.1250 -0.5000 Inf 0.5000 0.1250 -0.0556 -0.1875 0.2500 0.1875 0.1250 0.0625 NaN -0.0625 -0.1250 -0.1875 -0.2500


Espero que sea de alguna ayuda.

Saludos
Dave Correa
correa.dave30@gmail.com
Servicios de Programación Matlab
http://fismatlab.blogspot.com/
Comentar
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:

Grafica en 3D

Autor:Jose (3 intervenciones)
Fecha:24/02/2012 11:04:30
Gracias Dave, el programa quedo así:

function grafico
x=-1.4:0.3:1.4;
y=-1.4:0.3:1.4;
[X,Y]=meshgrid(x,y);
Z= log(1-(X.^2)/4-(Y.^2)/4)./(X.*Y)
surf(X,Y,Z)
end

me falto el punto luego de la división, , además de acotar un poco más el dominio de la función,gracias por tu ayuda, Dave.
Comentar
Imágen de perfil de Dave
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:

Grafica en 3D

Autor:Dave correa.dave30@gmail.com (819 intervenciones)
Fecha:24/02/2012 13:18:33
Hola José;

Me da gusto que hayas logrado solucionar tu problema.
Cualquier cosa adicional te recomiendo mis servicios de programación.

Saludos
Dave Correa
correa.dave30@gmail.com
Servicios de Programación Matlab
http://fismatlab.blogspot.com/
Comentar