7. Vlasov ๋ฐฉ์ •์‹

7. Vlasov ๋ฐฉ์ •์‹

ํ•™์Šต ๋ชฉํ‘œ

  • ์œ„์ƒ ๊ณต๊ฐ„๊ณผ ๋ถ„ํฌ ํ•จ์ˆ˜ $f(\mathbf{x},\mathbf{v},t)$ ์ดํ•ดํ•˜๊ธฐ
  • ๋ฌด์ถฉ๋Œ ํ”Œ๋ผ์ฆˆ๋งˆ์— ๋Œ€ํ•œ Liouville ์ •๋ฆฌ๋กœ๋ถ€ํ„ฐ Vlasov ๋ฐฉ์ •์‹ ์œ ๋„ํ•˜๊ธฐ
  • $f$์˜ ๋ชจ๋ฉ˜ํŠธ๋กœ๋ถ€ํ„ฐ ๊ฑฐ์‹œ์  ๋ฌผ๋ฆฌ๋Ÿ‰(๋ฐ€๋„, ํ‰๊ท  ์†๋„, ์••๋ ฅ) ๊ณ„์‚ฐํ•˜๊ธฐ
  • ํ‰ํ˜• ๋ถ„ํฌ ํ•จ์ˆ˜(Maxwellian, bi-Maxwellian, kappa) ํƒ๊ตฌํ•˜๊ธฐ
  • Vlasov ๋ฐฉ์ •์‹์œผ๋กœ๋ถ€ํ„ฐ ๋ณด์กด ๋ฒ•์น™(์ž…์ž, ์šด๋™๋Ÿ‰, ์—๋„ˆ์ง€, ์—”ํŠธ๋กœํ”ผ) ๋ถ„์„ํ•˜๊ธฐ
  • Python์„ ์‚ฌ์šฉํ•˜์—ฌ Vlasov ๋ฐฉ์ •์‹์˜ ์ˆ˜์น˜ ํ•ด ๊ตฌํ˜„ํ•˜๊ธฐ

1. ์œ„์ƒ ๊ณต๊ฐ„๊ณผ ๋ถ„ํฌ ํ•จ์ˆ˜

1.1 ์œ„์ƒ ๊ณต๊ฐ„

๋‹จ์ผ ์ž…์ž์˜ ๊ฒฝ์šฐ, ์œ„์ƒ ๊ณต๊ฐ„์€ ์œ„์น˜์™€ ์†๋„์˜ 6์ฐจ์› ๊ณต๊ฐ„์ž…๋‹ˆ๋‹ค:

$$ (\mathbf{x}, \mathbf{v}) = (x, y, z, v_x, v_y, v_z) $$

$N$๊ฐœ ์ž…์ž์˜ ๊ฒฝ์šฐ, ์ „์ฒด ์œ„์ƒ ๊ณต๊ฐ„์€ $6N$์ฐจ์›์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ํฐ $N$ (ํ”Œ๋ผ์ฆˆ๋งˆ๋Š” $\sim 10^{20}$๊ฐœ์˜ ์ž…์ž๋ฅผ ๊ฐ€์ง‘๋‹ˆ๋‹ค!)์— ๋Œ€ํ•ด, ๊ฐœ๋ณ„ ์ž…์ž๋ฅผ ์ถ”์ ํ•˜๋Š” ๊ฒƒ์€ ๋น„์‹ค์šฉ์ ์ž…๋‹ˆ๋‹ค.

๋Œ€์‹ , ์šฐ๋ฆฌ๋Š” ๋ถ„ํฌ ํ•จ์ˆ˜๋ฅผ ํ†ตํ•œ ํ†ต๊ณ„์  ๊ธฐ์ˆ ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

1.2 ๋ถ„ํฌ ํ•จ์ˆ˜

๋ถ„ํฌ ํ•จ์ˆ˜ $f(\mathbf{x}, \mathbf{v}, t)$๋Š” ์œ„์ƒ ๊ณต๊ฐ„์—์„œ ์ž…์ž์˜ ์ˆ˜๋ฐ€๋„๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค:

$$ dN = f(\mathbf{x}, \mathbf{v}, t) \, d^3x \, d^3v $$

ํ•ด์„: $f\,d^3x\,d^3v$๋Š” ์‹œ๊ฐ„ $t$์— $\mathbf{x}$ ์ฃผ์œ„์˜ ๋ฏธ์†Œ ๋ถ€ํ”ผ $d^3x$ ์•ˆ์—์„œ $\mathbf{v}$ ์ฃผ์œ„์˜ ์†๋„ $d^3v$๋ฅผ ๊ฐ€์ง„ ์ž…์ž์˜ ์ˆ˜์ž…๋‹ˆ๋‹ค.

    Phase space (6D)

    v_z โ†‘
        |       โ€ข particle
        |     /
        |    /  represented by
        |   /   density f(x,v,t)
        |  /
        | /________________โ†’ v_x
       /
      / v_y
     โ†“

    Position space x,y,z (3D)

1.3 ๊ทœ๊ฒฉํ™”

๋ถ€ํ”ผ $V$ ๋‚ด์˜ ์ „์ฒด ์ž…์ž ์ˆ˜๋Š”:

$$ N(t) = \int_V d^3x \int_{-\infty}^{\infty} f(\mathbf{x}, \mathbf{v}, t) \, d^3v $$

์ „์ฒด ํ”Œ๋ผ์ฆˆ๋งˆ์˜ ๊ฒฝ์šฐ:

$$ N_{\text{total}} = \int_{\text{all space}} d^3x \int_{-\infty}^{\infty} f(\mathbf{x}, \mathbf{v}, t) \, d^3v $$

1.4 ๋ชจ๋ฉ˜ํŠธ: ๊ฑฐ์‹œ์  ๋ฌผ๋ฆฌ๋Ÿ‰

๊ฑฐ์‹œ์  ๋ฌผ๋ฆฌ๋Ÿ‰์€ ์†๋„ ๊ณต๊ฐ„์— ๋Œ€ํ•ด $f$๋ฅผ ์ ๋ถ„ํ•˜์—ฌ ์–ป์Šต๋‹ˆ๋‹ค (๋ชจ๋ฉ˜ํŠธ):

์ˆ˜๋ฐ€๋„: $$ n(\mathbf{x}, t) = \int f(\mathbf{x}, \mathbf{v}, t) \, d^3v $$

ํ‰๊ท (์œ ์ฒด) ์†๋„: $$ \mathbf{u}(\mathbf{x}, t) = \frac{1}{n(\mathbf{x}, t)} \int \mathbf{v} f(\mathbf{x}, \mathbf{v}, t) \, d^3v $$

์••๋ ฅ ํ…์„œ: $$ \mathbf{P}(\mathbf{x}, t) = m \int (\mathbf{v} - \mathbf{u})(\mathbf{v} - \mathbf{u}) f(\mathbf{x}, \mathbf{v}, t) \, d^3v $$

์—ฌ๊ธฐ์„œ ์™ธ์  $(\mathbf{v} - \mathbf{u})(\mathbf{v} - \mathbf{u})$๋Š” ํ…์„œ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

์Šค์นผ๋ผ ์••๋ ฅ (๋“ฑ๋ฐฉ์„ฑ ๋ถ„ํฌ์˜ ๊ฒฝ์šฐ): $$ P = \frac{1}{3}\text{Tr}(\mathbf{P}) = \frac{m}{3}\int |\mathbf{v} - \mathbf{u}|^2 f \, d^3v $$

์˜จ๋„ (์šด๋™ํ•™์  ์ •์˜): $$ T = \frac{P}{nk_B} = \frac{m}{3nk_B}\int |\mathbf{v} - \mathbf{u}|^2 f \, d^3v $$

์—๋„ˆ์ง€ ๋ฐ€๋„: $$ \mathcal{E} = \frac{m}{2}\int v^2 f \, d^3v = \frac{1}{2}m n u^2 + \frac{3}{2}nk_BT $$

(์šด๋™ ์—๋„ˆ์ง€ = ํ‰๊ท  ํ๋ฆ„ + ์—ด ์—๋„ˆ์ง€)

1.5 ์˜ˆ์ œ: 1D ์†๋„ ๋ถ„ํฌ

