Calculando π (pi)

Si pregunto al lector por el valor del perímetro de la circunferencia y del área del círculo, seguramente luego de un pequeño esfuerzo de memoria sabrá decir 2πr y πr², respectivamente: supongo que al máximo tendrá cierta vacilación al tratar de recordar superficies y volúmenes de esferas, pero las características del círculo le habrán quedado grabadas a fuego luego de tanto ejercicio aburrido en la escuela. Ahora bien, ¿se ha preguntado alguna vez de dónde salen esas fórmulas? ¿Y el significado de ese número llamado «pi» que en ellas aparece?

El tema no es baladí, pero nada mágico se encuentra detrás de estos conceptos y este número. Hoy trataré de guiar al lector en un pequeño viaje para mostrar que toda fórmula tiene un porqué y que estos porqués suelen ser infinitamente más entretenidos que lo que podamos luego hacer con estas mismas fórmulas.

NOTA: Si bien esta entrada es mayormente sobre matemática y geometría (y educación), dado que al final hablo de un pequeño guión para GNU Octave también usará la categoría Software además de Ciencia.

Definición

El origen del número π en sí mismo no ofrece dificultad: la relación entre el perímetro p de un círculo y su diámetro (o el doble de su radio, r), es decir \displaystyle \pi = \frac{p}{2 r}. ¿Pero cómo se ha conocido su valor?

El primer método que viene a la mente es quizás el dibujar un círculo, con un hilo tomar la medida de su perímetro, medir el diámetro y listo… salvo, claro está, por el problema de la precisión. Y es que medir líneas curvas es siempre un reto (quizás en algún futuro artículo hablaremos de eso): por algo las reglas son siempre rectas.

Si bien egipcios y babilonios, en épocas tan tempranas como el siglo 19 antes del inicio de nuestro calendario, eran conscientes del número π el obtener un valor preciso del mismo fue un dolor de cabeza durante milenios.

Hoy en día existen métodos numéricos muy precisos basados en desarrollos en serie que convergen rápidamente por lo que ya se han computado más de 12 trillones de dígitos de este notable número, pero en una época tan cercana como el 1400 de nuestra era se conocían solo diez de esos dígitos.

En la antigüedad, el mejor método de aproximar el número π era trazar un polígono dentro y otro fuera de un círculo y a contacto con el mismo, midiendo luego los lados: claramente, cuantos más lados tengan estos polígonos más cercanos serán al círculo que intentan aproximar. Este método fue utilizado por Arquímedes, quien dibujando cuidadosamente un polígono de 96 lados obtuvo un valor para π con un error entre un 0,002% y 0,003%, lo cual no está nada mal.

En este artículo, gracias al uso de herramientas algebraicas y computacionales que el sabio de Siracusa no tenía, ofreceré una versión «actualizada» del método de Arquímedes que, creo, resulta didáctica y a la vez entretenida. Al menos, yo la he pasado bien preparando este artículo…

El método

Siguiendo la idea comentada más arriba, intentaremos aproximar el valor del perímetro de una circunferencia calculando el perímetro de un polígono regular con cada vez más lados y cuyos vértices están siempre en contacto con la circunferencia. Se construirá así una sucesión que usará cada aproximación para calcular la siguiente.

Supongamos, para simplificar los cálculos, que la circunferencia tiene diámetro 1 (y por lo tanto, su radio será ½): de esta forma su perímetro será exactamente igual a π. Ahora tracemos la primer aproximación: un cuadrado inscrito. Claramente esta aproximación no puede ser muy buena, pero la usaremos para calcular las siguientes: la idea será pasar del cuadrado a un octágono, de este a un polígono de dieciséis lados, luego a uno de treinta y dos… es decir, duplicar a cada paso el número de lados.

AproximarPi

Representación geométrica de los dos primeros polígonos usados para aproximar el círculo

Si llamamos \ell_n al lado del enésimo polígono (1 para el cuadrado, 2 para el octágono), es claro por el teorema de Pitágoras (hablamos de él en una entrada anterior) que

\displaystyle \ell_1 = \frac{\sqrt 2}{2}

También podemos utilizar Pitágoras para calcular \ell_2 a partir de \ell_1

\displaystyle \ell_2 = \sqrt{\left( \frac{\ell_1}{2} \right)^2 + \left( \frac{1}{2} - \sqrt{\frac{1}{4} - \left( \frac{\ell_1}{2} \right)^2} \right)^2}

