ヤング・ラプラス式
表面張力に関する方程式の一つは、液体の表面張力を示すヤング・ラプラスの式です。
この式は以下のように表されます:
$$
\Delta P = \gamma \left( \frac{1}{r_1} + \frac{1}{r_2} \right)
$$
ここで、$(\Delta P) $は液体の内部と外部の圧力差、$(\gamma) $は液体の表面張力、$(r_1) $と$ (r_2) $は液体の曲率半径です。
以下はPythonコードでこの方程式を解き、結果をグラフ化する例です。
1 | import numpy as np |
このコードは、曲率半径の範囲を設定し、ヤング・ラプラスの式に基づいて表面張力と曲率半径の関係を計算し、グラフ化します。
[実行結果]
ソースコード解説
このソースコードは、Pythonを使用してヤング・ラプラスの式を計算し、その結果をグラフ化するプログラムです。
以下は各部分の詳細な説明です。
1. import numpy as np
:
NumPyライブラリをインポートし、np
としてエイリアスを設定します。
NumPyは数値計算や配列処理のための強力なツールです。
2. import matplotlib.pyplot as plt
:
Matplotlibライブラリからpyplot
モジュールをインポートし、plt
としてエイリアスを設定します。
Matplotlibはグラフ描画のためのライブラリです。
3. def young_laplace(delta_P, gamma, r1, r2):
:
ヤング・ラプラスの式を計算する関数を定義します。
この関数は、内部と外部の圧力差(delta_P
)、表面張力(gamma
)、および曲率半径(r1
、r2
)を受け取ります。
4. r_range = np.linspace(0.1, 2, 100)
:
曲率半径の範囲を定義します。
ここでは、$0.1$から$2$までの範囲を$100$個の等間隔の点で分割しています。
5. delta_P = 1.0
:
内部と外部の圧力差を設定します。
6. gamma = 0.5
:
表面張力を設定します。
7. plt.plot(r_range, young_laplace(delta_P, gamma, r_range, r_range), label='Surface Tension vs Curvature')
:
曲率半径に対する表面張力の関係をプロットします。r_range
は曲率半径の範囲、young_laplace()
関数はヤング・ラプラスの式に基づいて表面張力を計算します。
8. plt.xlabel('Radius of Curvature (r)')
:
x軸のラベルを設定します。
9. plt.ylabel('Surface Tension (γ)')
:
y軸のラベルを設定します。
10. plt.title('Young-Laplace Equation')
:
グラフのタイトルを設定します。
11. plt.grid(True)
:
グリッド線を表示します。
12. plt.legend()
:
凡例を表示します。
13. plt.show()
:
グラフを表示します。
これらのステップを実行することで、曲率半径と表面張力の関係を可視化したグラフが表示されます。
結果解説
[実行結果]
このグラフは、曲率半径と表面張力の関係を示しています。
横軸は曲率半径 $((r))$、縦軸は表面張力 $((\gamma))$を表しています。
ヤング・ラプラスの式に従って計算された値は、曲率半径が変化するにつれて表面張力がどのように変化するかを示しています。
曲率半径が小さい(つまり曲がりが大きい)場合、表面張力が増加します。
これは、液体の表面が曲率半径が小さい場合により強く引きつけられるためです。
逆に、曲率半径が大きい(曲がりが小さい)場合、表面張力が減少します。
グラフの形状は、曲率半径が変化するにつれて表面張力がどのように変化するかを示しています。
曲率半径が小さいときに急激に増加し、曲率半径が大きくなるにつれて徐々に減少する傾向が見られるでしょう。