仮想計算機構

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

2020-12-01から1ヶ月間の記事一覧

デルタ関数と階段関数のシミュレーション【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を使います。 プログラム について、自…

楕円の速度ベクトル、加速度ベクトル

楕円 の速度ベクトル、加速度ベクトルのアニメーションを作る。可視化に必要な関数を下記で定義する。 sage: t = var('t') sage: x = 9*cos(t) sage: y = 4*sin(t) sage: vx,vy = x.derivative(),y.derivative() sage: ax,ay = vx.derivative(),vy.derivativ…

1次元調和振動子の可視化 その2

はじめに 前回のつづきです。今回も数値計算っぽいことをやります。小出昭一郎『量子力学』のp.53より の期待値はとなります。前回と同様 とし、これを数値計算で確かめます。 方法 から をサンプリングして、 の平均値をとれば が計算できます。 からサンプ…

1次元調和振動子の可視化

小出昭一郎『量子力学(Ⅰ)』のp.51にある1次元調和振動子のグラフを再現します。可視化するのは以下の関数です。この関数は下記の方程式を満たします。ディラック定数 はそのまま使うと都合が悪いので とおいて下記の関数を使います。 def X(n,M,w): A = sq…

箱の中の自由粒子を可視化する

前提 この記事では固有関数の可視化を行います。数式などは小出昭一郎『量子力学(Ⅰ)』の2章5節にしたがいます。時間を含まないシュレーディンガー方程式に対し、 : 固有関数、 : 固有値 縦横高さがそれぞれ である箱の外では と書ける とします。方程式を解…

SageMathで固有振動のアニメーションを作る

固有振動 n=1,2,...に対して基準振動を下記で定義します。 は弦の長さ、 は弦を伝わる横波の速さを表します。 を変化させた場合のアニメーションをSageMathで作ります。 SageMath - Open-Source Mathematical Software System プログラム main.sageを作成し…

SageMathによるカラビヤウ多様体の可視化

はじめに 面白いブログ記事を見つけました。 カラビヤウ多様体の可視化については色々情報がありますが、一番とっつきやすい情報源だったので、思いっきり活用させていただこうかと思います。引用元ではJavaScriptを使っているようです。今回はSageを使いま…

SageMathで複素数を扱う

複素数 の宣言 sage: a=CC(1,1) sage: a 1.00000000000000 + 1.00000000000000*I実軸との成す角度(ラジアン) sage: a.arg() 0.785398163397448実軸との成す角度(度数法) sage: a.arg()*180/3.14 45.0228246533569実部 sage: a.real() 1.00000000000000虚…

坪井俊「多様体入門」問題1.2.6の再現

坪井本p.8の問題1.2.6に出てくるR^3の部分集合(1)-(3)をそれぞれ可視化してみます。使うソフトウェアはSageです。インストールしなくてもブラウザで試すことができます。 式は面倒なので書きません。ぜひ教科書を参考にしてみてください。 (1) ブラウザで試…