Matlab - Gráfica en MatLab

   
Vista:

Gráfica en MatLab

Publicado por Alfredo (2 intervenciones) el 21/02/2018 23:25:45
Mis saludos, a todos tengo un problema con la parte de gráfica, para el caso se esta programando el Método de Eliminación de Gauss, se esta ingresando las funciones y luego de despejar 'z' usando la función SOLVE este se almacena en una cadena, para luego ser usada en con la función SURF. El problema surge cuando la función SURF trata de crear la gráfica y envía el siguiente mensaje:

Error using surf (line 71)
Z must be a matrix, not a scalar or vector.

Error in despejarEc (line 11)
surf(x,y,fc1);

Si usamos la función directamente el programa corre sin problema, pero lo que se desea es ingresar las funciones y que estas se muestren su gráfica.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
%código
 
 
 clear
f1=input('Ingresar primera ecuación: ','s');
fc1=solve(f1,'z');
disp(fc1);
f1=input('Ingresar primera ecuación: ','s');
fc2=solve(f1,'z');
disp(fc2);
f1=input('Ingresar primera ecuación: ','s');
fc3=solve(f1,'z');
disp(fc3);
fila=input('Ingresar el numero de Filas       : ');
columna=input('Ingresar el numero de Columnas : ');
A(fila,columna)=0;
for f=1:fila
    for c=1:columna
    num=input('ingresar un númro: ');
    A(f,c)=num;
    end
end
 
fila=input('Ingresar el numero de Filas:       ');
columna=input('Ingresar el numero de Columnas: ');
B(fila,columna)=0;
for f=1:fila
    for c=1:columna
    num=input('ingresar un númro:');
    B(f,c)=num;
    end
end
disp('Matrix Funciones');
disp(A);
disp('Matrix Totales');
disp(B);
X=A\B;
disp(X);
[x,y] = meshgrid(-5:0.5:10);
z = fc1; %y - 4*x + 7;
surf(x,y,z);
hold on;
z = -21 - 4*x + 8*y;
surf(x,y,z);
z = (2*x)/5 - y/5 + 3;
surf(x,y,z);

Gracias por su apoyo.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de JOSE JEREMIAS CABALLERO

Gráfica en MatLab

Publicado por JOSE JEREMIAS CABALLERO jjcc94@hotmail.com (4473 intervenciones) el 22/02/2018 14:04:03
1
2
3
4
5
6
clear
f1=input('Ingresar primera ecuación f1=','s');
fc1=solve(f1,'z');
[x,y] = meshgrid(-5:0.5:10);
Z1=inline(fc1,'x','y');
surf(x,y,Z1(x,y));

1
2
>> Untitled5
Ingresar primera ecuación f1=-5*x+12*y-30+5*z


Saludos
JOSE JEREMIAS CABALLERO
Asesor de Proyectos con Matlab
Servicios de programación matlab


http://matlabcaballero.blogspot.com
https://www.facebook.com/matlabcaballero
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
3
Comentar

Gráfica en MatLab

Publicado por Carlos Alfredo (2 intervenciones) el 22/02/2018 15:41:27
Muchas gracias por su respuesta, es clara y muy efectiva.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de pedro

Gráfica en MatLab

Publicado por pedro edyaxita@gmail.com (2 intervenciones) el 12/03/2018 19:46:00
muy buena ayuda bendiciones
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Revisar política de publicidad