投稿

N88-BASICで相対性理論

イメージ
2023/5/19(金) N88-BASICで相対性理論   (特殊相対性理論:Special relativity theory)   E = mc 2   を使った計算です     ■ 関連記事の紹介 t = t'/√{1-(v/c) 2 }の 導出は https://ulprojectmail.blogspot.com/2023/05/relativity-1.html 相対性理論 (1回目)   N88-BASICサンプルは https://ulprojectmail.blogspot.com/2021/12/n88-basictwins.html N88-BASICで双子のパラドックス   E = mc 2  の導出は https://ulprojectmail.blogspot.com/2023/05/relativity-2.html 相対性理論 (2回目)     ■ E = mc 2  を使ったサンプル   プールの水量は約 25×16×1.3 = 520 ≒ 500m 3  → 500t とすると、そのエネルギーEは 約4.5×10 22  Jで地球の全大気を 約8.5℃上昇させる   などの計算をしています   自己責任で使用して下さい   VL,NL,XL-BASICと blg~.zip (rela001.bas)は 以下のリンクからダウンロードできます https://ulprojectmail.blogspot.com Readme.txtを読んで遊んで下さい

相対性理論 (2回目)

2023/5/17(水) 相対性理論 (2回目)   (特殊相対性理論:Special relativity theory)   2回目は E = mc 2   の導出     ■ 微小不変量dτ 微小不変量 固有時間 dτ(cdt>>dx,dy,dzなのでほぼ微小時間)を 前回の微小不変量 dsを使用して dτ 2  = -ds 2  = (cdt) 2  - dx 2  - dy 2  - dz 2   と定義する     ■ 4元変位 d x  = (dx 0 , dx 1 , dx 2 , dx 3 ) = (cdt, dx, dy, dz)   ■ 4元速度 4元速度を u  = (u 0 , u 1 , u 2 , u 3 ) = d x /dτ = (cdt/dτ,dx/dτ,dy/dτ,dz/dτ) と定義する   dτ 2  = (cdt) 2  - dx 2  - dy 2  - dz 2   を dτ 2 で割る 1 = (cdt/dτ) 2 -(dx/dτ) 2 -(dy/dτ) 2 -(dz/dτ) 2   より 1 = u 0 2  - u 1 2  - u 2 2  - u 3 2     dτ 2  = (cdt) 2  - dx 2  - dy 2  - dz 2   を (cdt) 2 で割る (dτ / cdt) 2  = 1-(dx / cdt) 2 -(dy / cdt) 2 -(dz / cdt) 2   = 1 - (1/c 2 ){(dx/dt) 2  + (dy/dt) 2  + (dz/dt) 2 } = 1 - (1/c 2 )(v x 2  + v y 2  + v z 2 ) = 1 - (v 2 /c 2 ) dτ / cdt = √{1 - (v/c) 2 } u 0  = cdt/dτ = 1/√{1 - (v/c) 2 } = γ … ローレンツ係数 u 1  = dx/dτ = (cdt/dτ)(dx / cdt) = γv x /c   よって u  = (u 0 , u 1 , u 2 , u 3 ) = (γ, γv x /c, γv y /c, γv z /c) … (v x /cはcに対する割合、0.5は光速の半分、無次元量) 1 = u 0 2  - u 1 2  - u

相対性理論 (1回目)

イメージ
2023/5/15(月) 相対性理論 (1回目)   (特殊相対性理論:Special relativity theory)   1回目は t = t'/√{1-(v/c) 2 }と 微小不変量(時空間内の微小距離)dsについて ds 2  = -(cdt) 2  + dx 2  + dy 2  + dz 2   の導出       ■ t = t'/√{1-(v/c) 2 } の導出     光:電車内を真上に進光とする   電車内から見た値 t':時間 ct':光の移動距離 v'= 0:観測者の速度   電車外から見た値 t:時間 v:電車の移動速度 vt:電車の移動距離 ct:光の移動距離   図より (ct') 2  = (ct) 2  - (vt) 2   ct' = t√(c 2  - v 2 ) t' = t√{1 - (v/c) 2 } より t = t'/√{1-(v/c) 2 }   電車の速度vがcに近づくと tはt'の∞倍に近づく つまり 静止している場所のtは速く進み 移動している場所のt'はゆっくり進む   ただし 速度は相対的なものなので 移動しているのは加速した方 と考えられる       ■ 微小不変量の導出 図より (ct') 2  = (ct) 2  - (vt) 2   ここで v' = 0なので (ct') 2  - (vt') 2  = (ct) 2  - (vt) 2   も成り立つ vt = x、vt' = x'と置き、符号を正にとると -(ct') 2  + x' 2  = -(ct) 2  - x 2   これを3次元に拡大しs 2 と置くと s 2  = -(ct) 2 +x 2 +y 2 +z 2  = -(ct') 2 +x' 2 +y' 2 +z' 2   微小区間で書くと ds 2  = -(cdt) 2 +dx 2 +dy 2 +dz 2  = -(cdt') 2 +dx' 2 +dy' 2 +dz' 2   dsは時空間内の微小距離で 座標系('の有無)によらず不変なので 不変量と

N88-BASICでZ80アセンブリ (2回目)

イメージ
2023/5/12(金) N88-BASICでZ80アセンブリ (2回目)   N88-BASIC(PC-8801)互換?XL-BASICのMONで アセンブリを動かして見ます   XLBasic01.exeをダブルクリックして XL-BASICを起動して下さい   mon でモニターに入り a9000 でアセンブリを打って行きます (小文字は大文字に変換されます)   LD A,80H     … Aレジスタに文字コード&h80を入れる LD HL,0F3C8H … HLレジスタにT-VRAM(&hF3C8)を入れる LD B,80      … Bレジスタに文字数(80)を入れる LD (HL),A    … HL番地にAを入れる INC HL       … HL = HL + 1 INC A        … A = A + 1 DJNZ 9007H   … B = B - 1:IF B <> 0 THEN LD (HL),Aへ RET          … RETURN(終了)   相対ジャンプ命令も絶対アドレスで指定して下さい 自動で相対アドレスに変換されます   T-VRAMの先頭から キャラクターコード&h80~ 文字を80文字書込む プログラムです   (XL-BASICはT-VRAMアドレスの変更には 対応していませんので常に&hF3C8~です)   g9000,- で9000hからRETまで実行します (途中のCALL,RETのペアでは止まりません)   tで1命令ずつトレース出来ます t2で2命令ずつ,t-でRETまでトレースします   XLBasic/Doc/ReferenceXL.txtの MONの所にコマンドの説明がありますので 参照して下さい       l9000,+d で9000h~dhバイトの逆アセンブルを表示します   l9000,+d,d でDATA文として逆アセンブルを XLBasic01prn.txtに出力します   LOADすると行番号が付加されます   BASICプログラムからアセンブリを実行するのに 使用して下さい   XL-BASIC付属のアセンブリのサンプル (XLBasic/AZ/z1.bas~z3.bas)は この方法で作成しています     また、TRONの状態

N88-BASICで量子力学

イメージ
2023/5/8(月) N88-BASICで量子力学   (Quantum mechanics)   シュレディンガー方程式の導出 https://ulprojectmail.blogspot.com/2023/05/quantum-1.html 量子力学 (1回目)   時間に依存しないシュレディンガー方程式の分離 https://ulprojectmail.blogspot.com/2023/05/quantum-2.html 量子力学 (2回目)   井戸型ポテンシャル https://ulprojectmail.blogspot.com/2023/05/quantum-3.html 量子力学 (3回目)     ■ 記号 x :位置(m) m :質量(kg) E :エネルギー(J) h :プランク定数(6.62607015×10 -34 J・s) ℏ :ディラック定数 [ℏ = h / (2π)] φ n (x):波動関数   ■ 井戸型ポテンシャル E n  = n 2 ℏ 2 π 2 /(2mL 2 ) φ n (x) = √(2/L)・sin{(nπ/L)x} (n = 1,2,3,…)     ■ 式変形 E n  = n 2 ℏ 2 π 2 /(2mL 2 ) = n 2 {h/(2π)} 2 π 2 /(2mL 2 ) = n 2 (h/2) 2 /(2mL 2 ) = n 2 h 2 /(8mL 2 )   コンピュータの数値は有限の為 2乗はOver flowや0(10e-40は0) になるなどの 不具合が起きる場合があるので 計算順序に工夫が必要   (10 -20 ) 2  / (10 -20 ) 2  は1だが (10 -20 ) 2  = 10 -40  はコンピュータでは0となり 0 / 0となってしまうので (10 -20  / 10 -20 ) 2  としなければならない     ■ 状況設定 電子の質量m e  = 9.1093837015×10 -31  kg 水素の直径0.2 nm 水素が入るくらいの井戸に 電子が入っている状況を使用しました     nに自然数を入力すると エネルギー 存在確率 波動関数 を表示します   VL,NL,XL-BASICと blg~.zip (quan001.bas)は 以下のリンクからダウ

量子力学 (3回目)

2023/5/7(日) 量子力学 (3回目)   (Quantum mechanics)   今回は井戸型ポテンシャルの解です   時間依存しない(定常状態) シュレディンガー方程式の階   ■ 微分方程式の解 (∂ 2 /∂x 2 )φ(x) = -k 2 φ(x)   aexp{i(kx+b)} = exp(ib)aexp(ikx) = Aexp(ikx) なので微分して定数項kが出ているので φ(x) = Cexp(ikx) + Dexp(-ikx)と置くと   (∂ 2 /∂x 2 )φ(x) = (ik) 2 Cexp(ikx) + (-ik) 2 Dexp(-ikx) = -k 2 {Cexp(ikx) + Dexp(-ikx)} = -k 2 φ(x) となり、解であると分かる   オイラーの公式より φ(x) = Cexp(ikx) + Dexp(-ikx) = C{cos(kx)+isin(kx)}+D{cos(-kx)+isin(-kx)} = C{cos(kx)+isin(kx)}+D{cos(kx)-isin(kx)} = (C+D)cos(kx)+(C-D)isin(kx) ここでB = C+D、A = (C-D)iと置き直すと   φ(x) = Bcos(kx) + Asin(kx) となる       ■ 記号 t :時間(s) x :位置(m) x :位置ベクトル(m) m :質量(kg) E :エネルギー(J) h :プランク定数(6.62607015×10 -34 J・s) ℏ :ディラック定数 [ℏ = h / (2π)] φ( x ):時間を含まない波動関数 V( x ):ポテンシャルエネルギー H :ハミルトニアン ∇:ナブラ [∇ = (∂/∂ x )] L :井戸の底の長さ(m)   時間を含まない1次元のシュレディンガー方程式 [{-ℏ 2 /(2m)}(∂ 2 /∂x 2 ) + V(x)]φ(x) = Eφ(x)       ■ 井戸型ポテンシャル 底の長さLの井戸(両壁の高さが∞)   ▼ x < 0, x > L のとき V(x) = ∞ φ(x) = 0 … 存在確率|φ(x)| 2  = 0   ▼ 0 ≦ x ≦ L のとき V(x) = 0 {-ℏ 2 /(2m)}(∂ 2 /∂x 2 )φ