| Yacas | 
Ejemplo | 
Comentarios
 ¿Qué estamos calculando? | 
| Funciones
elementales | 
Sin(x),Cos(x), Tan(x), Cot(x), Sec(x), Csc(x)
 ArcSin(x), ArcCos(x), ArcTan(x) | 
Funciones trigonométricas
 Funciones trigonométricas inversas | 
  | 
Sinh(x),Cosh(x),Tanh(x),Coth(x),Sech(x)
 ArcSinh(x), ArcCosh(x), ArcTanh(x) | 
Funciones hiperbólicas
 Funciones hiperbólicas inversas | 
  | 
Exp(x), Ln(x), Sqrt(x), Erf(x), Sign(x) | 
Función exponencial, logaritmo (neperiano), raíz cuadrada,
error, signo de un número | 
| Constantes matemáticas | 
Pi, Infinity | 
p e infinito | 
| Funciones especiales | 
  | 
  | 
| 
 Función Gamma de Euler 
 | 
Gamma(1.3)
 N(Gamma(1.3),5) | 
 Calculamos la función Gamma de Euler de 1.3 con 5 decimales | 
| 
 Función Zeta de Riemann 
 | 
N(Zeta(1.3),5) | 
  | 
| 
 Números de Bernoulli 
 | 
Bernoulli(4) | 
  | 
| 
 Polinomios de Bernoulli 
 | 
Bernoulli(4,x) | 
  | 
| 
 Polinomios de Legendre 
 | 
OrthoP(3, x) | 
Polinomio de Legendre de tercer orden: P3 (x) = (5 x3
- 3x) / 2 | 
| 
 Polinomios de Chebyshev 
 | 
OrthoT(3, x) | 
  | 
| Operaciones
elementales | 
  | 
  | 
| 
 Suma de números o fracciones 
 | 
1+3
 1/2+1/3
 N(%) ó N(1/2+1/3)
 N(1/2+1/3,3) | 
.
 Da el resultado en forma de fracción: 5/6
 Resultado numérico: ajustaría el resultado a los decimales
por defecto
 Ajusta el resultado a tres decimales (pero ATENCIÓN, NO REDONDEA,
sino que se queda con los tres primeros decimales) | 
  | 
N(2/3,3) | 
Da el resultado de la fracción 2/3 con tres decimales sin redondear.
Esto esto: da como resultado 0,666 (en vez de 0,667 que sería el
resultado con tres decimales) | 
| 
 Raiz cuadrada 
 | 
Sqrt(8) | 
Si queremos el valor numérico, N(Sqrt(8)) | 
| 
 Descomponer un número en factores 
 | 
Factor(50) | 
Descomponemos el número 50 en producto de factores | 
| 
 Valor numérico con cierto número de decimales 
 | 
N(Sin(2),4)
 N(Sqrt(2),5) | 
Seno de 2 radianes, con cuatro decimales
 Raíz cuadrada de 2 con cinco decimales. | 
| 
 Cociente de una división de dos números 
 | 
Div(10,3) | 
Determina el cociente (entero de dos números). En este caso
obtendríamos 3 | 
| 
 Resto de una división de dos números 
 | 
Mod(10,3) | 
Determina el resto de una división de dos números. En
este caso obtendríamos 1 | 
| 
 Máximo comun divisor 
 | 
Gcd (2,5) | 
Máximo común divisor del 2 y el 5 | 
| 
 Mínimo común múltiplo 
 | 
Lcm (2,5) | 
Mínimo común múltiplo del 2 y el 5 | 
| 
 Precisión de los cálculos 
 | 
GetPrecision()
 Precision(4) | 
Señala el número de decimales con que trabaja. Por defecto,
son 10.
 Mostraría 4 decimales en los resultados | 
| 
 Simplificar una expresión 
 | 
Simplify((x+1)*(x-1))
 Simplify((x+y)^2-(x-y)^2) | 
  | 
| 
 Desarrollar una expresión 
 | 
Expand(1-x)^3)
 Expand((1+x-y)^2,x) | 
Desarrolla el cubo: (1 - x)3
 Desarrolla (en x) la expresión (1 + x - y)2 | 
| 
 Dar un valor a una variable 
 | 
a:= 3
 Set (a,3) | 
Damos a "a" el valor 3. Con dos puntos : e igual =  | 
| 
 Borrar el contenido de una variable 
 | 
Clear (a)
 Clear (a,b) | 
Borramos el contenido de la variable "a"
 Borramos el contenido de las variables "a" y "b" | 
| 
 Definir una función 
y evaluarla en un punto 
 | 
f(x):=x^2-5*x+1
 f(5) | 
Definimos la función f(x) = x2 - 5x + 1
 ... y la evaluamos en el punto x=5 | 
  | 
f(x,y):=3*x-2*y^2
 f(2,3) | 