$f = f(v_x)$๊ฐ€ Gaussian์ธ 1D ๋ฌธ์ œ๋ฅผ ๊ณ ๋ คํ•ฉ๋‹ˆ๋‹ค:

$$ f(v_x) = n_0 \sqrt{\frac{m}{2\pi k_B T}} \exp\left(-\frac{m(v_x - u)^2}{2k_BT}\right) $$

๋ชจ๋ฉ˜ํŠธ: - $\int f \, dv_x = n_0$ (๋ฐ€๋„) - $\int v_x f \, dv_x = n_0 u$ (์šด๋™๋Ÿ‰ ๋ฐ€๋„) - $\int (v_x - u)^2 f \, dv_x = n_0 k_BT/m$ (๋ถ„์‚ฐ)

2. Vlasov ๋ฐฉ์ •์‹

2.1 Liouville ์ •๋ฆฌ๋กœ๋ถ€ํ„ฐ์˜ ์œ ๋„

๊ณ ์ „ ์—ญํ•™์—์„œ, Liouville ์ •๋ฆฌ๋Š” ์œ„์ƒ ๊ณต๊ฐ„ ๋ฐ€๋„๊ฐ€ ๊ถค์ ์„ ๋”ฐ๋ผ ๋ณด์กด๋จ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค:

$$ \frac{df}{dt} = 0 $$

์ „๋ฏธ๋ถ„์„ ์ „๊ฐœํ•˜๋ฉด:

$$ \frac{\partial f}{\partial t} + \frac{d\mathbf{x}}{dt}\cdot\frac{\partial f}{\partial \mathbf{x}} + \frac{d\mathbf{v}}{dt}\cdot\frac{\partial f}{\partial \mathbf{v}} = 0 $$

์ „ํ•˜ ์ž…์ž์˜ ๊ฒฝ์šฐ: - $\frac{d\mathbf{x}}{dt} = \mathbf{v}$ - $\frac{d\mathbf{v}}{dt} = \frac{q}{m}(\mathbf{E} + \mathbf{v}\times\mathbf{B})$

๋Œ€์ž…ํ•˜๋ฉด:

$$ \boxed{\frac{\partial f}{\partial t} + \mathbf{v}\cdot\nabla f + \frac{q}{m}(\mathbf{E} + \mathbf{v}\times\mathbf{B})\cdot\frac{\partial f}{\partial \mathbf{v}} = 0} $$

์ด๊ฒƒ์ด Vlasov ๋ฐฉ์ •์‹์ž…๋‹ˆ๋‹ค (๋ฌด์ถฉ๋Œ Boltzmann ๋ฐฉ์ •์‹์ด๋ผ๊ณ ๋„ ํ•จ).

2.2 ๋ฌผ๋ฆฌ์  ํ•ด์„

Vlasov ๋ฐฉ์ •์‹์€ ๋ถ„ํฌ ํ•จ์ˆ˜๊ฐ€ ์ž…์ž ๊ถค์ ์— ์˜ํ•ด ์œ„์ƒ ๊ณต๊ฐ„์„ ํ†ตํ•ด ๋Œ€๋ฅ˜๋˜๋ฉฐ, (๋ฌด์ถฉ๋Œ ํ”Œ๋ผ์ฆˆ๋งˆ์— ๋Œ€ํ•ด) ์†Œ์Šค๋‚˜ ์‹ฑํฌ๊ฐ€ ์—†์Œ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

    Phase space flow

       f(x,v,t)   โ†’   f(x+vฮดt, v+aฮดt, t+ฮดt)

    Particles flow along trajectories in (x,v) space
    Distribution function is "painted" on phase space
    and advected by the flow

๊ฐ ํ•ญ: - $\frac{\partial f}{\partial t}$: ๋ช…์‹œ์  ์‹œ๊ฐ„ ์˜์กด์„ฑ - $\mathbf{v}\cdot\nabla f$: ์œ„์น˜ ๊ณต๊ฐ„์—์„œ์˜ ์ด๋ฅ˜ - $\frac{q}{m}(\mathbf{E}+\mathbf{v}\times\mathbf{B})\cdot\frac{\partial f}{\partial \mathbf{v}}$: ์†๋„ ๊ณต๊ฐ„์—์„œ์˜ ๊ฐ€์†

2.3 ์ž๊ธฐ ์ผ๊ด€์„ฑ: Vlasov-Maxwell ์‹œ์Šคํ…œ

์ „๊ธฐ์žฅ๊ณผ ์ž๊ธฐ์žฅ $\mathbf{E}$์™€ $\mathbf{B}$๋Š” ํ”Œ๋ผ์ฆˆ๋งˆ ์ž์ฒด์— ์˜ํ•ด ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค. ์ด๋“ค์€ Maxwell ๋ฐฉ์ •์‹์„ ๋งŒ์กฑํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค:

$$ \nabla\cdot\mathbf{E} = \frac{\rho}{\epsilon_0} = \frac{1}{\epsilon_0}\sum_s q_s \int f_s \, d^3v $$

$$ \nabla\times\mathbf{E} = -\frac{\partial\mathbf{B}}{\partial t} $$

$$ \nabla\cdot\mathbf{B} = 0 $$

$$ \nabla\times\mathbf{B} = \mu_0\mathbf{J} + \mu_0\epsilon_0\frac{\partial\mathbf{E}}{\partial t} = \mu_0\sum_s q_s\int\mathbf{v}f_s\,d^3v + \mu_0\epsilon_0\frac{\partial\mathbf{E}}{\partial t} $$

๊ฒฐํ•ฉ๋œ ์‹œ์Šคํ…œ (Vlasov + Maxwell)์€ Vlasov-Maxwell ์‹œ์Šคํ…œ์ด๋ฉฐ, ํ”Œ๋ผ์ฆˆ๋งˆ์˜ ์ž๊ธฐ ์ผ๊ด€์  ์šด๋™ํ•™์  ๊ธฐ์ˆ ์ž…๋‹ˆ๋‹ค.

์ •์ „๊ธฐ ๋ฌธ์ œ์˜ ๊ฒฝ์šฐ ($\mathbf{B}$ ๋ณ€ํ™” ์—†์Œ), Vlasov-Poisson ์‹œ์Šคํ…œ์„ ๊ฐ–์Šต๋‹ˆ๋‹ค:

$$ \frac{\partial f}{\partial t} + \mathbf{v}\cdot\nabla f + \frac{q}{m}\mathbf{E}\cdot\frac{\partial f}{\partial \mathbf{v}} = 0 $$

$$ \nabla\cdot\mathbf{E} = \frac{1}{\epsilon_0}\sum_s q_s \int f_s \, d^3v $$

2.4 ๋‹ค์ข… ํ”Œ๋ผ์ฆˆ๋งˆ

์—ฌ๋Ÿฌ ์ข…(์ „์ž, ์ด์˜จ, ๋ถˆ์ˆœ๋ฌผ)์„ ๊ฐ€์ง„ ํ”Œ๋ผ์ฆˆ๋งˆ์˜ ๊ฒฝ์šฐ, ๊ฐ ์ข… $s$์— ๋Œ€ํ•ด ๋ณ„๋„์˜ ๋ถ„ํฌ ํ•จ์ˆ˜ $f_s$๋ฅผ ๊ฐ–์Šต๋‹ˆ๋‹ค:

$$ \frac{\partial f_s}{\partial t} + \mathbf{v}\cdot\nabla f_s + \frac{q_s}{m_s}(\mathbf{E} + \mathbf{v}\times\mathbf{B})\cdot\frac{\partial f_s}{\partial \mathbf{v}} = 0 $$

$\mathbf{E}$์™€ $\mathbf{B}$๋Š” ๋ชจ๋“  ์ข…์— ๋Œ€ํ•œ ํ•ฉ์œผ๋กœ ๊ฒฐ์ •๋ฉ๋‹ˆ๋‹ค.

3. ๋ณด์กด ๋ฒ•์น™

3.1 ์ž…์ž ๋ณด์กด

Vlasov ๋ฐฉ์ •์‹์„ ๋ชจ๋“  ์†๋„์— ๋Œ€ํ•ด ์ ๋ถ„ํ•ฉ๋‹ˆ๋‹ค:

