Académique Documents
Professionnel Documents
Culture Documents
SOFTWARE DE SIMULACIÓN
NUMERO PI
Integrantes:
Alexandra Angamarca
Pablo Rivadeneira
Grupo: Gr #3
Fecha: 27/04/2018
2018-A
PROBLEMA:
INTRODUCCIÓN
Letra griega pi. Símbolo adoptado inicialmente en 1706 por William Jones y popularizado
por Euler.
Una de las primeras aproximaciones fue la de Arquímedes en el año 250 adC que calculo
que dio el valor 211875/67441 ~ 3,14163.
Teoría
Este no es un número exacto sino que es de los llamados irracionales , ya que tiene infinitas
cifras decimales.
MÉTODO TRES
1.2. Método 2: Calculo del numero pi con el método de los hermanos Chudnovski
1.2.1. Historia
Los Hermanos Chudnovsky son matemáticos conocidos por habilidad
matemática y de construcción de supercomputadores caseros, ambos
trabajan juntos en los proyectos. En el año 1992 un artículo en el New
Yorker mencionaba que según la opinión de muchos matemáticos
que Gregory Chudnovsky es uno de los mejores matemáticos vivos del
mundo. Su hermano David Chudnovsky trabaja colaborando con él y le
asiste en su enfermedad de Myasthenia Gravis. El algoritmo implementa
una serie de convergencia rápida siguiendo una serie hipergeométrica,
empleada en el cálculo de alta precisión de los dígitos de pi. Se
fundamenta en una fórmula de Ramanujan y parece ser la empleada en
los cálculos de pi de comienzos del siglo XXI. [2]
Programa
sumatorio=sumatorio+((factorial(4*i))/((factorial(i))^4))*...
(((b*i)+c)/(d^(4*i)));
end
%inverso del sumatorio
pi_1=1/(a*sumatorio);
%para mostrar los decimales de pi se utiliza la
funcion vpa
digits(320)
pi_calculado=vpa(pi_1);
disp('El valor de pi calculado con el metodo de
Ramanujan es: ')
pi_calculado
case 3
%constantes
a=426880*sqrt(10005);
b=545140134;
c=13591409;
d=640320;
%algoritmo
sumatorio=0;
j=1;
%bucle for para un sumatorio
%para esta formula matlab no soporta mas de 25
repeticiones
for i=0:1:25
sumatorio=sumatorio+((factorial(6*i)*(c+(b*i)))/...
(factorial(3*i)*((factorial(i))^3)*((-
c)^(3*i))));
end
%inverso del sumatorio
pi_1=(a/sumatorio);
%Uso de la funcion vpa para mostrar los dijitos de pi
digits(350)
pi_calculado=vpa(pi_1);
disp('El valor de pi calculado con el metodo de
Chudnovsky es: ')
pi_calculado
end
end
end
Resultados
Cabe destacar que para mostrar los decimales de pi se utilizó la función vpa. vpa (x) usa
aritmética de coma flotante de precisión variable (VPA) para evaluar cada elemento de la
entrada simbólica x por lo menos para d dígitos significativos, donde d es el valor de la
función de dígitos. El valor predeterminado de los dígitos es 32.
Método Ramanujan: Según la historia del número pi calculado por este método puede
llegar a obtener 8 decimales exactos por cada interacción del sumatorio, el programa
realizado únicamente puede realizar un máximo de 40 interacciones, a partir de este se
convierte en algo incalculable para el programa, esto quiere decir que se puede calcular
exactamente 320 decimales, lo cual para su apreciación se utiliza el operador vpa, el
programa tiene una duración aproximada de 0.069338 segundos. A continuación, se
presentará los decimales que obtuvo el programa:
3.141592653589793238462643383279502884197169399375105820974944592307816
4062862089986280348253421170679821480865132823066470938446095505822317
2535940812848111745028410270193852110555964462294895493038196442881097
5665933446128475648233786783165271201909145648566923460348610454326648
2133936072602491412737245870066063155882
3.141592653589793238462643383279502884197169399375105820974944592307816
4062862089986280348253421170679821480865132823066470938446095505822317
2535940812848111745028410270193852110555964462294895493038196442881097
5665933446128475648233786783165271201909145648566923460348610454326648
21339360726024914127372458700660631558817
Como se puede observar los decimales calculados por el programa son exactos,
exceptuando por el final ya que hace un redondeo, a partir de esto los decimales deberían
ser incorrectos, ya que el programa no puede realizar mas bucles for con esta fórmula.
3.141592653589793238462643383279502884197169399375105820974944592307816
4062862089986280348253421170679821480865132823066470938446095505822317
2535940812848111745028410270193852110555964462294895493038196442881097
5665933446128475648233786783165271201909145648566923460348610454326648
2133936072602491412737245870066063155881748815209209628292540917153644
3.141592653589793238462643383279502884197169399375105820974944592307816
4062862089986280348253421170679821480865132823066470938446095505822317
2535940812848111745028410270193852110555964462294895493038196442881097
5665933446128475648233786783165271201909145648566923460348610454326648
2133936072602491412737245870066063155881748815209209628292540917153643
6
Que como se puede observar igualmente son exactos exceptuando otra vez por el ultimo
decimal que esta redondeado. Este método resulta ser mas efectivo, ya que a pesar de no
soportar mas de 25 bucles for puede llegar a dar más decimales exactos del número pi,
además de que su duración en el programa es mas pequeña.
Referencias