Practica nº 5: Aproximación

Ejemplo 1

Uso del comando interno de Mathematica

En esta práctica estudiaremos cómo aproximar mediante polinomios un conjunto de datos aplicando aproximación minimo cuadrática (caso discreto). Mathematica posee un comando muy flexible y versátil, 
	Fit[nube,base,var], 
que permite construir el polinomio correspondiente:

a) Construir una tabla con los primeros 20 números primos y dibujar los puntos de esta tabla

a=Table[Prime[x],{x,20}]

g1=ListPlot[a,PlotStyle->PointSize[0.02]]

b) Obtener una aproximación lineal a los puntos de la tabla y dibujar la función de aproximación
     c) Dibujar simultaneamente los puntos de la tabla y la función de aproximación
     d) Obtener una aproximación mediante un polinomio de grado 2 de los puntos de la tabla
     e) Dibujar simultaneamente los puntos de la tabla y la función de aproximación
Nota: Utilizar el comando Fit

p1[x_]=Fit[a,{1,x},x]

g2=Plot[p1[x],{x,0,20}]

Show[g1,g2]

Plinomio de grado 2

d) Obtener una aproximación mediante un polinomio de grado 2 de los puntos de la tabla
e) Dibujar simultaneamente los puntos de la tabla y la función de aproximación

p2[x_]=Fit[a,{1,x,(x^2)},x]

g3=Plot[p2[x],{x,0,20}]

Show[g1,g3]

Problema 1

Resolver el problema anterior mediante las ecuaciones normales del ajuste mínimo cuadrático
a) Construir una tabla con los primeros 20 números primos y dibujar los puntos de esta tabla
     b) Obtener una aproximación lineal a los puntos de la tabla y dibujar la función de aproximación
     c) Dibujar simultaneamente los puntos de la tabla y la función de aproximación
     d) Obtener una aproximación mediante un polinomio de grado 2 de los puntos de la tabla
     e) Dibujar simultaneamente los puntos de la tabla y la función de aproximación

Problema 2

Dada la tabla  b = { (1,1.5), (2,1),(3, 0.73),(4, 0.6), (5,0.3),(6, 0.2),(7, 0.1),(8, 0.08)}
 a) Dibujar los puntos de la tabla
 b) Calcular una tabla "c" con los logaritmos neperianos de los puntos de la tabla "b"
c) Realizar un ajuste de la tabla "b" calculando una aproximación lineal de la tabla "c" 
d) Dibujar simultaneamente la función de aproximación y los puntos de la tabla "b".

Cuando se intuye que los datos se ajustan bien a una exponencial. Para confirmarlo se pueden representar los logaritmos neperianos de los datos y ver si se pueden ajustar a una función lineal.
Se puede realizar el ajuste lineal y luego deshacer el cambio o bien realizar el ajuste utilizando la base exponencial.

Error cuadrático

Error del ajuste

Ajuste mediante una recta de la tabla inicial

Error cuadrático  = error del ajuste

Problema 3

Dada la siguiente tabla 
d={(1,2), (2,1.5), (3,1.33), (4,1.25),(5, 1.2),(6, 1.17),(7,1.14), (8,1.13),(9,1.11),(10, 1.1),(11, 1.09),(12, 1.08),(13, 1.07),(14, 1.06),(15, 1.05)}
     a) Estudiar de las siguientes funciones a cual de ellas se podría ajustar:
     	y = b.Exp(cx)
           y = 1/(a x+b)
     	y = a/x+b
     b) Realizar el cambio de variable correspondiente para linealizar la función y obtener la función de aproximación a los puntos de la Tabla "d".

Al representar gráficamente los puntos se ve que no se ajustan a una recta. A continuación se toman logaritmos y se representan los nuevos puntos.

Al tomar los inversos tampoco se obtiene una recta.

Al sustituir x por 1/x sí se obtiene una recta, luego parece que la función a la que mejor se ajustaría es :  y= (a/x) + b.

A este mismo resultado se puede llegar utilizando como funciones de aproximación 1 y 1/x.

Problema 4. Ajuste continuo

Dada la función Cos[x], 
a) Realizar un ajuste continuo mediante un polinomio de grado dos
b) Dibujar simultaneamentre la funcion Cos[x] y el polinomio
c)Dibujar la funcion diferencia.
d) realizar el mismo proceso mediante un polinomio de grado cuatro