Definimos la función de dos variables f (x,y) = 3 x - 2 y2
 ... y la evaluamos en el punto (2,3) | 
| Combinatoria | 
  | 
  | 
| 
 Factorial de un número 
 | 
4! | 
Calculamos el factorial de 4. 4 ! = 4·3·2·1 | 
| 
 Doble factorial 
 | 
4!! | 
4 !! = 4·2 (vamos de 2 en 2, en vez de 1 en 1) | 
| 
 Combinaciones 
 | 
Bin(6,2) | 
Calcula el número combinatorio 6 sobre 2, esto es: (6·5)
/ 2! | 
| 
 Permutaciones 
 | 
Permutations({1,2,3}) | 
  | 
| Resolución
de ecuaciones | 
  | 
  | 
  | 
Solve(3*x-5==x+1,x) | 
Resolviendo la ecuación: 3 x - 5 = x + 1 | 
  | 
Solve(x/(1+x) == a, x) | 
  | 
  | 
Solve(x^2-5*x+6 == 0, x) | 
Resolución de una ecuación de segundo grado. | 
| 
 Número de raíces reales de un polinomio 
 | 
NumRealRoots(x^2-5*x+6) | 
Nos da el número de raíces reales de la ecuación
polinómica x2-5x+6=0 | 
| 
 Resolución de sistemas 
 | 
Solve({x+y==2,x-y==0},{x,y}) | 
Resolviendo el sistema:
 x + y = 2
 x - y = 0 | 
  | 
Solve({x+y+z==1,x-y-z==2,x-y+z==3},{x,y,z}) | 
Resolviendo el sistema: 
 x + y + z  = 1
 x - y - z = 2
 x - y + z = 3 | 
| Método de Newton | 
Newton(Exp(x)-3*x,x,1,0.01) | 
Resolviendo la ecuación ex - 3 x = 0, por el método
de Newton, partiendo del punto inicial xo = 1, con una precisión
de 0,01 | 
| Operaciones
con números complejos | 
Unidad imaginaria: I (mayúscula) | 
  | 
  | 
1+2*I
 ó Complex(1,2) | 
Un número complejo | 
  | 
Abs (2+3*I) | 
Módulo del número complejo 2 + 3i | 
  | 
Arg (2+3*I)
 N(Arg (2+3*I))
 N(Arg (2+3*I),3) | 
Argumento (en radianes) del número complejo 2 + 3i
 ... con los decimales por defecto
 ... con tres decimales | 
  | 
Re(2+3*I) | 
Parte real del número complejo 2 + 3 i | 
  | 
Im(2+3*I) | 
Parte imaginaria del número complejo 2 + 3 i | 
  | 
Conjugate(2+3*I) | 
Coomplejo conjugado del número 2 + 3 i | 
  | 
(3+4*I)+(1-3*I)
 ó Complex(3,4)+Complex(1,-3) | 
Suma de dos números complejos | 
  | 
(3+4*I)*(1-3*I) | 
Producto de dos números complejos | 
  | 
(3+4*I)/(1-3*I) | 
Cociente de dos números complejos | 
|   | 
(1+2*I)^2 | 
(1 + 2 i)2 | 
  | 
Ln(3+4*I) | 
Logaritmo neperiano de un número complejo | 
| Operaciones
con vectores | 
  | 
  | 
| 
 Módulo de un vector 
 | 
Norm({3,4})
 o bien: a:={3,4}
 Norm(a) | 
Módulo de un vector (32 + 42)1/2 | 
| 
 Normalizar un vector 
 | 
Normalize ({3,4}) | 
Normalizar un vector. Esto es, dividir el vecto rentre su módulo | 
| 
 Suma de vectores 
 | 
{1,2,3}+{4,5,6}
 o bien: a:={1,2,3};
 b:={4,5,6}; 
 a+b | 
  | 
| 
 Multiplicación por un escalar 
 | 
3*{1,2,3}
 o bien: a:={1,2,3}
 3*a | 
  | 
| 
 Producto escalar 
 | 
Dot({1,2},{4,5})
 InProduct({1,2},{4,5})
 o bien: a:={1,2}
 b:={4,5}
 Dot(a,b)
 o bien: InProduct(a,b)
 o bien: a.b | 
Producto escalar de los vectores (1,2) y (4,5)
 (1,2)·(4,5)=1·4+2·5=14
 Para calcular el producto escalar de dos vectores podemos emplear el
punto . ó Dot ó InProduct | 
| 
 Producto vectorial 
 | 
CrossProduct({1,2,3},{4,2,5})
 ó a:={1,2,3}
 b:={4,2,5}
 a X b | 
Para calcular el producto vectorial de dos vectores podemos emplearx
o CrossProduct | 
| 
 Base ortogonal 
 | 