$$ \int \frac{\partial f}{\partial t} d^3v + \int \mathbf{v}\cdot\nabla f \, d^3v + \int \frac{q}{m}(\mathbf{E}+\mathbf{v}\times\mathbf{B})\cdot\frac{\partial f}{\partial \mathbf{v}} d^3v = 0 $$

์ฒซ ๋ฒˆ์งธ ํ•ญ: $$ \int \frac{\partial f}{\partial t} d^3v = \frac{\partial}{\partial t}\int f \, d^3v = \frac{\partial n}{\partial t} $$

๋‘ ๋ฒˆ์งธ ํ•ญ: $$ \int \mathbf{v}\cdot\nabla f \, d^3v = \nabla\cdot\int \mathbf{v}f \, d^3v = \nabla\cdot(n\mathbf{u}) $$

์„ธ ๋ฒˆ์งธ ํ•ญ (๋ถ€๋ถ„ ์ ๋ถ„, $f\to 0$๋ฅผ $|\mathbf{v}|\to\infty$์ผ ๋•Œ ๊ฐ€์ •): $$ \int \frac{q}{m}\mathbf{F}\cdot\frac{\partial f}{\partial \mathbf{v}} d^3v = -\frac{q}{m}\int f\nabla_v\cdot\mathbf{F} \, d^3v = 0 $$

์™œ๋ƒํ•˜๋ฉด $\nabla_v\cdot(\mathbf{E}+\mathbf{v}\times\mathbf{B}) = \nabla_v\cdot\mathbf{E} + \nabla_v\cdot(\mathbf{v}\times\mathbf{B}) = 0$ (E๋Š” v์™€ ๋…๋ฆฝ์ ์ด๊ณ , ์™ธ์ ์€ ์†๋„ ๊ณต๊ฐ„์—์„œ ๋ฐœ์‚ฐ์ด 0).

๊ฒฐ๊ณผ: $$ \boxed{\frac{\partial n}{\partial t} + \nabla\cdot(n\mathbf{u}) = 0} $$

์—ฐ์† ๋ฐฉ์ •์‹: ์ž…์ž ์ˆ˜๊ฐ€ ๋ณด์กด๋ฉ๋‹ˆ๋‹ค.

3.2 ์šด๋™๋Ÿ‰ ๋ณด์กด

Vlasov ๋ฐฉ์ •์‹์— $m\mathbf{v}$๋ฅผ ๊ณฑํ•˜๊ณ  ์ ๋ถ„ํ•ฉ๋‹ˆ๋‹ค:

$$ \int m\mathbf{v}\frac{\partial f}{\partial t} d^3v + \int m\mathbf{v}(\mathbf{v}\cdot\nabla f) d^3v + \int q\mathbf{v}(\mathbf{E}+\mathbf{v}\times\mathbf{B})\cdot\frac{\partial f}{\partial\mathbf{v}} d^3v = 0 $$

์•ฝ๊ฐ„์˜ ๋Œ€์ˆ˜์  ๊ณ„์‚ฐ ํ›„ (๋ถ€๋ถ„ ์ ๋ถ„ ๋“ฑ):

$$ \frac{\partial}{\partial t}(mn\mathbf{u}) + \nabla\cdot\mathbf{P} = qn(\mathbf{E} + \mathbf{u}\times\mathbf{B}) $$

์—ฌ๊ธฐ์„œ $\mathbf{P}$๋Š” ์šด๋™๋Ÿ‰ ํ”Œ๋Ÿญ์Šค ํ…์„œ์ž…๋‹ˆ๋‹ค (์••๋ ฅ๊ณผ ํ๋ฆ„์„ ํฌํ•จ).

์šด๋™๋Ÿ‰ ๋ฐฉ์ •์‹: ์šด๋™๋Ÿ‰์€ ์ „์ž๊ธฐ๋ ฅ์œผ๋กœ ์ธํ•ด ๋ณ€ํ™”ํ•ฉ๋‹ˆ๋‹ค.

3.3 ์—๋„ˆ์ง€ ๋ณด์กด

$\frac{1}{2}mv^2$๋ฅผ ๊ณฑํ•˜๊ณ  ์ ๋ถ„ํ•ฉ๋‹ˆ๋‹ค:

$$ \frac{\partial}{\partial t}\left(\frac{1}{2}mn\langle v^2\rangle\right) + \nabla\cdot\mathbf{Q} = qn\mathbf{u}\cdot\mathbf{E} $$

์—ฌ๊ธฐ์„œ $\mathbf{Q}$๋Š” ์—๋„ˆ์ง€ ํ”Œ๋Ÿญ์Šค์ž…๋‹ˆ๋‹ค.

์—๋„ˆ์ง€ ๋ฐฉ์ •์‹: ์šด๋™ ์—๋„ˆ์ง€๋Š” ์ „๊ธฐ์žฅ์— ์˜ํ•ด ์ˆ˜ํ–‰๋œ ์ผ๋กœ ์ธํ•ด ๋ณ€ํ™”ํ•ฉ๋‹ˆ๋‹ค.

(์ž๊ธฐ์žฅ์€ ์ผ์„ ํ•˜์ง€ ์•Š์Œ: $\mathbf{v}\times\mathbf{B}\perp\mathbf{v}$)

3.4 ์—”ํŠธ๋กœํ”ผ์™€ Casimir ๋ถˆ๋ณ€๋Ÿ‰

์—”ํŠธ๋กœํ”ผ๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค:

$$ S = -k_B \int f \ln f \, d^3x \, d^3v $$

Vlasov ๋ฐฉ์ •์‹์œผ๋กœ๋ถ€ํ„ฐ, ์šฐ๋ฆฌ๋Š” ๋‹ค์Œ์„ ๋ณด์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

$$ \frac{dS}{dt} = 0 $$

์—”ํŠธ๋กœํ”ผ๋Š” ๋ฌด์ถฉ๋Œ ํ”Œ๋ผ์ฆˆ๋งˆ์—์„œ ๋ณด์กด๋ฉ๋‹ˆ๋‹ค (๊ฐ€์—ญ์  ๋™์—ญํ•™). ์ด๊ฒƒ์€ ์—”ํŠธ๋กœํ”ผ๊ฐ€ ์ฆ๊ฐ€ํ•˜๋Š” ์ถฉ๋Œ ์‹œ์Šคํ…œ (H-์ •๋ฆฌ)๊ณผ ๋งค์šฐ ๋‹ค๋ฆ…๋‹ˆ๋‹ค.

๋” ์ผ๋ฐ˜์ ์œผ๋กœ, ๋‹ค์Œ ํ˜•ํƒœ์˜ ๋ชจ๋“  ๋ฒ”ํ•จ์ˆ˜:

$$ C = \int G(f) \, d^3x \, d^3v $$

์—ฌ๊ธฐ์„œ $G$๋Š” ์ž„์˜์˜ ํ•จ์ˆ˜์ด๋ฉฐ, $f$๊ฐ€ Vlasov ๋ฐฉ์ •์‹์„ ๋งŒ์กฑํ•˜๋ฉด ๋ณด์กด๋ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ Casimir ๋ถˆ๋ณ€๋Ÿ‰์ด๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

4. ํ‰ํ˜• ๋ถ„ํฌ ํ•จ์ˆ˜

4.1 Maxwellian ๋ถ„ํฌ

๊ฐ€์žฅ ์ผ๋ฐ˜์ ์ธ ํ‰ํ˜•์€ Maxwellian์ž…๋‹ˆ๋‹ค (์—ดํ‰ํ˜•):

$$ \boxed{f_0(\mathbf{v}) = n_0 \left(\frac{m}{2\pi k_B T}\right)^{3/2} \exp\left(-\frac{m|\mathbf{v} - \mathbf{u}|^2}{2k_BT}\right)} $$

์—ฌ๊ธฐ์„œ: - $n_0$: ํ‰ํ˜• ๋ฐ€๋„ - $\mathbf{u}$: ํ‰๊ท  ๋“œ๋ฆฌํ”„ํŠธ ์†๋„ - $T$: ์˜จ๋„

