16. κ·Έλ¦° ν¨μ (Green's Functions)
16. κ·Έλ¦° ν¨μ (Green's Functions)¶
νμ΅ λͺ©ν¶
- λλ λΈν ν¨μ $\delta(x)$μ μ μ, μ±μ§, λ€μν ννμ μ΄ν΄νκ³ νμ©ν μ μλ€
- λΉμ μ°¨ λ―ΈλΆλ°©μ μ $L[u] = f(x)$μ ν΄λ₯Ό κ·Έλ¦° ν¨μλ₯Ό μ΄μ©νμ¬ μ λΆ ννλ‘ ννν μ μλ€
- κ²½κ³κ° λ¬Έμ μμ κ·Έλ¦° ν¨μλ₯Ό μ§μ ꡬμ±νκ³ , μ ν© μ‘°κ±΄(matching conditions)μ μ μ©ν μ μλ€
- κ³ μ ν¨μ μ κ°λ²μΌλ‘ κ·Έλ¦° ν¨μλ₯Ό κΈμ ννλ‘ λνλ΄κ³ , μ€ν¬λ¦-리μ°λΉ μ΄λ‘ κ³Όμ μ°κ²°μ μ΄ν΄νλ€
- νΈλ―ΈλΆλ°©μ μμ κ·Έλ¦° ν¨μ(νΈμμ‘ λ°©μ μ, μ΄λ°©μ μ, νλλ°©μ μ)λ₯Ό ꡬνκ³ λ¬Όλ¦¬μ μΌλ‘ ν΄μν μ μλ€
- μ μ κΈ°ν, μμμν, μν₯ν λ± λ¬Όλ¦¬μ μμ©μμ κ·Έλ¦° ν¨μλ₯Ό νμ©νμ¬ μ€μ λ¬Έμ λ₯Ό ν μ μλ€
물리νμμμ μ€μμ±: κ·Έλ¦° ν¨μλ "μ μμ€κ° λ§λλ μλ΅"μ κΈ°μ νλ 보νΈμ λꡬμ΄λ€. μΌλ¨ μ μμ€μ λν μλ΅(κ·Έλ¦° ν¨μ)μ μλ©΄, μ€μ²© μ리μ μν΄ μμμ μμ€ λΆν¬μ λν ν΄λ₯Ό μ λΆ νλλ‘ κ΅¬ν μ μλ€. μ μ κΈ°νμμ μ μ νμ μ μ, μμμνμμ μ νν¨μ(propagator), μν₯νμμ μ μμμ λ°©μ¬ λ± νλ 물리νμ ν΅μ¬ λ¬Έμ λ€μ΄ λͺ¨λ κ·Έλ¦° ν¨μλ‘ κ·κ²°λλ€.
1. λλ λΈν ν¨μ¶
1.1 μ μμ κΈ°λ³Έ μ±μ§¶
λλ λΈν ν¨μ $\delta(x)$λ μλ°ν μλ―Έμμ ν¨μκ° μλλΌ μΌλ°νλ ν¨μ(generalized function) λλ λΆν¬(distribution)μ΄λ€. λ€μ λ μ±μ§λ‘ μ μνλ€:
$$\delta(x) = 0 \quad (x \neq 0), \qquad \int_{-\infty}^{\infty} \delta(x) \, dx = 1$$
체(sifting) μ±μ§: λΈν ν¨μμ κ°μ₯ μ€μν μ±μ§μ΄λ€.
$$\int_{-\infty}^{\infty} f(x) \delta(x - a) \, dx = f(a)$$
μ΄κ²μ $\delta(x-a)$κ° $x = a$μμ ν¨μκ°μ "μΆμΆ"νλ€λ λ»μ΄λ€.
μΆκ° μ±μ§λ€:
$$\delta(-x) = \delta(x) \quad \text{(μ§ν¨μ)}$$
$$\delta(ax) = \frac{1}{|a|}\delta(x) \quad (a \neq 0)$$
$$x\delta(x) = 0$$
$$\delta(g(x)) = \sum_i \frac{\delta(x - x_i)}{|g'(x_i)|} \quad (g(x_i) = 0, \; g'(x_i) \neq 0)$$
1.2 λΈν ν¨μμ νν¶
$\delta(x)$λ μ μΉ ν¨μμ κ·ΉνμΌλ‘ ννν μ μλ€:
κ°μ°μμ νν: $$\delta(x) = \lim_{\epsilon \to 0} \frac{1}{\epsilon\sqrt{\pi}} e^{-x^2/\epsilon^2}$$
λ‘λ μΈ νν: $$\delta(x) = \lim_{\epsilon \to 0} \frac{1}{\pi} \frac{\epsilon}{x^2 + \epsilon^2}$$
sinc νν (νΈλ¦¬μ νν): $$\delta(x) = \frac{1}{2\pi} \int_{-\infty}^{\infty} e^{ikx} dk = \lim_{N \to \infty} \frac{\sin(Nx)}{\pi x}$$
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(-3, 3, 1000)
fig, axes = plt.subplots(1, 3, figsize=(15, 4))
# κ°μ°μμ νν
for eps in [1.0, 0.5, 0.2, 0.05]:
delta_gauss = np.exp(-x**2 / eps**2) / (eps * np.sqrt(np.pi))
axes[0].plot(x, delta_gauss, label=f'$\\epsilon={eps}$')
axes[0].set_title('κ°μ°μμ νν')
axes[0].legend(); axes[0].set_ylim(0, 10); axes[0].grid(True, alpha=0.3)
# λ‘λ μΈ νν
for eps in [1.0, 0.5, 0.2, 0.05]:
delta_lorentz = (1/np.pi) * eps / (x**2 + eps**2)
axes[1].plot(x, delta_lorentz, label=f'$\\epsilon={eps}$')
axes[1].set_title('λ‘λ μΈ νν')
axes[1].legend(); axes[1].set_ylim(0, 10); axes[1].grid(True, alpha=0.3)
# sinc νν
for N in [5, 20, 50, 200]:
delta_sinc = np.sin(N * x) / (np.pi * x + 1e-30)
axes[2].plot(x, delta_sinc, label=f'$N={N}$', alpha=0.8)
axes[2].set_title('sinc νν (νΈλ¦¬μ)')
axes[2].legend(); axes[2].set_ylim(-5, 70); axes[2].grid(True, alpha=0.3)
plt.suptitle('λλ λΈν ν¨μμ λ€μν νν', fontsize=14, fontweight='bold')
plt.tight_layout(); plt.show()
1.3 λΈν ν¨μμ λν¨μ¶
$\delta'(x)$λ λ€μ μ λΆ μ±μ§λ‘ μ μλλ€:
$$\int_{-\infty}^{\infty} f(x) \delta'(x-a) \, dx = -f'(a)$$
μΌλ°μ μΌλ‘ $n$μ°¨ λν¨μ:
$$\int_{-\infty}^{\infty} f(x) \delta^{(n)}(x-a) \, dx = (-1)^n f^{(n)}(a)$$
1.4 λ€μ°¨μ λΈν ν¨μ¶
3μ°¨μ λλ λΈν:
$$\delta^3(\mathbf{r} - \mathbf{r}') = \delta(x - x')\delta(y - y')\delta(z - z')$$
체 μ±μ§: $\int f(\mathbf{r}) \delta^3(\mathbf{r} - \mathbf{r}') \, d^3r = f(\mathbf{r}')$
ꡬ면μ’νμμ: $\delta^3(\mathbf{r} - \mathbf{r}') = \frac{\delta(r-r')}{r^2} \frac{\delta(\theta-\theta')}{\sin\theta} \delta(\phi-\phi')$
μ€μν κ΄κ³μ (μ μ κΈ°νμ ν΅μ¬):
$$\nabla^2 \left(\frac{1}{|\mathbf{r} - \mathbf{r}'|}\right) = -4\pi \delta^3(\mathbf{r} - \mathbf{r}')$$
import numpy as np
import matplotlib.pyplot as plt
# 체(sifting) μ±μ§μ μμΉ κ²μ¦
# f(x) = cos(x), a = 1.0μ λν΄ integral f(x) delta_eps(x-a) dx ~ f(a)
a = 1.0
f = lambda t: np.cos(t)
x = np.linspace(-10, 10, 100000)
print("=== 체(sifting) μ±μ§ μμΉ κ²μ¦ ===")
print(f"f(a) = cos({a}) = {f(a):.8f}")
print()
for eps in [1.0, 0.1, 0.01, 0.001]:
# κ°μ°μμ κ·Όμ¬ delta μ¬μ©
delta_approx = np.exp(-(x - a)**2 / eps**2) / (eps * np.sqrt(np.pi))
integral = np.trapz(f(x) * delta_approx, x)
error = abs(integral - f(a))
print(f" eps = {eps:.3f}: integral = {integral:.8f}, μ€μ°¨ = {error:.2e}")
2. κ·Έλ¦° ν¨μμ κ°λ ¶
2.1 λΉμ μ°¨ λ―ΈλΆλ°©μ μκ³Ό μ€μ²© μ리¶
μ ν λ―ΈλΆ μ°μ°μ $L$μ λν΄ λΉμ μ°¨ λ°©μ μ:
$$L[u(x)] = f(x)$$
μ νκ³ μ νλ€. λ§μ½ $L$μ΄ μ νμ΄λ©΄ μ€μ²© μ리(superposition principle)κ° μ±λ¦½νλ€: $L[u_1] = f_1$μ΄κ³ $L[u_2] = f_2$μ΄λ©΄ $L[\alpha u_1 + \beta u_2] = \alpha f_1 + \beta f_2$.
2.2 μ μμ€ μλ΅μΌλ‘μμ κ·Έλ¦° ν¨μ¶
μμ€ $f(x)$λ₯Ό λΈν ν¨μμ μ€μ²©μΌλ‘ νννλ©΄:
$$f(x) = \int f(x') \delta(x - x') \, dx'$$
κ·Έλ¦° ν¨μ $G(x, x')$λ₯Ό "μ μμ€ $\delta(x - x')$μ λν μλ΅"μΌλ‘ μ μνλ€:
$$L[G(x, x')] = \delta(x - x')$$
κ·Έλ¬λ©΄ μ€μ²© μ리μ μν΄ μλ λ°©μ μμ ν΄λ:
$$\boxed{u(x) = \int G(x, x') f(x') \, dx'}$$
μ΄κ²μ΄ κ·Έλ¦° ν¨μ λ°©λ²μ ν΅μ¬μ΄λ€. μ μμ€μ μλ΅ $G$λ₯Ό ν λ²λ§ ꡬνλ©΄, μμμ μμ€ $f$μ λν ν΄λ₯Ό μ λΆμΌλ‘ λ°λ‘ μ»μ μ μλ€.
2.3 물리μ μ§κ΄¶
| 물리 μμ€ν | μ°μ°μ $L$ | μμ€ $f$ | κ·Έλ¦° ν¨μ $G$ |
|---|---|---|---|
| μ μ κΈ°ν | $\nabla^2$ | $-\rho/\epsilon_0$ | μ μ νμ μ μ |
| μ΄μ λ | $\partial_t - \alpha^2\nabla^2$ | μ΄μ | μ μ΄μμ μ¨λ μλ΅ |
| νλ | $\partial_t^2 - c^2\nabla^2$ | μΈλ ₯ | μ 좩격μ λν νλ |
| μμμν | $i\hbar\partial_t - H$ | β | μ νν¨μ(propagator) |
import numpy as np
import matplotlib.pyplot as plt
# κ°λ
μμ°: 1D νμ κ°ν΄μ§ μ νμ€μ μλ΅
# L[u] = u'' = f(x), u(0) = u(1) = 0
# κ·Έλ¦° ν¨μ: G(x, x') = x'(1-x) for x > x', x(1-x') for x < x'
def greens_function_string(x, xp):
"""μ λ κ³ μ νμ κ·Έλ¦° ν¨μ"""
return np.where(x < xp, x * (1 - xp), xp * (1 - x))
x = np.linspace(0, 1, 500)
fig, (ax1, ax2) = plt.subplots(1, 2, figsize=(14, 5))
# μΌμͺ½: λ€μν μ μμ€ μμΉμμμ κ·Έλ¦° ν¨μ
for xp in [0.2, 0.4, 0.5, 0.6, 0.8]:
G = greens_function_string(x, xp)
ax1.plot(x, G, linewidth=2, label=f"$x' = {xp}$")
ax1.plot(xp, greens_function_string(xp, xp), 'ko', markersize=5)
ax1.set_xlabel('$x$'); ax1.set_ylabel("$G(x, x')$")
ax1.set_title("μ μμ€ μμΉλ³ κ·Έλ¦° ν¨μ $G(x, x')$")
ax1.legend(); ax1.grid(True, alpha=0.3)
# μ€λ₯Έμͺ½: μ€μ²© μ리 - μμμ μμ€μ λν ν΄
f_source = lambda t: np.sin(2 * np.pi * t) # μμμ μμ€ f(x)
u_solution = np.array([np.trapz(greens_function_string(xi, x) * f_source(x), x)
for xi in x])
ax2.plot(x, f_source(x), 'r--', linewidth=1.5, label='μμ€ $f(x) = \\sin(2\\pi x)$')
ax2.plot(x, u_solution, 'b-', linewidth=2.5, label='ν΄ $u(x) = \\int G f \\, dx\'$')
ax2.set_xlabel('$x$'); ax2.set_title('μ€μ²© μ리μ μν ν΄ κ΅¬μ±')
ax2.legend(); ax2.grid(True, alpha=0.3)
plt.suptitle('κ·Έλ¦° ν¨μμ κ°λ
: μ μμ€ μλ΅μ μ€μ²©', fontsize=14, fontweight='bold')
plt.tight_layout(); plt.show()
3. κ²½κ³κ° λ¬Έμ μ κ·Έλ¦° ν¨μ¶
3.1 κ΅¬μ± λ°©λ²¶
2μ°¨ ODE $L[y] = y'' + p(x)y' + q(x)y = f(x)$μ λν΄ μ μ°¨ κ²½κ³ μ‘°κ±΄ $y(a) = 0$, $y(b) = 0$μμμ κ·Έλ¦° ν¨μλ₯Ό ꡬμ±νμ.
λ¨κ³ 1: μ μ°¨ λ°©μ μ $L[y] = 0$μ λ λ 립ν΄λ₯Ό ꡬνλ€: - $y_1(x)$: $y_1(a) = 0$μ λ§μ‘± - $y_2(x)$: $y_2(b) = 0$μ λ§μ‘±
λ¨κ³ 2: κ·Έλ¦° ν¨μλ ꡬκ°λ³λ‘ μ μλλ€:
$$G(x, x') = \begin{cases} A \, y_1(x) y_2(x') & x < x' \\ A \, y_1(x') y_2(x) & x > x' \end{cases}$$
λ¨κ³ 3: μ ν© μ‘°κ±΄(matching conditions)μ μ μ©νλ€:
(1) μ°μμ±: $G$λ $x = x'$μμ μ°μ
$$G(x'^-, x') = G(x'^+, x')$$
(2) λν¨μμ λΆμ°μ: $G'$λ $x = x'$μμ μ ν λΆμ°μ
$$\left.\frac{\partial G}{\partial x}\right|_{x'^+} - \left.\frac{\partial G}{\partial x}\right|_{x'^-} = \frac{1}{p(x')}$$
μ¬κΈ°μ $p(x')$λ $L$μ μ΅κ³ μ°¨ νμ κ³μμ΄λ€ (νμ€ν $y''$μ΄λ©΄ $p=1$).
μμ $A$λ μ΄ μ‘°κ±΄λ€λ‘λΆν° κ²°μ λλ€:
$$A = \frac{1}{p(x') W(y_1, y_2)(x')}$$
$W$λ λ‘ μ€ν€μ(Wronskian): $W = y_1 y_2' - y_1' y_2$.
3.2 λμΉμ±¶
μ 리: μκΈ°μλ° μ°μ°μμ κ·Έλ¦° ν¨μλ λμΉμ΄λ€:
$$G(x, x') = G(x', x)$$
μ΄κ²μ μλ° μ 리(reciprocity theorem)λ₯Ό μνμ μΌλ‘ ννν κ²μ΄λ€: μ $x'$μ μμ€κ° μ $x$μ λ§λλ μλ΅μ, μ $x$μ μμ€κ° μ $x'$μ λ§λλ μλ΅κ³Ό κ°λ€.
3.3 μμ : $y'' = f(x)$, $y(0) = y(1) = 0$¶
μ μ°¨ν΄: $y_1 = x$, $y_2 = 1 - x$. $W = y_1 y_2' - y_1'y_2 = -x - (1-x) = -1$.
$$G(x, x') = \begin{cases} x(1-x') & x < x' \\ x'(1-x) & x > x' \end{cases}$$
import numpy as np
import matplotlib.pyplot as plt
import sympy as sp
# SymPyλ‘ κ·Έλ¦° ν¨μ κ΅¬μ± λ° κ²μ¦
x_sym, xp_sym = sp.symbols('x xp')
# y'' = f(x), y(0) = y(1) = 0
# μ μ°¨ν΄: y1 = x (y1(0)=0), y2 = 1-x (y2(1)=0)
y1 = x_sym
y2 = 1 - x_sym
W = y1 * sp.diff(y2, x_sym) - sp.diff(y1, x_sym) * y2
print(f"λ‘ μ€ν€μ W = {W}") # -1
# κ·Έλ¦° ν¨μ (x < x' μμ)
G_left = -y1 * y2.subs(x_sym, xp_sym) / W # x < x'
G_right = -y1.subs(x_sym, xp_sym) * y2 / W # x > x'
print(f"G(x, x') = {G_left} (x < x')")
print(f"G(x, x') = {G_right} (x > x')")
# μ ν© μ‘°κ±΄ κ²μ¦
print("\n=== μ ν© μ‘°κ±΄ κ²μ¦ (x = x') ===")
# μ°μμ±
G_left_at_xp = G_left.subs(x_sym, xp_sym)
G_right_at_xp = G_right.subs(x_sym, xp_sym)
print(f"μ°μμ±: G(x'^-, x') = {G_left_at_xp}, G(x'^+, x') = {G_right_at_xp}")
print(f" μ°¨μ΄ = {sp.simplify(G_left_at_xp - G_right_at_xp)}")
# λν¨μ μ ν
dG_left = sp.diff(G_left, x_sym).subs(x_sym, xp_sym)
dG_right = sp.diff(G_right, x_sym).subs(x_sym, xp_sym)
jump = sp.simplify(dG_right - dG_left)
print(f"λν¨μ μ ν: G'(x'^+) - G'(x'^-) = {jump}") # 1 (= 1/p(x'))
# μμΉ μκ°ν
x_num = np.linspace(0, 1, 500)
fig, (ax1, ax2) = plt.subplots(1, 2, figsize=(14, 5))
# G(x, x') λ±κ³ μ μκ°ν (λμΉμ± νμΈ)
xp_vals = np.linspace(0, 1, 500)
X, XP = np.meshgrid(x_num, xp_vals)
G_vals = np.where(X < XP, X * (1 - XP), XP * (1 - X))
c = ax1.contourf(X, XP, G_vals, levels=30, cmap='viridis')
plt.colorbar(c, ax=ax1)
ax1.set_xlabel("$x$"); ax1.set_ylabel("$x'$")
ax1.set_title("$G(x, x')$ λ±κ³ μ β λμΉμ± $G(x,x') = G(x',x)$")
# νΉμ x'μμμ G(x, x') λ¨λ©΄
for xp in [0.25, 0.5, 0.75]:
G_section = np.where(x_num < xp, x_num * (1 - xp), xp * (1 - x_num))
ax2.plot(x_num, G_section, linewidth=2, label=f"$x' = {xp}$")
# κΊΎμ΄λ μ (λν¨μ λΆμ°μ) νμ
ax2.plot(xp, xp * (1 - xp), 'ko', markersize=6)
ax2.set_xlabel('$x$'); ax2.set_ylabel("$G(x, x')$")
ax2.set_title("κ·Έλ¦° ν¨μ λ¨λ©΄: λν¨μ λΆμ°μ νμΈ")
ax2.legend(); ax2.grid(True, alpha=0.3)
plt.tight_layout(); plt.show()
4. μ€ν¬λ¦-리μ°λΉ λ¬Έμ μ κ³ μ ν¨μ μ κ°¶
4.1 κ³ μ ν¨μ μ κ°λ²¶
μ€ν¬λ¦-리μ°λΉ μ΄λ‘ (Lesson 10)μμ λ°°μ΄ κ³ μ ν¨μμ μλΉμ±μ μ΄μ©νλ©΄, κ·Έλ¦° ν¨μλ₯Ό κ³ μ ν¨μμ κΈμλ‘ μ κ°ν μ μλ€.
μκΈ°μλ° μ°μ°μ $L$μ κ³ μ κ° λ¬Έμ :
$$L[\phi_n] = \lambda_n w(x) \phi_n, \quad n = 1, 2, 3, \ldots$$
κ³ μ ν¨μ $\{\phi_n\}$μ΄ $L^2_w[a,b]$μμ μλΉ μ§κ΅κ³λ₯Ό μ΄λ£¨λ©΄, κ·Έλ¦° ν¨μλ:
$$\boxed{G(x, x') = \sum_{n=1}^{\infty} \frac{\phi_n(x) \phi_n(x')}{\lambda_n \|\phi_n\|_w^2}}$$
μ¬κΈ°μ $\|\phi_n\|_w^2 = \int_a^b w(x) |\phi_n(x)|^2 dx$μ΄λ€.
4.2 μ λ¶
$G(x, x')$λ₯Ό κ³ μ ν¨μλ‘ μ κ°νλ€:
$$G(x, x') = \sum_n c_n(x') \phi_n(x)$$
$L[G] = \delta(x - x')$μ λμ νκ³ , μλ³μ $\phi_m(x)$λ₯Ό κ³±νκ³ μ λΆνλ©΄:
$$\lambda_m c_m(x') \|\phi_m\|_w^2 = \phi_m(x')$$
λ°λΌμ $c_m(x') = \phi_m(x') / (\lambda_m \|\phi_m\|_w^2)$.
4.3 μμ : $y'' = f(x)$, $y(0) = y(\pi) = 0$¶
κ³ μ κ° λ¬Έμ : $\phi_n'' = -\lambda_n \phi_n$, $\phi_n(0) = \phi_n(\pi) = 0$
$\phi_n = \sin(nx)$, $\lambda_n = n^2$, $\|\phi_n\|^2 = \pi/2$
$$G(x, x') = \frac{2}{\pi} \sum_{n=1}^{\infty} \frac{\sin(nx)\sin(nx')}{n^2}$$
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0, np.pi, 500)
def G_eigenfunction(x_val, xp, N_terms):
"""κ³ μ ν¨μ μ κ°λ‘ ꡬν κ·Έλ¦° ν¨μ"""
G = np.zeros_like(x_val)
for n in range(1, N_terms + 1):
G += (2 / np.pi) * np.sin(n * x_val) * np.sin(n * xp) / n**2
return G
def G_exact(x_val, xp):
"""μ νν κ·Έλ¦° ν¨μ (λ«ν νν)"""
return np.where(x_val < xp,
x_val * (np.pi - xp) / np.pi,
xp * (np.pi - x_val) / np.pi)
fig, (ax1, ax2) = plt.subplots(1, 2, figsize=(14, 5))
xp = np.pi / 2 # x' = pi/2
# μΌμͺ½: κΈμ μλ ΄ μκ°ν
ax1.plot(x, G_exact(x, xp), 'k-', linewidth=3, label='μ νν ν΄')
for N in [1, 3, 10, 50]:
ax1.plot(x, G_eigenfunction(x, xp, N), '--', linewidth=1.5, label=f'$N = {N}$')
ax1.set_title(f"κ³ μ ν¨μ μ κ°μ μλ ΄ ($x' = \\pi/2$)")
ax1.set_xlabel('$x$'); ax1.legend(); ax1.grid(True, alpha=0.3)
# μ€λ₯Έμͺ½: ν μμ λ°λ₯Έ μ€μ°¨
N_values = np.arange(1, 101)
errors = []
for N in N_values:
G_approx = G_eigenfunction(x, xp, N)
G_true = G_exact(x, xp)
errors.append(np.max(np.abs(G_approx - G_true)))
ax2.semilogy(N_values, errors, 'b-', linewidth=2)
ax2.set_xlabel('ν μ $N$'); ax2.set_ylabel('μ΅λ μ€μ°¨')
ax2.set_title('κ³ μ ν¨μ μ κ°μ μλ ΄ μλ')
ax2.grid(True, alpha=0.3)
plt.suptitle('κ³ μ ν¨μ μ κ°λ²μ μν κ·Έλ¦° ν¨μ', fontsize=14, fontweight='bold')
plt.tight_layout(); plt.show()
5. μλ―ΈλΆλ°©μ μμ κ·Έλ¦° ν¨μ¶
5.1 μΌλ°μ μΈ 2μ°¨ ODE¶
$$y'' + p(x)y' + q(x)y = f(x), \quad y(a) = y(b) = 0$$
μ΄ λ¬Έμ μ ν΄λ λ§€κ°λ³μ λ³νλ²(variation of parameters)κ³Ό λ°μ νκ² μ°κ²°λλ€. μ¬μ€ λ§€κ°λ³μ λ³νλ²μΌλ‘ ꡬν νΉμν΄κ° κ·Έλ¦° ν¨μλ₯Ό μ΄μ©ν μ λΆ ννκ³Ό λμΉμμ λ³΄μΌ μ μλ€.
5.2 μμκ³μ λ°©μ μ¶
$y'' + k^2 y = f(x)$, $y(0) = y(L) = 0$μΈ κ²½μ°:
μ μ°¨ν΄: $y_1 = \sin(kx)$, $y_2 = \sin(k(L-x))$
$$G(x, x') = \frac{1}{k\sin(kL)} \begin{cases} \sin(kx)\sin(k(L-x')) & x < x' \\ \sin(kx')\sin(k(L-x)) & x > x' \end{cases}$$
5.3 μμ : μ‘°ν μ§λμμ κ·Έλ¦° ν¨μ¶
κ°μ μ‘°ν μ§λμ: $\ddot{x} + 2\gamma\dot{x} + \omega_0^2 x = f(t)$
μ΄κΈ° 쑰건 $x(0) = \dot{x}(0) = 0$μΈ μΈκ³Όμ (causal) κ·Έλ¦° ν¨μ λλ μ§μ° κ·Έλ¦° ν¨μ(retarded Green's function):
$$G_R(t, t') = \begin{cases} \frac{1}{\omega_d} e^{-\gamma(t-t')} \sin(\omega_d(t-t')) & t > t' \\ 0 & t < t' \end{cases}$$
μ¬κΈ°μ $\omega_d = \sqrt{\omega_0^2 - \gamma^2}$ (λ―Έμ κ°μ , $\gamma < \omega_0$).
ν΄: $x(t) = \int_0^t G_R(t, t') f(t') \, dt'$
import numpy as np
import matplotlib.pyplot as plt
# κ°μ μ‘°ν μ§λμμ κ·Έλ¦° ν¨μ
omega0, gamma = 5.0, 0.5
omega_d = np.sqrt(omega0**2 - gamma**2)
def G_retarded(t, tp):
"""μ§μ° κ·Έλ¦° ν¨μ"""
dt = t - tp
return np.where(dt > 0,
np.exp(-gamma * dt) * np.sin(omega_d * dt) / omega_d,
0.0)
t = np.linspace(0, 10, 2000)
# λ€μν μμ€ ν¨μμ λν μλ΅ κ³μ°
fig, axes = plt.subplots(2, 2, figsize=(14, 10))
sources = {
'μνμ€': lambda tp: np.where(np.abs(tp - 1.0) < 0.05, 1.0/0.1, 0.0),
'κ³λ¨ ν¨μ': lambda tp: np.where(tp > 1.0, 1.0, 0.0),
'μ νν': lambda tp: np.sin(3.0 * tp),
'μ΄μ€ νμ€': lambda tp: (np.where(np.abs(tp-1)<0.05, 1/0.1, 0.0) +
np.where(np.abs(tp-3)<0.05, -1/0.1, 0.0))
}
for ax, (name, f_source) in zip(axes.flat, sources.items()):
# κ·Έλ¦° ν¨μλ₯Ό μ΄μ©ν 컨볼루μ
μ λΆ
f_vals = f_source(t)
x_response = np.array([np.trapz(G_retarded(ti, t[:i+1]) * f_vals[:i+1], t[:i+1])
if i > 0 else 0.0 for i, ti in enumerate(t)])
ax.plot(t, f_vals * 0.1, 'r--', alpha=0.5, label='μμ€ $f(t)$ (μΆμ)')
ax.plot(t, x_response, 'b-', linewidth=2, label='μλ΅ $x(t)$')
ax.set_title(f'μμ€: {name}'); ax.legend(); ax.grid(True, alpha=0.3)
ax.set_xlabel('$t$')
plt.suptitle(f'κ°μ μ‘°ν μ§λμ ($\\omega_0={omega0}, \\gamma={gamma}$)',
fontsize=14, fontweight='bold')
plt.tight_layout(); plt.show()
6. νΈλ―ΈλΆλ°©μ μμ κ·Έλ¦° ν¨μ¶
6.1 νΈμμ‘ λ°©μ μμ μμ κ³΅κ° κ·Έλ¦° ν¨μ¶
νΈμμ‘ λ°©μ μ: $\nabla^2 \phi = -\rho/\epsilon_0$
κ·Έλ¦° ν¨μ μ μ: $\nabla^2 G(\mathbf{r}, \mathbf{r}') = \delta^3(\mathbf{r} - \mathbf{r}')$
3μ°¨μ μμ 곡κ°:
$$G(\mathbf{r}, \mathbf{r}') = -\frac{1}{4\pi|\mathbf{r} - \mathbf{r}'|}$$
2μ°¨μ μμ 곡κ°:
$$G(\mathbf{r}, \mathbf{r}') = \frac{1}{2\pi}\ln|\mathbf{r} - \mathbf{r}'|$$
ν΄: $\phi(\mathbf{r}) = \frac{1}{4\pi\epsilon_0}\int \frac{\rho(\mathbf{r}')}{|\mathbf{r} - \mathbf{r}'|} d^3r'$ β λ°λ‘ μΏ¨λ‘± μ μ!
6.2 μμλ² (Method of Images)¶
μ ν κ²½κ³κ° μμΌλ©΄ μμ κ³΅κ° κ·Έλ¦° ν¨μλ₯Ό μ§μ μΈ μ μλ€. μμλ²(method of images)μ κ²½κ³ μ‘°κ±΄μ λ§μ‘±νλ κ·Έλ¦° ν¨μλ₯Ό "νμ μμ€"λ₯Ό μΆκ°νμ¬ κ΅¬μ±νλ κΈ°λ²μ΄λ€.
μ: μ μ§λ 무ν νλ©΄ ($z = 0$) μμ μ μ ν
μ€μ μ ν $q$κ° $(0, 0, d)$μ μμΌλ©΄, νμ μ ν $-q$λ₯Ό $(0, 0, -d)$μ λλλ€:
$$G(\mathbf{r}, \mathbf{r}') = -\frac{1}{4\pi}\left(\frac{1}{|\mathbf{r} - \mathbf{r}'|} - \frac{1}{|\mathbf{r} - \mathbf{r}''|}\right)$$
μ¬κΈ°μ $\mathbf{r}'' = (x', y', -z')$λ μμμ μ΄λ€.
6.3 μ΄λ°©μ μμ κ·Έλ¦° ν¨μ¶
μ΄λ°©μ μ: $\frac{\partial u}{\partial t} = \alpha^2 \nabla^2 u$
μμ κ³΅κ° κ·Έλ¦° ν¨μ (1D):
$$G(x, t; x', t') = \frac{1}{\sqrt{4\pi\alpha^2(t-t')}} \exp\left(-\frac{(x-x')^2}{4\alpha^2(t-t')}\right), \quad t > t'$$
μ΄κ²μ $t = t'$μμ $\delta(x - x')$λ‘ μμνμ¬ μκ°μ λ°λΌ κ°μ°μμμΌλ‘ νΌμ Έ λκ°λ λͺ¨μμ΄λ€.
6.4 νλλ°©μ μμ μ§μ° κ·Έλ¦° ν¨μ¶
νλλ°©μ μ: $\nabla^2 G - \frac{1}{c^2}\frac{\partial^2 G}{\partial t^2} = \delta^3(\mathbf{r} - \mathbf{r}')\delta(t - t')$
3D μ§μ° κ·Έλ¦° ν¨μ(retarded Green's function):
$$G_R(\mathbf{r}, t; \mathbf{r}', t') = -\frac{\delta(t - t' - |\mathbf{r}-\mathbf{r}'|/c)}{4\pi|\mathbf{r}-\mathbf{r}'|}$$
μ΄κ²μ μΈκ³Όμ¨(causality)μ λ°μνλ€: μ νΈκ° λΉμ μλ $c$λ‘ μ νλμ΄ μκ° $|\mathbf{r}-\mathbf{r}'|/c$ νμ λλ¬νλ€.
import numpy as np
import matplotlib.pyplot as plt
# --- μ΄λ°©μ μ κ·Έλ¦° ν¨μ μκ°ν ---
fig, (ax1, ax2) = plt.subplots(1, 2, figsize=(14, 5))
alpha2 = 0.01
x = np.linspace(-2, 2, 1000)
xp = 0.0 # μμ€ μμΉ
for t_val in [0.01, 0.05, 0.1, 0.5, 1.0, 2.0]:
G_heat = np.exp(-(x - xp)**2 / (4 * alpha2 * t_val)) / np.sqrt(4 * np.pi * alpha2 * t_val)
ax1.plot(x, G_heat, linewidth=2, label=f'$t = {t_val}$')
ax1.set_xlabel('$x$'); ax1.set_ylabel("$G(x, t; 0, 0)$")
ax1.set_title('μ΄λ°©μ μ κ·Έλ¦° ν¨μ (1D)')
ax1.legend(); ax1.grid(True, alpha=0.3)
# --- 2D νΈμμ‘ λ°©μ μ κ·Έλ¦° ν¨μ μκ°ν ---
x2d = np.linspace(-2, 2, 300)
y2d = np.linspace(-2, 2, 300)
X, Y = np.meshgrid(x2d, y2d)
# μ μμ€ μμΉ
xp2, yp2 = 0.5, 0.3
R = np.sqrt((X - xp2)**2 + (Y - yp2)**2)
R = np.maximum(R, 0.01) # νΉμ΄μ λ°©μ§
G_2d = np.log(R) / (2 * np.pi)
c = ax2.contourf(X, Y, G_2d, levels=30, cmap='RdBu_r')
ax2.plot(xp2, yp2, 'k*', markersize=15, label="μμ€ μμΉ $(x', y')$")
plt.colorbar(c, ax=ax2)
ax2.set_xlabel('$x$'); ax2.set_ylabel('$y$')
ax2.set_title("2D νΈμμ‘ κ·Έλ¦° ν¨μ $G = \\frac{1}{2\\pi}\\ln r$")
ax2.legend(); ax2.set_aspect('equal')
plt.suptitle('νΈλ―ΈλΆλ°©μ μμ κ·Έλ¦° ν¨μ', fontsize=14, fontweight='bold')
plt.tight_layout(); plt.show()
7. 물리μ μμ©¶
7.1 μ μ κΈ°ν: μ ν λΆν¬μ μ μ¶
μ ν λ°λ $\rho(\mathbf{r})$κ° μ£Όμ΄μ§λ©΄ μ μλ:
$$\phi(\mathbf{r}) = \frac{1}{4\pi\epsilon_0} \int \frac{\rho(\mathbf{r}')}{|\mathbf{r} - \mathbf{r}'|} d^3r'$$
μ΄κ²μ μ νν $\nabla^2\phi = -\rho/\epsilon_0$μ κ·Έλ¦° ν¨μ ν΄μ΄λ€.
7.2 μμμν: μ νν¨μ¶
μκ° μμ‘΄ μλ’°λ©κ±° λ°©μ μμ κ·Έλ¦° ν¨μκ° λ°λ‘ μ νν¨μ(propagator) $K(\mathbf{r}, t; \mathbf{r}', t')$μ΄λ€:
$$\psi(\mathbf{r}, t) = \int K(\mathbf{r}, t; \mathbf{r}', t_0) \psi(\mathbf{r}', t_0) \, d^3r'$$
μμ μ μμ μ νν¨μ: $K = \left(\frac{m}{2\pi i\hbar(t-t')}\right)^{3/2} \exp\left(\frac{im|\mathbf{r}-\mathbf{r}'|^2}{2\hbar(t-t')}\right)$
7.3 μν₯ν: μ μμμ 방쬶
μν λ°©μ μ $\nabla^2 p - \frac{1}{c^2}\ddot{p} = -S(\mathbf{r}, t)$μμ λ¨μν μ μμ $S = \delta^3(\mathbf{r})e^{-i\omega t}$μ μμ:
$$p(\mathbf{r}) = -\frac{e^{ikr}}{4\pi r} \quad (k = \omega/c)$$
μ΄κ²μ΄ ꡬ면ν(spherical wave)μ΄λ€.
import numpy as np
import matplotlib.pyplot as plt
# === μ μ κΈ°ν μμ©: 2D μ ν λΆν¬μ μ μ ===
fig, axes = plt.subplots(1, 3, figsize=(16, 5))
x = np.linspace(-3, 3, 300)
y = np.linspace(-3, 3, 300)
X, Y = np.meshgrid(x, y)
# (a) μ μ ν
q1, x1, y1 = 1.0, 0.0, 0.0
R1 = np.sqrt((X - x1)**2 + (Y - y1)**2)
phi_point = q1 / (2 * np.pi * np.maximum(R1, 0.05))
axes[0].contourf(X, Y, phi_point, levels=30, cmap='hot_r')
axes[0].plot(x1, y1, 'k+', markersize=15, markeredgewidth=3)
axes[0].set_title('(a) μ μ ν $+q$'); axes[0].set_aspect('equal')
# (b) μκ·Ήμ (dipole)
q2, d = 1.0, 0.5
R_plus = np.sqrt((X - d)**2 + Y**2)
R_minus = np.sqrt((X + d)**2 + Y**2)
phi_dipole = q2 / (2*np.pi*np.maximum(R_plus, 0.05)) - q2 / (2*np.pi*np.maximum(R_minus, 0.05))
axes[1].contourf(X, Y, phi_dipole, levels=np.linspace(-3, 3, 31), cmap='RdBu_r')
axes[1].plot(d, 0, 'r+', markersize=12, markeredgewidth=3)
axes[1].plot(-d, 0, 'b_', markersize=12, markeredgewidth=3)
axes[1].set_title('(b) μ κΈ° μκ·Ήμ $+q, -q$'); axes[1].set_aspect('equal')
# (c) μμλ²: μ μ§λ©΄ κ·Όμ² μ μ ν
q3, d3 = 1.0, 1.0
R_real = np.sqrt(X**2 + (Y - d3)**2)
R_image = np.sqrt(X**2 + (Y + d3)**2) # νμ μ ν
phi_image = q3/(2*np.pi*np.maximum(R_real, 0.05)) - q3/(2*np.pi*np.maximum(R_image, 0.05))
phi_image[Y < 0] = 0 # μ μ§λ©΄ μλλ 0
axes[2].contourf(X, Y, phi_image, levels=30, cmap='hot_r')
axes[2].axhline(0, color='green', linewidth=3, label='μ μ§λ©΄')
axes[2].plot(0, d3, 'k+', markersize=12, markeredgewidth=3)
axes[2].plot(0, -d3, 'kx', markersize=12, markeredgewidth=3, alpha=0.4)
axes[2].set_title('(c) μμλ²: μ μ§λ©΄ μ μ μ ν')
axes[2].legend(); axes[2].set_aspect('equal')
plt.suptitle('μ μ κΈ°νμμμ κ·Έλ¦° ν¨μ μμ© (2D)', fontsize=14, fontweight='bold')
plt.tight_layout(); plt.show()
# μ κΈ°μ₯ λ²‘ν° (μκ·Ήμ)
fig, ax = plt.subplots(figsize=(8, 6))
Ex = q2*(X-d)/(2*np.pi*np.maximum(R_plus,0.05)**2) - q2*(X+d)/(2*np.pi*np.maximum(R_minus,0.05)**2)
Ey = q2*Y/(2*np.pi*np.maximum(R_plus,0.05)**2) - q2*Y/(2*np.pi*np.maximum(R_minus,0.05)**2)
E_mag = np.sqrt(Ex**2 + Ey**2)
ax.streamplot(X, Y, Ex, Ey, color=np.log10(E_mag+1e-3), cmap='inferno',
density=2, linewidth=1)
ax.plot(d, 0, 'ro', markersize=10, label='$+q$')
ax.plot(-d, 0, 'bo', markersize=10, label='$-q$')
ax.set_title('μ κΈ° μκ·Ήμμ μ κΈ°μ₯μ (κ·Έλ¦° ν¨μ μ€μ²©)')
ax.legend(); ax.set_aspect('equal'); ax.set_xlim(-3, 3); ax.set_ylim(-3, 3)
plt.tight_layout(); plt.show()
8. κ·Έλ¦° μ 리μ μ λΆ νν¶
8.1 κ·Έλ¦° νλ±μ¶
κ·Έλ¦° μ 1 νλ±μ: $u$, $v$κ° μμ $\Omega$μμ μΆ©λΆν λ§€λλ¬μ°λ©΄:
$$\int_\Omega (u \nabla^2 v + \nabla u \cdot \nabla v) \, dV = \oint_{\partial\Omega} u \frac{\partial v}{\partial n} \, dS$$
κ·Έλ¦° μ 2 νλ±μ (λμΉ νν):
$$\int_\Omega (u \nabla^2 v - v \nabla^2 u) \, dV = \oint_{\partial\Omega} \left(u \frac{\partial v}{\partial n} - v \frac{\partial u}{\partial n}\right) dS$$
8.2 μ λΆ νν¶
κ·Έλ¦° μ 2 νλ±μμμ $v = G$λ‘ λμΌλ©΄ ($\nabla^2 G = \delta^3(\mathbf{r} - \mathbf{r}')$):
$$u(\mathbf{r}) = \int_\Omega G(\mathbf{r}, \mathbf{r}') f(\mathbf{r}') \, dV' + \oint_{\partial\Omega} \left(G \frac{\partial u}{\partial n'} - u \frac{\partial G}{\partial n'}\right) dS'$$
λ리ν΄λ κ²½κ³ μ‘°κ±΄ ($u = h$ on $\partial\Omega$): $G = 0$ on $\partial\Omega$μΌλ‘ μ ννλ©΄:
$$u(\mathbf{r}) = \int_\Omega G f \, dV' - \oint_{\partial\Omega} h \frac{\partial G}{\partial n'} dS'$$
λ Έμ΄λ§ κ²½κ³ μ‘°κ±΄ ($\partial u/\partial n = g$ on $\partial\Omega$): $\partial G/\partial n' = -1/|\partial\Omega|$ (μμ)λ‘ μ ν.
import numpy as np
import matplotlib.pyplot as plt
# κ·Έλ¦° νλ±μμ μμΉ κ²μ¦ (1D λ²μ )
# integral_0^1 (u v'' + u'v') dx = [u v']_0^1
# u(x) = sin(pi*x), v(x) = x^2
x = np.linspace(0, 1, 10000)
u = np.sin(np.pi * x)
u_prime = np.pi * np.cos(np.pi * x)
v = x**2
v_prime = 2 * x
v_double_prime = 2 * np.ones_like(x)
# μ’λ³
lhs = np.trapz(u * v_double_prime + u_prime * v_prime, x)
# μ°λ³: [u v']_0^1 = u(1)v'(1) - u(0)v'(0)
rhs = u[-1] * v_prime[-1] - u[0] * v_prime[0]
print("=== κ·Έλ¦° μ 1 νλ±μ μμΉ κ²μ¦ (1D) ===")
print(f"u(x) = sin(pi*x), v(x) = x^2")
print(f"μ’λ³: integral(u v'' + u'v') dx = {lhs:.8f}")
print(f"μ°λ³: [u v']_0^1 = {rhs:.8f}")
print(f"μ°¨μ΄: {abs(lhs - rhs):.2e}")
# κ·Έλ¦° μ 2 νλ±μ
u_dbl_prime = -np.pi**2 * np.sin(np.pi * x)
lhs2 = np.trapz(u * v_double_prime - v * u_dbl_prime, x)
rhs2 = (u[-1]*v_prime[-1] - v[-1]*u_prime[-1]) - (u[0]*v_prime[0] - v[0]*u_prime[0])
print("\n=== κ·Έλ¦° μ 2 νλ±μ μμΉ κ²μ¦ (1D) ===")
print(f"μ’λ³: integral(u v'' - v u'') dx = {lhs2:.8f}")
print(f"μ°λ³: [uv' - vu']_0^1 = {rhs2:.8f}")
print(f"μ°¨μ΄: {abs(lhs2 - rhs2):.2e}")
# κ·Έλ¦° ν¨μλ₯Ό μ΄μ©ν μ λΆ νν κ²μ¦
# λ¬Έμ : u'' = f(x), u(0) = u(1) = 0, f(x) = -pi^2 sin(pi*x)
# μ νν ν΄: u(x) = sin(pi*x)
print("\n=== μ λΆ νν κ²μ¦ ===")
f_rhs = -np.pi**2 * np.sin(np.pi * x)
u_green = np.array([np.trapz(np.where(x < xi, x*(1-xi), xi*(1-x)) * f_rhs, x)
for xi in x])
u_exact = np.sin(np.pi * x)
print(f"μ΅λ μ€μ°¨ |u_Green - u_exact| = {np.max(np.abs(u_green - u_exact)):.6e}")
μ°μ΅ λ¬Έμ ¶
κΈ°λ³Έ λ¬Έμ ¶
λ¬Έμ 1. λ€μ λλ λΈν ν¨μ μ λΆμ κ³μ°νλΌ.
(a) $\int_{-\infty}^{\infty} (x^3 + 2x + 1)\delta(x - 2) \, dx$
(b) $\int_0^5 e^{-x}\delta(x - 3) \, dx$
(c) $\int_{-\infty}^{\infty} \cos(x)\delta'(x) \, dx$
λ¬Έμ 2. $\delta(x^2 - a^2) = \frac{1}{2|a|}[\delta(x-a) + \delta(x+a)]$ ($a > 0$)μμ 보μ΄κ³ , $\int_{-\infty}^{\infty} e^{x}\delta(x^2 - 4)\,dx$λ₯Ό κ³μ°νλΌ.
λ¬Έμ 3. $y'' = f(x)$, $y(0) = y(L) = 0$μ κ·Έλ¦° ν¨μλ₯Ό μ§μ ꡬμ±νκ³ , $G(x, x') = G(x', x)$λ₯Ό νμΈνλΌ.
λ¬Έμ 4. $y'' + y = f(x)$, $y(0) = y(\pi/2) = 0$μ κ·Έλ¦° ν¨μλ₯Ό ꡬνλΌ. (ννΈ: μ μ°¨ν΄ $\sin x$, $\cos x$ μ΄μ©)
μ¬ν λ¬Έμ ¶
λ¬Έμ 5. $y'' = f(x)$, $y(0) = y(\pi) = 0$μ κ·Έλ¦° ν¨μλ₯Ό κ³ μ ν¨μ μ κ°λ‘ ꡬνκ³ , λ«ν νν $G(x,x') = \frac{1}{\pi}[x(\pi-x') \text{ or } x'(\pi-x)]$κ³Ό λΉκ΅νμ¬ λ€μ κΈμλ₯Ό μ λνλΌ:
$$\sum_{n=1}^{\infty} \frac{\sin(nx)\sin(nx')}{n^2} = \frac{\pi}{2} \begin{cases} x(1-x'/\pi) & x < x' \\ x'(1-x/\pi) & x > x' \end{cases}$$
λ¬Έμ 6. μμλ²μ μ΄μ©νμ¬ $y > 0$ λ°νλ©΄μμ $\nabla^2 G = \delta^2(\mathbf{r} - \mathbf{r}')$, $G(x, 0) = 0$ (λ리ν΄λ )μΈ κ·Έλ¦° ν¨μλ₯Ό ꡬνλΌ.
λ¬Έμ 7. 1μ°¨μ μ΄λ°©μ μ κ·Έλ¦° ν¨μ $G(x, t; 0, 0) = \frac{1}{\sqrt{4\pi\alpha^2 t}}e^{-x^2/(4\alpha^2 t)}$κ° λ€μμ λ§μ‘±ν¨μ 보μ¬λΌ:
(a) $\partial_t G = \alpha^2 \partial_{xx} G$ ($t > 0$)
(b) $\int_{-\infty}^{\infty} G \, dx = 1$ (λͺ¨λ $t > 0$)
(c) $\lim_{t \to 0^+} G(x, t; 0, 0) = \delta(x)$
λ¬Έμ 8. κ°μ μ‘°ν μ§λμ $\ddot{x} + 2\gamma\dot{x} + \omega_0^2 x = \delta(t)$μ λν΄ $\gamma > \omega_0$ (κ³Όκ°μ ), $\gamma = \omega_0$ (μκ³ κ°μ ), $\gamma < \omega_0$ (λ―Έμ κ°μ ) μΈ κ²½μ°μ κ·Έλ¦° ν¨μλ₯Ό κ°κ° ꡬνλΌ.
λ¬Έμ 9. λ€μ 2μ°¨μ νΈμμ‘ λ°©μ μμ νμ΄λΌ: $$\nabla^2 \phi = -\delta(\mathbf{r} - \mathbf{r}_1) + \delta(\mathbf{r} - \mathbf{r}_2)$$ $\mathbf{r}_1 = (1, 0)$, $\mathbf{r}_2 = (-1, 0)$. μ μ $\phi$μ μ κΈ°μ₯ $\mathbf{E} = -\nabla\phi$λ₯Ό μκ°ννλΌ.
λ¬Έμ 10. κ·Έλ¦° μ 2 νλ±μμ μ΄μ©νμ¬ $G(x, x') = G(x', x)$ (μκΈ°μλ° μ°μ°μμ κ·Έλ¦° ν¨μ λμΉμ±)λ₯Ό μ¦λͺ νλΌ.
μ¬ν νμ΅¶
λ€μ΄μλ κ·Έλ¦° ν¨μ (Dyadic Green's Functions)¶
μ€μΉΌλΌκ° μλ 벑ν°μ₯μ λΉμ μ°¨ λ¬Έμ (μ: λ§₯μ€μ° λ°©μ μ)μμλ κ·Έλ¦° ν¨μκ° ν μ(λ€μ΄μλ) ννκ° λλ€:
$$\mathbf{E}(\mathbf{r}) = \int \overleftrightarrow{G}(\mathbf{r}, \mathbf{r}') \cdot \mathbf{J}(\mathbf{r}') \, d^3r'$$
μ£Όνμ μμμ κ·Έλ¦° ν¨μ¶
μκ° μμ‘΄ λ¬Έμ μμ νΈλ¦¬μ λ³νμ μ·¨νλ©΄:
$$G(\mathbf{r}, \mathbf{r}'; \omega) = \int_{-\infty}^{\infty} G(\mathbf{r}, t; \mathbf{r}', t') e^{i\omega(t-t')} d(t-t')$$
ν¬λ¦νμΈ λ°©μ μμ κ·Έλ¦° ν¨μ: $(\nabla^2 + k^2)G = \delta^3(\mathbf{r} - \mathbf{r}')$ $\rightarrow$ $G = -\frac{e^{ik|\mathbf{r}-\mathbf{r}'|}}{4\pi|\mathbf{r}-\mathbf{r}'|}$
μμΉμ κ·Έλ¦° ν¨μμ κ²½κ³μμλ² (BEM)¶
ν΄μμ μΌλ‘ κ·Έλ¦° ν¨μλ₯Ό ꡬνκΈ° μ΄λ €μ΄ 볡μ‘ν κΈ°ννμμλ κ²½κ³μμλ²(Boundary Element Method)μ μ¬μ©νλ€. μμ κ³΅κ° κ·Έλ¦° ν¨μλ₯Ό μλ©΄, 체μ μ λΆ λμ κ²½κ³λ©΄ μ λΆλ§μΌλ‘ ν΄λ₯Ό ꡬν μ μμ΄ μ°¨μμ΄ νλ μ€μ΄λλ μ₯μ μ΄ μλ€.
μ°Έκ³ μλ£¶
- Boas, M. L. Mathematical Methods in the Physical Sciences, 3rd Ed., Ch. 13
- Arfken, Weber, Harris. Mathematical Methods for Physicists, 7th Ed., Ch. 10
- Jackson, J. D. Classical Electrodynamics, 3rd Ed., Ch. 1-2 (μ μ κΈ°ν κ·Έλ¦° ν¨μ)
- Stakgold, I., Holst, M. Green's Functions and Boundary Value Problems, 3rd Ed. (2011)
- Duffy, D. G. Green's Functions with Applications, 2nd Ed. (2015)
μ΄μ : 15. λΌνλΌμ€ λ³ν λ€μ: 17. λ³λΆλ²