特征线法
+常系数运输方程初值问题
+对于方程
+∂tρ+a∂xρ=0,x∈R,t>0
+给定初值条件
+ρ(x,0)=ρ0(x)
+我们发现在特征线上,ρ 保持不变,然后通过特征线反推每一点ρ的值
+具体而言是这样的,特征线是下面的常微分方程初值问题的解
+dtdx=a,x(0)=x0
+其实这条线就是x(t,x0)=at+x0,但是写成微分形式其实是为了下面的推导
+根据全微分公式
+df=∂x∂fdx+∂t∂fdt
+我们有
+dρ=∂xρdx+∂tρdt
+dtdρ=∂xρdtdx+∂tρ=∂tρ+a∂xρ=0
+最后一步推导使用了原方程条件
+上面的推导表明在特征线上ρ为常数,因此对于(x,t)平面上的任何一个点(x0,t0),我们都可以找到一条过该点的的特征线x(t,x0−at0)=a(t−t0)+x0,这条线与t=0有一交点x=x0−at0,在该点ρ的值是确定的(初值条件),有ρ(x0−at0,0)=ρ0(x0−at0)
+实际上我们就推导出了ρ(x,t)=ρ0(x−at)
+值得注意的事情是,我们不妨画出t=0的时候ρ随x变化的图像,那么t变大即图像右移,t减小即图像左移,因此被称为输运方程
+变系数输运方程初值问题
+现在来讨论更为复杂的情况
+∂tρ+∂x(v(x)ρ)=0,ρ(x,0)=ρ0(x),x∈R,t>0
+经过数学家不知道多少年的研究我们知道这个方程的特征线长这样
+dtdx=v(x(t)),x(0)=x0
+然后我们把方程稍微变形一下,把变系数拿出来
+∂tρ+v(x)∂xρ=−v′(x)ρ
+同样对ρ求全微分
+dtdρ=∂tρ+dtdx∂xρ=∂tρ+v(x)∂xρ=−v′(x)ρ
+比起其他妖魔鬼怪,这个方程实在是太好解了!
+将方程改写成我们熟悉的形式
+ρdρ=−v′(x)dt
+两边积分
+lnρ(x(t,x0),t)−lnρ0(x0)=−∫0tv′(x)dτ
+这里有几点需要注意的,首先是我们代入了ρ(x,0)=ρ0(x)的初值条件
+其次稍微换了一下符号,因为这里我们是对[0,t]区间积分,把原来的t换成了τ
+继续变换(使用了dx/dτ=v(x(τ)))
+−RHS=∫0tv′(x(τ))dτ=∫0tv(x(τ))v′(x(τ))dτdxdτ=∫x0x(t,x0)v(x)v′(x)dx=lnv(x0)v(x(t,x0))
+整理一下就是
+ρ(x(t,x0),t)=ρ0(x0)v(x(t,x0))v(x0)
+接下来还有一点问题,其实刚刚的x0是任意的,现在我们需要根据确定的t来反推x0。这个事情通过求解特征线方程来解决,我们先求dx/dt=v(x(t)),x(0)=x0的解为x=x(t,x0),然后反推就能得到x0=φ(x,t)
+最终的结果是
+ρ(x,t)=ρ0(φ(x,t))v(x)v(φ(x,t))
+不管你晕没晕,反正笔者是晕了这里给出一个例题帮助理解
+例题1
+求下面初值问题的解
+∂tu+(x+t)∂xu+u=0,u(x,0)=x,x∈R,t>0
+特征线是
+dtdx=x+t,x(0)=x0
+代入原方程,有(原来偏导的几项变成了全微分)
+dtdu+u=x(t,x0)
+先解特征线方程,不难得到
+x(t)=et(1+x0)−(1+t)
+然后代入u的方程,解得但是我已经不会解ODE了
+u(t)=1/2(x0+1)et+1/2(x0−1)e−t−t
+同样特征线方程导出的结果,能够得到
+x0=(x+t+1)e−t−1
+代入得到
+u(x,t)=1/2(x+t+1)e−2t−e−t+1/2(x−t+1)
+齐次化原理
+这大概是你们都不会学但是因为某位老师的恶趣味被塞进来的内容
+线性方程是可叠加的,具体看这个例子
+对于弦波动方程的两个解u1,u2(这个方块算子是我的老师规定的,版权在他)
+□ui=∂ttui−a2∂xxui=fi(x,t)
+那么u=λ1u1+λ2u2就是
+□u=λ1f1+λ2f2
+的解
+齐次化原理爷爷用线性叠加原理打掉一维波动方程初值问题
+一维波动方程初值问题是
+□u=f,u(x,0)=φ(x),∂tu(x,0)=ψ(x)
+由于线性叠加可行,我们对问题进行拆分
+□u1=0,u1(x,0)=φ(x),∂tu1(x,0)=0
+□u2=0,u2(x,0)=0,∂tu2(x,0)=ψ(x)
+□u3=f,u3(x,0)=0,∂tu3(x,0)=0
+原问题的解就是
+u=u1+u2+u3
+齐次化原理是说,我们能够直接从u2推导出u3。u2推u1不是齐次化原理,但是是比较显然的
+总结一下就是下面的定理
+定理
+假设算子M满足条件:u2=Mψ(x,t)给出了u2的解,那么u1,u3可以分别被表示为
+u1=∂tMψ(x,t),u3=∫0tMfτ(x,t−τ)dτ
+我们先不要去关心M是什么,先看看这个定理怎么证明
+先用u2推导u1
+已知
+(a)□Mφ=0, (b)Mφ(x,0)=0, (c)∂tMφ(x,0)=φ(x)
+希望推导出的是
+(a′)□∂tMφ=0, (b′)∂tMφ(x,0)=φ(x), (c′)∂t∂tMφ(x,0)=0
+(c)就是(b’)
+(a’)即
+□(∂tMφ)=∂t□Mφ=0
+(b’)即
+∂ttMφ(x,0)=a2∂xxMφ(x,0)=0
+第二个等号利用了(b)
+接下来要证明u2⇒u3的部分
+(a′′)□u3=f, (b′′)u3(x,0)=0, (c′′)∂tu3(x,0)=0
+不妨记
+v(x,t)=∫0tMfτ(x,t−τ)dτ
+得到(b′′)v(x,0)=0的结果
+(c′′)∂tv(x,t)=∂t∫0tMfτ(x,t−τ)dτ=Mft(x,t−τ)∣τ=0+∫0t∂tMfτ(x,t−τ)dτ=∫0t∂tMfτ(x,t−τ)dτ
+显然有(c′′)∂t(x,0)=0
+在上面导出的∂tv(x,t)的基础上我们再求导
+∂ttv(x,t)=∂t∫0t∂tMfτ(x,t−τ)dτ=∂tMft(x,0)+∫0t∂ttMfτ(x,t−τ)dτ=f(x,t)+∫0t∂ttMfτ(x,t−τ)dτ
+最后一个等号使用了(c)
+那么
+□v(x,t)=f(x,t)+∫0t∂ttMfτ(x,t−τ)dτ−a2∫0t∂xxMfτ(x,t−τ)dτ=f(x,t)+∫0t□Mfτ(x,t−τ)dτ=f(x,t)
+第一个等号使用了求导和积分的次序交换,第二个等号使用了(a)
+证毕
+一维初值问题
+现在,我们只要得出u2的解,就可以推导出原问题的解
+先进行算子分解
+□=∂tt−a2∂xx=(∂t+a∂x)(∂t−a∂x)
+我们假装算子分解是合理的,于是导出下面的结论
+∂tu2−a∂xu2=v,u2(x,0)=0∂tv+a∂xv=0,v(x,0)=(∂tu2−a∂xu2)∣t=0=ψ(x)
+这里将算子的复合看作“乘法”,其实是先进行算子分解结果右侧的运算得到v,然后再对v做左侧的运算
+然后我们就能够使用特征线法对方程进行求解
+先根据原有的条件我们得到
+dtdx=adtdv=∂tv+dtdx∂xv=∂tv+a∂xv=0v(x,t)=ψ(x−at)
+再次使用特征线法
+dtdx=−a,x(0)=x0⇒x0=x−atdtdu2=∂tu2+dtdx∂xu2=v(x,t)=ψ(x−at),u2(x(0),0)=0u2=∫0tψ(x0−2aτ)dτ=2a1∫x−atx+atψ(ξ)dξ
+我们获得了所有的结果
+u1=∂tMφ(x,t)=2a1∂t(∫x−atx+atψ(ξ)dξ)=2a1(aφ(x+at)−(−a)φ(x−at))=21(φ(x+at)−φ(x−at))
+u3=∫0tMfτ(x,t−τ)dτ=2a1∫0t∫x−atx+atf(ξ,τ)dξdτ
+合并得到
+u(x)=21(φ(x+at)−φ(x−at))+21∫x−atx+atψ(ξ)dξ+2a1∫0t∫x−atx+atf(ξ,τ)dξdτ
+其实这个时候我都忘了原来的方程条件给了哪些了,我在这里再重抄一遍x
+□u=f(x,t),u(x,0)=φ(x),∂tu(x,0)=ψ(x)
+f≡0的时候,上面的公式又被称为D’ Alembert公式(我并不知道怎么念。。)
+u(x,t)=21(φ(x+at)+φ(x−at))+2a1∫x−atx+atψ(ξ)dξ
+有意思的事情是,解在(x,t)的数值仅仅依赖于x轴上区间[x−at,x+at]上的初值条件,而与其他地方的初值条件无关。区间[x−at,x+at]称为点(x,t)的依赖区间
+略过上述内容并不会对我们后续的学习产生太大影响
+