1

Mathematica:填充无限深的势阱

评论:Mathematica 问题的正确页面是这一页

我想在 Mathematica 的盒子中想象一个粒子的势阱,类似于此处维基百科的第二张图片。我已经分段定义了我的函数

(*Length of the box*)
L     = 4; 

(*Infinitly deep potential well between 0 and L*)
V[x_] := Piecewise[{
            {\[Infinity], x <= 0},
            {0, 0 < x < L}, 
            {\[Infinity], L <= x}}]

并希望获得一个绘图函数,该函数给出一个填充区域,其中潜力达到无穷大。

不幸的是,我的尝试最终在电位的“零区域”之间的阴影区域中结束,而我希望在无限区域中有阴影。

Table[Plot[V[x], {x, -5, 10}, 
Filling -> f], {f, {Top, Bottom, Axis, 0.3}}]
4

2 回答 2

2

问题是Infinity情节太多了。所以让我们给它一些其他的大数字。但为了防止它重新调整 y 轴,我们需要具体说明上图范围

Block[{\[Infinity] = 1*^1},
 Plot[V[x], {x, -5, 10},  Filling -> Bottom, 
  PlotRange -> {Automatic, 1}]
 ]

或者,您可以绘图V[x]/.\[Infinity]->1*^1而不是,Block但我Block更喜欢

于 2013-08-04T19:43:53.140 回答
1

只需给它值而不是无穷大:

(*Length of the box*)L = 4;

(*Infinitly deep potential well between 0 and L*)

V[x_] := Piecewise[{{1, x <= 0}, {0, 0 < x < L}, {1, L <= x}}]
Plot[V[x], {x, -5, 10}, Filling -> Bottom]

阴谋

使用图形基元的另一种方法:

wellLeft = 0;
leftBorder = wellLeft - 1;
rightBorder = L + 1;
wellRight = L;
top = 5;
Graphics[{
  Hue[0.67, 0.6, 0.6],
  Opacity[0.2],
  Rectangle[{leftBorder, 0}, {wellLeft, top}],
  Rectangle[{wellRight, 0}, {rightBorder, top}]
  }, Axes -> True]

在此处输入图像描述

于 2013-08-04T14:52:08.597 回答