24.algebra i

Upload: orlando-offenbach-ortiz

Post on 26-Feb-2018

220 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/25/2019 24.Algebra I

    1/16

    Herramientas computacionales para lamatemtica

    MATLAB: lgebra Simblica

    Vernica Borja Macas

    Junio 2012

    1

  • 7/25/2019 24.Algebra I

    2/16

    MatlabIntroduccin

    2

    MATLAB tiene algunos tipos diferentes de datos, incluidos datosnumricos de precisin doble y sencilla, datos carcter, datoslgicos y datos simblicos, los cuales se almacenan en unavariedad de distintos arreglos.

    La capacidad simblica de MATLAB se basa en el softwareMaple, producido por Waterloo Maple. El motor Maple es partede la caja de herramientas simblica.

    La caja de herramientas simblicas de MATLAB le permitemanipular expresiones simblicas para simplificarlas, resolverlassimblicamente y evaluarlas numricamente.

    Tambin le permite obtener derivadas, integrar y realizarmanipulaciones algebraicas lineales, transformadas de LaPlace ytransformadas de Fourier entre otras cosas.

  • 7/25/2019 24.Algebra I

    3/16

    Matlablgebra simblica

    3

    La matemtica simblica se usa regularmente en las clases dematemticas, ingeniera y ciencias. Con frecuencia espreferible manipular las ecuaciones simblicamente antes desustituir valores para las variables. Por ejemplo, considere laecuacin

    Cuando la observa por primera vez, parece complicada. Sin

    embargo, si expande se hace evidente que puede simplificar

    2 2

    2

    2( 3)

    6 9

    xy

    x x

    +=

    + +

    2 2 2

    2 2

    2( 3) 2( 6 9)2

    6 9 6 9

    x x xy

    x x x x

    + + += = =

    + + + +

  • 7/25/2019 24.Algebra I

    4/16

    Matlablgebra simblica

    4

    Al realizar esta simplificacin es posible perder algo deinformacin.

    Las capacidades simblicas de MATLAB le permiten realizaresta simplificacin o manipular el numerador y denominador

    por separado.

    2 2

    22(( 3) 3) 0 lo cual est indefinido

    ( 3) 6( 3) 9 0y

    += =

    + +

    para 3 tenemos que:x =

  • 7/25/2019 24.Algebra I

    5/16

    MatlabCreacin de variables simblicas

    5

    Las variables simblicas simples se pueden crear en dosformas. Por ejemplo, para crear la variable simblica x,escriba o

    x=sym('x') o syms x

    Ambas tcnicas hacen al carcter 'x' igual a la variablesimblica x.

    Se pueden crear variables ms complicadas usando las

    variables simblicas existentes, como en la expresiny = 2*(x+3)^2/(x^2+6*x+9)

  • 7/25/2019 24.Algebra I

    6/16

    MatlabVariables simblicas

    6

    Podemos declarar varias variables en un solo comando:syms a b

    Es posible manipular los objetos simblicos como es habitualen matemticas:

    >> a+ a + bans =

    2*a + b

    Tambin es posible crear variables simblicas con valores de

    ms de un carcter:

    a = sym('alpha')

    Nota: En el Symbolic Math Toolbox, pi es una palabrareservada.

  • 7/25/2019 24.Algebra I

    7/16

    MatlabExpresiones simblicas

    7

    Supongamos que deseamos usar una variablesimblica para representar la razn dorada:>> rho = sym('(1 + sqrt(5))/2');

    Ahora podemos realizar las operaciones que deseemos conrho.

    >> f = rho^2 - rho 1f =

    (5^(1/2)/2 + 1/2)^2 - 5^(1/2)/2 - 3/2 Veamos como estudiar la funcin cuadrtica f = ax2 + bx + c.

    Una primera opcin sera definirla como:>> f = sym('a*x^2 + b*x + c'); Pero as no es posible realizar sustituciones, lo adecuado es:

    >> syms a b c x>> f = a*x^2 + b*x + c;

    1 5

    2

    +

    =

  • 7/25/2019 24.Algebra I

    8/16

    MatlabMatrices de variables simblicas

    8

    La creacin y manipulacin de matrices de variablessimblicas es anloga a la de matrices numricas, p/e:

    Ejemplo:

    >> syms a b c;

    >> A = [a b c; c a b; b c a]A =

    [ a, b, c][ c, a, b]

    [ b, c, a]sum(A(1,:))ans =

    a + b + c

  • 7/25/2019 24.Algebra I

    9/16

    MatlabEncontrar variables simblicas en expresiones y matrices

    9

    Para determinar las variables simblicas que estan en unaexpresin se emplea el comando symvar:

    Ejemplo:

    >> syms a b n t x z;>> f = x^n;>> g = sin(a*t + b);>> symvar(f)ans =

    [ n, x]>> symvar(g)ans =

    [ a, b, t]

  • 7/25/2019 24.Algebra I

    10/16

    MatlabNmeros simblicos

    10

    Es posible convertir un nmero en un objeto simblico, p/e:

    Ejemplo:

    >> a1 = sym('2')>> a2 = sym(2)

    >> sqrt(a1)ans =

    1.4142a = sqrt(a2)a =

    2^(1/2)double(a)ans =

    1.4142

  • 7/25/2019 24.Algebra I

    11/16

    MatlabNmeros simblicos

    11

    Ejemplo:>> sym(2)/sym(5)ans =

    2/5>> sym(2/5)ans =

    2/5>> 2/5 + 1/3ans =

    0.7333>> sym(2/5) + sym(1/3)ans =

    11/15

  • 7/25/2019 24.Algebra I

    12/16

    MatlabImpresin de expresiones simblicas

    12

    Las funcin pretty. Imprime en un formato agradable las expresiones:

    Ejemplo:

    >> syms x>> f = x^3 - 6*x^2 + 11*x - 6;>> g = (x - 1)*(x - 2)*(x - 3);>> h = -6 + (11 + (-6 + x)*x)*x;>> pretty(f)

    3 2x - 6 x + 11 x - 6

    >> pretty(g);(x - 1) (x - 2) (x - 3)

    >> pretty(h);x (x (x - 6) + 11) 6

  • 7/25/2019 24.Algebra I

    13/16

    MatlabSimplificar de expresiones simblicas

    13

    El Symbolic Math Toolbox pose un conjunto de funcionespara simplificar expresiones simblicas. Veamos la funcinsimplify. Por ejemplo previamente ya habamos realizadooperaciones con la expresin rho:

    Ejemplo:>> rho = sym('(1 + sqrt(5))/2');>> f = rho^2 - rho 1f =

    (5^(1/2)/2 + 1/2)^2 - 5^(1/2)/2 - 3/2>> simplify(f)ans =

    0

  • 7/25/2019 24.Algebra I

    14/16

    MatlabSimplificar de expresiones simblicas

    14

    Veamos las funciones expand, factor y horner.

    Ejemplo:

    >> syms x;>> f=(x^2- 1)*(x^4 + x^3 + x^2 + x + 1)*(x^4 - x^3 + x^2 - x + 1);>> expand(f)

    ans =x^10 1

    >> g = x^3 + 6*x^2 + 11*x + 6;>> factor(g)ans =

    (x + 3)*(x + 2)*(x + 1)>> h = x^5 + x^4 + x^3 + x^2 + x;>> horner(h)ans =

    x*(x*(x*(x*(x + 1) + 1) + 1) + 1)

  • 7/25/2019 24.Algebra I

    15/16

    MatlabSimplificar de expresiones simblicas

    15

    Veamos la funcin collect.

    Ejemplo:

    >> syms x y;>> R1 = collect((exp(x)+x)*(x+2))R1 =

    x^2 + (exp(x) + 2)*x + 2*exp(x)

    >> R2 = collect((x+y)*(x^2+y^2+1), y)R2 =

    y^3 + x*y^2 + (x^2 + 1)*y + x*(x^2 + 1)

    >> R3 = collect([(x+1)*(y+1),x+y])R3 =

    [ y + x*(y + 1) + 1, x + y]

  • 7/25/2019 24.Algebra I

    16/16

    MatlabSimplificar de expresiones simblicas

    16

    La funcin simple trata de reescribir la expresin empleandola menor cantidad de caracteres.

    Ejemplo:

    >> syms x;

    >> f = cos(x)^2 + sin(x)^2;>> f = simple(f)f =

    1

    >> g = cos(3*acos(x));>> g = simple(g)g =

    4*x^3 - 3*x

    syms x; f = cos(x) + i*sin(x); simple(f)