1 Funciones operaciones y comandos 2´Algebra matricial

Anuncio
1
Funciones operaciones y comandos
• Principales funciones y operaciones
Escritura
Significado
Representación
a+b
suma
a+b
a−b
resta
a−b
a∗b
producto
a/b
cociente
aˆb
potencia
ab
a
b
ab
E
base de los logaritmos neperianos
e
PI
π
I
número pi
√
−1
inf inity
infinito
sqrt(a)
raı́z cuadrada de a
∞
√
a
Eˆa ⇔ exp(a)
exponencial de a
ea
ln(a)
logaritmo neperiano de a
ln(a)
sin(a)
seno de a
sin(a)
cos(a)
coseno de a
cos(a)
tan(a)
tangente de a
tan(a)
abs(a)
valor absoluto de a
|a|
i
• Comandos
2
%
Equivale a escribir el resultado de la última operación ejecutada
f loat(a)
Devuelve el valor aproximado de la expresión exacta a
x := expr
Asigna el nombre x a la expresión matemática expr
subs(expr, z1 = expr1 , z2 = expr2 , . . .)
Dentro de la expresión expr, substituye z1 por la expresión
expr1 , z2 por la expresión expr2 , etc.
delete x
Elimina la variable x, i.e. “desasigna” el nombre x de la
expresión matemática que designaba
simplif y(expr)
Simplifica la expresión expr
expand(expr)
Expande la expresión expr
f actor(expr)
Factoriza la expresión expr
Álgebra matricial
• Secuencias
Escritura
Resultado
Ejemplo
Resultado
$ i..i + n
i, i + 1, . . . , i + n
$ 1..8
1,2,3,4,5,6,7,8
f (k)$k = i..i + n
f (i), f (i + 1), . . . , f (i + n)
1
2
k $k = 1..8
1,4,9,16,25,36,49,64
• Definición y operaciones con Matrices
A := matrix([[a11 , . . . , a1n ], [a21 , . . . , a2n ], . . . , [am1 , . . . , amn ]])
(m = 1 definirı́a un vector fila, y n = 1 un vector columna)
A+B
suma matricial
A∗B
producto matricial (no conmutativo)
αA
producto de un escalar por una matriz
transpose(A)
traspuesta de la matriz A
linalg :: tr(A)
traza de la matriz cuadrada A
matrix :: identity(n)
matriz identidad de orden n
matrix(n, n, [a11 , . . . , ann ], Diagonal)
matriz diagonal con elementos a11 , . . . , ann en la diagonal
principal
Aˆn
potencia n-ésima de la matriz cuadrada A
linalg :: rank(A)
rango de la matriz A
det(A)
determinante de la matriz cuadrada A
linalg :: gaussElim(A)
emplea el algoritmo de eliminación gaussiana para
obtener la forma escalonada de la matriz A
Aˆ−1 ⇔ inverse(A)
inversa de la matriz cuadrada A
• Resolución de una ecuación y de un sistema de ecuaciones
solve(eq, x)
resuelve la ecuación eq respecto de la variable x
(ejemplo: solve(xˆ2 + 2 ∗ x − 3, x) → {−3, 2})
solve(eq, x, Real)
devuelve únicamente las raı́ces reales
numeric :: solve(eq, x = a..b)
devuelve únicamente una raı́z dentro del intervalo [a..b],
aplicando un algoritmo numérico
solve([eq1 , . . . , eqm ], [x1 , . . . , xn ])
resuelve un sistema de m ecuaciones eq1 , . . . , eqm respecto de n variables x1 , . . . , xn (ecuaciones y variables
pueden escribirse entre corchetes, o entre llaves)
devuelve las raı́ces reales expresadas en forma vectorial
solve([eq1 , . . . , eqm ], [x1 , . . . , xn ], Real)
• Valores y vectores propios
linalg :: eigenvalues(A)
linalg :: charpoly(A, λ)
devuelve los valores propios de la matriz cuadrada A (si su expresión
exacta no permite conocer su signo, es posible obtener una expresión
aproximada con el comando f loat)
calcula el polinomio caracterı́stico de la matriz cuadrada A
solve(pol, λ)
encuentra las raı́ces del polinomio caracterı́stico, i.e. los valores propios de la matriz cuadrada A
f actor(pol)
factoriza el polinomio caracterı́stico (expresándolo como producto de
monomios)
linalg :: eigenvectors(A)
devuelve los valores propios, y para cada uno de ellos: su multiplicidad
y los vectores propios linealmente independientes asociados al mismo
• Formas cuadráticas
linalg :: hessian(Q, [x1 , . . . , xn ])/2
det(A[1..i, 1..i])
matriz simétrica asociada a la forma cuadrática Q (cambiar filas y sus correspondientes columnas en la matriz A es
equivalente a cambiar variables en el vector [x1 , . . . , xn ])
menor principal de orden i
det(A[1..i, 1..i])$i = 1..n
devuelve los n menores principales de la matriz cuadrada A
2
3
Cálculo
• Definir una función (de expresión func) de una variable real:
f := x− > f unc
f := x− > x2 + 2 ∗ x − 3)
(ejemplo:
Al definir la función de esta forma, Mupad le asigna el nombre f (x).
Esta forma de definir una función permite evaluarla en cualquier punto f (2), f (−1/2), . . .
• Función definida a trozos:
g := x− > piecewise([cond1, exp1], [cond2, exp2], . . .)
Define la función g(x) como la expresión
exp1 si se verifica la condición cond1, la
expresión exp2 si se verifica la condición
cond2, etc.
x si x ≥ 0,
Ejemplo: g := x− > piecewise([x >= 0, x], [x < 0, −x]), define la función |x| =
−x si x < 0.
• Lı́mite de la función f (x) en el punto a = ±∞ o a ∈ (−∞ + ∞):
lı́mite
limit(f, x = a)
lı́mite por la izquierda
limit(f (x), x = a, Lef t)
lı́mite por la derecha
limit(f (x), x = a, Right)
• Derivada primera de la función f (x):
dif f (f (x), x)
f 0 (x)
• Derivada n-ésima de la función f (x):
dif f (f (x), x, x, . . . , x)
dif f (f, x$n)
f 00...0 (x)
La última expresión permite calcular la derivada n-ésima de f (x) y evaluarla en un punto a: f 00...0 (a)
• Polinomio de Taylor de grado n para la función f (x) en el punto a:
expr(taylor(f (x), x = a, AbsoluteOrder = n + 1))
taylor(f (x), x = a, AbsoluteOrder = n + 1)
Además del polinomio de Taylor, añade un
término representando el error de grado n+1
• Integral indefinida de la función f (x):
int(f (x), x)
• Integral definida de la función f (x), con lı́mite inferior, a, y lı́mite superior, b:
int(f (x), x = a..b)
• Dibujar la función f (x):
plot(f (x), x = a..b)
plot(f (x), V iewingBox = [ax ..bx , ay ..by ])
Dibuja la gráfica de f (x) para x tomando valores entre
a y b. Mupad ajusta el tramo a mostrar del eje de
ordenadas
Dibuja la gráfica de f (x) en un rectángulo definido
por el intervalo [ax , bx ] para x y [ay , by ] para y
plot(f (x), g(x), x = a..b)
Dibuja las gráficas de f (x) y g(x) con diferente color,
para x tomando valores entre a y b
plot(f (x), g(x), x = a..b, LegendV isible)
La opción LegendVisible añade una leyenda para
cada gráfica
3
Descargar