Skip to content

Instantly share code, notes, and snippets.

@foxqstm
Created August 24, 2021 11:47
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save foxqstm/d196b3f0c353cf106c67c9815a04aa36 to your computer and use it in GitHub Desktop.
Save foxqstm/d196b3f0c353cf106c67c9815a04aa36 to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
{
"cells": [
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"import sympy\n",
"import math\n",
"from mpl_toolkits.mplot3d import Axes3D\n",
"\n",
"\n",
"\n",
"N=10**4\n",
"x=[]\n",
"y=[]\n",
"z=[]\n",
"for n in range(1,N+1):\n",
" div=sympy.divisors(n)\n",
" amax=1\n",
" if len(div)==4:\n",
" for a in div:\n",
" if a <=math.sqrt(n):\n",
" amax=a\n",
" else:\n",
" break\n",
" bmax=n//amax\n",
"# print('n,amax,bmax',n,amax,bmax)\n",
" if amax!=1: \n",
" dist=bmax-amax\n",
" if dist<= N:\n",
" x.append(amax)\n",
" y.append(bmax)\n",
" z.append(dist)\n",
"\n",
"x=np.array(x)\n",
"y=np.array(y)\n",
"z=np.array(z)\n",
"\n",
"fig = plt.figure()\n",
"ax = Axes3D(fig)\n",
"\n",
"ax.set_xlabel(\"p\")\n",
"ax.set_ylabel(\"q\")\n",
"ax.set_zlabel(\"D(N)\")\n",
"\n",
"\n",
"ax.plot(x, y, z,marker=\"o\",linestyle='None')\n",
"plt.savefig('dec lenth 3d.png')\n",
"plt.show()\n"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.5"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment