Mathematica应用——继续考察球面曲线

2025-10-21 10:55:23

1、        曲面,一般是由含两个参数的参数方程所确定,事实上,就是把一个平面上的矩形区域投影到球面上。

        例如,我们来绘制一个单位球面,就是一个矩形区域的投影。这个过程,可以称为球面变换

RegionPlot[0 <= u <= 2 Pi && 0 <= v <= Pi, {u, -1, 7}, {v, -1, 5}, 

 AspectRatio -> Automatic]

Mathematica应用——继续考察球面曲线

Mathematica应用——继续考察球面曲线

2、        单位球面对应的参数方程是{Cos[u] Cos[v], Cos[u] Sin[v], Sin[u]},通过限定u和v的值,使之分别由小变大,可以体现这个具体的作图过程。

Manipulate[

   ParametricPlot3D[{Cos[u] Cos[v], Cos[u] Sin[v], Sin[u]}, {u, 0, a0},

     {v, 0, Pi}, PlotRange ->1.1], {a0, 0.1, 2 Pi, 0.1}]

        类似的其余情形,大家可以自己实验!

Mathematica应用——继续考察球面曲线

Mathematica应用——继续考察球面曲线

Mathematica应用——继续考察球面曲线

3、        给定一个曲面,要绘制曲面上的曲线,可以有两种方法: 一种方法是,用两个曲面相交产生曲线;另一个方法是曲面上直接绘制曲线。

        用两个曲面相交产生曲线,这个方法是复杂的。因为要绘制这条相交线,必须确定特定的曲面,但是一条曲线所张的曲面可以说是无限多。

        所以说,用曲面相交的方法绘制曲面上的曲线,不如直接在曲面上绘制曲线来的容易。

        仍旧以球面曲线为例:继续延续第一步的结果,我们先在平面上的矩形区域内绘制一条参数曲线:

Mathematica应用——继续考察球面曲线

4、        把上面这个曲线投影到球面上,看看这条曲线会变成什么样子 :

F[u_, v_] := {Cos[u] Cos[v], Cos[u] Sin[v], Sin[u]}

ParametricPlot3D[F[u, v] /. {u -> t, v -> 1.5 + Sin[t]}, {t, 0, 2 Pi}]

        注意看,这个过程是,矩形区域球面化的同时,里面的曲线也球面化了,这其实仍旧是球面变换,只不过多了个变换对象!

Mathematica应用——继续考察球面曲线

5、        把这条球面曲线和球面一块画出来:

F[u_, v_] := {Cos[u] Cos[v], Cos[u] Sin[v], Sin[u]}

Show[ParametricPlot3D[F[u, v], {u, 0, 2 Pi}, {v, 0, Pi}, 

   PlotStyle -> Opacity[0.5]], 

 ParametricPlot3D[

  F[u, v] /. {u -> t, v -> 1.5 + Sin[t]}, {t, 0, 2 Pi}, 

  PlotStyle -> {Red, Thickness[0.01], Dashed}]]

        其中对球面进行了半透明化操作,可以更好地观察这条球面曲线(图中的红色虚线)。

Mathematica应用——继续考察球面曲线

6、        使参数t的最大值由小变大,可以实现这个球面曲线的作图过程:

Manipulate[

 Show[RegionPlot[

   0 <= u <= 2 Pi && 0 <= v <= Pi, {u, -1, 7}, {v, -1, 5}, 

   AspectRatio -> Automatic],

  ParametricPlot[{t, 1.5 + Sin[t]}, {t, -1, a0}]], {a0, 0, 2 Pi}]

        和

Manipulate[

 ParametricPlot3D[{Cos[t] Cos[1.5 + Sin[t]], Cos[t] Sin[1.5 + Sin[t]],

    Sin[t]}, {t, 0, a0}], {a0, 0.0001, 2 Pi}]

Mathematica应用——继续考察球面曲线

Mathematica应用——继续考察球面曲线

Mathematica应用——继续考察球面曲线

7、        如果在矩形区域内上下平移这条曲线,看看它在球面上的对应图形会发生什么变化:

Manipulate[

 Show[RegionPlot[

   0 <= u <= 2 Pi && 0 <= v <= Pi, {u, -1, 7}, {v, -1, 5}, 

   AspectRatio -> Automatic], 

  ParametricPlot[{t, b0 + Sin[t]}, {t, -1, 7}]], {b0, 0, 3}]

Mathematica应用——继续考察球面曲线

Mathematica应用——继续考察球面曲线

Mathematica应用——继续考察球面曲线

8、        下面来看看,平面上的曲线是怎么投影到球面上去的。一个点一个点的对应:

Manipulate[

   Show[

     ParametricPlot3D[{Cos[u] Cos[v], Cos[u] Sin[v], Sin[u]}, 

          {u, 0, 2 Pi}, {v, 0, Pi}, PlotStyle -> Opacity[0.5]], 

     ParametricPlot3D[{tt, Sin[tt], 0}, {tt, 0, b0}], 

     ParametricPlot3D[{Cos[t] Cos[Sin[t]], Cos[t] Sin[Sin[t]], Sin[t]},

           {t, 0, b0}, PlotStyle -> {Red, Thickness[0.01], Dashed}]], 

 {b0, 0.001, 2 Pi}]

        可以发现,球面曲线的首尾相接,尽管对应的平面曲线不是这样!

Mathematica应用——继续考察球面曲线

Mathematica应用——继续考察球面曲线

Mathematica应用——继续考察球面曲线

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