์„ฑ์งˆ: - $\mathbf{u}$๋กœ ์›€์ง์ด๋Š” ํ”„๋ ˆ์ž„์—์„œ ๋“ฑ๋ฐฉ์„ฑ - ์ฃผ์–ด์ง„ ๋ฐ€๋„์™€ ์—๋„ˆ์ง€์— ๋Œ€ํ•ด ์—”ํŠธ๋กœํ”ผ ์ตœ๋Œ€ํ™” - $\mathbf{E} = \mathbf{B} = 0$ (๋˜๋Š” ๊ท ์ผํ•œ $\mathbf{u} = \mathbf{E}\times\mathbf{B}/B^2$)์ธ ๊ฒฝ์šฐ Vlasov ๋ฐฉ์ •์‹์˜ ์ •์ƒ ํ•ด

4.2 Jeans ์ •๋ฆฌ

Jeans ์ •๋ฆฌ: ์šด๋™ ์ƒ์ˆ˜์˜ ์ž„์˜์˜ ํ•จ์ˆ˜๋Š” Vlasov ๋ฐฉ์ •์‹์˜ ์ •์ƒ ํ•ด์ž…๋‹ˆ๋‹ค.

์žฅ $\mathbf{E}$, $\mathbf{B}$์—์„œ ์ž…์ž์— ๋Œ€ํ•ด, ์—๋„ˆ์ง€ $H = \frac{1}{2}mv^2 + q\Phi$๊ฐ€ ๋ณด์กด๋˜๋ฉด:

$$ f = f(H) $$

๋Š” ์ •์ƒ ํ•ด์ž…๋‹ˆ๋‹ค.

๋” ์ผ๋ฐ˜์ ์œผ๋กœ: $$ f = f(H, \mathbf{P}_{\text{canonical}}, \mu, J, \Phi, \ldots) $$

์—ฌ๊ธฐ์„œ ์ธ์ˆ˜๋Š” ์ž„์˜์˜ ์šด๋™ ์ƒ์ˆ˜์ž…๋‹ˆ๋‹ค (์—๋„ˆ์ง€, ์ •์ค€ ์šด๋™๋Ÿ‰, ๋‹จ์—ด ๋ถˆ๋ณ€๋Ÿ‰ ๋“ฑ).

4.3 Bi-Maxwellian ๋ถ„ํฌ

์žํ™”๋œ ํ”Œ๋ผ์ฆˆ๋งˆ์—์„œ, ๋น„๋“ฑ๋ฐฉ์„ฑ์ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์ธ ๋ชจ๋ธ์€ bi-Maxwellian์ž…๋‹ˆ๋‹ค:

$$ \boxed{f_0(v_\perp, v_\parallel) = n_0 \frac{m}{2\pi k_B} \frac{1}{T_\perp}\frac{1}{\sqrt{2\pi k_B T_\parallel/m}} \exp\left(-\frac{mv_\perp^2}{2k_BT_\perp} - \frac{m v_\parallel^2}{2k_BT_\parallel}\right)} $$

์—ฌ๊ธฐ์„œ $T_\perp$์™€ $T_\parallel$๋Š” $\mathbf{B}$์— ์ˆ˜์ง ๋ฐ ํ‰ํ–‰ํ•œ ์˜จ๋„์ž…๋‹ˆ๋‹ค.

๋น„๋“ฑ๋ฐฉ์„ฑ ๋งค๊ฐœ๋ณ€์ˆ˜: $$ A = \frac{T_\perp}{T_\parallel} - 1 $$

  • $A > 0$: ์ˆ˜์ง ๊ฐ€์—ด (์˜ˆ: ์‚ฌ์ดํด๋กœํŠธ๋ก  ๊ณต๋ช… ๊ฐ€์—ด)
  • $A < 0$: ํ‰ํ–‰ ๊ฐ€์—ด (์˜ˆ: ์ž๊ธฐ ์••์ถ•)

Bi-Maxwellian ๋ถ„ํฌ๋Š” ๋ถˆ์•ˆ์ •์„ฑ์„ ์œ ๋ฐœํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค (์˜ˆ: $A > 0$์— ๋Œ€ํ•œ ์ „์ž๊ธฐ ์ด์˜จ ์‚ฌ์ดํด๋กœํŠธ๋ก  ํŒŒ๋™).

4.4 Kappa ๋ถ„ํฌ

์šฐ์ฃผ ํ”Œ๋ผ์ฆˆ๋งˆ (ํƒœ์–‘ํ’, ์ž๊ธฐ๊ถŒ)์—์„œ, ๊ด€์ธก์€ ๋น„์—ด์  ๊ผฌ๋ฆฌ๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค โ€” Maxwellian์ด ์˜ˆ์ธกํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ๋” ๋งŽ์€ ๊ณ ์—๋„ˆ์ง€ ์ž…์ž. ์ผ๋ฐ˜์ ์ธ ๋ชจ๋ธ์€ kappa ๋ถ„ํฌ์ž…๋‹ˆ๋‹ค:

$$ \boxed{f_\kappa(v) = n_0 \frac{1}{(\pi\kappa\theta^2)^{3/2}} \frac{\Gamma(\kappa+1)}{\Gamma(\kappa-1/2)} \left(1 + \frac{v^2}{\kappa\theta^2}\right)^{-(\kappa+1)}} $$

์—ฌ๊ธฐ์„œ: - $\kappa > 3/2$: ์ŠคํŽ™ํŠธ๋Ÿผ ์ง€์ˆ˜ (๋‚ฎ์€ $\kappa$ = ๋” ๋šฑ๋šฑํ•œ ๊ผฌ๋ฆฌ) - $\theta^2 = \frac{2k_BT}{m}\frac{\kappa - 3/2}{\kappa}$: ์—ด์†๋„ ๋งค๊ฐœ๋ณ€์ˆ˜ - $\Gamma$: ๊ฐ๋งˆ ํ•จ์ˆ˜

๊ทนํ•œ: - $\kappa \to \infty$: Maxwellian์œผ๋กœ ํšŒ๋ณต - $\kappa \to 3/2$: ๋ฉฑ๋ฒ•์น™ ๊ผฌ๋ฆฌ $f \propto v^{-2(\kappa+1)} = v^{-5}$

Kappa ๋ถ„ํฌ๋Š” ๋‹ค์Œ์œผ๋กœ๋ถ€ํ„ฐ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค: - ๊ฐ„ํ—์  ์ž…์ž ๊ฐ€์† - ๋ฌด์ถฉ๋Œ "์ค€ํ‰ํ˜•" ์™„ํ™” - ๋‚œ๋ฅ˜ ๊ฐ€์—ด

4.5 ๋“œ๋ฆฌํ”„ํŠธ Maxwellian (๋น”)

๋น”์ด ์žˆ๋Š” ํ”Œ๋ผ์ฆˆ๋งˆ๋Š” ๋‘ ๊ฐœ์˜ ์ง‘๋‹จ์„ ๊ฐ–์Šต๋‹ˆ๋‹ค:

$$ f = f_{\text{bulk}} + f_{\text{beam}} $$

์˜ˆ๋ฅผ ๋“ค์–ด: $$ f(v) = n_b\left(\frac{m}{2\pi k_B T_b}\right)^{3/2}\exp\left(-\frac{m(v - v_b)^2}{2k_BT_b}\right) + n_c\left(\frac{m}{2\pi k_B T_c}\right)^{3/2}\exp\left(-\frac{mv^2}{2k_BT_c}\right) $$

์—ฌ๊ธฐ์„œ ์•„๋ž˜์ฒจ์ž $b$ = ๋น”, $c$ = ์ฝ”์–ด.

Bump-on-tail (1D ๋ฒ„์ „):

    f(v)
      โ†‘
      |    Core
      |   /โ€พโ€พโ€พ\
      |  /     \___
      | /          \___   Beam (bump)
      |/               \__/โ€พโ€พ\_______
     โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ†’ v
                               v_b

    Positive slope df/dv > 0 at resonance
    โ†’ Unstable (two-stream instability)

์ด๊ฒƒ์€ ๋ถˆ์•ˆ์ •์„ฑ (two-stream, bump-on-tail)์„ ์œ ๋ฐœํ•˜์—ฌ, ๋น”์—์„œ ํŒŒ๋™์œผ๋กœ ์—๋„ˆ์ง€๋ฅผ ์ „๋‹ฌํ•ฉ๋‹ˆ๋‹ค.

