一般化ナベアツ数Nab_n(x) (xまでのうちnの倍数とnがつく数のときだけアホになる)のナベアツ数階段をPythonでプロットする。この前やった加藤文元さんのナベアツ数の図示の続き。どれもNab_n(x)/x→1?
この前の
の続き。
オリジナルのナベアツ数は3の倍数と3がつくときだけアホになる、だがnの倍数とnがつくときだけアホになる、のが一般化ナベアツ数。
Nabn(x)
と書こう。これを10^6まで、n=1-20まで図示するとこうなった。もちろんn=1は全部の数。結構思わせぶりな曲線になってる。
ではn=20-200では?
どれもNab_n(x)/x→1?
Pythonのコードはこちら。高速化のためにNumbaを使った。
import matplotlib.pyplot as plt
import numpy as np
from numba import njit
x=1000000
m=20
n = np.arange(1, x+1)
@njit
def Nab(n, x):
count = 0
nb = np.zeros(x)
for k in range(1, x+1):
if k % n == 0 or str(n) in str(k):
count += 1
nb[k-1] = count
return nb
plt.figure(figsize=(15,15))
plt.grid()
plt.title("Generalized Nabeatsu Numbers Nab_n(x)", fontsize=24)
plt.xlabel('x', fontsize = 18)
plt.ylabel('Nab(x)', fontsize = 18)
plt.tick_params(labelsize=18)
plt.xscale("log")
plt.yscale("log")
for i in range(1,m+1):
a = Nab(i, x)
s = 'Nab_' + str(i) + '(x)'
plt.plot(n, a, label = s)
plt.legend(fontsize=12)
plt.show()
« 松屋で極上グラナパダーノ チーズトマト厚切りロースかつ定食(コロッケ付き、豚汁変更のフルセット)でいただく。チーズが粉になって風味がよくなった。 | トップページ | Python+Sympy(数式処理)でZパラメータ(インピーダンス行列)からSパラメータに変換する。その1、成分で書く場合 »
「日記・コラム・つぶやき」カテゴリの記事
« 松屋で極上グラナパダーノ チーズトマト厚切りロースかつ定食(コロッケ付き、豚汁変更のフルセット)でいただく。チーズが粉になって風味がよくなった。 | トップページ | Python+Sympy(数式処理)でZパラメータ(インピーダンス行列)からSパラメータに変換する。その1、成分で書く場合 »
コメント