トロイダル座標系

トロイダル座標系

トロイダル座標系は、3次元空間の特殊な曲面を記述するための座標系です。

その主な特徴は以下の通りです。

  1. 渦巻き状の形状をしています。
    つまり、円柱状の中空の管が渦を巻いているような形状をしています。

  2. 3つの座標変数 $(u, v, r)$で表されます。

    • $u$: 円周方向の角度($0$から$2π$まで)
    • $v$: 渦巻き方向の角度($0$から$2π$まで)
    • $r$: 渦巻き半径
  3. 中心軸から一定の距離$r$にある円環状の曲線が、$v$角度分ずつ回転しながら螺旋状に巻きついた形をしています。

  4. 電磁気学流体力学などで、渦巻き状の磁場フロー場を記述するのに使われます。

  5. 座標変数$(u, v, r)$から直交座標$(x, y, z)$への変換式が定義されています。

  6. トロイダル座標系トーラス(ドーナツ型)の形状の物体を自然に記述できる座標系です。

トロイダル座標系渦巻き状の曲面中空の管状の物体の形状を簡潔に表現するのに適した特殊な曲線座標系なのです。

電磁気学流体力学分野で重要な役割を果たしています。

トロイダル座標系をPythonで可視化するコードを書きましょう。

トロイダル座標系は、円筒座標系球座標系を組み合わせた座標系で、渦巻き状の曲面を表すのに便利です。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D

# トロイダル座標系のパラメータ範囲
c = 2 # トロイダル半径
a = 1 # 渦巻き半径
u_range = np.linspace(0, 2 * np.pi, 100)
v_range = np.linspace(0, 2 * np.pi, 100)

# トロイダル座標系の変換式
U, V = np.meshgrid(u_range, v_range)
X = (c + a * np.cos(V)) * np.cos(U)
Y = (c + a * np.cos(V)) * np.sin(U)
Z = a * np.sin(V)

# 3D プロットの設定
fig = plt.figure(figsize=(8, 6))
ax = fig.add_subplot(111, projection='3d')
ax.plot_surface(X, Y, Z, rstride=5, cstride=5, cmap='viridis', edgecolor='none')
ax.set_xlabel('X')
ax.set_ylabel('Y')
ax.set_zlabel('Z')
ax.set_title('Toroidal Coordinate System')

plt.show()

このコードでは、以下の手順で作業を行っています。

  1. numpymatplotlib をインポートし、3D プロットに必要な Axes3D も読み込みます。
  2. トロイダル座標系のパラメータ c (トロイダル半径)、a (渦巻き半径)、および uv の範囲を設定します。
  3. np.meshgrid を使って、uv の値の組み合わせを生成します。
  4. トロイダル座標系の変換式を使って、各 (u, v) の組み合わせに対応する (x, y, z) の値を計算します。
  5. matplotlibplot_surface 関数を使って、計算した (x, y, z) の値から3D 曲面をプロットします。
  6. 軸ラベルとタイトルを設定します。
  7. plt.show() で最終的なプロットを表示します。

実行すると、次のようなトロイダル座標系の3D プロットが表示されるはずです。

[実行結果]

このプロットでは、トロイダル半径 c = 2渦巻き半径 a = 1 の値を使用しています。

パラメータ ca の値を変更すれば、異なる形状のトロイダルを描くことができます。

結果解説

[実行結果]

このグラフは、トロイダル座標系を3次元空間上に可視化したものです。
トロイダル座標系は、渦巻き状の曲面を表すのに適した座標系です。

グラフ上に表示されている曲面は、次の特徴を持っています:

  1. 全体的な形状は、ドーナツ状のトーラス(環状)になっています。
    つまり、中心に空洞を持つ管状の構造をしています。

  2. 曲面は渦を巻いた形状をしており、螺旋状に巻きついています。
    この螺旋の巻き具合は、トロイダル座標の$v$の値によって決まります。

  3. 曲面の半径は一定ではありません。
    曲面の内側半径外側半径が異なり、これがトロイダル座標の$r$の値に対応します。
    内側半径をトロイダル半径、外側半径を渦巻き半径と呼びます。

  4. 曲面は滑らかに連続しており、自己交差することはありません。

  5. 曲面の色は、viridisというカラーマップを使って割り当てられています。
    色の濃淡は、曲面の高さ($z$座標値)を表しています。

  6. 軸は直交する$x$、$y$、$z$座標で構成され、それぞれにラベルが付けられています。

このようにグラフは、トロイダル座標系の本質的な性質である渦巻き状の管状構造をリアルに可視化しています。

電磁気学流体力学の分野で重要な役割を果たすこのような特異な曲面を、直感的に理解することができます。