Skip to main content

Green 函数

· 8 min read
PuQing
AI, CVer, Pythoner, Half-stack Developer

引入

Electrostatics

info

对于有电荷密度函数 ρ(r)\rho(\boldsymbol{r}') 其在场位置 r\boldsymbol{r} 处的电势满足:

2ϕ=ρϵ0-\nabla^2\phi = \frac{\rho}{\epsilon_{0}}

Driven Oscillator

info

以及 Driven Oscillator 系统满足

md2xdt2+ω2x=F(t)m \frac{d^{2} x}{d t^{2}}+\omega^{2} x=F(t)

他们的共同点可以写成

Ly(x)=f(x)Ly(x)=f(x)

这里的 LLLinear differential operatorsyy 是要求解的 xx 的函数,而 ff 的限制项,是给定的 (Forcing term)。下面解释解释什么是 Linear differential operators

Linear Differential Operators

  • 首先看 operators,算子将一个函数 AA,映射到另一个函数 BB,就比如 ddx\displaystyle\frac{d}{d x} 就是一个算子。

Untitled.bmp

如上图所示就将函数 x2x^2 映射成了 2x2x

所以我们想做的事情就是通过求解某种式子,从 f(x)f(x) 逆推回 y(x)y(x),如下图所示

Untitled.bmp

  • 而其中的 differential 说明这个算子与微分有关
  • Linear 表示其 “ 线性组合性 ”
L(λy1(x)+μy2(x))=λL(y1(x))+μL(y2(x))L\left(\lambda y_{1}(x)+\mu y_{2}(x)\right)=\lambda L\left(y_{1}(x)\right)+\mu L\left(y_{2}(x)\right)

其中的 λ,μ\lambda,\mu 是某一常数

这意味着 operatorscombination 的顺序无关。可以先组合在变换,也可以先变换再组合。

举个最简单的例子

对于微分算子 ddx\displaystyle\frac{d }{dx},有两个函数 y1=x2,y2=2x3y_{1}=x^2,y_{2}=2x^3

L(y1+y2)=ddx(x2+2x3)=6x2+2xL(y_{1}+y_{2})=\frac{d }{dx}(x^2+2x^3)=6x^2+2x

而如果相对于每个函数应用算子

L(y1)+L(y2)=ddx(x2)+ddx(2x3)=2x+6x2L(y_{1})+L(y_{2})=\frac{d }{dx}(x^2)+\frac{d }{dx}(2x^3)=2x+6x^2
有什么反例呢?

Dirac δ\delta “function”

狄拉克 delta 函数 中曾经介绍过狄拉克函数,当时是使用的长方形的面积进行引入的,这里使用物理上的电荷量来引入。

我们想要知道一点 xx 处的电荷密度,根据定义应该使用如下公式计算:

ρ(x)=chargevolume\rho(x) =\frac{\mathrm{charge}}{\mathrm{volume}}

即电荷除以体积,But,在一个点处的体积应该是 00 才对,则怎么算呢?

不妨考虑在 xx 邻域附近小区域 DD

Untitled.bmp

我们可以使用区域 DD 的平均电荷,即电荷密度进行估算。

可是这样区域 DD 的大小,形状均会影响其结果,能不能想办法忽略掉区域 DD

我们将积分区域扩充到整个空间 R3\mathbb{R}^3,并使用一个指示函数 1D(ξ)1_{D}(\xi) 表示如果在区域 DD 中函数值为 11,如果不在则为 00

1D(ξ)={1,ξD0,ξD1_{D}(\xi)=\begin{cases} 1, \xi \in D\\ 0, \xi \notin D \end{cases}

Untitled.bmp

如上图所示,进一步的,因为 VV 是参数,可以移进积分中,所以可以写为:

ρ(x)R3ρ(ξ)(1D(ξ)V)dξ\rho(x)\approx \int_{\mathbb{R}^{3}} \rho(\xi) \left(\frac{\mathbf{1}_{D}(\xi)}{V}\right) d \xi

到现在还只是估计近似,当 V0V\to 0 时,则相等。

所以

ρ(x)=limV0R3ρ(ξ)(1D(ξ)V)dξ\rho(x)=\lim_{V\to 0}\int_{\mathbb{R}^{3}} \rho(\xi) \left(\frac{\mathbf{1}_{D}(\xi)}{V}\right) d \xi

这个时候括号中的便是狄拉克 δ\delta ‘ 函数 ‘。

写成狄拉克 δ\delta 函数的形式便是

ρ(x)=R3ρ(ξ)δ(xξ)dξ\rho(x)=\int_{\mathbb{R}^{3}} \rho(\xi) \delta(x-\xi) d \xi

Principle of Green`s Function

回想一下上面的引入得到的电荷密度表达式,我们将一个点 xx 处的电荷密度等效为整个定义域上点 ξ\xi 和的形式(以积分的形式体现),并乘以了一个狄拉克 δ\delta 函数进行 “ 过滤 “。

同样的,我们可以对电势进行同样的操作,这时狄拉克 δ\delta 函数的便以 Green function\mathrm{Green\ function} 方式进行体现,记作 G(x;ξ)G(x;\xi)

类似地,我们将电势表达为:

ϕ(x)=R3ρ(ξ)G(x;ξ)/ϵ0dξ\phi(x)=\int_{\mathbb{R}^3}\rho(\xi)G(x;\xi)/ \epsilon_{0}\, d\xi
可能这里你有很多疑惑?

比如:

  • 为什么是 ρ(ξ)\rho(\xi) 而不是 ϕ(ξ)\phi(\xi)
  • 为什么要除以 ϵ0\epsilon_{0}

先看下面哈

这会带给我们什么便利呢?

tip

我们想要找到这样的一个函数 G(x;ξ)G(x;\xi),满足

LG(x;ξ)=δ(xξ)LG(x;\xi)=\delta(x-\xi)

这样两边乘以函数 f(ξ)f(\xi)

f(ξ)LG(x;ξ)=f(ξ)δ(xξ)f(\xi)LG(x;\xi)=f(\xi)\delta(x-\xi)

注意到算子 LL 是对于变量 xx 作用的,所以可以把 f(ξ)f(\xi)LL 交换位置,则有

L(f(ξ)G(x;ξ))=f(ξ)δ(xξ)L(f(\xi) G(\mathbf{x} ; \xi))=f(\xi) \delta(\mathbf{x}-\xi)

这样对于每个点 ξ\xi 的联合和通常使用积分

RnL(f(ξ)G(x;ξ))dξ=Rnf(ξ)δ(xξ)dξ\int_{\mathbb{R}^{n}} L(f(\xi) G(\mathbf{x} ; \xi)) d \xi=\int_{\mathbb{R}^{n}} f(\xi) \delta(\mathbf{x}-\xi) d \xi

.

重点来了

根据算子 LL 满足 Linear 性质,所以实际上允许我们将积分符号提入到算子 LL 内部,即:

L(Rnf(ξ)G(x;ξ)dξ)=f(x)L\left(\int_{\mathbb{R}^{n}} f(\xi) G(\mathbf{x} ; \xi) d \xi\right)=f(\mathbf{x})

令其中的 Rnf(ξ)G(x;ξ)dξ=y(x)\displaystyle\int_{\mathbb{R}^{n}} f(\xi) G(\mathbf{x} ; \xi) d \xi=y(x),则正好解出了原式子。

让我们回答一下上面提出的两个问题:

这两个问题实际上是一个问题:即为什么要如此构造

实际上,上面的推导已经非常清楚,我们的目的是尝试构造一个 Green\mathrm{Green} 函数,使得下式成立:

2G(x;ξ)=δ(xξ)-\nabla^2 G(x;\xi)=\delta(x-\xi)

于是乎我们能够很自然的推导出下面式子:

L(R3ρ(ξ)G(x;ξ)/ϵ0dξ)=R3ρ(ξ)δ(xξ)dξL\left(\int_{\mathbb{R}^{3}} \rho(\xi) G(\mathbf{x} ; \xi)/\epsilon_0 d \xi \right)=\int_{\mathbb{R}^{3}} \rho(\xi) \delta(x-\xi) d \xi

等式右边即为 ρ(x)\rho(x)

所以,实际上是一个构造问题 (可能原本直接构造从静电学上有某种含义,但是我确实没 get 到)

虽然好像懂了一点意思了但是还是存在两个问题:

danger

问题一Green\mathrm{Green} 函数 G(x;ξ)G(x;\xi) 如何构造

问题二:对于边界值如何考虑。

但是在这之前先看看另一个案例吧

Driven Oscillator

Untitled.bmp

这是一个带驱动力的振动模型。给小球施加了随时间变化的力 F(t)F(t)

则小球的相对于平衡位置的距离满足

md2xdt2+ω2x=F(t)m \frac{d^{2} x}{d t^{2}}+\omega^{2} x=F(t)

类似于之前静电力的构造,我们有

F(t)=+F(τ)δ(tτ)dτF(t)=\int _{-\infty}^{+\infty}F(\tau)\delta(t-\tau) \, d\tau
这个怎么那么像一个东西呢?

卷积公式

(fg)(t)= def Rnf(τ)g(tτ)dτ 。 (f * g)(t) \stackrel{\text { def }}{=} \int_{\mathbb{R}^{n}} f(\tau) g(t-\tau) d \tau \text { 。 }

One More Thing

如何求解 GG

在上述的推导中,我们需要找到一个函数 G(x;ξ)G(x;\xi) 满足如下式子

LG(x;ξ)=δ(xξ)LG(x;\xi)=\delta(x-\xi)

根据狄拉克 δ\delta 函数的性质,我们有如下步骤

tip
  1. Solve LG(x;ξ)=0if ξxLG(x;\xi)=0 \quad \mathrm{if}\ \xi \ne x
  2. Note DLG(x;ξ)dξ=1if contains x\displaystyle\int_{D}LG(x;\xi) \, d\xi =1\quad \mathrm{if}\ \mathrm{contains}\ x

实际上 1 已经将常用的 Green\mathrm{Green} 函数列举出来了

边界条件

从纯求解方程来看,其解并不是唯一的,例如为上述的静电力学的案例来说,为函数 ϕ(x)\phi(x) 加上常数依然可以使方程满足,甚至加上一次函数也是可以满足的。

所以为了解为一,我们需要施加一些边界条件,比如

ϕ(x)0 as x\phi(x)\to 0 \ \text{as}\ \mid x\mid \to \infty

我们可以得到唯一解:

G(x;ξ)ε0=14πε0xξ\frac{G(\mathbf{x} ; \xi)}{\varepsilon_{0}}=\frac{1}{4 \pi \varepsilon_{0}|\mathbf{x}-\xi|}

相关资料

Footnotes

  1. Green's function - Wikipedia