Está en la página 1de 11

Algebra

CURSO 2008-09 Clase Pr actica No. 2


Herramientas simb olicas Creaci on de variables simb olicas.

(I) INTRODUCCION
Hay dos grandes vertientes tecnol ogicas en el ambito de la inform atica: la num erica y la simb olica. La primera est a sujeta a los errores que conlleva el acortamiento de los n umeros para ser representados internamente en el ordenador. La aritm etica correspondiente es de precisi on nita pero con ella el ingeniero puede resolver la mayor a de sus problemas. La vertiente simb olica permite simular en el ordenador una aritm etica de precisi on innita, como si todos los n umeros reales pudiesen representarse en el soporte f sico del computador. La precisi on se paga con un mayor coste en consumo de tiempo y memoria. Esta es una de las razones que hacen que las herramientas num ericas sigan siendo muy importantes para el trabajo cient co-t ecnico. El objetivo de esta clase es el estudio de los objetos simb olicos y el uso de las correspondientes herramientas Matlab.

(II) INTRODUCCION
Haremos una clasicaci on de los objetos simb olicos en STRING y SYM. La mayor a de las herramientas simb olicas Matlab act uan sobre ambos tipos, pero con desigual ecacia. Un string es una cadena de caracteres que puede corresponder o no a un criterio sint actico. Veamos tres ejemplos. 1) A=manzana, 2) f=x*sin(x), 3) Hj=ty87vsx76. Qu e diferencias hay entre estos ejemplos? Un objeto SYM se crea de varias maneras tal como veremos a lo largo del curso. Las operaciones en un ambiente SYM son en general m as lentas que en el STRING, pero hay algunas que s olo se pueden hacer con SYM, por ejemplo, el c alculo algebraico. expand((x+3*y)*(-2*x+7*y)) ans = -2*x^2+x*y+21*y^2 Una opini on es que la t ecnica de programaci on tiene su mejor aliado en las posibilidades del ambiente STRING.

El CALCULO SIMBOLICO (SYM)


Una variable puede ser declarada previamente SYM mediante el comando SYMS Ejemplos de herramientas: SIMPLIFY, EXPAND, PRETTY. EJEMPLOS : >>syms x >>p1=(x^2-4)/(x^2-1); >>p2=x-2; >>p3=x-1; >>p4=simplify(p1*p3/p2) p4 = (x+2)/(x+1) >> >>expand(p2*p3) ans = x^2-3*x+2 >> >>expand(p3^2) ans = x^2-2*x+1

El comando PRETTY act ua como un embellecedor


>>p5=expand(p2*p3^2) p5 = x^3-4*x^2+5*x-2 >>pretty(p5) 3 x >>pretty(p1/p2) 2 x - 4 ---------------2 (x - 1) (x - 2) - 4 x 2 + 5 x - 2

Ejercicios
1) Calcular o simplicar las siguientes expresiones, utilizando los anteriores comandos simb olicos.

a) (4x7 xy 5 + 6y 2)(9x10 + 54x8y 3 + 34y 5) b) (45x7 29y 3)8 c) (ax + bxy + cy )5 d) (sin(ax) cos(bx))3 e) (ax2 + by 2)(cx + dy )

Evaluaci on de funciones en MAPLE


Se invoca expl citamente al n ucleo Maple (no se utilizan objetos SYM) >>maple(eval(x^3+2*x+5,x=7)) ans = 362 >>maple(eval(-4*x^5+2*x^3+5*x-2,x=7)) ans = -66509 >>maple(dilog(3.456)) ans =-1.6767632955097214694684629269556 DILOG es una de las funciones especiales MAPLE, denida como
x

dilog(x) =
1

log(t) 1t

dt.

Hacer >>mhelp dilog

Evaluaci on de funciones usando herramientas Matlab


Funciones SYM >>syms x >>subs(x^3+2*x+5,x,7) ans = 362 Funciones STRING >>f=x^3+2*x+5; >>x=7; >>f7=eval(f) ans = 362

Herramientas simb olicas para resolver ecuaciones algebraicas. Ejemplos


>>solve(x^2+4=0,x) ans = [ 2*i] [ -2*i] >>solve(x^2+4=12,x) ans = [ 2*2^(1/2)] [ -2*2^(1/2)] La respuesta es exacta en ambos ejemplos. Para obtener salida num erica hacemos: >> numeric(solve(x^2+4=12,x)) ans = 2.828427124746190e+000 -2.828427124746190e+000

Herramientas para resolver ecuaciones algebraicas (cont.)


En lo que sigue la expresi on exp(-x)-x es un objeto string. >>solve(exp(-x)-x=0) % x no es SYM ans =lambertw(1) %funcion especial matlab >>numeric(solve(exp(-x)-x=0)) ans= 5.6714e-001 Detecci on gr aca de la soluci on. >>x=linspace(-1,1,100); >>y=exp(-x)-x; >>plot(x,y)

Ejercicios.
2) Resolver las siguientes ecuaciones a) b) c) d) x 6 3x + 2 = x 4 3 x4 5x + 8 = x2 30 x3 + 2x2 x + 1 = 0 log(x) + 3x = 0 utilizando a) solve(ecuacion,incognita) b) numeric(solve(ecuacion,incognita)) Valorar la utilidad de la respuesta en cada apartado. 3) Resolver la ecuaci on sin(x) x2 + 1 = 0, y comprobar la soluci on evaluando la expresi on en la presunta raiz.

También podría gustarte