jueves, 15 de diciembre de 2011

COMO GRAFICAR EN MATLAB

MATLAB tiene un gran potencial de herramientas gráficas. Se pueden dibujar los valores de un vector frente a otro (de la misma longitud):

>>x=pi*(-1:0.1:1);
>>y=x.*sin(x);
>>plot(x,y) % Por defecto une los puntos (x(i),y(i)) mediante una poligonal

Como se ve, con pocos puntos la gráfica tiene un aspecto demasiado lineal a trozos. Para "engañar" al ojo, basta tomar más puntos.
>>x=pi*(-1:0.01:1);
>>y=x.*sin(x);
>>plot(x,y)

También pueden dibujarse funciones. Así:
>>fplot('sin(x)',[0 2*pi]) % Dibuja la función seno en el intervalo [0,2*pi]

>>hold on % Mantiene en la ventana gráfica los dibujos anteriores
>>fplot('cos(x)',[0 2*pi]) % Dibuja sobre la gráfica anterior la función cos(x)

>>hold off % Con esto olvida los dibujos anteriores
% y dibuja en una ventana nueva
>>fplot('x^2*sin(1/x)',[-0.05 0.05]) % Dibuja la función x^2*sin(1/x)

curvas en paramétricas,
>>ezplot('sin(t)','cos(t)',[0 pi])

e implícitas
>>ezplot('x^2 - y^2 - 1')


También permite dibujar superficies. La forma más sencilla es mediante el comando ezsurf,

>>ezsurf('sin(x*y)',[-2 2 -2 2])

Bibliografía:
http://www.mat.ucm.es/~jair/matlab/notas.htm










jueves, 8 de diciembre de 2011

SISTEMAS DE ECUACIONES LINEALES


Sistemas de Ecuaciones Lineales

Para resolver un sistema de ecuaciones lineales AX = B de n ecuaciones con m (n puede ser igual a m) incógnitas, se introduce la matriz A del sistema y el vector columna B de los términos independientes, no es preciso considerar el vector columna X de las incógnitas (x1, x2, x3).

Ejemplo 2.1
consideremos el siguiente sistema:
Observación. El operador matricial de MATLAB "\" división izquierda equivale a la solución de sistemas lineales mediante X = inv(A)*B. este operador es más poderoso de lo que parece, puesto que, suministra la solución aunque la matriz A no tenga inversa.
MATLAB, proporciona la solución gráfica de un sistema de ecuaciones lineales, mediante los comandos siguientes:



Ejemplo 2.2

Consideremos, ahora un sistema lineal incompatible.

x + z = 1

x – y + 3z = -3

x + y – z = 1

>> A = [1 0 1; 1 -1 3; 1 1 -1]
A =
1 0 1
1 -1 3
1 1 -1
>> B = [1; -3; 1]
B =
1
-3
1
>> X = A\B
Warning: Matrix is singular to working precision.
X =
Inf
Inf
Inf

Ejemplo 2.3
Consideremos, ahora un sistema lineal compatible indeterminado

Bibliografía:
http://www.monografias.com/trabajos16/algebra-lineal/algebra-lineal.shtml



jueves, 1 de diciembre de 2011

OPERACIONES DE POLINOMIOS MATLAB


Operaciones: Resumen
Ø  Se representan usando vectores
Ø  En algunos casos las operaciones de vectores resuelven correctamente las operaciones con polinomios
Ø  Suma (y resta)
Ø  Producto de un polinomio por un escalar

EN OTROS CASOS HAY FUNCIONES ESPECÍFICAS:

Ø  Producto (y cociente) entre polinomios
Ø  Raíces (construcción de polinomio)
Ø  Evaluar polinomios
Ø  Derivar
Ø  Integrar


OPERACIONES: SUMA Y RESTA

» [ 1 1 1 1 ] + [ 3 2 1 0 ]
ans =
4 3 2 1 % = 4x3 + 3x2 + 2x + 1

¡Ambas representaciones deben ser de
igual largo (cantidad de elementos)!

% (x + 1) + (3x3 + 2x2 + x)
» [ 0 0 1 1 ] + [ 3 2 1 0 ]
ans =
3 2 2 1 % la resta es análoga

OPERACIONES: PRODUCTO
Polinomio x escalar
» [ 3 2 1 0 ] * 3 % (3x3 + 2x2 + x) 3
ans =
9 6 3 0 % 9x3 + 6x2 + 3x
Polinomio xpolinomio Ej: (x + 1)(3x3 + 2x2 + x)
» [ 0 0 1 1 ] * [ 3 2 1 0 ]
ans =
1 % ¡Este resultado no es correcto!


OPERACIONES CON POLINOMIOS

Los polinomios se representan en Matlab como vectores _la. Por ejemplo, el polinomio

3s3 􀀀 5s2 + 7s + 3 se representa por
>> p=[3 -5 7 3]

Las raices de un polinomio se hallan mediante la función roots:
>> r=roots(p)

El producto de dos polinomios se realiza a través de la consolación de los vectores de sus cocientes, mediante la función conv. Por ejemplo,

>> p1=[-1 -3 3 4];
>> p2=[1 2 4 0];
>> p=conv(p1,p2);

Para la división se usa la deconvolucion. Mediante la función deconv se obtiene el cociente q y el resto r de la división.
>> [c,r]=deconv(p,p1);

La función polyval sirve para hallar el valor de un polinomio. Si el parámetro que le pasamos es un vector, calcula otro vector con los valores del polinomio para cada uno de los del vector.

La función polyfit sirve para hacer ajustes polinomios de una secuencia de datos dada por dos vectores X e Y. Se puede elegir el grado del polinomio. En el siguiente ejemplo se utilizan estas dos funciones:

>> x=[0:10];
>> y=rand(x);
>> plot(x,y)
>> p=polyfit(x,y,3); % Elegimos grado 3
>> z=polyval(p,x);
>> hold
>> plot(x,z)


CONVERSIÓN DE POLINOMIOS

Las ordenes poly2sym y sym2poly sirven, respectivamente, para convertir un polinomio expresado en forma numérica (vector de cocientes) en su expresión simbólica, y viceversa.

El siguiente ejemplo ilustrara su utilización.

>> syms x
>> p = [1 2 3 4 5]
>> px = poly2sym(p,x)
px = x^4+2*x^3+3*x^2+4*x+5
>> sym2poly(px)
ans =
1 2 3 4 5