herramientas computacionales para la matemáticavero0304/hcpm/32.mupad.pdf · herramientas...

22
Herramientas computacionales para la matemática MATLAB: MuPAD. Verónica Borja Macías Junio 2012 1

Upload: vonhi

Post on 13-Oct-2018

226 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Herramientas computacionales para la matemáticavero0304/HCPM/32.Mupad.pdf · Herramientas computacionales para la matemática MATLAB: MuPAD. Verónica Borja Macías Junio 2012. 1

Herramientas computacionales para la matemáticaMATLAB: MuPAD.

Verónica Borja Macías

Junio 2012

1

Page 2: Herramientas computacionales para la matemáticavero0304/HCPM/32.Mupad.pdf · Herramientas computacionales para la matemática MATLAB: MuPAD. Verónica Borja Macías Junio 2012. 1

MatlabMuPAD

2

El Symbolic Math Toolbox está basado en el MuPADsymbolic engine.

El MuPAD engine es un proceso que se ejecuta en la computadora de manera separada de MATLAB

El MuPAD engine se inicia cuando la función que esllamada en MATLAB requiere del symbolic engine.

Page 3: Herramientas computacionales para la matemáticavero0304/HCPM/32.Mupad.pdf · Herramientas computacionales para la matemática MATLAB: MuPAD. Verónica Borja Macías Junio 2012. 1

MatlabMuPAD

3

Para iniciar el MuPAD podemos ir al boton: Start y ahiseleccionar Toolboxes>Symbolic Math>MuPAD.

Page 4: Herramientas computacionales para la matemáticavero0304/HCPM/32.Mupad.pdf · Herramientas computacionales para la matemática MATLAB: MuPAD. Verónica Borja Macías Junio 2012. 1

MatlabMuPAD

4

Mediante el comando mupadwelcome desde la linea de comandos también es posible abrir el MuPAD

Page 5: Herramientas computacionales para la matemáticavero0304/HCPM/32.Mupad.pdf · Herramientas computacionales para la matemática MATLAB: MuPAD. Verónica Borja Macías Junio 2012. 1

MatlabLibreta de MuPAD

5

Page 6: Herramientas computacionales para la matemáticavero0304/HCPM/32.Mupad.pdf · Herramientas computacionales para la matemática MATLAB: MuPAD. Verónica Borja Macías Junio 2012. 1

MatlabEvaluación de expresiones

6

Para evaluar las expresiones dentro de la libreta existenvarias opciones.

Teclear enter

Seleccionar alguna de las ociones del menu notebook: Evaluate

Evaluate from Beginning

Evaluate to End

Evaluate All.

O en la barra de herramientas

Page 7: Herramientas computacionales para la matemáticavero0304/HCPM/32.Mupad.pdf · Herramientas computacionales para la matemática MATLAB: MuPAD. Verónica Borja Macías Junio 2012. 1

MatlabFunciones

7

Para evitar errores de sintaxis y pararecordar facilmente los comandos MuPADpuede completar automáticamente los comandos que se se empezaron a teclearal oprimir Ctrl+Barra espaciadora.

Y por supuesto se puede acceder a lasfunciones mediante la barra de funcionesde la derecha.

Page 8: Herramientas computacionales para la matemáticavero0304/HCPM/32.Mupad.pdf · Herramientas computacionales para la matemática MATLAB: MuPAD. Verónica Borja Macías Junio 2012. 1

MatlabAyuda

8

Si deseamos obtener ayuda de sobrealguna función podemos:

Colocar el cursor sobre la función en el input.

Dar clic con el boton derecho sobre la función.

Teclear en el input :

info(fnc)

?fnc

Page 9: Herramientas computacionales para la matemáticavero0304/HCPM/32.Mupad.pdf · Herramientas computacionales para la matemática MATLAB: MuPAD. Verónica Borja Macías Junio 2012. 1

MatlabAyuda

9

Por último tenemos la ventana gráfica de ayuda en la que podemos ver el contenido y buscar información.

Page 10: Herramientas computacionales para la matemáticavero0304/HCPM/32.Mupad.pdf · Herramientas computacionales para la matemática MATLAB: MuPAD. Verónica Borja Macías Junio 2012. 1

MatlabSintaxis

10

Existen bastantes diferencias entre MATLAB y MuPAD en cuanto a sintaxis.

Page 11: Herramientas computacionales para la matemáticavero0304/HCPM/32.Mupad.pdf · Herramientas computacionales para la matemática MATLAB: MuPAD. Verónica Borja Macías Junio 2012. 1

MatlabSintaxis

11

Page 12: Herramientas computacionales para la matemáticavero0304/HCPM/32.Mupad.pdf · Herramientas computacionales para la matemática MATLAB: MuPAD. Verónica Borja Macías Junio 2012. 1

MatlabAritmética

12

Aritmética con enteros, racionales y aproximaciones