OrthogonalBasis({{1,1,0},{2,0,1},{2,2,1}}) | 
  | 
| 
 Base ortonormada 
 | 
OrthonormalBasis({{1,0,1,0},{1,1,1,0},{0,1,0,1}}) | 
Además divide los vectores entre su módulo | 
| Operaciones
con matrices | 
a:={{1,2},{3,4}}
 b:={{2,-1},{1,3}} | 
Vamos a definir las matrices a y b | 
| 
 Determinante de una matriz (cuadrada) 
 | 
Determinant(a)
 Determinant({{1,2},{3,4}}) | 
  | 
| 
 Traza de una matriz 
 | 
Trace({{1,2},{3,4}})
 o bien: a:={{1,2},{3,4}}
 Trace(a) | 
La traza es la suma de los elementos de la diagonal principal | 
| 
 Matriz traspuesta 
 | 
Transpose (a) | 
  | 
| 
 Matriz inversa 
 | 
Inverse (a) | 
  | 
| 
 Producto de matrices 
 | 
a.b
 o bien Dot(a,b)
 Dot({{1,2,3},{4,5,6}},{{1,2},{3,4},{5,6}})
 PrettyForm(%) | 
  | 
| 
Menor complementario
 | 
A:={{1,2,3},{4,5,6},{7,8,9}}
 Minor(A,2,3) | 
Menor complementario del elemento a2,3 de la matriz A | 
| 
 Polinomio característico 
 | 
a:={{4,2},{-1,1}}
 CharacteristicEquation(a,x)
 Expand(%,x) | 
  | 
| 
 Valores propios 
 | 
a:={{4,2},{-1,1}}
 EigenValues(a) | 
  | 
| 
 Vectores propios 
 | 
