martes, 16 de julio de 2013

Poster


Cabe resaltar que debido a que el método de Lin Bairstow es muy extenso, en el poster no estan todas las iteraciones de este, mas si esta el resultado.

lunes, 15 de julio de 2013

NotiMétodos 2: El puente Peteti.



¡Vuelve el programa más aclamado por nuestro profesor de Métodos Numéricos! ¡Con mucho menos presupuesto que el anterior, pero igual de informativo!

http://www.youtube.com/watch?v=kkqMtgqSaCQ

domingo, 14 de julio de 2013

Archivos metodistas

Codigo en C++ para la regla de Horner

#include<stdio.h>
#include<conio.h>
#include<math.h>

int Exponencial(float x0,int aux2){
float product;
product = 1.00;

while ((aux2)!=0){
product *= x0;
aux2--;
}
return product; /*de aqui sale el cuadrada de cada*/
}

float Horner (float x0,float *P, int N){
float *Q,aux,a;
int i,j,product;

aux = 0.00;

Q= (double*)malloc(N*sizeof(double)); /*reservamos la memoria para el vector*/


for (i=N-1;i>=0;i--){
if (i==N-1)
Q[i] = P[i]; /*bn=an*/
else
Q[i] = P[i] + (Q[i+1]*x0); /*bk=ak+ bk+1*x */

}

printf("{ ");

for ( i=0;i printf("-%f",Q[i]);
printf("} ");

j = 0;
for (i=N-1;i>=0;i--){

if (i!=0)

aux += Q[i]*Exponencial(x0,N-1-j-1);/*te calcula las b para poder multiplicarlo*/
/* a=Exponencial(x0,N-1-j-1);*/
printf("da:%f\n",aux);
j++;
}
printf ("E valor numerico del polinomio es:%f\n", aux);
return 0.00;
}
int main(){
float P[5]={-61.0,50.00,-48.00,16.00,3.00};
Horner (3,P, 5);

return 0;

}

Archivos metodistas

Codigo en C++ para el método de Lin Bairstow

#include <stdlib.h>
#include <stdio.h>
#include <math.h>

#define MAX_TERMS 21
int precision_error_flag;
double a[MAX_TERMS],b[MAX_TERMS],c[MAX_TERMS],d[MAX_TERMS];

void find_poly_roots(int n)
{
                               double r,s,dn,dr,ds,drn,dsn,eps;
                int i,iter;

                r = s = 0;
                dr = 1.0;
                ds = 0;
                eps = 1e-14;
                iter = 1;

                while ((fabs(dr)+fabs(ds)) > eps) {
                               if ((iter % 200) == 0) {
                                               r=(double)rand()/16000.;
                               }
                               if ((iter % 500) == 0) {
                                               eps*=10.0;
                                               precision_error_flag=1;
                                               printf("Loss of precision\n");
                               }
                               b[1] = a[1] - r;
                               c[1] = b[1] - r;

                               for (i=2;i<=n;i++){
                                               b[i] = a[i] - r * b[i-1] - s * b[i-2];
                                               c[i] = b[i] - r * c[i-1] - s * c[i-2];
                               }
                               dn=c[n-1] * c[n-3] - c[n-2] * c[n-2];
                               drn=b[n] * c[n-3] - b[n-1] * c[n-2];
                               dsn=b[n-1] * c[n-1] - b[n] * c[n-2];

                               if (fabs(dn) < 1e-16) {
                                               dn = 1;
                                               drn = 1;
                                               dsn = 1;
                               }
                               dr = drn / dn;
                               ds = dsn / dn;

                               r += dr;
                               s += ds;
                               iter++;
                }
                for (i=0;i<n-1;i++)
                               a[i] = b[i];
                a[n] = s;
                a[n-1] = r;
}


void main()
{
                int i,n,order=0;
                double tmp;

                while ((order < 2) || (order > MAX_TERMS-1)) {
                               printf("Polynomial order (2-20): ");
                               scanf("%d",&order);
                }
                printf("Enter coefficients, high order to low order.\n");
                for (i=0;i<=order;i++){
                               printf("a(%d)=",i);
                               scanf("%lf",&a[i]);
                               if (i==0) {
                                               tmp=a[i];
                                               a[i]=1.0;
                               }
                               else a[i]/=tmp;
                               d[i]=a[i];
                }
                b[0]=c[0]=1.0;
                n=order;
                precision_error_flag=0;
                while (n > 2) {
                               find_poly_roots(n);
                                                               n-=2;
                }
                printf("The quadratic factors are:\n");
               
                for (i=order;i>=2;i-=2) /* print quadratics */
                                printf("t^2  %+.15lg t  %+.15lg\n",a[i-1],a[i]);
                if ((n % 2) == 1)
                               printf("The linear term is: \nt  %+.15lg\n",a[1]);
}







Leonard Bairstow

Sir Leonard Bairstow (1880-1963), fue miembro de la Orden del Imperio Británico y nació en 1880 en Halifax, West Yorkshire. Es recordado principalmente por sus trabajos en aviación y por el Método de Bairstow, mediante el cual se pueden encontrar las raíces enteras e imaginarias de un polinomio de grado arbitrario.

Sir Leonard Bairstow fue hijo de Uriah Bairstow, hombre acaudalado de Halifax, West Yorkshire y [matemático] entusiasta. De niño, Leonard asistió a la escuela Queens Road and Moorside Council Schools, antes de ser inscrito en Heath Grammar School, en el cual permaneció de manera breve para ser luego transferido a Council Secondary School - conocida luego como Higher Grade School. Obtuvo una beca en el Royal College of Science en donde obtuvo el patrocinio Whitworth Scholarship que le permitió realizar investigaciones en explosión de gases.

Asistió luego al National Physical Laboratory (Reino Unido), en Bushy Park, en donde fue puesto a cargo del área de investigación en aeronáutica. Mantuvo la Dirección de la Oficina Zaharoff de Aviación en el Imperial College durante el período de 1920-1949 para ser nombrado luego por la monarquía como Sir Leonard Bairstow.

Fue también miembro de la Royal Society of London y de la Royal Aeronautical Society





William George Horner


William George Horner (Bristol, Inglaterra , 22 de septiembre de 1789 – Bath, Inglaterra, 1837) fue un matemático inglés.A los 14 años se convirtió en maestro, cuatro años después se convirtió en director de la misma escuela en que estudió. En 1809 se trasladó a Bath, donde fundó su propio colegio.
Como investigador, sólo tiene en su haber una contribución, el llamado algoritmo de Horner para resolver ecuaciones algebraicas, publicado por la Royal Society en 1819. Este método alcanzó cierta popularidad en Inglaterra y Estados Unidos gracias al también matemático De Morgan, que lo utilizó en sus artículos divulgativos, aunque finalmente se popularizó la regla de Paolo Ruffini, descrito y publicado en 1814, por el cual le fue concedida la medalla de oro por la Italian Mathematical Society for Science. Sin embargo, ni Ruffini, ni Horner fueron los primeros en descubrir este método ya que Zhu Shijie lo había empleado 500 años antes.
Fue educado en la Escuela Kingswood Bristol. A la edad casi increíble de 14 años se convirtió en asistente de maestro en la escuela Kingswood en 1800 y cuatro años más tarde director. Salió de Bristol y fundó su propia escuela en 1809; en el seminario de 27 Grosvenor Place en Bath.
Horner es en gran parte recordado por un método, el método de Horner, de la resolución de ecuaciones algebraicas se le atribuyen por Augustus De Morgan y otros. Ha publicado sobre el tema en las Philosophical Transactions de la Royal Society de Londres en 1819, la presentación de su artículo el 1 de julio. Pero Fuller [ 7 ] ha señalado que, en contra de De Morgan afirmación de s ', este artículo no contiene el método, aunque uno publicado por Horner en 1830 lo hace. Fuller ha encontrado que Teófilo Holdred, un relojero de Londres, llegó a publicar el método en 1820 y observaciones: -
A primera vista, parece plagio Horner como el robo directo. Sin embargo, parece que era de un carácter excéntrico y obsesivo... Un hombre puede fácilmente convencerse de que primero un método rival no era muy diferente de la suya, y luego, poco a poco, llegan a creer que él mismo había inventado.
Esta discusión es un tanto discutible porque el método se había previsto en siglo 19 Europa por Paolo Ruffini (que le valió la medalla de oro ofrecida por la Sociedad Italiana para la Ciencia Matemática que buscaban mejores métodos para la resolución numérica de ecuaciones), sino que, en cualquier caso , ha sido considerado por Zhu Shijie en China en el siglo XIII. En el siglo 19 y principios de los 20 siglos de sesiones, el método de Horner tenía un lugar prominente en América y textos de Inglés en el álgebra. No es razonable pedir por qué debería ser. La respuesta se encuentra simplemente con De Morgan que dio el nombre de método de Horner y una amplia cobertura en muchos artículos que escribió.
Horner hizo otras contribuciones matemáticas, sin embargo, la publicación de una serie de documentos sobre la transformación y resolución de ecuaciones algebraicas, y él también se aplican técnicas similares a las ecuaciones funcionales.Después de que muriera Horner, su hijo llamado también William Horner mantuvo en funcionamiento la escuela de Bath.


Archivos Metodistas

A continuación podrán encontrar la información mas relevante del caso del "Puente Peteti", así como los algoritmos correspondientes para la aplicación de los métodos de Lin Bairstow y la  Regla de Horner:
http://prezi.com/htdmwsoh3mux/el-puente-peteti/

Paper

LOS PUENTES
MÉTODOS NÚMERICOS PARA LA EVALUACION DE POLINOMIOS
  Por: José Castillo, Geraldine Pineda, Ana Samaniego, Brenda Zambrano

Universidad tecnológica de Panamá, Facultad de Ingeniería Industrial, Licenciatura en Ingeniería Mecánica Industrial
Provincia de Panamá, Panamá
Julio – 2013


Resumen
Este proyecto es  un modelo  basado en las irregularidades que dieron como resultado el colapso del puente Tacoma Narrows. Con dicho modelo tratamos de determinar la cantidad correcta de pilares o cimientos que debe tener un puente,  mediante métodos numéricos para la evaluación de polinomios.
Palabras Claves: Oscilaciones, cimientos, pilar, tensores, tableros.




Introducción
Un puente es una construcción que permite salvar un accidente geográfico o cualquier otro obstáculo físico como un río, un cañón, un valle, un camino, una vía férrea, un cuerpo de agua, o cualquier otro obstáculo.

Los puentes
Un puente es una construcción que permite salvar un accidente geográfico o cualquier otro obstáculo., Existen cinco tipos principales de puentes: puentes viga, en ménsula, en arco, colgantes, atirantados. El resto son derivados de estos.  Cada tipo de puente tiene  características especiales en cuanto a diseño, estructura, las cuales varían dependiendo  de su función y la naturaleza del terreno sobre el que el puente es construido
Además de la estructura, el diseño, función y el lugar donde está construido el puente, existen otros factores que son importantes a la hora de con que se deben tomar en cuenta a la hora de construir un puente, como lo son los materiales de construcción, el peso que debe soportar, resonancia, fenómenos naturales como vientos, zona sísmica , entre otras.






Los puentes cuentan con dos partes, De un lado, tenemos la superestructura que consta de las vigas y el tablero donde circulan los autos. De otro lado, tenemos la subestructura, que lleva el peso al terreno de cimentación.
¿Por qué se caen los puentes?
A lo largo de la historia han ocurrido varios desastres en puentes, uno de los más recordados ha sido el caso del puente colgante Tacoma Narrows, en el estado de Washington, EUA.
CASO TACOMA
El puente colgante Tacoma Narrow, l abrió al tráfico  en el verano de 1940.. Casi de inmediato se observó que cuando el viento soplaba en dirección transversal a la de la carretera, originaba grandes oscilaciones verticales en la plataforma o “tablero.” El 7 de noviembre de ese año durante una racha intensa, las oscilaciones aumentaron hasta niveles nunca vistos y el puente fue evacuado. Pronto las oscilaciones se tornaron giratorias, vistas desde el extremo del tablero. Finalmente, las grandes oscilaciones desarmaron el tablero y el puente se derrumbó.
Existen diversas teorías del porque este puente colapso
1.        Theodor von Karman y sus colaboradores dictaminaron que el viento, al soplar perpendicularmente a la carretera, se separaba formando vórtices alternos arriba y abajo del tablero y con ello establecía una fuerza vertical que actuaba sobre el puente y causó las oscilaciones.
2.       Otras personas supusieron que la frecuencia de esa función forzada periódica coincidía exactamente con la frecuencia natural del puente, llegando a la resonancia, a las grandes oscilaciones y a la destrucción.
3.       Lazer y McKerma sostienen que fueron los efectos no lineales, y no la resonancia lineal, los factores principales que provocaron las grandes oscilaciones en el puente. Esta investigación actualmente no se ha terminado.
en el siguiente enlace podran encontrar una simulación de lo sucedido en el puente Tacoma

Nuestro modelo
Actualmente no se sabe a ciencia cierta que causo las oscilaciones y posterior  derrumbe del Tacoma Narrow.  Por ello hemos elaborado un modelo en lugar ficticio con algunas de las características del puente Tacoma, pero enfocándonos en la cantidad de pilares o cimientos que necesita  con el fin de que el puente no presente oscilaciones  y determinar cómo debe estar construido correctamente.
PUENTE ¨PETETI ¨
Un puente ubicado en unas montañas era muy famoso, debido a la forma de su estructura y a un fenómeno que ocurría, el puente cual hoja se movía! Por ello personas de muchos lugares del mundo iban a verlo, lastimosamente este colapso, pero gracias a esto se pudieron recoger muchos datos útiles para la construcción de muchos puentes en el futuro.
Resulta que la zona en el que estaba ubicado el puente tiene la cualidad de tener vientos muy fuertes, y debido a que el lugar no debía quedar incomunicado tenían que hacer otro puente de 0.7km que aguantara la velocidad de los vientos, para ello un grupo de expertos hicieron una ecuación en la cual obtenemos la resistencia del puente con respecto a la cantidad de pilares que se encuentren en este
Donde “x” es el número de pilares y la resistencia de nuestro puente debe ser de una escala de 2 por lo que la ecuación quedaría asi:

Resultados
Obtenemos como solución tres valores de raíces de las cuales la mayor debe ser la cantidad de pilares que se necesitan
x1=0.4357,    x2=2.0    y      x3= 3.278
Debido a que el número mayor es 3, esa es la cantidad de pilares. Que debemos colocar en nuestro puente de 0.7km
Evaluación del polinomio con métodos numéricos:
A.      Método de Horner. División Sintética 


B.      Método Lin-Bairstow



Obteniendo finalmente un acercamiento a los valores de raíces:
Ø  x1= 1.999
Ø  x2= 0.4357
Ø  x3 = 3,278

Cálculo del error
Al hacer cualquier cálculo, siempre se presentara un pequeño margen de error, el cuál expondremos a continuación:
Las raíces correctas, con sus cifras significativas son: 2, 0.4357322327 y 3.278553482.
-              Existe un error de redondeo o truncamiento en ambos métodos en los que nos basamos para esta experiencia, ya que se trató de reducir las cifras significativas de los resultados para una mejor comodidad ya sea en los cálculos o simplemente visual.
Dejando el error de redondeo o truncamiento por un lado:
-              Por el método de Horner nos da un error relativo del 0% en todas las variables ya que estas están muy aproximadas a las reales (pero con menos cifras significativas).
-              Por el método de Bairstow nos da un error relativo del 0.05% en la raíz x1 = 1.999 pues ésta debe ser 2. Y las otras raíces si dan correctas (pero con menos cifras significativas).

Referencias
1.       Zill, Dennis (2009). Ecuaciones Diferenciales con problemas de valores en la frontera. Séptima Edición, CENGAGE Learning. México

2.       Chapra, Steven. Métodos numericos para Ingenieros. Quinta Edición.