[ 2 + 2

[ (1 + (5/2*3))/(1/7 + 7/9)^2

[ 56^(1/2)

[ float(sqrt(56))

[ DIGITS:=20: float(sqrt(56))

[ delete DIGITS

[ float(sqrt(56))

[ (1.0 + (5/2*3))/(1/7 + 7/9)^2

[ 1.0/3*exp(1)*sin(2)

[ float(1.0/3*exp(1)*sin(2))

[ 1.0/3*exp(1.0)*sin(2.0)

Page 13: Herramientas computacionales para la matemáticavero0304/HCPM/32.Mupad.pdf · Herramientas computacionales para la matemática MATLAB: MuPAD. Verónica Borja Macías Junio 2012. 1

MatlabAritmética

13

Aritmética con complejos

[ sqrt(-1), I^2

[ (1 + 0.2*I)*(1/2 + I)*(0.1 + I/2)^3

[ 1/(sqrt(2) + I)

[ rectform(1/(sqrt(2) + I))

[ Re(1/(2^(1/2) + I))

[ Im(1/(2^(1/2) + I))

[ conjugate(1/(2^(1/2) + I))

[ abs(1/(2^(1/2) + I))

[ arg(1/(2^(1/2) + I))

Page 14: Herramientas computacionales para la matemáticavero0304/HCPM/32.Mupad.pdf · Herramientas computacionales para la matemática MATLAB: MuPAD. Verónica Borja Macías Junio 2012. 1

MatlabDerivadas

14

Derivadas

[ f := 4*x + 6*x^2 + 4*x^3 + x^4: diff(f, x)

Derivadas parciales

[ f := y^2 + 4*x + 6*x^2 + 4*x^3 + x^4: diff(f, y)

Derivadas de orden superior

[ diff(diff(diff(sin(x), x), x), x)

[ diff(sin(x), x, x, x)

[ diff(sin(x), x $ 3)

Derivadas respecto a varias variables

[ diff(diff((x^2*y^2 + 4*x^2*y + 6*x*y^2), y), x)

[ diff(x^2*y^2 + 4*x^2*y + 6*x*y^2, y, x)

Derivada de una función arbitraria

[ D(y)(t); D(y^2)(t)

[ y'(t); (y^2)'(t)

Page 15: Herramientas computacionales para la matemáticavero0304/HCPM/32.Mupad.pdf · Herramientas computacionales para la matemática MATLAB: MuPAD. Verónica Borja Macías Junio 2012. 1

MatlabIntegrales

15

Integrales indefinidas

[ int((cos(x))^3, x)

Integrales definidas

[ int((cos(x))^3, x = 0..PI/4)

[ int(sin(x)/x, x = -infinity..infinity)

Aproximación numérica

[ int(sin(x^2)^2, x=-1..1)

[ float(int(sin(x^2)^2,(x=-1..1)))

[ numeric::int(sin(x^2)^2, x=-1..1)

Page 16: Herramientas computacionales para la matemáticavero0304/HCPM/32.Mupad.pdf · Herramientas computacionales para la matemática MATLAB: MuPAD. Verónica Borja Macías Junio 2012. 1

MatlabÁlgebra vectores y metrices

16

Vectores y matrices

[ V := matrix([1, 2, 3])

[ A := matrix([[1, 2], [3, 4], [5, 6]]);

[ B := matrix([[1, 2, 3], [4, 5, 6]])

[ C := matrix(3, 2, [[-1, -2], [-4, -5], [-7, -8]]);

[ W := matrix(1, 3, [1, 2, 3])

[ F := matrix(3, 3, [[1, -1, 0], [2, -2]])

[ matrix(2, 2, [[-1, -2], [-4, -5], [-7, -8]])

[ G := matrix(4, 4, [1, 2, 3, 4], Diagonal)

Page 17: Herramientas computacionales para la matemáticavero0304/HCPM/32.Mupad.pdf · Herramientas computacionales para la matemática MATLAB: MuPAD. Verónica Borja Macías Junio 2012. 1

MatlabÁlgebra vectores y metrices

17

Operaciones con matrices

[ A := matrix([[1, 2], [3, 4], [5, 6]]);

[ B := matrix([[1, 2, 3], [4, 5, 6]]);

[ A*B

CUIDADO:Operaciones entre escalares y matrices

[ C := matrix(2, 2, [[-1, -2], [-4, -5]]);

[ C + 10

Determinante, inversa

[ G := matrix([[1, 2, 0], [2, 1, 2], [0, 2, 1]]); det(G); 1/G

Algebra lieneal

[ linalg::eigenvalues(G);

[ linalg::eigenvalues(F);

[ linalg::eigenvalues(A*B)

Page 18: Herramientas computacionales para la matemáticavero0304/HCPM/32.Mupad.pdf · Herramientas computacionales para la matemática MATLAB: MuPAD. Verónica Borja Macías Junio 2012. 1

MatlabSolución de ecuaciones

18

Con una variable[ solve(x^5+3*x^4-23*x^3-51*x^2+94*x+120=0,x)

Con parámetros[ solve(a*x^2 + b*x + c = 0, x)[ solve(a*x^2 + b*x + c = 0, x) assuming a > 0

Sistemas de ecuaciones[ solve([x^2+x*y+y^2 = 1, x^2-y^2 = 0], [x, y])[ solve([x^2 + y^2 = a, x^2 - y^2 = b], [x, y])

Ecuaciones diferenciales[ o:=ode(x^2*diff(y(x),x,x)+2*x*diff(y(x),x)+x, y(x)):[ solve(o)

Inecuaciones[ solve(x^4 >= 5, x)[ assume(x in R_); solve(x^4 >= 5, x)[ solve(x^4 >= 5, x) assuming x > 0

Page 19: Herramientas computacionales para la matemáticavero0304/HCPM/32.Mupad.pdf · Herramientas computacionales para la matemática MATLAB: MuPAD. Verónica Borja Macías Junio 2012. 1

MatlabManipulación de expresiones

19

Polinomios[ expand((x - 1)*(x + 1)*(x^2 + x + 1)*(x^2 + 1)*(x^2 -

x + 1)*(x^4 - x^2 + 1))[ factor(x^12 - 1)[ collect((x - a)^4 + a*x^3 + b^2*x + b*x + 10*a^4 + (b

+ a*x)^2, x)Descomposición en fracciones parciales

[ partfrac((7*x^2 + 7*x + 6)/(x^3 + 2*x^2 + 2*x + 1))Simplificaciones

[ simplify((x - 1)*(x + 1)*(x^2 + x + 1)*(x^2 + 1)*(x^2 - x + 1)*(x^4 - x^2 + 1))

[ Simplify((x - 1)*(x + 1)*(x^2 + x + 1)*(x^2 + 1)*(x^2 - x + 1)*(x^4 - x^2 + 1))

[ f := a* x *(a + 1) + b* y *(y + b* x* y): simplify(f); Simplify(f)

Page 20: Herramientas computacionales para la matemáticavero0304/HCPM/32.Mupad.pdf · Herramientas computacionales para la matemática MATLAB: MuPAD. Verónica Borja Macías Junio 2012. 1

MatlabManipulación de expresiones

20

Expresiones trigonométricas[ expand(sin(5*x))[ factor(cos(x)^4 + 4*cos(x)^3*sin(x) +

6*cos(x)^2*sin(x)^2 + 4*cos(x)*sin(x)^3 + sin(x)^4)[ simplify(cos(x)^2 + sin(x)^2)[ simplify(cos(x)^4 + sin(x)^4 + sin(x)*cos(x))[ Simplify(cos(x)^4 + sin(x)^4 + sin(x)*cos(x))

Simplificación de partes específicas de la expresión[ simplify(ln(x)+ln(3)-ln(3*x)+(exp(x)-1)/(exp(x/2)+1))[ simplify(ln(x)+ln(3)-ln(3*x)+(exp(x)-1)/(exp(x/2)+1),

ln)

Page 21: Herramientas computacionales para la matemáticavero0304/HCPM/32.Mupad.pdf · Herramientas computacionales para la matemática MATLAB: MuPAD. Verónica Borja Macías Junio 2012. 1

MatlabRestricciones

21

Las variables por default son complejas[ solve(x^(5/2) = 1, x)[ solve(x^(5/2) = 1, x) assuming x in R_[ solve(x^4 - 1 = 0, x) assuming x>0[ solve(x^4 - a = 0, x) assuming a = 16 and x in R_

Restricciones sobre integrales[ int(1/abs(x^2 - 1), x)[ int(1/abs(x^2 - 1), x) assuming x > 1

Simplificacionde expresiones con restricciones[ simplify(sqrt(x^2+2*x+1)+sqrt(x^2-2*x+1)+sqrt(x^2+

4*x+4)+sqrt(x^2-4*x+4))[ simplify(sqrt(x^2+2*x+1)+sqrt(x^2-2*x+1)+sqrt(x^2+

4*x+4)+sqrt(x^2-4*x+4)) assuming x > 2

Page 22: Herramientas computacionales para la matemáticavero0304/HCPM/32.Mupad.pdf · Herramientas computacionales para la matemática MATLAB: MuPAD. Verónica Borja Macías Junio 2012. 1

MatlabGráficas

22

Gráficas 2D[ plot(sin(x)*cos(3*x))

Gráficas 3D[ plot(sin(x)*sin(y), #3D)

Graficar varias funciones a la vez[ plot(sin(x), cos(x), tan(x), cot(x))[ plot(sin(k*x) $ k = 1..3)[ plot(-sqrt(r^2 - x^2 - y^2) $ r = 1..5, #3D)

Especificar rangos[ plot(sin(x^3)*exp(x), x = 3..5)[ plot(sin(x)*sin(y), x = 0..3, y = 1..3, #3D)[ plot(sin(k*x) $ k = 1..5, x = 0..2*PI)[ plot({sin(k*x), k*t^2} $k=1..5, x=0..2*PI, t=-1..1)

Graficar por partes[ plot(piecewise([x < - 2, - 1], [-1 < x and x < 0,

x^2], [0 < x and x < 1, -x^2], [x > 1, 1]))