a:={{4,2},{-1,1}
 vp:=EigenValues(a)
 EigenVectors(a,vp) | 
  | 
| 
 Potencia de matrices 
 | 
a:={{4,2},{-1,1}}
 MatrixPower(a,2)
 sería equivalente a : a.a ; a*a ; a^2 | 
Calcula la potencia n-ésima de una matriz cuadrada. En este
caso el cuadrado de la matriz a | 
| 
 ¿Es una matriz simétrica? 
 | 
A:={{4,2},{-1,1}}
 IsSymmetric(A) | 
Devuelve true si la matriz es simétrica (la matriz coincide
con su traspuesta) o false si no lo es. | 
| 
 ¿Es una matriz anti-simétrica? 
 | 
A:={{4,2},{-1,1}}
 IsSkewSymmetric(A) | 
Devuelve true si la matriz es anti-simétrica (la matriz
coincide con su traspuesta cambiada de signo) o false si no lo es. | 
| 
 ¿Es una matriz ortogonal? 
 | 
A:={{4,2},{-1,1}}
 IsOrthogonal(A) | 
Devuelve true si la matriz es ortogonal (cuando la matriz inversa
coincide con la traspuesta) o false si no lo es. | 
| 
 ¿Es una matriz idempotente? 
 | 
A:={{4,2},{-1,1}}
 IsIdempotent(A) | 
Devuelve true si la matriz es idempotente (A2 = A)
o false si no lo es. | 
| Resolución
de sistemas | 
A:={{1,1,1},{2,-1,3},{3,2,-1}}
 b:={6,9,4}
 MatrixSolve(A,b)
 SolveMatrix(A,b) | 
Resolvemos el sistema:
 x + y + z = 6
 2x -y + 3z = 9
 3x + 2y - z = 4 | 
| 
 Factorizacion LU
 Método de Doolittle 
 | 
A:={{1,1,1},{2,-1,3},{3,2,-1}}
 LU(A) | 
Factorización LU de la matriz A por el método de Doolittle
(la matriz L posee 1´s en la diagonal principal) | 
| 
 Factorizacion LU
 Método de Cholesky 
 | 
A:={{1,1,1},{2,-1,3},{3,2,-1}}
 Cholesky(A)
 >Out: no la calcula pues la matriz A no es definida positiva | 
A debe ser simétrica y definida positiva | 
| Límites | 
Limit(x,Infinity) (x^2-1)/(x^2+1) | 
  | 
| 
 Límite por la izquierda 
 | 
Limit (x,0,Left) 1/x | 
  | 
| 
 Límite por la derecha 
 | 
Limit (x,0,Right) 1/x | 
  | 
| Derivadas | 
  | 
  | 
| 
 Primera derivada 
 | 
Deriv(x) 1/(1+x^2)
 ó
 D(x) 1/(1+x^2) | 
  | 
| 
 Segunda derivada 
 | 
D(x,2) x^2+3*x-1
 ó bien: D(x) D(x) x^2+3*x-1 | 
  | 
| 
 Derivadas parciales 
 | 
z:=x^2+y^3
 D(x) z
 D(y) z
o bien
 D(x) x^2+y^3  | 
 
   | 
| 
 Matriz jacobiana 
 | 
JacobianMatrix({x^2+y^2,x^3+y^4},{x,y})
 JacobianMatrix({x^2+y^2,x^3+y^4,3*z^2},{x,y,z}) | 
  | 
| 
 Matriz wronsquiana 
 | 
WronskianMatrix({Sin(x),Cos(x)}, x)
 WronskianMatrix({1,x,x^2}, x) | 
  | 
| 
 Wronsquiano 
 | 
Determinant (WronskianMatrix({1,x,x^2},x)) | 
  | 
| 
 Matriz hessiana 
 | 
HessianMatrix(x^2+y^2, {x,y}) | 
  | 
| 
 Gradiente de un escalar 
 | 
D({x,y,z}) Sin(x*y*z) | 
Calculamos el gradiente de una función escalar, en este caso
de Sin(x y z)
   | 
| 
 Divergencia de un vector 
 | 
Diverge({x*y,y*z,x*z},{x,y,z}) | 
Calculamos la divergencia de un vector, en este caso del (x y,y z,x
z).
 ¡¡ Sin embargo NO CALCULA LA SUMA, lo deja indicado !!
   | 
| 
 Rotacional de un vector 
 | 
Curl({x*y,y*z,x*z},{x,y,z}) | 
Calculamos el rotacional de un vector, en este caso del (x y,y z,x
z)
   | 
| Desarrollo en serie de Taylor | 
Taylor(x,0,5) Sin(x) | 
Desarrollo en serie de Taylor de grado 5 (hasta la quinta derivada)
de la función sin (x) en el origen
   | 
  | 
Taylor(x,0,5) Exp(-x)
 PrettyForm(%) | 
Desarrollo en serie de Taylor en torno al origen de e-x
 Presenta el resultado de forma "bonita" | 
  | 
Taylor(x,1,4) x^4-3*x^3+2*x^2+x+1 | 
Desarrollo en serie del polinomio en torno al punto x = 1
 O lo que es lo mismo: reescribir el polinomio
 en potencias de (x-1) | 
| Integrales | 
Integrate(x) Sin(x) | 
  | 
| 
 Integral definida 
 | 
Integrate(x,0,1) x^2 | 
  | 
  | 
Integrate(x,a,b) Cos(x) | 
  | 
| Ecuaciones
diferenciales | 
  | 
  | 
| 
 Resolución de ecuaciones 
 | 
OdeSolve(y'+y==0) | 
Resolvemos la ecuación diferencial y' + y = 0 | 
  | 
OdeSolve(y'==2*y) | 
Resolvemos la ecuación diferencial y' = 2 y | 
  | 
OdeSolve(y''+y==0) | 
Resolvemos la ecuación diferencial y'' + y = 0 | 
| 
 Comprobación de soluciones 
 | 
OdeTest(y''-5*y'+6*y,Exp(2*x)+Exp(3*x)) | 
Comprueba que e2x+e3x es solución de la
ecuación diferencial y''-5y'+6y=0 | 
| 
 Orden de una ecuación diferencial 
 | 
OdeOrder(y''-5*y'+6*y==0) | 
  | 
| Transformada
de Laplace | 
LaplaceTransform(t,s,t^2) | 
Transformada de Laplace (en función de s) de la función
t2
   | 
  | 
  | 
  | 
| Sumatorios
y "productorios" | 
  | 
  | 
| 
 Sumatorio 
 | 
Sum(k,1,n,k^2) | 
  | 
| 
 Productorio 
 | 
Factorize(k,1,n,k^2) | 
  | 
| Polinomio
interpolador | 
Polinomio interpolador de Lagrange que se ajusta a unos puntos | 
  | 
  | 
f(x):=LagrangeInterpolant({2,5},{4,8},x)
 f(3)
 Simplify(f(x))
 LagrangeInterpolant({2,5},{4,8},x) | 
Los valores en la primera llave {} son los de la "x"
 los de la segunda llave {} los de la "y"
 Polinomio interpolador que pasa por los puntos (2,4) y (5,8) | 
  | 
f(x):=LagrangeInterpolant({0,1,3},{-2,6,40},x)
 Simplify(f(x)) | 
Polinomio interpolador que pasa por los puntos (0,-2), (1,6) y (3,40) | 
| Importación/
Exportación | 
  | 
  | 
| 
 Guardar un resultado en un fichero 
 | 
ToFile("datos.txt") [PrettyForm(D(x) x/(1+x^2));] | 
Exporta al fichero datos.txt el resultado de la derivada de la función
x/(1+x2) | 
| 
 exportando a LaTeX 
 | 
TeXForm(D(x) x/(1+x^2)) | 
Exporta al formato Latex el resultado de la derivada de la función
x/(1+x2) |