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.
Gracias por su apoyo.
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
0