Student Package
Este paquete permite mostrar paso a paso cómo se resuelven los distintos problemas matemáticos que se plantean a los alumnos:
Rectas tangentes
La pendiente de la recta tangente a una curva en x=a se calcula como el límite del cociente incremental:
| > |
slope([x,f(x)],[a,f(a)]); |
Para calcular el límite, en primir lugar debemos simplificar la expresión racional (dado que presenta una indeterminación), y luego realizar el límite:
En el caso particular que queramos calcular la pendiente de la recta tangente a la curva dada por f en x=3, simplemente debemos sustituir en la expresión anterior a=3.
Para mostrar gráficamente la tangente podemos usar el comando showtangent:
| > |
showtangent(f(x),x=3,x=0..4); |
Ahora podríamos crear un programa que representara las rectas tangentes a f(x) en los puntos x= 0.8+0.2*i, cuando i toma valores enteros de 1 a 11. Usaremos el comando display con la opción insequence=true para obtener la animación:
| > |
for i to 11 do
p||i:=showtangent(f(x),x=0.8+0.2*i,x=0..4,colour=black) od:
|
| > |
plots[display]([p||(1..11)],insequence=true); |
Área bajo la curva
El Student Package contiene un conjunto de funciones que pueden resultar útiles para el aprendizaje de Cálculo Infinitesimal por parte de los alumnos.
Consideremos el área de la curva y=sin(x), de x=0.1 a x=1. Podemos aproximarla mediante 4 rectángulos usando la función leftbox (contenida en el Student Package).
| > |
leftbox(sin(x),x=0..1,4); |
La parte coloreada representa la aproximación al área bajo la curva. Si aumentamos el número de rectángulos (disminuyendo su base) parece ser que obtendremos mejores aproximaciones. Realicemos algunas pruebas:
| > |
leftbox(sin(x),x=0..1,8); |
| > |
leftbox(sin(x),x=0..1,16); |
Ahora realizaremos las aproximaciones numéricamente. Calcularemos la suma de las áreas de los rectángulos que hemos empleado en cada caso:
| > |
leftsum(sin(x),x=0..1,4); |
| > |
leftsum(sin(x),x=0..1,8); |
| > |
leftsum(sin(x),x=0..1,16); |
Veamos cómo varía el valor aproximado cuando aumentamos el número de rectángulos usados. Para ello usaremos un lazo:
| > |
for k from 20 to 200 by 20 do
print(evalf(leftsum(sin(x),x=0..1,k)));
od;
|
Podemos observar cómo las sumas convergen hacia cierto valor 0.457... Calculemos el límite de la suma de rectángulos para un número indeterminado n de rectángulos:
| > |
leftsum(sin(x),x=0..1,n); |
Para comprobar la bondad de esta aproximación, podemos calcular la integral de la curva desde 0.1 hasta 1: