ブロック波動方程式

ブロック波動方程式

ブロック波動方程式は、1次元の時間依存しない波動方程式です。

一般的には、以下のように表されます:

$$
\frac{\partial^2 u}{\partial x^2} = -k^2 u
$$

ここで、$ ( u ) $は波動の変位、$ ( x ) $は空間座標、$ ( k ) $は波数です。

以下は、ブロック波動方程式を解いてグラフ化する Python コードの例です。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import numpy as np
import matplotlib.pyplot as plt

# 空間座標の範囲
x_values = np.linspace(0, 10, 100)

# 波数
k = 2

# ブロック波動方程式の解の計算
u_values = np.sin(k * x_values)

# グラフの描画
plt.plot(x_values, u_values)
plt.xlabel('Position (x)')
plt.ylabel('Displacement (u)')
plt.title('Solution of the Block Wave Equation')
plt.grid(True)
plt.show()

このコードでは、$ ( x ) $の範囲を$ (0) $から$ (10) $までの間で取り、その範囲における波動の変位 $ ( u ) $を計算しています。

そして、その解をグラフにプロットしています。

[実行結果]

ソースコード解説

このPythonのソースコードは、ブロック波動方程式の解を計算し、グラフ化するものです。

以下はソースコードの詳細です:

1. NumPyとMatplotlibのインポート:

1
2
import numpy as np
import matplotlib.pyplot as plt
  • NumPyは数値計算を行うためのPythonライブラリであり、ここでは配列や数学関数の使用に役立ちます。
  • Matplotlibはグラフ描画ライブラリであり、ここではグラフを描画するために使用されます。

2. 空間座標の範囲設定:

1
x_values = np.linspace(0, 10, 100)
  • np.linspace() 関数は、指定した範囲内で等間隔の値を生成します。
    ここでは、$ (0) $から$ (10) $の範囲を$ (100) $個の点に分割しています。

3. 波数の設定:

1
k = 2
  • ブロック波動方程式の解における波数$ (k) $を定義しています。

4. ブロック波動方程式の解の計算:

1
u_values = np.sin(k * x_values)
  • $ (x) $座標に対するブロック波動方程式の解を計算しています。
    ここでは単純化のために、sin関数を用いています。

5. グラフの描画:

1
2
3
4
5
6
plt.plot(x_values, u_values)
plt.xlabel('Position (x)')
plt.ylabel('Displacement (u)')
plt.title('Solution of the Block Wave Equation')
plt.grid(True)
plt.show()
  • plt.plot() 関数で$ (x) $座標と$ (u) $座標の値を使ってグラフを描画します。
  • plt.xlabel()plt.ylabel() で軸ラベルを設定し、 plt.title() でグラフのタイトルを設定します。
  • plt.grid(True) でグリッドを表示し、 plt.show() でグラフを表示します。

これにより、ブロック波動方程式の解のグラフが生成され、 $ (x) $座標と$ (u) $座標の関係が視覚化されます。

結果解説

[実行結果]

このグラフは、ブロック波動方程式の解を示しています。

以下はグラフに表示される内容の詳細です:

横軸(X軸)

空間座標$ (x)$。この軸は、波の位置を表します。
範囲は$ (0) $から$ (10) $までです。

縦軸(Y軸)

変位$ (u)$。この軸は、波の変位を表します。
範囲は$ (-1) $から$ (1) $までです。

波形

$ (u = \sin(kx)) $の関数を表しており、これはブロック波動方程式の解です。
$ (k) $は波数を示し、この例では$ (k = 2) $としています。
この波形は、$ (x) $の値に応じて振幅が変化し、正弦関数の波形を持ちます。

タイトル

“Solution of the Block Wave Equation”。グラフの内容を簡潔に示しています。

  • 軸ラベル
    “Position (x)” と “Displacement (u)”。それぞれ横軸と縦軸の内容を説明しています。

このグラフを見ると、波が$ (x) $の値に応じて振動している様子がわかります。

波の変位は$ (x) $に対して正弦関数の形をしており、周期的な振動を示しています。