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

Page contents not supported in other languages.
Vaizdas iš Vikipedijos, laisvosios enciklopedijos.

Didesnės raiškos iliustracija(SVG rinkmena, formaliai 540 × 408 taškų, rinkmenos dydis: 59 KiB)

Ši byla yra iš bendros Wikimedia Commons nemokamų resursų duomenų bazės, palaikomos Wikimedia Foundation organizacijos. Norėdami sužinoti licencijavimo smulkmenas, žiūrėkite paveikslėlio aprašymą
Paveikslėlio aprašymas
Paveikslėlio aprašymas
Į paveikslėlio aprašymą

Aprašymas

Aprašymas
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 г.
Data
Šaltinis Mano darbas
Autorius Nicoguaro
Kitos versijos
SVG genesis
InfoField
 
Šio SVG failo išeities kodas yra validus.
Išeitinis kodas
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,     2018,     2018],
       [     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]])
year = data[0, :]
primes = data[1, :]

year_of_lin_growth = 1998

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()

Licencija

Aš, šio darbo autoriaus teisių savininkas, publikuoju jį su šia licencija:
w:lt:Creative Commons
autoriaus nurodymas
This file is licensed under the Creative Commons Attribution 4.0 International license.
Jūs galite:
  • dalintis – kopijuoti, platinti bei persiųsti šį darbą
  • pri(si)taikyti – adaptuoti darbą
Su šiomis sąlygomis:
  • autoriaus nurodymas – Turite pateikti atitinkamą kreditą, pateikti nuorodą į licenciją ir nurodyti, ar buvo atlikti pakeitimai. Tai galite padaryti bet kokiu būdu, bet ne taip, kad licencijos išdavėjas patvirtintų jus ar jūsų naudojimą.

Captions

Add a one-line explanation of what this file represents

Items portrayed in this file

vaizduoja

Rinkmenos istorija

Paspauskite ant datos/laiko, kad pamatytumėte rinkmeną tokią, kokia ji buvo tuo metu.

Data/LaikasMiniatiūraMatmenysNaudotojasPaaiškinimas
dabartinis15:09, 22 rugpjūčio 2020Versijos 15:09, 22 rugpjūčio 2020 miniatiūra540 × 408 (59 KiB)Gap9551fixed error in linear rate (red line fit) in legend
14:46, 22 rugpjūčio 2020Versijos 14:46, 22 rugpjūčio 2020 miniatiūra540 × 408 (59 KiB)Gap9551Reverted to version as of 11:22, 22 August 2020 (UTC) file appears fine now
14:39, 22 rugpjūčio 2020Versijos 14:39, 22 rugpjūčio 2020 miniatiūra540 × 408 (59 KiB)Gap9551another attempt to upload file with 4.3 yr doubling time. the previous upload did not overwrite the existing file.
14:22, 22 rugpjūčio 2020Versijos 14:22, 22 rugpjūčio 2020 miniatiūra540 × 408 (59 KiB)Gap9551doubling time fixed in legend
16:17, 24 birželio 2020Versijos 16:17, 24 birželio 2020 miniatiūra540 × 409 (56 KiB)FDominecUpdated datasets to 2020; added exponential and linear portions of the curve fit.
23:30, 13 rugsėjo 2016Versijos 23:30, 13 rugsėjo 2016 miniatiūra659 × 504 (63 KiB)NicoguaroUser created page with UploadWizard

Paveikslėlis nenaudojamas nei viename straipsnyje.

Visuotinis rinkmenos naudojimas

Ši rinkmena naudojama šiose viki svetainėse:

Meta duomenys