仮想計算機構

IT業界と無縁な派遣社員のブログ

Python

Twitterでみかけた素数の一般項を計算してみる

「素数に一般項はない!」と主張する人をまれに見かけますが、それは嘘です。画像の式に好きな整数nを代入すると、n番目の素数が得られます。 pic.twitter.com/GF6hCJDVuF— 数学を愛する会 (@mathlava) June 6, 2021 面白そうだったので計算してみました。 …

PythonによるN体シミュレーション

はじめに N体シミュレーションを行いました。 初期値等は以下の情報を参考にしています。 Create Your Own N-body Simulation (With Python) | by Philip Mocz | The Startup | Medium nbody-python/nbody.py at master · pmocz/nbody-python · GitHub 上記…

電気力線みたいな線を描画する

SageMath を用いて電磁気学などで使われる概念についてプロットしてみます。物理学的な厳密性は投げ出しているので差し引いて読んでください。まず、電荷をA~Dと名付け、位置を xs に、電荷の値を qs に格納しておきます。 A = vector([0,0]) B = vector([5,…

極限としてデルタ関数が得られるもの

原島鮮『初等量子力学』10.2 より 連続関数がデルタ関数へ接近していく様子を可視化します。 ツールは SageShell を使います。 その1 sage: l = [plot(sin(a*x)/pi/x,(x,-15,15))+text("$a={}$".format(a),(15*0.7,a/pi*0.8),fontsize=20, bounding_box={'b…

ラザフォード散乱における粒子の軌道【SageMath】【Python】

小出昭一郎『量子力学(Ⅰ)』の 5.2 を参考にラザフォード散乱における粒子の軌道を可視化します。用いる変数を次のように定義します。 は以下の関係を満たします。 ここで は で定義されます。ほかの記号の意味については、下記のとおりです。真空の誘電率…

SageMathでラゲールの陪多項式を実装する【SageMath】【Python】

以前、Sageを使ってラゲール多項式を実装しました。プログラムを再掲します。 x = var('x') def L_k(x,k): f = x^k*exp(-x) for i in range(k): f = derivative(f,x) return exp(x)*f ラゲール多項式 に対し、陪多項式はで定義されるので、ラゲール多項式の…

SageMathでラゲール多項式を作ってみる【Sage】【Python】

ラゲール多項式は以下で定義されます。SageShellを起動して、関数L_kを定義します。 x = var('x') def L_k(x,k): f = x^k*exp(-x) for i in range(k): f = derivative(f,x) return exp(x)*f 上で定義した関数は任意の k に対して、多項式を計算してくれます…

球面調和関数の可視化【SageMath】【Python】

球面調和関数 の可視化を行います。量子力学でいうと l は方位量子数、m は磁気量子数になります。用いる式は以下のとおりです。自明ですが、r が定数の場合は球面となります。 l=3,m=1 SageShell を起動し、以下のとおり入力します。 sage: phi,theta = var…

デルタ関数と階段関数のシミュレーション【Sage】【Python】

デルタ関数 小出昭一郎『量子力学(Ⅰ)』の3章7節よりで定義される関数の極限をとるとデルタ関数になる。SageShellを立ち上げて、関数 f を下記で定義する。 x,a = var('x,a') x0 = 1 f = lambda x,a:sqrt(a/2/pi)*exp(-a*(x-x0)*(x-x0)/2) a を 1 から 50 …

y=x のフーリエ級数展開を可視化する【Sage】【Python】

はじめに 小出昭一郎『量子力学(Ⅰ)』(p.60)より周期 2l の関数 f(x) は以下のように展開できます。 複素フーリエ級数 複素フーリエ係数 とし、 の場合についてシミュレーションを行います。計算や可視化はSageShellを使います。 プログラム について、自…

【日記】PythonでOpenCVが使える環境を構築した。

筆者の環境 OS : Windows 10 CPU : Intel Core i5 2.60GHz IDE : VSCode 1.46.1 シェル:Powershell 画像処理とかをやりたいので環境構築。 以下のobikata氏による手順を踏みました。 まずは Git をインストール 今回は Git for Windows v2.27.0 を以下から…

圧縮されたルールテーブルから元のルールテーブルを復元する

セルオートマトンはセルの次の状態を決めるために遷移規則を必要とします。例えば Tempesti loop であれば以下のページにあるルールを使います。 ruletablerepository/Tempesti.table at gh-pages · GollyGang/ruletablerepository · GitHubこのページを見る…