前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Korteweg-de Vries 方程的可视化

Korteweg-de Vries 方程的可视化

作者头像
WolframChina
发布2018-05-31 10:37:36
1.6K0
发布2018-05-31 10:37:36
举报
文章被收录于专栏:WOLFRAMWOLFRAM
高憲慶

Wolfram 内核开发人员,毕业于美国加州伯克利大学,物理学博士。

Korteweg–de Vries (KdV)方程在物理学的许多领域都有应用,例如等离子体磁流波、离子声波、非谐振晶格振动、低温非线性晶格声子波包的热激发、液体气体混合物的压力表等。

Korteweg–de Vries (KdV) 方程是一個描述浅水波表面动态的数学模型:

ut+3u2x+uxxx=0

这个模型是一個可积的偏微分方程而且存在所谓孤立子的特殊解。以下的指令在Mathematica的环境中对KdV方程进行数值模拟以呈现两個孤立子交互影响的动态表现。

  • 定义KdV方程并选择适当的初始和(周期)边界条件:
代码语言:javascript
复制
eq=D[u[x,t],t]+D[u[x,t],{x,3}]+3D[u[x,t]^2,x]==0;

pbc={u[-15,t]==u[15,t],(u^(1,0))[-15,t]==(u^(1,0))[15,t],(u^(2,0))[-15,t]==(u^(2,0))[15,t]};

ic=u[x,0]==(u0[x]=0.5(2 Sech[0.5Sqrt[2](x-8)]^2+3 Sech[0.5Sqrt[3](x+8)]^2));
代码语言:javascript
复制
Plot[u0[x], {x, -15, 15}, 
 PlotLabel -> Style["初始条件", Black, Thick, 20], PlotStyle -> Black, 
 PlotTheme -> "Detailed", 
 FrameLabel -> {Style["x", 16, Black], Style["u", 16, Black]}]
代码语言:javascript
复制
{usol} = Quiet@
  NDSolve[{eq, pbc, ic}, u, {x, -15, 15}, {t, 0, 30}, 
   Method -> "StiffnessSwitching"]
  • 利用Animate以及DensityPlot对解的动态变化作视觉呈现,DensityPlot主要是呈现两个孤立子在时空中的轨迹。以下的范例展示了两個孤立子碰撞后在轨迹上呈现相差的情形。
代码语言:javascript
复制
Panel[Row[{Animate[
    Plot[u[x, t] /. usol, {x, -15, 15}, PlotRange -> {0, 1.7}, 
     PlotStyle -> Black, Frame -> True, 
     FrameLabel -> {Style["x", 16, Black], 
       Style["u", 16, Black]}], {t, 0, 20}, TrackedSymbols :> t, 
    AnimationRunning -> False], Spacer[30], 
   DensityPlot[u[x, t] /. usol, {x, -15, 15}, {t, 0, 20}, 
    ColorFunction -> GrayLevel, ImageSize -> {300, 300}, 
    FrameLabel -> {"x", "t"}, PlotLegends -> Automatic]}, 
  Alignment -> {Center, Center}], Appearance -> "Frameless"]

Mathematica提供了一个简单且直观的环境对KdV方程求解,而且运算结果可以直接在Mathematica界面中动态或静态的呈现。这个特点在教学以及研究上有着相当的帮助。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-04-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 WOLFRAM 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 高憲慶
相关产品与服务
大数据
全栈大数据产品,面向海量数据场景,帮助您 “智理无数,心中有数”!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档