5. ์„ ํ˜•ํ™” ๋ฐ ์„ญ๋™ ์ด๋ก 

5.1 ํ‰ํ˜• + ์„ญ๋™

์ž‘์€ ์ง„ํญ ํŒŒ๋™์˜ ๊ฒฝ์šฐ, ๋ถ„ํ•ดํ•ฉ๋‹ˆ๋‹ค:

$$ f = f_0(\mathbf{v}) + f_1(\mathbf{x}, \mathbf{v}, t) $$

$$ \mathbf{E} = \mathbf{E}_0 + \mathbf{E}_1(\mathbf{x}, t) $$

์—ฌ๊ธฐ์„œ ์•„๋ž˜์ฒจ์ž $0$ = ํ‰ํ˜•, $1$ = ์„ญ๋™์ด๋ฉฐ $|f_1| \ll f_0$.

5.2 ์„ ํ˜•ํ™”๋œ Vlasov ๋ฐฉ์ •์‹

Vlasov์— ๋Œ€์ž…ํ•˜๊ณ  1์ฐจ ํ•ญ๋งŒ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค:

$$ \frac{\partial f_1}{\partial t} + \mathbf{v}\cdot\nabla f_1 + \frac{q}{m}(\mathbf{E}_0 + \mathbf{v}\times\mathbf{B}_0)\cdot\frac{\partial f_1}{\partial\mathbf{v}} = -\frac{q}{m}\mathbf{E}_1\cdot\frac{\partial f_0}{\partial\mathbf{v}} $$

์„ ํ˜•ํ™”๋œ Poisson๊ณผ ๊ฒฐํ•ฉ:

$$ \nabla\cdot\mathbf{E}_1 = \frac{1}{\epsilon_0}\sum_s q_s \int f_1^{(s)} \, d^3v $$

์ด๊ฒƒ์€ ํ”Œ๋ผ์ฆˆ๋งˆ ํŒŒ๋™๊ณผ ๋ถˆ์•ˆ์ •์„ฑ์˜ ์„ ํ˜• ์šด๋™ํ•™ ์ด๋ก ์˜ ๊ธฐ์ดˆ์ž…๋‹ˆ๋‹ค (Landau ๊ฐ์‡ ์— ๋Œ€ํ•ด Lesson 8์—์„œ ์ด๊ฒƒ์„ ํ’€ ๊ฒƒ์ž…๋‹ˆ๋‹ค).

5.3 BGK ๋ชจ๋“œ

BGK (Bernstein-Greene-Kruskal) ๋ชจ๋“œ๋Š” Vlasov-Poisson ์‹œ์Šคํ…œ์˜ ์ •ํ™•ํ•œ ๋น„์„ ํ˜• ํ•ด์ด๋ฉฐ, ๊ฐ‡ํžŒ ์ž…์ž๋ฅผ ๊ฐ€์ง„ ์ •์ „๊ธฐ ํŒŒ๋™ ํŒจํ‚ท์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

1D์˜ ๊ฒฝ์šฐ: $$ f(x, v, t) = f(v - u(x)) $$

์—ฌ๊ธฐ์„œ ์ž…์ž๋Š” ํŒŒ๋™์˜ ํฌํ…์…œ ์šฐ๋ฌผ์— ๊ฐ‡ํ˜€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋“ค์€ ์œ„์ƒ ์†๋„ $v_{\text{ph}}$์™€ ํฌํš ํญ์— ์˜ํ•ด ๊ฒฐ์ •๋˜๋Š” ์ง„ํญ์„ ๊ฐ€์ง„ ์ง„ํ–‰ํŒŒ ํ•ด์ž…๋‹ˆ๋‹ค.

BGK ๋ชจ๋“œ๋Š” ๋‹ค์Œ ์‚ฌ์ด์˜ ๊ท ํ˜•์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค: - ์ž…์ž ํฌํš (๋น„์„ ํ˜• ํšจ๊ณผ) - ํŒŒ๋™ ์ „ํŒŒ

์ด๋“ค์€ ๋‹ค์Œ๊ณผ ๊ด€๋ จ์ด ์žˆ์Šต๋‹ˆ๋‹ค: - ๋น„์„ ํ˜• Landau ๊ฐ์‡  - ์ „์ž ๋ฐ ์ด์˜จ ํ™€ - ์ด์ค‘์ธต

6. Python ๊ตฌํ˜„

6.1 ๋ถ„ํฌ ํ•จ์ˆ˜ ํ”Œ๋กœํŒ…

import numpy as np
import matplotlib.pyplot as plt
from scipy.special import gamma

# Constants
k_B = 1.380649e-23  # J/K
m_p = 1.67e-27      # kg
m_e = 9.11e-31      # kg
e = 1.6e-19         # C

def maxwellian_1d(v, n, T, m, u=0):
    """
    1D Maxwellian distribution
    """
    return n * np.sqrt(m / (2 * np.pi * k_B * T)) * np.exp(-m * (v - u)**2 / (2 * k_B * T))

def maxwellian_3d(v, n, T, m):
    """
    3D Maxwellian (isotropic, speed distribution)
    f(v) dv = 4ฯ€ v^2 f(v_vec) dv
    """
    return 4 * np.pi * v**2 * n * (m / (2 * np.pi * k_B * T))**(3/2) * np.exp(-m * v**2 / (2 * k_B * T))

def kappa_1d(v, n, T, m, kappa, u=0):
    """
    1D kappa distribution
    """
    theta_sq = (2 * k_B * T / m) * (kappa - 3/2) / kappa
    norm = n / (np.sqrt(np.pi * kappa * theta_sq)) * gamma(kappa + 1) / gamma(kappa - 1/2)
    return norm * (1 + (v - u)**2 / (kappa * theta_sq))**(-kappa - 1)

def bi_maxwellian_vperp(v_perp, v_para, n, T_perp, T_para, m):
    """
    Bi-Maxwellian: f(v_perp, v_para)
    Here we fix v_para and plot vs v_perp
    """
    return n * (m / (2 * np.pi * k_B * T_perp)) * np.sqrt(m / (2 * np.pi * k_B * T_para)) * \
           np.exp(-m * v_perp**2 / (2 * k_B * T_perp) - m * v_para**2 / (2 * k_B * T_para))

# Parameters
n0 = 1e19  # m^-3
T_eV = 100  # eV
T = T_eV * e / k_B  # Kelvin
m = m_p

v = np.linspace(-5e5, 5e5, 1000)  # m/s

# Plot 1D distributions
fig, axes = plt.subplots(2, 2, figsize=(14, 10))

# Maxwellian
ax = axes[0, 0]
f_max = maxwellian_1d(v, n0, T, m)
ax.plot(v/1e3, f_max, 'b-', linewidth=2, label='Maxwellian')
ax.set_xlabel('v (km/s)', fontsize=12)
ax.set_ylabel('f(v) (s/mโด)', fontsize=12)
ax.set_title('1D Maxwellian Distribution', fontsize=14, fontweight='bold')
ax.grid(True, alpha=0.3)
ax.legend()

# Drifting Maxwellian (beam)
ax = axes[0, 1]
f_core = maxwellian_1d(v, n0*0.9, T, m, u=0)
f_beam = maxwellian_1d(v, n0*0.1, T*0.5, m, u=2e5)
f_total = f_core + f_beam
ax.plot(v/1e3, f_core, 'b-', linewidth=1, label='Core')
ax.plot(v/1e3, f_beam, 'r-', linewidth=1, label='Beam')
ax.plot(v/1e3, f_total, 'k-', linewidth=2, label='Total')
ax.set_xlabel('v (km/s)', fontsize=12)
ax.set_ylabel('f(v) (s/mโด)', fontsize=12)
ax.set_title('Bump-on-Tail Distribution', fontsize=14, fontweight='bold')
ax.grid(True, alpha=0.3)
ax.legend()

# Kappa distribution comparison
ax = axes[1, 0]
kappa_values = [3, 5, 10, 100]
colors = ['red', 'orange', 'green', 'blue']
for kappa_val, color in zip(kappa_values, colors):
    if kappa_val > 3/2:
        f_kappa = kappa_1d(v, n0, T, m, kappa_val)
        label = f'ฮบ = {kappa_val}' if kappa_val < 100 else 'ฮบ โ†’ โˆž (Maxwellian)'
        ax.plot(v/1e3, f_kappa, color=color, linewidth=2, label=label)

ax.set_xlabel('v (km/s)', fontsize=12)
ax.set_ylabel('f(v) (s/mโด)', fontsize=12)
ax.set_title('Kappa Distributions (Non-thermal Tails)', fontsize=14, fontweight='bold')
ax.set_yscale('log')
ax.grid(True, alpha=0.3, which='both')
ax.legend()

# 3D speed distribution
ax = axes[1, 1]
v_speed = np.linspace(0, 6e5, 1000)
f_3d = maxwellian_3d(v_speed, n0, T, m)
v_th = np.sqrt(2 * k_B * T / m)
ax.plot(v_speed/1e3, f_3d, 'b-', linewidth=2)
ax.axvline(x=v_th/1e3, color='r', linestyle='--', linewidth=2,
          label=f'v_th = {v_th/1e3:.1f} km/s')
ax.set_xlabel('Speed v (km/s)', fontsize=12)
ax.set_ylabel('f(v) (s/mโด)', fontsize=12)
ax.set_title('3D Maxwellian Speed Distribution', fontsize=14, fontweight='bold')
ax.grid(True, alpha=0.3)
ax.legend()

plt.tight_layout()
plt.savefig('distribution_functions.png', dpi=150)
print("Saved: distribution_functions.png")

# Bi-Maxwellian
fig, ax = plt.subplots(figsize=(10, 6))

v_perp_array = np.linspace(0, 5e5, 1000)
T_perp_eV = 200
T_para_eV = 50
T_perp = T_perp_eV * e / k_B
T_para = T_para_eV * e / k_B

# Different v_para slices
v_para_values = [0, 1e5, 2e5, 3e5]
colors = ['blue', 'green', 'orange', 'red']

for v_para, color in zip(v_para_values, colors):
    f_bi = bi_maxwellian_vperp(v_perp_array, v_para, n0, T_perp, T_para, m)
    ax.plot(v_perp_array/1e3, f_bi, color=color, linewidth=2,
           label=f'v_para = {v_para/1e3:.0f} km/s')

ax.set_xlabel('v_perp (km/s)', fontsize=12)
ax.set_ylabel('f(v_perp, v_para) (s/mโด)', fontsize=12)
ax.set_title(f'Bi-Maxwellian: T_perp = {T_perp_eV} eV, T_para = {T_para_eV} eV',
            fontsize=14, fontweight='bold')
ax.set_yscale('log')
ax.grid(True, alpha=0.3, which='both')
ax.legend()
plt.tight_layout()
plt.savefig('bi_maxwellian.png', dpi=150)
print("Saved: bi_maxwellian.png")

6.2 ๋ชจ๋ฉ˜ํŠธ ๊ณ„์‚ฐ

from scipy.integrate import simps

def compute_moments(v_array, f_array):
    """
    Compute moments of 1D distribution function
    """
    # Density
    n = simps(f_array, v_array)

    # Mean velocity
    u = simps(v_array * f_array, v_array) / n

    # Variance (temperature measure)
    var = simps((v_array - u)**2 * f_array, v_array) / n

    # Thermal velocity
    v_th = np.sqrt(var)

    return n, u, v_th, var

# Test with Maxwellian
v_test = np.linspace(-1e6, 1e6, 10000)
n_test = 1e19
T_test = 100 * e / k_B
u_test = 1e5  # drifting

f_test = maxwellian_1d(v_test, n_test, T_test, m_p, u=u_test)

n_calc, u_calc, v_th_calc, var_calc = compute_moments(v_test, f_test)

print("\n=== Moment Calculation ===")
print(f"Input:")
print(f"  n = {n_test:.2e} m^-3")
print(f"  u = {u_test:.2e} m/s")
print(f"  T = {T_test*k_B/e:.2f} eV")
print(f"  v_th (expected) = {np.sqrt(2*k_B*T_test/m_p):.2e} m/s")

print(f"\nCalculated from distribution:")
print(f"  n = {n_calc:.2e} m^-3")
print(f"  u = {u_calc:.2e} m/s")
print(f"  v_th = {v_th_calc:.2e} m/s")
print(f"  T = {m_p*var_calc/k_B/2:.2f} K = {m_p*var_calc/e/2:.2f} eV")

errors = [
    abs(n_calc - n_test) / n_test,
    abs(u_calc - u_test) / abs(u_test),
    abs(v_th_calc - np.sqrt(2*k_B*T_test/m_p)) / np.sqrt(2*k_B*T_test/m_p)
]
print(f"\nRelative errors: {errors}")

6.3 ๊ฐ„๋‹จํ•œ 1D Vlasov ์†”๋ฒ„ (์—ฐ์‚ฐ์ž ๋ถ„๋ฆฌ)

def vlasov_1d_solver(x, v, f0, E_func, dt, num_steps, q, m):
    """
    Simple 1D Vlasov solver using operator splitting

    x: position grid
    v: velocity grid
    f0: initial distribution f(x,v,t=0)
    E_func: function E(x,t) giving electric field
    dt: timestep
    num_steps: number of steps
    q, m: charge and mass

    Returns: f(x,v,t) at final time
    """
    f = f0.copy()
    dx = x[1] - x[0]
    dv = v[1] - v[0]
    Nx, Nv = len(x), len(v)

    # Storage for snapshots
    snapshots = []
    snapshot_times = []

    for n in range(num_steps):
        t = n * dt

        # Step 1: Advection in x (โˆ‚f/โˆ‚t + v โˆ‚f/โˆ‚x = 0)
        # Use upwind scheme
        f_new = np.zeros_like(f)
        for j in range(Nv):
            for i in range(Nx):
                if v[j] > 0:
                    i_up = (i - 1) % Nx  # periodic BC
                    f_new[i, j] = f[i, j] - v[j] * dt / dx * (f[i, j] - f[i_up, j])
                else:
                    i_up = (i + 1) % Nx
                    f_new[i, j] = f[i, j] - v[j] * dt / dx * (f[i_up, j] - f[i, j])
        f = f_new.copy()

        # Step 2: Acceleration in v (โˆ‚f/โˆ‚t + (q/m)E โˆ‚f/โˆ‚v = 0)
        E = E_func(x, t)
        f_new = np.zeros_like(f)
        for i in range(Nx):
            a = q * E[i] / m  # acceleration
            for j in range(Nv):
                if a > 0:
                    j_up = max(j - 1, 0)
                    f_new[i, j] = f[i, j] - a * dt / dv * (f[i, j] - f[i, j_up])
                else:
                    j_up = min(j + 1, Nv - 1)
                    f_new[i, j] = f[i, j] - a * dt / dv * (f[i, j_up] - f[i, j])
        f = f_new.copy()

        # Save snapshots
        if n % (num_steps // 10) == 0:
            snapshots.append(f.copy())
            snapshot_times.append(t)

    return f, snapshots, snapshot_times

# Setup 1D problem
Nx, Nv = 128, 128
Lx = 2 * np.pi / 0.5  # wavelength
x = np.linspace(0, Lx, Nx)
v = np.linspace(-3e5, 3e5, Nv)

X, V = np.meshgrid(x, v, indexing='ij')

# Initial condition: perturbed Maxwellian
n0 = 1e19
T0 = 100 * e / k_B
k_wave = 0.5  # wavenumber (1/m)
amplitude = 0.01

f0 = np.zeros((Nx, Nv))
for i in range(Nx):
    n_pert = n0 * (1 + amplitude * np.cos(k_wave * x[i]))
    f0[i, :] = maxwellian_1d(v, n_pert, T0, m_e, u=0)

# Electric field (for this demo, use a static wave)
def E_field(x, t):
    E0 = 1e2  # V/m
    return E0 * np.sin(k_wave * x) * np.cos(1e5 * t)

# Solve
print("\nSolving 1D Vlasov equation...")
dt = 1e-8  # s
num_steps = 500

f_final, snapshots, times = vlasov_1d_solver(x, v, f0, E_field, dt, num_steps, -e, m_e)

print(f"Completed {num_steps} steps, final time = {times[-1]:.2e} s")

# Plot phase space evolution
fig, axes = plt.subplots(2, 3, figsize=(16, 10))
axes = axes.flatten()

for idx, (snap, t) in enumerate(zip([f0] + snapshots[:5], [0] + times[:5])):
    ax = axes[idx]
    im = ax.contourf(x, v/1e3, snap.T, levels=30, cmap='viridis')
    ax.set_xlabel('x (m)', fontsize=10)
    ax.set_ylabel('v (km/s)', fontsize=10)
    ax.set_title(f't = {t:.2e} s', fontsize=12, fontweight='bold')
    plt.colorbar(im, ax=ax, label='f(x,v)')

plt.tight_layout()
plt.savefig('vlasov_1d_evolution.png', dpi=150)
print("Saved: vlasov_1d_evolution.png")

# Density evolution
fig, ax = plt.subplots(figsize=(10, 6))
for idx, (snap, t) in enumerate(zip([f0] + snapshots[::2], [0] + times[::2])):
    n_x = simps(snap, v, axis=1)
    ax.plot(x, n_x/n0, linewidth=1.5, label=f't = {t:.1e} s')

ax.set_xlabel('x (m)', fontsize=12)
ax.set_ylabel('n(x,t) / n0', fontsize=12)
ax.set_title('Density Oscillation (1D Vlasov)', fontsize=14, fontweight='bold')
ax.legend()
ax.grid(True, alpha=0.3)
plt.tight_layout()
plt.savefig('vlasov_density.png', dpi=150)
print("Saved: vlasov_density.png")

์š”์•ฝ

์ด ์ˆ˜์—…์—์„œ, ์šฐ๋ฆฌ๋Š” Vlasov ๋ฐฉ์ •์‹์„ ์‚ฌ์šฉํ•˜์—ฌ ํ”Œ๋ผ์ฆˆ๋งˆ์˜ ์šด๋™ํ•™ ์ด๋ก ์„ ๊ฐœ๋ฐœํ–ˆ์Šต๋‹ˆ๋‹ค:

  1. ์œ„์ƒ ๊ณต๊ฐ„๊ณผ ๋ถ„ํฌ ํ•จ์ˆ˜: $f(\mathbf{x}, \mathbf{v}, t)$๋Š” 6D ์œ„์ƒ ๊ณต๊ฐ„์—์„œ ํ”Œ๋ผ์ฆˆ๋งˆ์˜ ํ†ต๊ณ„์  ์ƒํƒœ๋ฅผ ๊ธฐ์ˆ ํ•ฉ๋‹ˆ๋‹ค.

  2. ๋ชจ๋ฉ˜ํŠธ: ๊ฑฐ์‹œ์  ๋ฌผ๋ฆฌ๋Ÿ‰ (๋ฐ€๋„, ์†๋„, ์••๋ ฅ, ์˜จ๋„)์€ ์†๋„ ๊ณต๊ฐ„์— ๋Œ€ํ•ด $f$๋ฅผ ์ ๋ถ„ํ•˜์—ฌ ์–ป์Šต๋‹ˆ๋‹ค.

  3. Vlasov ๋ฐฉ์ •์‹: $$ \frac{\partial f}{\partial t} + \mathbf{v}\cdot\nabla f + \frac{q}{m}(\mathbf{E}+\mathbf{v}\times\mathbf{B})\cdot\frac{\partial f}{\partial\mathbf{v}} = 0 $$ Liouville ์ •๋ฆฌ๋กœ๋ถ€ํ„ฐ ์œ ๋„๋œ, $f$์˜ ๋ฌด์ถฉ๋Œ ์ง„ํ™”๋ฅผ ๊ธฐ์ˆ ํ•ฉ๋‹ˆ๋‹ค.

  4. ์ž๊ธฐ ์ผ๊ด€์„ฑ: Maxwell ๋ฐฉ์ •์‹๊ณผ ๊ฒฐํ•ฉ๋œ Vlasov ๋ฐฉ์ •์‹์€ Vlasov-Maxwell ์‹œ์Šคํ…œ์„ ํ˜•์„ฑํ•ฉ๋‹ˆ๋‹ค.

  5. ๋ณด์กด ๋ฒ•์น™: Vlasov ๋ฐฉ์ •์‹์€ ์ž…์ž, ์šด๋™๋Ÿ‰, ์—๋„ˆ์ง€, ์—”ํŠธ๋กœํ”ผ (Casimir ๋ถˆ๋ณ€๋Ÿ‰)๋ฅผ ๋ณด์กดํ•ฉ๋‹ˆ๋‹ค.

  6. ํ‰ํ˜• ๋ถ„ํฌ:

  7. Maxwellian: ์—ดํ‰ํ˜•
  8. Bi-Maxwellian: ๋น„๋“ฑ๋ฐฉ์„ฑ ์žํ™” ํ”Œ๋ผ์ฆˆ๋งˆ
  9. Kappa: ๋น„์—ด์  ๊ผฌ๋ฆฌ (์šฐ์ฃผ ํ”Œ๋ผ์ฆˆ๋งˆ)
  10. ๋น”: bump-on-tail (๋ถˆ์•ˆ์ •)

  11. ์„ ํ˜•ํ™”: ์ž‘์€ ์ง„ํญ ํŒŒ๋™์— ๋Œ€ํ•œ ์„ญ๋™ ์ด๋ก ์€ ์„ ํ˜• ์šด๋™ํ•™ ์ด๋ก ์œผ๋กœ ์ด์–ด์ง‘๋‹ˆ๋‹ค (๋‹ค์Œ ์ˆ˜์—…: Landau ๊ฐ์‡ ).

Vlasov ๋ฐฉ์ •์‹์€ ์šด๋™ํ•™์  ํ”Œ๋ผ์ฆˆ๋งˆ ๋ฌผ๋ฆฌํ•™์˜ ๊ธฐ์ดˆ์ด๋ฉฐ, ์œ ์ฒด ๋ชจ๋ธ์ด ๋†“์น˜๋Š” ํ˜„์ƒ์„ ํฌ์ฐฉํ•ฉ๋‹ˆ๋‹ค: - Landau ๊ฐ์‡  (๋ฌด์ถฉ๋Œ ํŒŒ๋™ ๊ฐ์‡ ) - ์šด๋™ํ•™์  ๋ถˆ์•ˆ์ •์„ฑ - ํŒŒ๋™-์ž…์ž ๊ณต๋ช…

์—ฐ์Šต ๋ฌธ์ œ

๋ฌธ์ œ 1: ๋“œ๋ฆฌํ”„ํŠธ Maxwellian์˜ ๋ชจ๋ฉ˜ํŠธ

1D Maxwellian ๋ถ„ํฌ๋ฅผ ๊ณ ๋ คํ•ฉ๋‹ˆ๋‹ค:

$$ f(v) = n_0\sqrt{\frac{m}{2\pi k_B T}}\exp\left(-\frac{m(v-u_0)^2}{2k_BT}\right) $$

(a) 0์ฐจ ๋ชจ๋ฉ˜ํŠธ (๋ฐ€๋„)๋ฅผ ๊ณ„์‚ฐํ•ฉ๋‹ˆ๋‹ค: $n = \int f(v) \, dv$.

(b) 1์ฐจ ๋ชจ๋ฉ˜ํŠธ (ํ‰๊ท  ์†๋„)๋ฅผ ๊ณ„์‚ฐํ•ฉ๋‹ˆ๋‹ค: $\langle v\rangle = \frac{1}{n}\int v f(v) \, dv$.

(c) 2์ฐจ ๋ชจ๋ฉ˜ํŠธ (์˜จ๋„)๋ฅผ ๊ณ„์‚ฐํ•ฉ๋‹ˆ๋‹ค: $T = \frac{m}{k_B}\int (v - \langle v\rangle)^2 f(v) \, dv$.

(d) ์ œ๊ณต๋œ Python ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฒฐ๊ณผ๋ฅผ ์ˆ˜์น˜์ ์œผ๋กœ ๊ฒ€์ฆํ•ฉ๋‹ˆ๋‹ค.


๋ฌธ์ œ 2: Bi-Maxwellian ๋น„๋“ฑ๋ฐฉ์„ฑ

์žํ™”๋œ ํ”Œ๋ผ์ฆˆ๋งˆ๊ฐ€ $T_\perp = 200$ eV ๋ฐ $T_\parallel = 50$ eV์ธ bi-Maxwellian ๋ถ„ํฌ๋ฅผ ๊ฐ–์Šต๋‹ˆ๋‹ค.

(a) ๋น„๋“ฑ๋ฐฉ์„ฑ ๋งค๊ฐœ๋ณ€์ˆ˜ $A = T_\perp/T_\parallel - 1$์„ ๊ณ„์‚ฐํ•ฉ๋‹ˆ๋‹ค.

(b) $n = 10^{19}$ m$^{-3}$์— ๋Œ€ํ•ด ์••๋ ฅ ํ…์„œ ์„ฑ๋ถ„ $P_\perp = nk_BT_\perp$ ๋ฐ $P_\parallel = nk_BT_\parallel$๋ฅผ ๊ณ„์‚ฐํ•ฉ๋‹ˆ๋‹ค.

(c) ์ด ๋ถ„ํฌ๋Š” ๋“ฑ๋ฐฉ์„ฑ์ž…๋‹ˆ๊นŒ? ์•ˆ์ •ํ•ฉ๋‹ˆ๊นŒ? (ํžŒํŠธ: ํฐ $A > 0$๋Š” ์‚ฌ์ดํด๋กœํŠธ๋ก  ๋ถˆ์•ˆ์ •์„ฑ์„ ์œ ๋ฐœํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.)

(d) ๋น„๋“ฑ๋ฐฉ์„ฑ์—์„œ ์ด์šฉ ๊ฐ€๋Šฅํ•œ ์ž์œ  ์—๋„ˆ์ง€๋ฅผ ์ถ”์ •ํ•ฉ๋‹ˆ๋‹ค: $\Delta W = \frac{3}{2}nk_B(T_\perp - T_\parallel)$.


๋ฌธ์ œ 3: Kappa ๋ถ„ํฌ ๋Œ€ Maxwellian

$\kappa = 3$์ธ kappa ๋ถ„ํฌ์— ๋Œ€ํ•ด, ๋™์ผํ•œ ๋ฐ€๋„์™€ ์˜จ๋„๋ฅผ ๊ฐ€์ง„ Maxwellian์— ๋น„ํ•ด $v > 3v_{\text{th}}$์ธ ์ž…์ž (์ดˆ์—ด ์ž…์ž)์˜ ์ˆ˜์˜ ๋น„์œจ์„ ๊ณ„์‚ฐํ•ฉ๋‹ˆ๋‹ค.

(a) Maxwellian์˜ ๊ฒฝ์šฐ, $v > 3v_{\text{th}}$์ธ ์ž…์ž์˜ ๋น„์œจ์€ ๋Œ€๋žต $\exp(-9/2) \approx 0.011$ (1.1%)์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์„ ์ˆ˜์น˜์ ์œผ๋กœ ๊ณ„์‚ฐํ•ฉ๋‹ˆ๋‹ค.

(b) kappa ๋ถ„ํฌ์˜ ๊ฒฝ์šฐ, ๋‹ค์Œ์„ ์ ๋ถ„ํ•˜์—ฌ ๋™์ผํ•œ ๋น„์œจ์„ ์ˆ˜์น˜์ ์œผ๋กœ ๊ณ„์‚ฐํ•ฉ๋‹ˆ๋‹ค: $$ f_{\text{super}} = \frac{\int_{3v_{th}}^\infty f_\kappa(v) \, dv}{\int_0^\infty f_\kappa(v) \, dv} $$

(c) ์ฆ๊ฐ• ๊ณ„์ˆ˜ (kappa/Maxwellian)๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

(d) ํƒœ์–‘ํ’๊ณผ ์ž๊ธฐ๊ถŒ์—์„œ kappa ๋ถ„ํฌ๊ฐ€ ๊ด€์ธก๋˜๋Š” ์ด์œ ๋ฅผ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.


๋ฌธ์ œ 4: ์—”ํŠธ๋กœํ”ผ ๋ณด์กด

์—”ํŠธ๋กœํ”ผ $S = -k_B\int f\ln f \, d^3x\,d^3v$๊ฐ€ Vlasov ๋ฐฉ์ •์‹์— ์˜ํ•ด ๋ณด์กด๋จ์„ ๋ถ„์„์ ์œผ๋กœ ๋ณด์ž…๋‹ˆ๋‹ค.

(a) $\frac{dS}{dt} = -k_B\int\frac{\partial}{\partial t}(f\ln f) \, d^3x\,d^3v$๋กœ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.

(b) $\frac{\partial}{\partial t}(f\ln f) = (1 + \ln f)\frac{\partial f}{\partial t}$๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  Vlasov ๋ฐฉ์ •์‹์„ ๋Œ€์ž…ํ•ฉ๋‹ˆ๋‹ค.

(c) ๋ถ€๋ถ„ ์ ๋ถ„ํ•˜๊ณ  Lorentz ๊ฐ€์†์— ๋Œ€ํ•ด $\nabla_x\cdot\mathbf{v} = 0$ ๋ฐ $\nabla_v\cdot\mathbf{a} = 0$๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

(d) ๋ชจ๋“  ํ•ญ์ด ์†Œ๋ฉธํ•˜์—ฌ, $\frac{dS}{dt} = 0$์ž„์„ ๋ณด์ž…๋‹ˆ๋‹ค.


๋ฌธ์ œ 5: Langmuir ํŒŒ๋™์— ๋Œ€ํ•œ ์„ ํ˜•ํ™”๋œ Vlasov-Poisson

์žํ™”๋˜์ง€ ์•Š์€ ํ”Œ๋ผ์ฆˆ๋งˆ์—์„œ 1D ์ •์ „๊ธฐ ์„ญ๋™์„ ๊ณ ๋ คํ•ฉ๋‹ˆ๋‹ค:

$$ f = f_0(v) + f_1(x, v, t) $$

$$ E = E_1(x, t) $$

์—ฌ๊ธฐ์„œ $f_0$๋Š” ์ •์ง€ ์ƒํƒœ์˜ Maxwellian์ž…๋‹ˆ๋‹ค.

(a) $f_1$์— ๋Œ€ํ•œ ์„ ํ˜•ํ™”๋œ Vlasov ๋ฐฉ์ •์‹์„ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.

(b) $f_1$์˜ ํ•ญ์œผ๋กœ $E_1$์— ๋Œ€ํ•œ ์„ ํ˜•ํ™”๋œ Poisson ๋ฐฉ์ •์‹์„ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.

(c) ํ‰๋ฉดํŒŒ ํ•ด๋ฅผ ๊ฐ€์ •ํ•ฉ๋‹ˆ๋‹ค: $f_1 \propto e^{i(kx - \omega t)}$, $E_1 \propto e^{i(kx - \omega t)}$. ๋ถ„์‚ฐ ๊ด€๊ณ„๋ฅผ ์œ ๋„ํ•ฉ๋‹ˆ๋‹ค (์‹ค์ˆ˜ $\omega$์— ๋Œ€ํ•ด Bohm-Gross ๊ด€๊ณ„๋ฅผ ์–ป์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค; Lesson 8์—์„œ Landau ๊ฐ์‡ ๋ฅผ ๋‹ค๋ฃฐ ๊ฒƒ์ž…๋‹ˆ๋‹ค).

(d) $k\lambda_D \ll 1$์— ๋Œ€ํ•ด, $\omega^2 \approx \omega_{pe}^2(1 + 3k^2\lambda_D^2)$์ž„์„ ๋ณด์ž…๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ $\lambda_D = \sqrt{\epsilon_0 k_BT/(ne^2)}$.

ํžŒํŠธ: ์ด ๋ฌธ์ œ๋Š” Lesson 8์„ ๋ฏธ๋ฆฌ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. ์™„์ „ํ•œ ํ•ด๋Š” $v = \omega/k$์—์„œ ๊ทน์ ์„ ์ฒ˜๋ฆฌํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค (Landau ์ฒ˜๋ฐฉ).


๋‚ด๋น„๊ฒŒ์ด์…˜

to navigate between lessons