Archivo:Digits in largest prime found as a function of time.svg

De testwiki
Ir a la navegación Ir a la búsqueda
Archivo original (archivo SVG, nominalmente 614 × 461 píxeles, tamaño de archivo: 52 kB)

Este archivo es de Wikimedia Commons y puede usarse en otros proyectos. La descripción en su página de descripción del archivo se muestra debajo.

Cualquier usuario autoverificado puede sobrescribir este archivo desde la misma fuente. Por favor, verifica que sobrescribes de acuerdo con la política correspondiente.

Resumen

Descripción
English: Plot of the number of digits in largest known prime by year, since the electronic computer. Note that the vertical scale is logarithmic. The green line is the exponential curve of best fit that was followed roughly until 1999; the red curve is a linear fit, more accurate after 1999. Run the source code below to get actual
Русский: График зависимости числа цифр в наибольшем известном простом числе по годам с момента появления первого компьютера. Вертикальная шкала логарифмическая. Зеленая линия - экспоненциальная кривая наилучшего приближения, которой примерно следовал рост числа цифр до 1999 года; красная кривая - это линейная аппроксимация, более точное приближение после 1999 г.
Fecha
Fuente Trabajo propio
Autor Nicoguaro
Otras versiones
SVG desarrollo
InfoField
 El código fuente de esta imagen SVG es válido.
 Este gráfico vectorial fue creado con Matplotlib
Código fuente
InfoField

Python code

import numpy as np
import matplotlib.pyplot as plt
from scipy.optimize import curve_fit
from matplotlib import rcParams

rcParams['font.size'] = 14

# Data
data = np.array([[
            1952,     1952,     1957,     1961,     1961,     1963,
            1963,     1971,     1978,     1979,     1979,     1982,
            1983,     1985,     1989,     1992,     1994,     1996,
            1996,     1997,     1998,     1999,     2001,     2003,
            2004,     2005,     2005,     2006,     2008,     2013,
            2016,     2017,     2018,     2024],
       [     157,      687,      969,     1281,     1332,     2917,
            3376,     6002,     6533,     6987,    13395,    25962,
           39751,    65050,    65087,   227832,   258716,   378632,
          420921,   895932,   909526,  2098960,  4053946,  6320430,
         7235733,  7816230,  9152052,  9808358, 12978189, 17425170,
        22338618, 23249425, 24862048, 41024320]])
year = data[0, :]
primes = data[1, :]

year_of_lin_growth = 1999

plt.plot(year, primes, color="#377eb8", marker=".", drawstyle='steps-post')
plt.yscale('log')
# Fit function
def lin_fun(x, a, b):
    return a*x + b

def exp_fun(x, a, b):
    return np.exp(a*x + b)
    
## Plot the older part which follows exponential growth of digits with time
popt, pcov = curve_fit(lin_fun, year[year <= year_of_lin_growth], np.log(primes[year <= year_of_lin_growth]))
x_vals = np.linspace(np.min(year), year_of_lin_growth, 20)
y_vals = exp_fun(x_vals, *popt)
plt.plot(x_vals, y_vals, color="#1ae41c", linestyle="dashed", label='digit number doubling every {:.1f} y'.format(np.log(2)/popt[0]))
print('Exponential fit (green curve): y = exp({:.4f} * t  +  {:.4f})'.format(*popt))



year_of_lin_growth = 1998
## Plot the newer part which follows linear growth of digits with time
popt, pcov = curve_fit(lin_fun, year[year >= year_of_lin_growth], primes[year >= year_of_lin_growth])
x_vals = np.linspace(year_of_lin_growth, np.max(year), 100)
y_vals = lin_fun(x_vals, *popt)
plt.plot(x_vals, y_vals, color="#e41a1c", linestyle="dashed", label='digit number growing by $10^6$ every {:.2f} y'.format(1e6/popt[0]))
print('Linear fit (red curve): y = {:.4g} * t  +  {:.4g}'.format(*popt))

# Plot details
plt.legend(prop={'size':10})
plt.xlabel("Year")
plt.ylabel("Number of digits in largest known prime")
plt.savefig("Digits_in_largest_found_prime_as_a_function_of_time.svg", bbox_inches="tight")
plt.show()

Licencia

Yo, el titular de los derechos de autor de esta obra, la publico en los términos de la siguiente licencia:
w:es:Creative Commons
atribución
Este archivo está disponible bajo la licencia Atribución/Reconocimiento 4.0 Internacional de Creative Commons.
Eres libre:
  • de compartir – de copiar, distribuir y transmitir el trabajo
  • de remezclar – de adaptar el trabajo
Bajo las siguientes condiciones:
  • atribución – Debes otorgar el crédito correspondiente, proporcionar un enlace a la licencia e indicar si realizaste algún cambio. Puedes hacerlo de cualquier manera razonable pero no de manera que sugiera que el licenciante te respalda a ti o al uso que hagas del trabajo.

Leyendas

Añade una explicación corta acerca de lo que representa este archivo

Elementos representados en este archivo

representa a

Historial del archivo

Haz clic sobre una fecha y hora para ver el archivo tal como apareció en ese momento.

Fecha y horaMiniaturaDimensionesUsuarioComentario
actual04:01 27 oct 2024Miniatura de la versión del 04:01 27 oct 2024614 × 461 (52 kB)wikimediacommons>JrandWPUpdate M136279841, discovered in 2024

La siguiente página usa este archivo: