\documentclass[spanish]{article} \oddsidemargin 0in \textwidth 6.75in \topmargin 0in \textheight 8.5in \begin{document} \SweaveOpts{concordance=TRUE} \bf $~$ \\UNIVERSIDAD NACIONAL AGRARIA \\DPTO. Estad\'istica e Inform\'atica.\\M\'etodos Num\'ericos y Simulaci\'on.\\Final, Julio del 2016\\ \begin{enumerate} \item La estaci\'on de Juli en Puno registra la precipitaci\'on diaria en mm. Durante el mes de enero del 2012, para los dias 12 y 14 no tienen registros. Utilice la informacion del mes y realice una interpolaci\'on por diferencias finitas de segundo orden para tener una referencia de sus valores. 28.7, 19.6, 6.5, 0.3, 17.4, 8.6, 12.3, 0.9, 12.4, 0, 0, NA, 0, NA, 0, 1.6, 9.4, 0.6, 5.6, 7.6, 22, 2.5, 5.6, 4, 18.3, 20.6, 7.5, 8.4, 1.2, 2.1, 1.2 Segun la tabla y el metodo de interpolacion de segundo orden, Para el dia 12, se puede utilizar diferencias finitas hacia atras, dado que del dia 1 al 11 tiene espaciamiento de un dia. $ \begin{array}{cccc} dia & prec& D1& D2\\ 9 & 12.4\\ 10 & 0 & -12.4\\ 11 & 0 & 0 & 12.4 \end{array} $ $f(x_n+\alpha h) =fn+ \alpha \nabla f_n + \frac {1}{2}\alpha (\alpha+1){\nabla}^2f_n$ $x_{11}+\alpha h = 12$; siendo $h=1$, entonces $\alpha=1$ $prec(12) = 0+ 0 + 12.4 = 12.4$ Para el dia 14, se puede utilizar diferencias finitas hacia adelante, dado que del dia 15 al 31 tiene espaciamiento de un dia. $ \begin{array}{cccc} dia & prec& D1& D2\\ 15 & 0 & 1.6 & 6.2\\ 16 & 1.6 & 7.8 & -16.6\\ 17 & 9.4 & -8.8 & 13.8 \end{array} $ $f(x_k+\alpha h) =f_k+ \alpha \Delta f_k + \frac {1}{2}\alpha (\alpha-1){\Delta}^2f_k$ $x_{15}+\alpha h = 14$; siendo $h=1$, entonces $\alpha=-1$ $prec(14) = 0+ (-1)*(1.6) + 0.5*(-1)*(-2)*6.2 = 4.6$ \item Hallar la soluci\'on de la ecuaci\'on diferencial y'= 1/x, para x=5, dado que y(1)=0, calcular matem\'aticamente la respuesta y compare con el valor de Euler con h=0.5 y h=1 mediante el error absoluto de las aproximaciones de Euler.\ $Y'=1/x$; $Y =\int 1/x dx = \log(x) + c$. Y(1)=log(1)+c = 0; c=0; $y=\log(x)$ <<>>= f<-function(x) log(x) real<-f(5) cat("Valor real",real,"\n") y<-NULL;x<-NULL x[1] <-1 y[1]<-0 h<-0.5 for(k in 1:8){ x[k+1]<-x[k]+h y[k+1]<-y[k]+h/x[k] } cbind(x[9],y[9]) error<-abs(real-y[9]) cat("Error absoluto:",error,"\n") y<-NULL;x<-NULL x[1] <-1 y[1]<-0 h<-1 for(k in 1:4){ x[k+1]<-x[k]+h y[k+1]<-y[k]+h/x[k] } cbind(x[5],y[5]) error<-abs(real-y[5]) cat("Error absoluto:",error,"\n") @ \item Un proyect\'il se desplaza en el espacio siguiendo su trayectoria. Al ponerse en orbita la distancia recorrida "y" sigue la siguiente ecuaci\'on: $y'- 10t= te^{(-t)}$. A 10 minutos de despejado se encontro a 280 km de su origen. determine a que distancia del origen se encontrar\'a el proyect\'il a los 12 y 14 minutos si realiza los calculos a espaciamientos de 1 minuto. Use taylor de orden 2.\ $y'- 10t= te^{(-t)}$ t=10, y(10)=280 Taylor de orden 2: $y_{k+1}=y_{k} + hy'_k+ \frac{h^2}{2}y''_k$ $y'= te^{(-t)}+10t$ $y''= e^{(-t)}(1-t)+10$ <<>>= f<-function(t)t*exp(-t)+10*t f1<-function(t)exp(-t)*(1-t)+10 y<-NULL;t<-NULL y[1]<-280 t[1]<-10 for (k in 1:4){ t[k+1]<-t[k]+1 y[k+1]<-y[k] + f(t[k])+ f1(t[k])/2 } cbind(t[c(1,3,5)],y[c(1,3,5)]) @ \item En un estacion de gasolina, se disponde de varios tipos de combustible como GLP y gasolina de diferente octanaje. el consumo en soles (x) por cada 5 minutos sigue una ley de probabilidades cuya funcion de densidad es: $x^2*e^{-0.5x}/16$. Seg\'un esta ley, x varia entre 0 e infinito, sin embargo se puede calcular que mayor de 50 soles es cero. Hallar por similaci\'on el consumo de los pr\'oximos 10 minutos.\ X: consumo $f(x)=x^2*e^{-0.5x}/16$; $0>= f<-function(x)x^2*exp(-0.5*x) x<-1:50 c<-1/max(f(x)) # la constante c = 7.38 @ Aplicando el m\'etodo para generar los valores aleatorios. Definir a $x$ como una función de $r \in [0,1]$ Generar r1 y r2 $r_2 \le c~ f[50 r_1]$, dicho par es aceptado y $x = 50~r1$ Aplicando: 0.94 0.01; 0.95 0.40; 0.45 0.14; 0.43 0.10; \underline{0.20 0.74}; 0.43 0.06; 0.80 0.60; 0.90 0.19; 0.30 0.35; 0.38 0.33; \underline{0.28 0.83} primer par r1=0.94; r2=0.01 $0.01 \le 7.38 f(50 *0.94)=6.34 e-8$, dicho par no es aceptado el par r1=0.20, r2=0.74 $0.74 \le 7.38 f(50 *0.2)=0.31$, dicho par es aceptado x= 50*0.2 = 10 Buscando otro par: r1=0.28, r2=0.83 que satisface, entonces: x= 50*0.28 = 14 por lo tanto en los proximos 10 minutos se tendra 10+14=24 soles. \item Una F\'abrica de champoo ha estado experimentando problemas con una de sus m\'aquinas que llena las botellas de champoo que trabajan en dos turnos. Esta m\'aquina tiene una embotelladora con seis cabezas de llenado cada una y deben llenar cada botella con 220 +/- 5 mililitros de champoo. Los clientes se han estado quejando de que algunas de las botellas de champoo no est\'an completamente llenas, por el contrario los directores de la F\'abrica se han quejado de que algunas botellas auditadas antes de ser enviadas contienen demasiado champoo y algunas derraman champoo en el suelo. Se asume que el llenado es aleatorio distribu\'ido normalmente y que esta afecto en forma lineal por el cabezal y el turno y la desviacion estandar de factores no controlados segun estudios descriptivos es $5 mm$ y los promedios por cabezal en el turno de la mañana por cabezal: 221, 224, 219, 223, 218, 220 y por la tarde 215, 222, 215, 225, 214, 218. \begin{enumerate} \item Plantear un modelo que permita simular respuestas por d\'ia respecto de cada turno y por cada cabezal. modelo: $y_{ij} = \mu + t_i + c_j + \epsilon_{ij}$; i=1,2; j=1,2,3,4,5,6 $y_{ij}$ la cantidad llenado en cada botella. $\mu$ la media de llenado. $t_i$ el efecto del turno $c_j$ el efecto del cabezal Estimacion de los parametros: <<>>= A<-rbind(c(221, 224, 219, 223, 218, 220),c(215, 222, 215, 225, 214, 218)) u<-mean(A) t<-apply(A,2,mean)-u c<-apply(A,1,mean)-u print(u) print(t) print(c) @ \item Simular el llenado de la primera botella del cabezal 3 en el turno de la mañana. $t_3 = -2.5$ $c_1 = 1.3333$ $\mu = 219.5$ Generando el error aleatorio que sigue una normal con media cero y $\sigma = 5$. utilizando los primero 12 valores aleatorios para generar un valor normal. $r = 5(\sum r_i - 6) = $ <<>>= r<-c(0.94, 0.01, 0.95, 0.40, 0.45, 0.14, 0.43, 0.10, 0.20, 0.74, 0.43, 0.06) error<-5*(sum(r)-6) u <- 219.5 t3 <- -2.5 c1 <- 1.3333 botella<-u+t3+c1+error print(botella) @ El llenado en la primera botella en el turno de la manana por el cabezal 3 es: 212.6 mililitros. \end{enumerate} \end{enumerate} Puntaje 4 c/u.\\ \\ Utilizar la tabla de n\'umeros aleatorios para las preguntas de simulaci\'on.\ <>= set.seed(seed=542) x<-round(runif(75),2) print(x) @ \end{document}