Ahora bien, es claro que el proceso se puede repetir para el polígono 3, y el 4… y que siempre tendremos una fórmula con la misma estructura. De hecho

\displaystyle \ell_n = \sqrt{\left( \frac{\ell_{n-1}}{2} \right)^2 + \left( \frac{1}{2} - \sqrt{\frac{1}{4} - \left( \frac{\ell_{n-1}}{2} \right)^2} \right)^2}

Ahora bien, ¿cuántos lados tiene el polígono n? Dado que estamos siempre multiplicando por dos (y que hemos comenzado por cuatro lados), el polígono n tendrá 2^{n+1} lados y por lo tanto su perímetro será

p_n = 2^{n+1} \ell_n

Esto nos lleva a la siguiente fórmula, donde hemos reemplazado \ell_n por \ell_n = \frac{p_n}{2^{n+1}}

\displaystyle p_n = \sqrt{\left( \frac{p_{n-1}}{2^{n+1}} \right)^2 + \left( \frac{1}{2} - \sqrt{\frac{1}{4} - \left( \frac{p_{n-1}}{2^{n+1}} \right)^2} \right)^2}

Esta fórmula es interesante, ya que para calcular un término necesita del valor del anterior: para obtener el término 2 necesitamos conocer el 1, para el 3 conocer el 2… lo que nos da una relación de recurrencia.

Un pequeño programita

En una entrada anterior hablamos ya sobre Octave, el «más que un clon» de Matlab que recientemente ha estrenado interfaz gráfica.

Como Matlab, Octave no trabaja con precisión arbitraria por lo que no podremos sacar de él más que quince dígitos (recomiendo usar el formato «format long»). Pero la idea de este artículo no es calcular cientos de dígitos de π sino mostrar que el cálculo en sí es un problema interesante y, por qué no decirlo, sumamente entretenido.

Desempolvando entonces mis recuerdos del lenguaje m, pues he creado este pequeño programa (el editor de Octave no acepta acentos…)

function [api,dif]=aproximarpi(x);
% Uso: [api,dif]=aproximarpi(x)
% "api" es la aproximaci´on de pi que buscamos
% "dif" una estimaci´on del error, calculada como la
% diferencia entre las dos ´ultimas aproximaciones
% "x" el n´umero de pasos elegido.

N=round(x); % parte entera de x por si las moscas

p1=2*sqrt(2); % el primer t´ermino de la sucesi´on

base=ones(1,N); % construyendo los vectores (podr´ia haber sido "zeros"...)
aprox=ones(1,N);
aprox(1)=p1; % la primer aproximaci´on (el cuadrado)

for k = 2 : N
base(k)=k;
perimetro=aprox(k-1);
parte=(perimetro/(2^(k+1)))^2;
aprox(k)=2^(k+1)*sqrt(parte + (1/2 - sqrt(1/4 - parte))^2);
end

api=aprox(N);
dif=aprox(N)-aprox(N-1);

plot(base,aprox)
Corriendo el programa en GNU Octave

Corriendo el programa en GNU Octave

Como puede verse de la captura de pantalla, con el polígono 27 (un polígono de 2^{28} = 268 435 456 lados) alcanzamos finalmente la precisión que puede darnos Octave, obteniendo

\pi \approx 3,14159265358979

Otra cosa importante es que luego del cuarto polígono (el de 32 lados) el valor de la aproximación se acerca al valor real cada vez más lentamente. Es decir, la sucesión tiene un «límite» bien definido.

Conclusión

Este pequeño cálculo ha servido no solo para saber de dónde sale π, sino también para tocar casi sin darnos cuenta conceptos centrales del cálculo como son los límites, las sucesiones y los cálculos recursivos. ¡Bastantes matemáticas para un modesto círculo!

Sigue quedando la pregunta sobre el porqué de la fórmula del área del círculo… pero sobre eso hablaremos otro día.

,

  1. #1 por Sr.Polyphenol el 22 junio, 2014 - 21:34

    Preciosa entrada
    ¡Muchas gracias!

    • #2 por elpinguinotolkiano el 22 junio, 2014 - 21:37

      ¡Gracias a ti por leerla! Veremos de mantener el nivel😉

      Saludos

  1. Calculando áreas, 1 | El pingüino tolkiano
  2. Calculando áreas, 2 | El pingüino tolkiano
A %d blogueros les gusta esto: