Documente Academic
Documente Profesional
Documente Cultură
Pueden crearse objetos simb olicos como sigue: )) syms x real %crea la variable simb olica real x. )) f=3*x2+2*x+1 %crea la variable simb olica f. 18
DE MATEMATICAS AMPLIACION
Pr actica 3
En la instrucci on anterior la variable x tiene el sentido de variable independiente habitual en matem aticas. Como veremos posteriormente, f se puede integrar o derivar respecto a x. )) syms a b; %crea las variables simb olicas a y b )) c=sym(1/3) %almacena en c la constante simb olica 1/3 )) p=sym(pi) %almacena en p la constante simb olica pi Las instrucciones anteriores pueden escribirse como c=sym(1/3) o p=sym(pi) El comando sym tambi en puede aplicarse a una matriz: )) A=[1 2/3;pi sqrt(2)] )) A=sym(A)
3.3. Operaciones
Con las variables simb olicas pueden realizarse operaciones elementales del mismo modo que con las variables num ericas utilizando los operadores habituales. Adem as, hay otros co mandos para realizar operaciones simb olicamente. Una lista de estos puede obtenerse tecleando help symbolic. Conviene advertir que hay varios comandos que act uan tanto sobre variables simb olicas como sobre variables num ericas si bien, como es l ogico, operan de modo diferente. Funci on collect factor expand pretty Salida agrupa t erminos. factoriza la expresi on; si se aplica a un n umero entero, lo descompone en factores. multiplica factores. presentaci on m as legible.
Ejemplo 15 Agr upese la expresi on xy + sen(x)y y3 x + x2 y2 + y3 sen(x) en potencias de x y de y. )) )) )) )) )) )) )) syms x y p=x*y+sin(x)*y-y3*x+x2*y2+y3*sin(x); pretty(p) q=collect(p) pretty(q) r=collect(p,y) pretty(r)
19
DE MATEMATICAS AMPLIACION
Pr actica 3
)) )) )) )) ))
syms z p=(z-i)*(z-1+i)*(z-3i) q=expand(p) collect(q) pretty(ans) Si se quiere volver a la expresi on primitiva basta escribir
)) factor(q)
%factoriza el polinomio.
Ejemplo 17 Simplique la expresi on sen2 (x) + (1 cos(x))2 . )) p=sin(x)2+(1-cos(x))2 )) simplify(p) M as poderoso que simplify es simple y en ocasiones debe aplicarse m as de una vez: Ejemplo 18 Simplif quese la expresi on )) )) )) )) 3 27 + 27 x1 + 9 x2 + x3 .
DE MATEMATICAS AMPLIACION
Pr actica 3
2 Ejemplo uyase x por s2 . Haciendo a = 1, b = 2 y 19 Construya f = ax + bx + c y sustit engase el valor de f para s = 1 y s = 4. c = 3, obt
)) )) )) )) )) ))
syms x a b c f=a*x2+b*x+c syms s g=subs(f,x,s2) %en f sustituye x por s2 h=subs(g,{a,b,c},{1,2,sqrt(3)}) %substituci on m ultiple. k=subs(h,s,[1;4]) %sustituye s por una matriz. 3 2x + 5y + 3 en los puntos (0, 0), (0, 1), (0, 2),
En la parte b asica, MatLab utiliza la aritm etica de punto otante y trabaja con 16 d gitos. Por este motivo, si se manejan n umeros de m as decimales, lo que sucede con n umeros irracionales, en cada operaci on se produce un error llamado de redondeo. En c alculo simb olico no se produce este tipo de error pues MatLab no realiza c alculos num ericos, trabaja simb olicamente. S puede producirse un error de redondeo cuando se usa la instrucci on double para convertir un resultado simb olico a num erico.
En las instrucciones segunda y cuarta, si no aparece la variable x, las derivadas se realizan respecto a la variable por defecto, que es x, o si esta no aparece, la letra del alfabeto m as pr oxima a x (si hay dos a la misma distancia se elige la de la derecha). on f (x, y) = ax2 + bxy + xy3 y halle: Ejemplo 21 Construya la funci la derivada de f respecto a x.
21
DE MATEMATICAS AMPLIACION
Pr actica 3
la derivada segunda de f respecto a x. la derivada de f respecto a y. la derivada segunda de f respecto a y. Las instrucciones que tenemos que escribir son: )) )) )) )) )) )) syms x y a b f=a*x2+b*x*y+x*y3 dfx=diff(f) d2fx=diff(f,2) dfy=diff(f,y) d2fy=diff(f,y,2)
Conviene se nalar que diff puede actuar sobre una matriz. Tambi en hay un operador diff que act ua sobre variables num ericas (obviamente no calcula la derivada). La instrucci on int act ua como sigue:
Calcula una primitiva de f respecto a s. Calcula una primitiva de f respecto a la variable por defecto. Calcula la integral denida respecto a s entre a y b. Calcula la integral denida respecto a la variable por defecto entre a y b
En las instrucciones segunda y cuarta, si en f no aparece la variable x, calcula las integrales respecto a la variable indicada por ndsym(f,1). Los l mites a y b pueden ser datos num ericos o expresiones simb olicas. Ejemplo 22 Halle una primitiva de las funciones f (x) = )) )) )) )) )) )) )) )) syms x f=1/sqrt(x2-1) F=int(f) G=int(log(x)/x) diff(F) G=int(log(x)/x) G=simplify(ans) diff(G) 1 x2 + 1 y g(x) = ln(x) x
22
DE MATEMATICAS AMPLIACION
Pr actica 3
Ejemplo 23 Calcule todas las ra ces del polinomio z3 + z2 4z + 6 La instrucci on )) syms z )) p=z3+z2-4*z+6 )) sol=solve(p) nos da las soluciones de la ecuaci on. La soluci on es un vector de tres componentes que hemos guardado con el nombre sol. Tambi en pod amos haber escrito )) sol=solve(z3+z2-4*z+6) y tambi en se pueden omitir los ap ostrofos, pero en este caso es preciso que z est e declarada como variable simb olica )) syms z )) sol=solve(z3+z2-4*z+6) Ejemplo 24 Halle la soluci on general de la ecuaci on az4 + bz2 + c = 0. )) sol=solve(a*z4+b*z2+c) En el comando solve podemos especicar cual es la variable que deseamos despejar, en el caso de que halla varias. As , en la ecuaci on del ejemplo anterior podemos despejar b escribiendo )) sol=solve(a*z4+b*z2+c,b) Tambi en podemos resolver un sistema de ecuaciones.
23
DE MATEMATICAS AMPLIACION
Pr actica 3
Ejemplo 25 Halle las soluciones del sistema 90z + 12w + 45z2 + 6z2 w 12zw + z2 w2 2zw2 + 2w2 = 90, w2 2w = 5. MATLAB almacena la soluci on del sistema en una estructura de datos: )) sol=solve(90-90*z+12*w+45*z2+6*z2*w-12*z*w+z2*w2 -2*z*w2+2*w2,w2-2*w+5)
Para obtener los valores de la soluci on escribimos )) sol.w,sol.z En el caso de que en el sistema aparezcan m as variables que ecuaciones tambi en podemos elegir qu e variables deseamos despejar. Ejemplo 26 En el sistema ax + by = 0, bx ay + 1 = 0, despeje las variables a y x en funci on de las variables y y b. )) sol=solve(a*x+b*y,b*x-a*y+1,a,x) )) solucion=[sol.a sol.x] Observamos tambi en que en este caso hay m as de una soluci on.
3.8. Ejercicios
Ejercicio 3.1 Escriba una funci on [w]=logalfa(z,alfa) que calcule la imagen por la rama del logaritmo, log (z), de un complejo z C, dando un mensaje de error cuando dicho valor no est e denido. (Utilice la funci on argalfa de la pr actica 1). Compruebe su funcionamiento creando un chero ej3 1.m en el que escribir a las instrucciones de c alculo de log0 (i), log (i), log20 (i) y log5 (i). En el mismo chero, dibuje los valores obtenidos con puntos rojos. Calcula con la funci on el log /2 (i) existe? porqu e? Ejercicio 3.2 Escriba una funci on [c]=cauchyR(f,x,y) que nos diga si f (x + iy) verica o no las condiciones de Cauchy-Riemann en C. La variable c tomar a el valor 1 si se cumplen y 0 en caso contrario. Compru ebese su funcionamiento aplic andola a: 1. f (x + iy) = ex cos(y) + ex sen(y)i en C. 2. f (x + iy) = 2xy (x2 y2 )i en C. 3. f (x + iy) = x2 + y2 en C
24
DE MATEMATICAS AMPLIACION
Pr actica 3
Gu ardense las instrucciones para comprobar el funcionamiento en un chero ej3 2.m Ejercicio 3.3 Escriba una funci on [v]=armoconj(u,x,y) que, calcule una arm onica conjugada de u(x, y), comprobando previamente si es o no arm onica. (En caso de no serlo, debe devolver un mensaje de error y parar la ejecuci on). Compru ebese su funcionamiento aplic andola a: 1. u(x, y) = y3 3x2 y. 2. u(x, y) = ey sen(x) x2 + y2 . 3. u(x, y) =
x 2 + y2
Utilice la funci on [c]=cauchyR(f,x,y) para comprobar que, en efecto, las funciones obtenidas son arm onica conjugada de la dada. Gu ardese las instrucciones en un chero ej3 3.m on anterior para que tenga dos argumentos de entrada m as, Ejercicio 3.4 Modique la funci [v]=armo conj2(u,x,y,z,c), que devuelva la arm onica conjugada de u(x, y) que en z tome el valor c. Compru ebese el funcionamiento con la funci on u(x, y) = x2 y2 x3 + 3xy2 calculando una arm onica conjugada suya que verique que en el punto i tome el valor 1 i. Id entico para f (x, y) = ey cos(x) ey cos(x) de forma que la arm onica conjugada tome el valor 2 en i. Gu ardese las instrucciones para comprobar el funcionamiento en un chero ej3 4.m
25