🇯🇵 JP | 🌐 EN

第2章:磁気的性質と渦糸物理

磁束量子化、Abrikosov渦糸、臨界磁場の理論

⏱️ 30-40分 💻 4つのコード例 📊 中級

学習目標

2.1 磁束量子化

ロンドン理論からの導入

超伝導体のリング内部では、単一値波動関数の条件により、磁束は量子化されます。この現象を理論的に導出しましょう。

位相の量子化条件

超伝導秩序パラメータを \(\psi = |\psi| e^{i\theta}\) とすると、リング周りの閉経路 \(C\) に沿った位相変化は次の条件を満たす必要があります:

\[\oint_C \nabla \theta \cdot d\mathbf{l} = 2\pi n \quad (n \in \mathbb{Z})\]

超伝導電流密度 \(\mathbf{j}_s\) は、ゲージ不変な形で次のように表されます:

\[\mathbf{j}_s = \frac{n_s e^*}{m^*} \left( \hbar \nabla\theta - e^* \mathbf{A} \right)\]

ここで、\(n_s\) は超伝導電子密度、\(e^* = 2e\)(クーパー対の電荷)、\(m^* = 2m_e\)(クーパー対の質量)です。

磁束量子の導出

リング内部で電流がゼロ(\(\mathbf{j}_s = 0\))の条件では:

\[\hbar \nabla\theta = e^* \mathbf{A}\]

両辺を閉経路 \(C\) に沿って積分すると:

\[\hbar \oint_C \nabla\theta \cdot d\mathbf{l} = e^* \oint_C \mathbf{A} \cdot d\mathbf{l}\]

Stokesの定理により、右辺は磁束 \(\Phi\) に等しくなります:

\[\hbar \cdot 2\pi n = 2e \cdot \Phi\]

これより、磁束量子が得られます:

磁束量子(Flux Quantum)

\[\Phi_0 = \frac{h}{2e} = \frac{2\pi\hbar}{2e} \approx 2.067 \times 10^{-15} \text{ Wb}\]

すべての磁束は \(\Phi = n\Phi_0\) の整数倍として量子化されます。

実験的検証

磁束量子化は、1961年にDeaverとFairbankによって実験的に確認されました。超伝導リングに閉じ込められた磁束が、正確に \(\Phi_0\) の整数倍であることが測定されました。

import numpy as np
import matplotlib.pyplot as plt

# Physical constants
h = 6.626e-34  # Planck constant (J·s)
e = 1.602e-19  # Elementary charge (C)

# Flux quantum
Phi_0 = h / (2 * e)  # Weber (Wb)

print(f"磁束量子 Φ₀ = {Phi_0:.4e} Wb")
print(f"           = {Phi_0*1e15:.3f} fWb (フェムトウェーバー)")

# Visualization: Flux quantization in a superconducting ring
n_values = np.arange(0, 11)  # Integer quantum numbers
flux_values = n_values * Phi_0

fig, (ax1, ax2) = plt.subplots(1, 2, figsize=(14, 5))

# Left plot: Flux quantization ladder
ax1.scatter(n_values, flux_values*1e15, s=100, c='blue', zorder=3)
ax1.plot(n_values, flux_values*1e15, 'b--', alpha=0.5)
for n, flux in zip(n_values, flux_values*1e15):
    ax1.text(n+0.2, flux, f'n={n}', fontsize=9)

ax1.set_xlabel('量子数 n', fontsize=12)
ax1.set_ylabel('磁束 Φ (fWb)', fontsize=12)
ax1.set_title('超伝導リングにおける磁束量子化', fontsize=14)
ax1.grid(True, alpha=0.3)
ax1.axhline(y=0, color='k', linewidth=0.5)

# Right plot: Forbidden flux values (shaded regions)
n_range = np.linspace(0, 10, 1000)
flux_range = n_range * Phi_0 * 1e15

ax2.fill_between([0, 10], [0, 0], [20, 20], alpha=0.1, color='red',
                  label='許されない磁束値')
for n in range(11):
    flux = n * Phi_0 * 1e15
    ax2.axhline(y=flux, color='blue', linewidth=2, alpha=0.7)
    ax2.plot([0, 10], [flux, flux], 'b-', linewidth=2)

ax2.scatter(n_values, flux_values*1e15, s=100, c='blue', zorder=3,
            label='許される磁束値 (nΦ₀)')
ax2.set_xlabel('リング径の任意パラメータ', fontsize=12)
ax2.set_ylabel('磁束 Φ (fWb)', fontsize=12)
ax2.set_title('量子化された磁束レベル', fontsize=14)
ax2.legend(fontsize=11)
ax2.set_ylim(-1, 21)
ax2.grid(True, alpha=0.3)

plt.tight_layout()
plt.show()

2.2 単一渦糸の構造

Abrikosov渦糸(Vortex)

第II種超伝導体では、磁場が下部臨界磁場 \(H_{c1}\) を超えると、磁束が量子化された渦糸(vortex)として侵入します。各渦糸は正確に1つの磁束量子 \(\Phi_0\) を運びます。

渦糸の構造

単一渦糸は以下の構造を持ちます:

Ginzburg-Landau方程式からの解

軸対称の渦糸では、GL方程式の解は次の形をとります:

\[\psi(r) = \psi_\infty f(r) e^{i\theta}\] \[f(r) \sim \begin{cases} r/\xi & r \ll \xi \text{ (コア内)} \\ 1 & r \gg \xi \text{ (コア外)} \end{cases}\]

磁場分布は修正ベッセル関数で記述されます:

\[B(r) = \frac{\Phi_0}{2\pi\lambda^2} K_0\left(\frac{r}{\lambda}\right)\]

ここで \(K_0\) は第2種修正ベッセル関数(0次)です。

GL パラメータ κ の役割

超伝導体の振る舞いは、Ginzburg-Landauパラメータ \(\kappa = \lambda/\xi\) によって決まります:

条件 超伝導体タイプ 特徴
\(\kappa < 1/\sqrt{2}\) 第I種 渦糸のエネルギーが正(安定化しない)
\(\kappa > 1/\sqrt{2}\) 第II種 渦糸のエネルギーが負(安定化する)
import numpy as np
import matplotlib.pyplot as plt
from scipy.special import k0  # Modified Bessel function of 2nd kind, order 0

# Parameters for a Type-II superconductor (e.g., NbTi)
xi = 5e-9       # Coherence length (m)
lambda_L = 100e-9  # Penetration depth (m)
kappa = lambda_L / xi

print(f"GL パラメータ κ = {kappa:.2f}")
print(f"タイプ: {'第II種' if kappa > 1/np.sqrt(2) else '第I種'}")

# Radial distance from vortex core
r = np.logspace(-9, -7, 500)  # From 1 nm to 100 nm

# Order parameter (normalized)
f_r = np.where(r < xi, r/xi, 1 - np.exp(-(r-xi)/xi))

# Magnetic field distribution (normalized)
Phi_0 = 2.067e-15  # Wb
B_r = (Phi_0 / (2 * np.pi * lambda_L**2)) * k0(r / lambda_L)

fig, axes = plt.subplots(1, 3, figsize=(16, 5))

# Plot 1: Order parameter
axes[0].plot(r*1e9, f_r, 'b-', linewidth=2)
axes[0].axvline(x=xi*1e9, color='r', linestyle='--', label=f'ξ = {xi*1e9:.1f} nm')
axes[0].set_xlabel('距離 r (nm)', fontsize=12)
axes[0].set_ylabel('秩序パラメータ |ψ|/|ψ∞|', fontsize=12)
axes[0].set_title('渦糸コア構造', fontsize=14)
axes[0].legend(fontsize=11)
axes[0].grid(True, alpha=0.3)
axes[0].set_ylim([0, 1.1])

# Plot 2: Magnetic field
axes[1].plot(r*1e9, B_r*1e3, 'g-', linewidth=2)
axes[1].axvline(x=lambda_L*1e9, color='r', linestyle='--', label=f'λ = {lambda_L*1e9:.1f} nm')
axes[1].set_xlabel('距離 r (nm)', fontsize=12)
axes[1].set_ylabel('磁束密度 B (mT)', fontsize=12)
axes[1].set_title('渦糸周りの磁場分布', fontsize=14)
axes[1].legend(fontsize=11)
axes[1].grid(True, alpha=0.3)
axes[1].set_xscale('log')
axes[1].set_yscale('log')

# Plot 3: Supercurrent density (proportional to dB/dr)
j_s = -np.gradient(B_r, r)  # Simplified
axes[2].plot(r*1e9, j_s/np.max(np.abs(j_s)), 'purple', linewidth=2)
axes[2].axvline(x=xi*1e9, color='r', linestyle='--', alpha=0.5)
axes[2].axvline(x=lambda_L*1e9, color='orange', linestyle='--', alpha=0.5)
axes[2].set_xlabel('距離 r (nm)', fontsize=12)
axes[2].set_ylabel('超電流密度 js (規格化)', fontsize=12)
axes[2].set_title('渦糸周りの超電流', fontsize=14)
axes[2].grid(True, alpha=0.3)

plt.tight_layout()
plt.show()

2.3 下部臨界磁場 Hc1

単一渦糸の侵入条件

下部臨界磁場 \(H_{c1}\) は、最初の渦糸が超伝導体に侵入するために必要な磁場です。この値は、渦糸生成のエネルギーコストと磁気エネルギー利得のバランスから決まります。

エネルギー解析

単位長さあたりの渦糸のエネルギー(自己エネルギー)は次のように評価されます:

\[\varepsilon_{\text{vortex}} \approx \frac{\Phi_0^2}{4\pi\mu_0\lambda^2} \ln\kappa\]

外部磁場による磁気圧は:

\[P_{\text{mag}} = \frac{B \cdot \Phi_0}{L}\]

渦糸侵入の条件は、磁気圧が渦糸の自己エネルギーを上回ることです:

\[H_{c1} = \frac{\Phi_0}{4\pi\mu_0\lambda^2} \ln\kappa\]

Hc1 の物理的意味

\(H < H_{c1}\):完全なマイスナー状態(磁束侵入なし)

\(H = H_{c1}\):最初の渦糸が侵入

\(H > H_{c1}\):複数の渦糸が侵入し、混合状態に入る

典型的な値

材料 Hc1 (mT) λ (nm) ξ (nm) κ
Nb 140 40 38 1.05
NbTi 30 200 4 50
Nb₃Sn 20 65 3 22
YBCO 10 150 1.5 100

2.4 上部臨界磁場 Hc2

渦糸コアの重なり

磁場が増加すると、渦糸の密度が高くなり、隣接する渦糸コアが重なり始めます。上部臨界磁場 \(H_{c2}\) では、渦糸コアが完全に重なり、超伝導性が破壊されます。

Hc2 の導出

渦糸密度 \(n_v\) は磁束密度に比例します:

\[n_v = \frac{B}{\Phi_0}\]

渦糸間の平均距離 \(d\) は:

\[d \sim \frac{1}{\sqrt{n_v}} = \sqrt{\frac{\Phi_0}{B}}\]

渦糸コアが接触する条件(\(d \sim 2\xi\))から:

\[\mu_0 H_{c2} = \frac{\Phi_0}{2\pi\xi^2}\]

上部臨界磁場の公式

\[H_{c2} = \frac{\Phi_0}{2\pi\mu_0\xi^2} = \sqrt{2}\kappa H_c\]

ここで \(H_c\) は熱力学的臨界磁場です。

温度依存性

GL理論により、臨界温度近傍での温度依存性は:

\[H_{c2}(T) = H_{c2}(0) \frac{1 - t^2}{1 + t^2}\]

ここで \(t = T/T_c\) です。より精密には、Werthamer-Helfand-Hohenberg (WHH) 理論が使われます。

import numpy as np
import matplotlib.pyplot as plt

# Physical constants
Phi_0 = 2.067e-15  # Wb
mu_0 = 4*np.pi*1e-7  # H/m

# Material parameters (NbTi example)
xi_0 = 4e-9    # Coherence length at T=0 (m)
lambda_0 = 200e-9  # Penetration depth at T=0 (m)
Tc = 9.5       # Critical temperature (K)
kappa = lambda_0 / xi_0

# Calculate Hc1 and Hc2 at T=0
Hc1_0 = (Phi_0 / (4 * np.pi * mu_0 * lambda_0**2)) * np.log(kappa)
Hc2_0 = Phi_0 / (2 * np.pi * mu_0 * xi_0**2)

print(f"NbTi の臨界磁場 (T=0 K):")
print(f"  Hc1(0) = {Hc1_0*1e3:.1f} mT = {Hc1_0:.3f} T")
print(f"  Hc2(0) = {Hc2_0:.2f} T")
print(f"  比率 Hc2/Hc1 = {Hc2_0/Hc1_0:.1f}")

# Temperature dependence
T = np.linspace(0, Tc, 100)
t = T / Tc

# GL-like temperature dependence
xi_T = xi_0 / np.sqrt(1 - t**2 + 1e-10)
lambda_T = lambda_0 / np.sqrt(1 - t**2 + 1e-10)

Hc1_T = (Phi_0 / (4 * np.pi * mu_0 * lambda_T**2)) * np.log(lambda_T/xi_T)
Hc2_T = Phi_0 / (2 * np.pi * mu_0 * xi_T**2)

fig, (ax1, ax2) = plt.subplots(1, 2, figsize=(14, 5))

# Temperature dependence plot
ax1.plot(T, Hc2_T, 'r-', linewidth=2, label='Hc2(T)')
ax1.plot(T, Hc1_T*1e3, 'b-', linewidth=2, label='Hc1(T) × 10³')
ax1.fill_between(T, 0, Hc1_T*1e3, alpha=0.2, color='cyan', label='マイスナー状態')
ax1.fill_between(T, Hc1_T*1e3, Hc2_T, alpha=0.2, color='yellow', label='混合状態')
ax1.set_xlabel('温度 T (K)', fontsize=12)
ax1.set_ylabel('臨界磁場 (T)', fontsize=12)
ax1.set_title('NbTi の臨界磁場の温度依存性', fontsize=14)
ax1.legend(fontsize=11)
ax1.grid(True, alpha=0.3)

# Phase diagram
H = np.linspace(0, Hc2_0*1.1, 200)
T_mesh, H_mesh = np.meshgrid(T, H)

# Create phase boundaries
phase = np.zeros_like(T_mesh)
for i, h in enumerate(H):
    for j, temp in enumerate(T):
        t_val = temp / Tc
        if t_val >= 1:
            phase[i, j] = 3  # Normal
        else:
            xi_val = xi_0 / np.sqrt(1 - t_val**2 + 1e-10)
            lambda_val = lambda_0 / np.sqrt(1 - t_val**2 + 1e-10)
            hc1_val = (Phi_0 / (4*np.pi*mu_0*lambda_val**2)) * np.log(lambda_val/xi_val)
            hc2_val = Phi_0 / (2*np.pi*mu_0*xi_val**2)

            if h < hc1_val:
                phase[i, j] = 1  # Meissner
            elif h < hc2_val:
                phase[i, j] = 2  # Mixed
            else:
                phase[i, j] = 3  # Normal

ax2.contourf(T_mesh, H_mesh, phase, levels=[0.5, 1.5, 2.5, 3.5],
             colors=['cyan', 'yellow', 'lightgray'], alpha=0.6)
ax2.plot(T, Hc1_T, 'b-', linewidth=2, label='Hc1(T)')
ax2.plot(T, Hc2_T, 'r-', linewidth=2, label='Hc2(T)')
ax2.set_xlabel('温度 T (K)', fontsize=12)
ax2.set_ylabel('磁場 H (T)', fontsize=12)
ax2.set_title('H-T 相図(第II種超伝導体)', fontsize=14)
ax2.legend(fontsize=11, loc='upper right')
ax2.grid(True, alpha=0.3)
ax2.text(Tc*0.3, Hc1_0*0.3, 'マイスナー\n状態', fontsize=11, ha='center')
ax2.text(Tc*0.5, Hc2_0*0.5, '混合状態\n(渦糸格子)', fontsize=11, ha='center')
ax2.text(Tc*0.8, Hc2_0*0.9, '常伝導\n状態', fontsize=11, ha='center')

plt.tight_layout()
plt.show()

2.5 Abrikosov渦糸格子

渦糸の周期配列

混合状態では、渦糸は自発的に周期的な格子構造を形成します。この現象を1957年に理論的に予測したAlexei Abrikosovは、2003年にノーベル物理学賞を受賞しました。

格子形成のエネルギー的理由

渦糸間には斥力が働きます。これは以下の理由によります:

渦糸間の相互作用エネルギー(単位長さあたり)は、距離 \(r\) に対して次のように振る舞います:

\[U(r) \sim \frac{\Phi_0^2}{4\pi\mu_0\lambda^2} K_0\left(\frac{r}{\lambda}\right)\]

この斥力により、渦糸は可能な限り離れた配置を取ろうとします。

三角格子(Triangular Lattice)

Abrikosovの解析により、最も安定な配置は三角格子(六方格子)であることが示されました:

三角格子の特徴

格子定数の導出

三角格子の単位セルの面積は \(A_{\text{cell}} = \frac{\sqrt{3}}{2}a^2\) です。各単位セルに1つの渦糸(磁束 \(\Phi_0\))が含まれるため:

\[B = \frac{\Phi_0}{A_{\text{cell}}} = \frac{2\Phi_0}{\sqrt{3}a^2}\]

これより:

\[a = \sqrt{\frac{2\Phi_0}{\sqrt{3}B}}\]

実験的観測

Abrikosov格子は、以下の実験技術で直接観測されています:

import numpy as np
import matplotlib.pyplot as plt

# Create triangular (hexagonal) Abrikosov vortex lattice
def create_triangular_lattice(B_field, size=10):
    """
    Create triangular vortex lattice for given magnetic field.

    Parameters:
    B_field: Applied magnetic field (T)
    size: Lattice size (number of unit cells)
    """
    Phi_0 = 2.067e-15  # Wb

    # Lattice constant
    a = np.sqrt(2 * Phi_0 / (np.sqrt(3) * B_field))

    # Generate triangular lattice points
    vortex_positions = []
    for i in range(-size, size+1):
        for j in range(-size, size+1):
            x = a * (i + 0.5 * j)
            y = a * (np.sqrt(3)/2) * j
            vortex_positions.append([x, y])

    return np.array(vortex_positions), a

# Magnetic field values
B_low = 0.1   # T (low field - large spacing)
B_high = 0.5  # T (high field - small spacing)

vortices_low, a_low = create_triangular_lattice(B_low, size=5)
vortices_high, a_high = create_triangular_lattice(B_high, size=5)

print(f"低磁場 B = {B_low} T:")
print(f"  格子定数 a = {a_low*1e9:.1f} nm")
print(f"  渦糸密度 = {B_low/(2.067e-15)*1e-18:.2e} m⁻²")

print(f"\n高磁場 B = {B_high} T:")
print(f"  格子定数 a = {a_high*1e9:.1f} nm")
print(f"  渦糸密度 = {B_high/(2.067e-15)*1e-18:.2e} m⁻²")

fig, axes = plt.subplots(1, 2, figsize=(14, 6))

# Low field
axes[0].scatter(vortices_low[:, 0]*1e9, vortices_low[:, 1]*1e9,
                s=100, c='red', marker='o', edgecolors='black', linewidths=1.5)
# Draw lines to nearest neighbors for one vortex
center_idx = len(vortices_low)//2
center = vortices_low[center_idx]
distances = np.linalg.norm(vortices_low - center, axis=1)
nearest_indices = np.argsort(distances)[1:7]  # 6 nearest neighbors
for idx in nearest_indices:
    axes[0].plot([center[0]*1e9, vortices_low[idx, 0]*1e9],
                 [center[1]*1e9, vortices_low[idx, 1]*1e9],
                 'b--', alpha=0.4, linewidth=1)

axes[0].set_xlabel('x (nm)', fontsize=12)
axes[0].set_ylabel('y (nm)', fontsize=12)
axes[0].set_title(f'低磁場 (B = {B_low} T)\n格子定数 a = {a_low*1e9:.1f} nm', fontsize=14)
axes[0].set_aspect('equal')
axes[0].grid(True, alpha=0.3)
axes[0].set_xlim(-a_low*6*1e9, a_low*6*1e9)
axes[0].set_ylim(-a_low*6*1e9, a_low*6*1e9)

# High field
axes[1].scatter(vortices_high[:, 0]*1e9, vortices_high[:, 1]*1e9,
                s=100, c='red', marker='o', edgecolors='black', linewidths=1.5)
center_idx = len(vortices_high)//2
center = vortices_high[center_idx]
distances = np.linalg.norm(vortices_high - center, axis=1)
nearest_indices = np.argsort(distances)[1:7]
for idx in nearest_indices:
    axes[1].plot([center[0]*1e9, vortices_high[idx, 0]*1e9],
                 [center[1]*1e9, vortices_high[idx, 1]*1e9],
                 'b--', alpha=0.4, linewidth=1)

axes[1].set_xlabel('x (nm)', fontsize=12)
axes[1].set_ylabel('y (nm)', fontsize=12)
axes[1].set_title(f'高磁場 (B = {B_high} T)\n格子定数 a = {a_high*1e9:.1f} nm', fontsize=14)
axes[1].set_aspect('equal')
axes[1].grid(True, alpha=0.3)
axes[1].set_xlim(-a_low*6*1e9, a_low*6*1e9)
axes[1].set_ylim(-a_low*6*1e9, a_low*6*1e9)

plt.tight_layout()
plt.show()

2.6 混合状態の熱力学

Gibbs自由エネルギー

混合状態における超伝導体のGibbs自由エネルギー密度は:

\[g(H) = -\int_0^H M \, dH'\]

ここで \(M\) は磁化です。第II種超伝導体では、\(H_{c1} < H < H_{c2}\) の範囲で磁化が非線形に変化します。

磁化曲線 M(H)

混合状態における磁化は次のような振る舞いを示します:

渦糸密度と磁化の関係

磁束密度 \(B\) と外部磁場 \(H\) の関係は:

\[B = \mu_0(H + M)\]

混合状態では \(B = n_v \Phi_0\)(渦糸密度 \(n_v\))なので、磁化は渦糸密度から計算できます。

2.7 渦糸ピン止めと臨界電流

ピン止め中心(Pinning Centers)

実用的な超伝導線材では、渦糸が動かないように「ピン止め」することが重要です。ピン止め中心となるのは:

ピン止め力

単一ピン止め中心による力は、渦糸コアとピン止め中心の相互作用エネルギーから:

\[F_{\text{pin}} \sim \frac{\Delta \kappa}{\kappa} \cdot \frac{\Phi_0^2}{\mu_0 \lambda^2 \xi}\]

ここで \(\Delta \kappa/\kappa\) はピン止め中心における GLパラメータの変化です。

臨界電流密度 Jc

渦糸が動き始める条件は、Lorentz力がピン止め力を超えることです:

\[F_{\text{Lorentz}} = J_c \times B = F_{\text{pin}}\]

これより:

臨界電流密度

\[J_c = \frac{F_{\text{pin}}}{B}\]

ピン止め力が強いほど、高い臨界電流が得られます。

磁束フロー(Flux Flow)

\(J > J_c\) では、渦糸が移動し始めます。移動する渦糸はエネルギーを散逸させ、有限の抵抗が現れます:

\[\rho_{\text{ff}} = \frac{B \Phi_0}{\eta}\]

ここで \(\eta\) は渦糸の粘性係数です。この現象を磁束フロー抵抗と呼びます。

import numpy as np
import matplotlib.pyplot as plt

# Magnetization curve for Type-II superconductor
def magnetization_curve(H, Hc1, Hc2, reversible=True):
    """
    Calculate magnetization curve M(H).

    Parameters:
    H: Applied field array
    Hc1, Hc2: Critical fields
    reversible: If True, equilibrium (reversible) magnetization
                If False, includes pinning effects (irreversible)
    """
    M = np.zeros_like(H)

    for i, h in enumerate(H):
        if h < Hc1:
            M[i] = -h  # Perfect diamagnetism
        elif h < Hc2:
            if reversible:
                # Reversible magnetization (linear approximation)
                M[i] = -Hc1 * (1 - (h - Hc1)/(Hc2 - Hc1))
            else:
                # Irreversible (with pinning) - Bean model approximation
                M[i] = -Hc1 * (1 - (h - Hc1)/(Hc2 - Hc1))**2
        else:
            M[i] = 0  # Normal state

    return M

# Parameters (NbTi)
Hc1 = 0.03  # T
Hc2 = 15.0  # T
H = np.linspace(0, 20, 500)

M_rev = magnetization_curve(H, Hc1, Hc2, reversible=True)
M_irr = magnetization_curve(H, Hc1, Hc2, reversible=False)

fig, axes = plt.subplots(1, 2, figsize=(14, 5))

# Magnetization curves
axes[0].plot(H, M_rev, 'b-', linewidth=2, label='可逆的(ピン止めなし)')
axes[0].plot(H, M_irr, 'r-', linewidth=2, label='不可逆的(ピン止めあり)')
axes[0].axvline(x=Hc1, color='orange', linestyle='--', alpha=0.7, label=f'Hc1 = {Hc1} T')
axes[0].axvline(x=Hc2, color='purple', linestyle='--', alpha=0.7, label=f'Hc2 = {Hc2} T')
axes[0].fill_between(H, M_rev, M_irr, alpha=0.3, color='green',
                      label='ピン止めによる差')
axes[0].set_xlabel('印加磁場 H (T)', fontsize=12)
axes[0].set_ylabel('磁化 M (T)', fontsize=12)
axes[0].set_title('第II種超伝導体の磁化曲線', fontsize=14)
axes[0].legend(fontsize=10)
axes[0].grid(True, alpha=0.3)
axes[0].set_xlim([0, 20])

# Critical current density vs. magnetic field
# Simplified model: Jc ~ 1/B in flux-flow regime
B_applied = np.linspace(Hc1, Hc2, 100)
Jc_0 = 1e9  # A/m² at low field (reference)

# Power-law decrease with pinning
alpha = 0.5  # Pinning strength parameter
Jc = Jc_0 * (1 - (B_applied - Hc1)/(Hc2 - Hc1))**alpha

axes[1].plot(B_applied, Jc/1e9, 'b-', linewidth=2)
axes[1].set_xlabel('磁束密度 B (T)', fontsize=12)
axes[1].set_ylabel('臨界電流密度 Jc (GA/m²)', fontsize=12)
axes[1].set_title('臨界電流密度の磁場依存性', fontsize=14)
axes[1].grid(True, alpha=0.3)
axes[1].set_yscale('log')
axes[1].axvline(x=Hc1, color='orange', linestyle='--', alpha=0.5)
axes[1].axvline(x=Hc2, color='purple', linestyle='--', alpha=0.5)
axes[1].fill_between(B_applied, 0, Jc/1e9, alpha=0.2, color='cyan')

plt.tight_layout()
plt.show()

まとめ

重要なポイント

演習問題

問題1:磁束量子化の応用

内径 \(d = 1\) mm の超伝導リングに、磁束 \(\Phi = 10\Phi_0\) が閉じ込められています。リング内部の平均磁束密度 \(B\) を計算してください。

問題2:渦糸格子定数

磁束密度 \(B = 0.2\) T において、Abrikosov渦糸の三角格子の格子定数 \(a\) と、渦糸間の最近接距離を計算してください。

問題3:臨界磁場の計算

ある第II種超伝導体が \(\xi = 3\) nm、\(\lambda = 150\) nm を持つとき、\(H_{c1}\) と \(H_{c2}\) を計算してください。また、GL パラメータ \(\kappa\) を求め、この材料が第II種であることを確認してください。

問題4:臨界電流とピン止め

ピン止め力密度 \(F_p = 10^9\) N/m³、磁束密度 \(B = 5\) T のとき、臨界電流密度 \(J_c\) を計算してください。実用超伝導線材で \(J_c > 10^9\) A/m² を達成するために必要なピン止め力密度を見積もってください。